CGUIScrollPane_Impl::CGUIScrollPane_Impl ( CGUI_Impl* pGUI, CGUIElement* pParent ) { m_pManager = pGUI; // Initialize m_pGUI = pGUI; // Get an unique identifier for CEGUI (gah, there's gotta be an another way) char szUnique [CGUI_CHAR_SIZE]; pGUI->GetUniqueName ( szUnique ); // Create the window and set default settings m_pWindow = pGUI->GetWindowManager ()->createWindow ( CGUISCROLLPANE_NAME, szUnique ); m_pWindow->setDestroyedByParent ( false ); m_pWindow->setRect ( CEGUI::Relative, CEGUI::Rect (0.9f, 0.9f, 0.9f, 0.9f) ); // Store the pointer to this CGUI element in the CEGUI element m_pWindow->setUserData ( reinterpret_cast < void* > ( this ) ); AddEvents (); // If a parent is specified, add it to it's children list, if not, add it as a child to the m_pManager if ( pParent ) { SetParent ( pParent ); } else { pGUI->AddChild ( this ); SetParent ( NULL ); } SetHorizontalScrollStepSize ( 100.0f ); SetVerticalScrollStepSize ( 100.0f ); }
CGUIScrollPane_Impl::CGUIScrollPane_Impl( CGUI_Impl * pGUI, CGUIElement_Impl * pParent ) { // Store the manager instance m_pManager = pGUI; // Get a unique name for cegui String strName = pGUI->GetUniqueName(); // Create the window and set default settings m_pWindow = pGUI->GetWindowManager()->createWindow( "CGUI/ScrollablePane", strName.Get() ); m_pWindow->setDestroyedByParent( false ); m_pWindow->setRect( CEGUI::Relative, CEGUI::Rect( 0.9f, 0.9f, 0.9f, 0.9f ) ); m_pWindow->setVisible( true ); // Store the pointer to this element m_pWindow->setUserData( (void *)this ); // Register our events AddEvents(); // If a parent is set, add it to it's childs list, if not add it as a child to the gui manager if( pParent ) SetParent( pParent ); else { pGUI->AddChild( this ); SetParent( NULL ); } // Set defaults SetHorizontalScrollStepSize( 100.0f ); SetVerticalScrollStepSize( 100.0f ); }