PanelTransitPtr createPanelWithButtons(void) { ButtonRecPtr PanelButton1 = Button::create(); ButtonRecPtr PanelButton2 = Button::create(); ButtonRecPtr PanelButton3 = Button::create(); ButtonRecPtr PanelButton4 = Button::create(); ButtonRecPtr PanelButton5 = Button::create(); ButtonRecPtr PanelButton6 = Button::create(); PanelButton1->setText("This"); PanelButton2->setText("is"); PanelButton3->setText("a"); PanelButton4->setText("sample"); PanelButton5->setText("Scroll"); PanelButton6->setText("Panel!"); // Create Panel to add Buttons to which will be inserted into // the ScrollPanel itself PanelRecPtr ScrollPanelInsertPanel = Panel::create(); FlowLayoutRecPtr ScrollPanelInsertPanelLayout = FlowLayout::create(); ScrollPanelInsertPanel->setPreferredSize(Vec2f(100, 250 )); ScrollPanelInsertPanel->pushToChildren(PanelButton1); ScrollPanelInsertPanel->pushToChildren(PanelButton2); ScrollPanelInsertPanel->pushToChildren(PanelButton3); ScrollPanelInsertPanel->pushToChildren(PanelButton4); ScrollPanelInsertPanel->pushToChildren(PanelButton5); ScrollPanelInsertPanel->pushToChildren(PanelButton6); ScrollPanelInsertPanel->setLayout(ScrollPanelInsertPanelLayout); return PanelTransitPtr(ScrollPanelInsertPanel); }
PanelTransitPtr createRightPanelButtonPanel(void) { // Create and edit the Panel Buttons ToggleButtonRecPtr RightPanelButton1 = ToggleButton::create(); ToggleButtonRecPtr RightPanelButton2 = ToggleButton::create(); ToggleButtonRecPtr RightPanelButton3 = ToggleButton::create(); ToggleButtonRecPtr RightPanelButton4 = ToggleButton::create(); RightPanelButton1->setText("These"); RightPanelButton1->setPreferredSize(Vec2f(100,50)); RightPanelButton2->setText("are"); RightPanelButton2->setPreferredSize(Vec2f(100,50)); RightPanelButton3->setText("toggle"); RightPanelButton3->setPreferredSize(Vec2f(100,50)); RightPanelButton4->setText("buttons"); RightPanelButton4->setPreferredSize(Vec2f(100,50)); // Create an edit Panel Background ColorLayerRecPtr RightPanelButtonPanelBackground = ColorLayer::create(); RightPanelButtonPanelBackground->setColor(Color4f(0.93,0.93,0.93,1.0)); // Create and edit Panel layout BoxLayoutRecPtr RightPanelButtonPanelLayout = BoxLayout::create(); RightPanelButtonPanelLayout->setOrientation(BoxLayout::VERTICAL_ORIENTATION); // Create Panel Border LineBorderRecPtr PanelBorder2 = LineBorder::create(); PanelBorder2->setColor(Color4f(0.0,0.0,0.0,1.0)); PanelBorder2->setWidth(1); // Create and edit Panel PanelRecPtr RightPanelButtonPanel = Panel::createEmpty(); RightPanelButtonPanel->setPreferredSize(Vec2f(200, 300)); RightPanelButtonPanel->pushToChildren(RightPanelButton1); RightPanelButtonPanel->pushToChildren(RightPanelButton2); RightPanelButtonPanel->pushToChildren(RightPanelButton3); RightPanelButtonPanel->pushToChildren(RightPanelButton4); RightPanelButtonPanel->setLayout(RightPanelButtonPanelLayout); RightPanelButtonPanel->setBackgrounds(RightPanelButtonPanelBackground); RightPanelButtonPanel->setBorders(PanelBorder2); return PanelTransitPtr(RightPanelButtonPanel); }
PanelTransitPtr createRightPanelCheckPanel(Node* const TorusNode, Node* const SphereNode, Node* const ConeNode, Node* const BoxNode) { // Create and edit the CheckBoxes CheckboxButtonRecPtr RightPanelCheck1 = CheckboxButton::create(); CheckboxButtonRecPtr RightPanelCheck2 = CheckboxButton::create(); CheckboxButtonRecPtr RightPanelCheck3 = CheckboxButton::create(); CheckboxButtonRecPtr RightPanelCheck4 = CheckboxButton::create(); //NOTE HorizontalAlignment needs to be changed to Alignment only with Vec2f arg RightPanelCheck1->setText("Show Torus"); RightPanelCheck1->setPreferredSize(Vec2f(125,50)); RightPanelCheck1->setAlignment(0.0); RightPanelCheck1->connectButtonSelected(boost::bind(setNodeTravMask, TorusNode, 1)); RightPanelCheck1->connectButtonDeselected(boost::bind(setNodeTravMask, TorusNode, 0)); RightPanelCheck2->setText("Show Box"); RightPanelCheck2->setPreferredSize(Vec2f(125,50)); RightPanelCheck2->setAlignment(Vec2f (0.5,0.0)); RightPanelCheck2->connectButtonSelected(boost::bind(setNodeTravMask, BoxNode, 1)); RightPanelCheck2->connectButtonDeselected(boost::bind(setNodeTravMask, BoxNode, 0)); RightPanelCheck3->setText("Show Sphere"); RightPanelCheck3->setPreferredSize(Vec2f(125,50)); RightPanelCheck3->setAlignment(Vec2f(0.0,0.0)); RightPanelCheck3->connectButtonSelected(boost::bind(setNodeTravMask, SphereNode, 1)); RightPanelCheck3->connectButtonDeselected(boost::bind(setNodeTravMask, SphereNode, 0)); RightPanelCheck4->setText("Show Cone"); RightPanelCheck4->setPreferredSize(Vec2f(125,50)); RightPanelCheck4->setAlignment(Vec2f(0.0,0.0)); RightPanelCheck4->connectButtonSelected(boost::bind(setNodeTravMask, ConeNode, 1)); RightPanelCheck4->connectButtonDeselected(boost::bind(setNodeTravMask, ConeNode, 0)); // Create an edit Panel Background ColorLayerRecPtr RightPanelCheckPanelBackground = ColorLayer::create(); RightPanelCheckPanelBackground->setColor(Color4f(0.93,0.93,0.93,1.0)); // Create and edit Panel layout BoxLayoutRecPtr RightPanelCheckPanelLayout = BoxLayout::create(); RightPanelCheckPanelLayout->setOrientation(BoxLayout::VERTICAL_ORIENTATION); RightPanelCheckPanelLayout->setMinorAxisAlignment(0.5f); // Create Panel Border LineBorderRecPtr PanelBorder3 = LineBorder::create(); PanelBorder3->setColor(Color4f(0.0,0.0,0.0,1.0)); PanelBorder3->setWidth(1); // Create and edit Panel PanelRecPtr RightPanelCheckPanel = Panel::createEmpty(); RightPanelCheckPanel->setPreferredSize(Vec2f(200, 300)); RightPanelCheckPanel->pushToChildren(RightPanelCheck1); RightPanelCheckPanel->pushToChildren(RightPanelCheck2); RightPanelCheckPanel->pushToChildren(RightPanelCheck3); RightPanelCheckPanel->pushToChildren(RightPanelCheck4); RightPanelCheckPanel->setLayout(RightPanelCheckPanelLayout); RightPanelCheckPanel->setBackgrounds(RightPanelCheckPanelBackground); RightPanelCheckPanel->setBorders(PanelBorder3); return PanelTransitPtr(RightPanelCheckPanel); }
PanelTransitPtr createLeftPanelRadioTextPanel(void) { // Create TextArea TextAreaRecPtr LeftPanelTextArea = TextArea::create(); LeftPanelTextArea->setPreferredSize(Vec2f(125, 200)); LeftPanelTextArea->setText("Text Area"); // Create the RadioButton group RadioButtonRecPtr RadioButton1 = RadioButton::create(); RadioButtonRecPtr RadioButton2 = RadioButton::create(); RadioButtonRecPtr RadioButton3 = RadioButton::create(); RadioButtonRecPtr RadioButton4 = RadioButton::create(); RadioButton1->setAlignment(Vec2f(0.0,0.5)); RadioButton1->setPreferredSize(Vec2f(100, 40)); RadioButton1->setText("Black Text"); RadioButton1->setToolTipText("Set TextArea text black"); RadioButton1->connectButtonSelected(boost::bind(setTextColors, LeftPanelTextArea.get(), Color4f(0.0f,0.0f,0.0f,1.0f))); RadioButton2->setAlignment(Vec2f(0.0,0.5)); RadioButton2->setPreferredSize(Vec2f(100, 40)); RadioButton2->setText("Red Text"); RadioButton2->setToolTipText("Set TextArea text red"); RadioButton2->connectButtonSelected(boost::bind(setTextColors, LeftPanelTextArea.get(), Color4f(1.0f,0.0f,0.0f,1.0f))); RadioButton3->setAlignment(Vec2f(0.0,0.5)); RadioButton3->setPreferredSize(Vec2f(100, 40)); RadioButton3->setText("Green Text"); RadioButton3->setToolTipText("Set TextArea text green"); RadioButton3->connectButtonSelected(boost::bind(setTextColors, LeftPanelTextArea.get(), Color4f(0.0f,1.0f,0.0f,1.0f))); RadioButton4->setAlignment(Vec2f(0.0,0.5)); RadioButton4->setPreferredSize(Vec2f(100, 40)); RadioButton4->setText("Blue Text"); RadioButton4->setToolTipText("Set TextArea text blue"); RadioButton4->connectButtonSelected(boost::bind(setTextColors, LeftPanelTextArea.get(), Color4f(0.0f,0.0f,1.0f,1.0f))); RadioButtonGroupRecPtr buttonGroup = RadioButtonGroup::create(); buttonGroup->addButton(RadioButton1); buttonGroup->addButton(RadioButton2); buttonGroup->addButton(RadioButton3); buttonGroup->addButton(RadioButton4); // Create Panel and its Background/Border to label TextField LabelRecPtr LeftPanelTextFieldLabel = Label::create(); EmptyLayerRecPtr LeftPanelTextFieldLabelBackground = EmptyLayer::create(); EmptyBorderRecPtr LeftPanelTextFieldLabelBorder = EmptyBorder::create(); LeftPanelTextFieldLabel->setPreferredSize(Vec2f(100, 25)); LeftPanelTextFieldLabel->setBorders(LeftPanelTextFieldLabelBorder); LeftPanelTextFieldLabel->setBackgrounds(LeftPanelTextFieldLabelBackground); LeftPanelTextFieldLabel->setText("Text Field"); // Create TextField TextFieldRecPtr LeftPanelTextField = TextField::create(); LeftPanelTextField->setPreferredSize(Vec2f(125.0f, 22.0f)); // Create an edit Panel Background ColorLayerRecPtr LeftPanelRadioTextPanelBackground = ColorLayer::create(); LeftPanelRadioTextPanelBackground->setColor(Color4f(0.93f,0.93f,0.93f,1.0f)); // Create and edit Panel layouts FlowLayoutRecPtr LeftPanelRadioTextPanelLayout = FlowLayout::create(); FlowLayoutRecPtr LeftPanelRadioTextPanelRadioPanelLayout = FlowLayout::create(); FlowLayoutRecPtr LeftPanelRadioTextPanelTextPanelLayout = FlowLayout::create(); LeftPanelRadioTextPanelLayout->setMinorAxisAlignment(0.0f); // Create two Panels for this Panel PanelRecPtr LeftPanelRadioTextPanelRadioPanel = Panel::createEmpty(); PanelRecPtr LeftPanelRadioTextPanelTextPanel = Panel::createEmpty(); // Create some Borders EmptyBorderRecPtr LeftPanelRadioTextPanelRadioPanelBorder = EmptyBorder::create(); LeftPanelRadioTextPanelRadioPanel->setBorders(LeftPanelRadioTextPanelRadioPanelBorder); LeftPanelRadioTextPanelRadioPanel->setPreferredSize(Vec2f(125, 200)); LeftPanelRadioTextPanelRadioPanel->setLayout(LeftPanelRadioTextPanelRadioPanelLayout); LeftPanelRadioTextPanelRadioPanel->setBackgrounds(LeftPanelRadioTextPanelBackground); LeftPanelRadioTextPanelRadioPanel->pushToChildren(RadioButton1); LeftPanelRadioTextPanelRadioPanel->pushToChildren(RadioButton2); LeftPanelRadioTextPanelRadioPanel->pushToChildren(RadioButton3); LeftPanelRadioTextPanelRadioPanel->pushToChildren(RadioButton4); // Create Panel Border LineBorderRecPtr PanelBorder1 = LineBorder::create(); PanelBorder1->setColor(Color4f(0.0,0.0,0.0,1.0)); PanelBorder1->setWidth(1); // Create and edit Panel PanelRecPtr LeftPanelRadioTextPanel = Panel::createEmpty(); LeftPanelRadioTextPanel->setPreferredSize(Vec2f(180, 500)); LeftPanelRadioTextPanel->pushToChildren(LeftPanelRadioTextPanelRadioPanel); //LeftPanelRadioTextPanel->pushToChildren(LeftPanelTextArea); LeftPanelRadioTextPanel->pushToChildren(LeftPanelTextFieldLabel); LeftPanelRadioTextPanel->pushToChildren(LeftPanelTextField); LeftPanelRadioTextPanel->setLayout(LeftPanelRadioTextPanelLayout); LeftPanelRadioTextPanel->setBackgrounds(LeftPanelRadioTextPanelBackground); LeftPanelRadioTextPanel->setBorders(PanelBorder1); return PanelTransitPtr(LeftPanelRadioTextPanel); }
PanelTransitPtr createLeftPanelButtonPanel(void) { // Create Label for this Panel LabelRecPtr LeftPanelButtonPanelLabel = Label::create(); LeftPanelButtonPanelLabel->setTextColor(Color4f(1.0,1.0,1.0,1.0)); LeftPanelButtonPanelLabel->setRolloverTextColor(Color4f(1.0,1.0,1.0,1.0)); LayerRecPtr ComplexBackground = createComplexBackground(); LeftPanelButtonPanelLabel->setBackground(ComplexBackground); LeftPanelButtonPanelLabel->setPreferredSize(Vec2f(100, 50)); LeftPanelButtonPanelLabel->setText("Various Options"); LeftPanelButtonPanelLabel->setAlignment(Vec2f(0.5,0.5)); // Create and edit the Panel buttons ButtonRecPtr LeftPanelButton1 = Button::create(); ButtonRecPtr LeftPanelButton2 = Button::create(); ButtonRecPtr LeftPanelButton3 = Button::create(); ButtonRecPtr LeftPanelButton4 = Button::create(); ButtonRecPtr LeftPanelButton5 = Button::create(); ButtonRecPtr LeftPanelButton6 = Button::create(); LeftPanelButton1->setText("This"); LeftPanelButton1->setPreferredSize(Vec2f(100,50)); LeftPanelButton2->setText("is"); LeftPanelButton2->setPreferredSize(Vec2f(100,50)); LeftPanelButton3->setText("an"); LeftPanelButton3->setPreferredSize(Vec2f(100,50)); LeftPanelButton4->setText("example"); LeftPanelButton4->setPreferredSize(Vec2f(100,50)); LeftPanelButton5->setText("user"); LeftPanelButton5->setPreferredSize(Vec2f(100,50)); LeftPanelButton6->setText("interface."); LeftPanelButton6->setPreferredSize(Vec2f(100,50)); // Create and edit Panel layout BoxLayoutRecPtr LeftPanelButtonPanelLayout = BoxLayout::create(); LeftPanelButtonPanelLayout->setOrientation(BoxLayout::VERTICAL_ORIENTATION); // Create an edit Panel Background ColorLayerRecPtr LeftPanelButtonPanelBackground = ColorLayer::create(); LeftPanelButtonPanelBackground->setColor(Color4f(0.93,0.93,0.93,1.0)); // Create Panel Border LineBorderRecPtr LeftPanelBorder = LineBorder::create(); LeftPanelBorder->setColor(Color4f(0.0,0.0,0.0,1.0)); LeftPanelBorder->setWidth(1); // Create and edit Panel PanelRecPtr LeftPanelButtonPanel = Panel::createEmpty(); LeftPanelButtonPanel->setPreferredSize(Vec2f(180, 500)); LeftPanelButtonPanel->pushToChildren(LeftPanelButtonPanelLabel); LeftPanelButtonPanel->pushToChildren(LeftPanelButton1); LeftPanelButtonPanel->pushToChildren(LeftPanelButton2); LeftPanelButtonPanel->pushToChildren(LeftPanelButton3); LeftPanelButtonPanel->pushToChildren(LeftPanelButton4); LeftPanelButtonPanel->pushToChildren(LeftPanelButton5); LeftPanelButtonPanel->pushToChildren(LeftPanelButton6); LeftPanelButtonPanel->setLayout(LeftPanelButtonPanelLayout); LeftPanelButtonPanel->setBackgrounds(LeftPanelButtonPanelBackground); LeftPanelButtonPanel->setBorders(LeftPanelBorder); return PanelTransitPtr(LeftPanelButtonPanel); }
PanelTransitPtr VideoFieldContainerEditor::createVideoPreviewPanel(void) { ChunkMaterialUnrecPtr VideoMaterial = ChunkMaterial::create(); //Video MaterialLayer _VideoMaterialLayer = MaterialLayer::create(); _VideoMaterialLayer->setMaterial(VideoMaterial); //Video Panel _VideoPanel = Panel::createEmpty(); _VideoPanel->setBackgrounds(_VideoMaterialLayer); //Filename Label _FileNameLabel = Label::create(); _FileNameLabel->setAlignment(Vec2f(0.5f, 0.5f)); //Total time Label _TotalTimeLabel = Label::create(); _TotalTimeLabel->setAlignment(Vec2f(0.0f, 1.0f)); _TotalTimeLabel->setBorders(NULL); _TotalTimeLabel->setBackgrounds(NULL); _TotalTimeLabel->setPreferredSize(Vec2f(50.0f,_TotalTimeLabel->getPreferredSize().y())); //Playback time Label _PlaybackTimeLabel = Label::create(); _PlaybackTimeLabel->setAlignment(Vec2f(1.0f, 1.0f)); _PlaybackTimeLabel->setPreferredSize(Vec2f(50.0f,_TotalTimeLabel->getPreferredSize().y())); _PlaybackTimeLabel->setBorders(NULL); _PlaybackTimeLabel->setBackgrounds(NULL); LabelRecPtr TimeSeparatorLabel = Label::create(); TimeSeparatorLabel->setAlignment(Vec2f(0.5f, 1.0f)); TimeSeparatorLabel->setPreferredSize(Vec2f(8.0f,_TotalTimeLabel->getPreferredSize().y())); TimeSeparatorLabel->setBorders(NULL); TimeSeparatorLabel->setBackgrounds(NULL); TimeSeparatorLabel->setText("/"); //PlayPause Button _PlayPauseButton = Button::create(); _PlayPauseButton->setText("Play"); _PlayPauseButton->setPreferredSize(Vec2f(40.0f,40.0f)); _PlayPauseButton->connectActionPerformed(boost::bind(&VideoFieldContainerEditor::handlePlayPauseAction, this, _1)); //Stop Button _StopButton = Button::create(); _StopButton->setText("Stop"); _StopButton->setPreferredSize(Vec2f(40.0f,40.0f)); _StopButton->connectActionPerformed(boost::bind(&VideoFieldContainerEditor::handleStopAction, this, _1)); //Load Button ButtonRecPtr LoadButton = Button::create(); LoadButton->setText("Load"); LoadButton->setPreferredSize(Vec2f(40.0f,40.0f)); LoadButton->connectActionPerformed(boost::bind(&VideoFieldContainerEditor::handleLoadAction, this, _1)); //Playback position slider _LocationSlider = Slider::create(); _LocationSlider->setOrientation(Slider::HORIZONTAL_ORIENTATION); _LocationSlider->setDrawLabels(false); _LocationSlider->setDrawMajorTicks(false); _LocationSlider->setDrawMinorTicks(false); _LocationSlider->setBorders(NULL); _LocationSlider->setBackgrounds(NULL); //_LocationSlider->getKnobButton()->setPreferredSize(Vec2f(15.0f, 8.0f)); _LocationSlider->getRangeModel()->connectStateChanged(boost::bind(&VideoFieldContainerEditor::handlePlaybackLocationStateChanged, this, _1)); //Layout PanelRecPtr VideoPanel = Panel::createEmpty(); SpringLayoutRecPtr MainLayout = SpringLayout::create(); //Video Panel MainLayout->putConstraint(SpringLayoutConstraints::EAST_EDGE, _VideoPanel, 0, SpringLayoutConstraints::EAST_EDGE, VideoPanel); MainLayout->putConstraint(SpringLayoutConstraints::WEST_EDGE, _VideoPanel, 0, SpringLayoutConstraints::WEST_EDGE, VideoPanel); MainLayout->putConstraint(SpringLayoutConstraints::NORTH_EDGE, _VideoPanel, 0, SpringLayoutConstraints::NORTH_EDGE, VideoPanel); MainLayout->putConstraint(SpringLayoutConstraints::SOUTH_EDGE, _VideoPanel, -1, SpringLayoutConstraints::NORTH_EDGE, _PlayPauseButton); //Filename Label MainLayout->putConstraint(SpringLayoutConstraints::EAST_EDGE, _FileNameLabel, 0, SpringLayoutConstraints::EAST_EDGE, VideoPanel); MainLayout->putConstraint(SpringLayoutConstraints::WEST_EDGE, _FileNameLabel, 0, SpringLayoutConstraints::WEST_EDGE, VideoPanel); MainLayout->putConstraint(SpringLayoutConstraints::NORTH_EDGE, _FileNameLabel, 0, SpringLayoutConstraints::NORTH_EDGE, VideoPanel); //Play/pause Button MainLayout->putConstraint(SpringLayoutConstraints::EAST_EDGE, _PlayPauseButton, -3, SpringLayoutConstraints::WEST_EDGE, _StopButton); MainLayout->putConstraint(SpringLayoutConstraints::SOUTH_EDGE, _PlayPauseButton, 0, SpringLayoutConstraints::SOUTH_EDGE, VideoPanel); //Stop Button MainLayout->putConstraint(SpringLayoutConstraints::EAST_EDGE, _StopButton, -3, SpringLayoutConstraints::WEST_EDGE, _LocationSlider); MainLayout->putConstraint(SpringLayoutConstraints::SOUTH_EDGE, _StopButton, 0, SpringLayoutConstraints::SOUTH_EDGE, VideoPanel); //Playback Slider MainLayout->putConstraint(SpringLayoutConstraints::HORIZONTAL_CENTER_EDGE, _LocationSlider, 0, SpringLayoutConstraints::HORIZONTAL_CENTER_EDGE, VideoPanel); MainLayout->putConstraint(SpringLayoutConstraints::SOUTH_EDGE, _LocationSlider, 0, SpringLayoutConstraints::SOUTH_EDGE, VideoPanel); //Total video length label MainLayout->putConstraint(SpringLayoutConstraints::SOUTH_EDGE, _TotalTimeLabel, 0, SpringLayoutConstraints::SOUTH_EDGE, LoadButton); MainLayout->putConstraint(SpringLayoutConstraints::EAST_EDGE, _TotalTimeLabel, 0, SpringLayoutConstraints::EAST_EDGE, _LocationSlider); //Separator label MainLayout->putConstraint(SpringLayoutConstraints::SOUTH_EDGE, TimeSeparatorLabel, 0, SpringLayoutConstraints::SOUTH_EDGE, LoadButton); MainLayout->putConstraint(SpringLayoutConstraints::EAST_EDGE, TimeSeparatorLabel, -2, SpringLayoutConstraints::WEST_EDGE, _TotalTimeLabel); //Playback time label MainLayout->putConstraint(SpringLayoutConstraints::SOUTH_EDGE, _PlaybackTimeLabel, 0, SpringLayoutConstraints::SOUTH_EDGE, LoadButton); MainLayout->putConstraint(SpringLayoutConstraints::EAST_EDGE, _PlaybackTimeLabel, -2, SpringLayoutConstraints::WEST_EDGE, TimeSeparatorLabel); //Load Button MainLayout->putConstraint(SpringLayoutConstraints::WEST_EDGE, LoadButton, 3, SpringLayoutConstraints::EAST_EDGE, _LocationSlider); MainLayout->putConstraint(SpringLayoutConstraints::SOUTH_EDGE, LoadButton, 0, SpringLayoutConstraints::SOUTH_EDGE, VideoPanel); //Main Video Panel VideoPanel->setLayout(MainLayout); VideoPanel->pushToChildren(_VideoPanel); VideoPanel->pushToChildren(_FileNameLabel); VideoPanel->pushToChildren(_PlayPauseButton); VideoPanel->pushToChildren(_StopButton); VideoPanel->pushToChildren(LoadButton); VideoPanel->pushToChildren(_PlaybackTimeLabel); VideoPanel->pushToChildren(TimeSeparatorLabel); VideoPanel->pushToChildren(_TotalTimeLabel); VideoPanel->pushToChildren(_LocationSlider); return PanelTransitPtr(VideoPanel); }