HTML_Progress::setIndeterminate

HTML_Progress

Prev |  | Next
HTML_Progress::setIndeterminate sets the execution mode of the progress meter ## Synopsis require_once 'HTML/Progress.php'; void HTML_Progress::setIndeterminate( bool $continuous) ## Description This method is used to switch the progress bar in indeterminate mode. ## Parameter boolean $continuous whether countinuously displays animation. ## Throws

Possible PEAR_Error values

Error level | Error code | Error message | Solution
exception | HTML_PROGRESS_ERROR_INVALID_INPUT | invalid input, parameter #1 "$continuous" was expecting "boolean" | Fixed the cast of parameter
## Note ( HTML_Progress >= 1.0 )
| This function can not be called statically.
| Read indeterminate.pkg to learn how to animate a progress bar to show unknown length-task activity.
## See HTML_Progress::isIndeterminate ## Example Example below (that requires HTML_Progress >= 1.2.0RC3) will produced a progress bar with look and feel of indeterminate mode used with HTML_Progress_Monitor.

    <?php
    require_once 'HTML/Progress.php';

    $bar = new HTML_Progress(HTML_PROGRESS_BAR_VERTICAL);
    $bar->setAnimSpeed(80);
    $bar->setIdent('PB1');
    $bar->setIncrement(10);
    $bar->setBorderPainted(true);
    $bar->setStringPainted(true);    // get space for the string
    $bar->setString("");             // but don't paint it
    $bar->setIndeterminate(true);    // progress start in indeterminate mode

    $ui =& $bar->getUI();
    $ui->setCellAttributes('active-color=#970038 inactive-color=#FFDDAA width=50 height=13');
    $ui->setBorderAttributes('width=1 color=#000000');
    $ui->setStringAttributes(array(
        'font-size' => 8,
        'color' => '#FF0000',
        'background-color' => '#C3C6C3',
        'align' => 'center',
        'valign' => 'bottom'
    ));
    ?>
    <!DOCTYPE html
        PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
        "http://www.w3c.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
    <head>
    <title>setIndeterminate example</title>
    <style type="text/css">
    <!--
    <?php echo $bar->getStyle(); ?>

    body {
        background-color: #C3C6C3;
        color: #000000;
        font-family: Verdana, Arial;
    }
    // -->
    </style>
    <script type="text/javascript">
    <!--
    <?php echo $bar->getScript(); ?>
    //-->
    </script>
    </head>
    <body>

    <?php
    echo $bar->toHtml();

    $loop = 0;

    do {
        $bar->display();
        $bar->sleep();      // for purpose of demo only

        if ($bar->getPercentComplete() == 1) {
            $loop++;
            if ($bar->isIndeterminate()) {
                $bar->setValue(0);
            } else {
                break;      // progress bar reached 100% in determinate mode
            }
        } else {
            $bar->incValue();
        }

        /** rule to decide when to switch back to determinate mode
         *  - after two full loops and half one
         */
        if ($bar->isIndeterminate()) {
            if ($loop == 2 && $bar->getValue() == 50) {
                $bar->setIndeterminate(false);
                $bar->setString(null);         // display % string
                $bar->setValue(0);
            }
        }

    } while(1);
    ?>

    </body>
    </html>
Prev | Up | Next
HTML_Progress::isIndeterminate | Reference Guide | HTML_Progress::addListener
Documentation generated on Sun, 12 Sep 2004 20:23:12 +0200 by phpDocumentor 1.3.0RC3