Prado\Web\UI\WebControls\TWizard::applyNavigationProperties PHP Метод

applyNavigationProperties() защищенный Метод

Apply properties to various navigation panels.
    protected function applyNavigationProperties()
    {
        $wizardSteps = $this->getWizardSteps();
        $activeStep = $this->getActiveStep();
        $activeStepIndex = $this->getActiveStepIndex();
        if (!$this->_navigation) {
            return;
        } else {
            if ($activeStepIndex < 0 || $activeStepIndex >= $wizardSteps->getCount()) {
                $this->_navigation->setVisible(false);
                return;
            }
        }
        // set visibility of different types of navigation panel
        $showStandard = true;
        foreach ($wizardSteps as $step) {
            if ($step instanceof TTemplatedWizardStep && ($container = $step->getNavigationContainer()) !== null) {
                if ($activeStep === $step) {
                    $container->setVisible(true);
                    $showStandard = false;
                } else {
                    $container->setVisible(false);
                }
            }
        }
        $activeStepType = $this->getStepType($activeStep);
        if ($activeStepType === TWizardStepType::Complete) {
            $this->_sideBar->setVisible(false);
            $this->_header->setVisible(false);
        }
        $this->_startNavigation->setVisible($showStandard && $activeStepType === self::ST_START);
        $this->_stepNavigation->setVisible($showStandard && $activeStepType === self::ST_STEP);
        $this->_finishNavigation->setVisible($showStandard && $activeStepType === self::ST_FINISH);
        if (($navigationStyle = $this->getViewState('NavigationStyle', null)) !== null) {
            $this->_navigation->getStyle()->mergeWith($navigationStyle);
        }
        $displayCancelButton = $this->getShowCancelButton();
        $cancelButtonStyle = $this->getCancelButtonStyle();
        $buttonStyle = $this->getViewState('NavigationButtonStyle', null);
        if ($buttonStyle !== null) {
            $cancelButtonStyle->mergeWith($buttonStyle);
        }
        // apply styles to start navigation buttons
        if (($cancelButton = $this->_startNavigation->getCancelButton()) !== null) {
            $cancelButton->setVisible($displayCancelButton);
            $cancelButtonStyle->apply($cancelButton);
        }
        if (($button = $this->_startNavigation->getNextButton()) !== null) {
            $button->setVisible(true);
            $style = $this->getStartNextButtonStyle();
            if ($buttonStyle !== null) {
                $style->mergeWith($buttonStyle);
            }
            $style->apply($button);
            if ($activeStepType === TWizardStepType::Start) {
                $this->getPage()->getClientScript()->registerDefaultButton($this, $button);
            }
        }
        // apply styles to finish navigation buttons
        if (($cancelButton = $this->_finishNavigation->getCancelButton()) !== null) {
            $cancelButton->setVisible($displayCancelButton);
            $cancelButtonStyle->apply($cancelButton);
        }
        if (($button = $this->_finishNavigation->getPreviousButton()) !== null) {
            $button->setVisible($this->allowNavigationToPreviousStep());
            $style = $this->getFinishPreviousButtonStyle();
            if ($buttonStyle !== null) {
                $style->mergeWith($buttonStyle);
            }
            $style->apply($button);
        }
        if (($button = $this->_finishNavigation->getCompleteButton()) !== null) {
            $button->setVisible(true);
            $style = $this->getFinishCompleteButtonStyle();
            if ($buttonStyle !== null) {
                $style->mergeWith($buttonStyle);
            }
            $style->apply($button);
            if ($activeStepType === TWizardStepType::Finish) {
                $this->getPage()->getClientScript()->registerDefaultButton($this, $button);
            }
        }
        // apply styles to step navigation buttons
        if (($cancelButton = $this->_stepNavigation->getCancelButton()) !== null) {
            $cancelButton->setVisible($displayCancelButton);
            $cancelButtonStyle->apply($cancelButton);
        }
        if (($button = $this->_stepNavigation->getPreviousButton()) !== null) {
            $button->setVisible($this->allowNavigationToPreviousStep());
            $style = $this->getStepPreviousButtonStyle();
            if ($buttonStyle !== null) {
                $style->mergeWith($buttonStyle);
            }
            $style->apply($button);
        }
        if (($button = $this->_stepNavigation->getNextButton()) !== null) {
            $button->setVisible(true);
            $style = $this->getStepNextButtonStyle();
            if ($buttonStyle !== null) {
                $style->mergeWith($buttonStyle);
            }
            $style->apply($button);
            if ($activeStepType === TWizardStepType::Step) {
                $this->getPage()->getClientScript()->registerDefaultButton($this, $button);
            }
        }
    }
TWizard