30 #ifndef _CEGUITabControl_h_ 
   31 #define _CEGUITabControl_h_ 
   33 #include "CEGUIBase.h" 
   34 #include "CEGUIWindow.h" 
   35 #include "elements/CEGUITabControlProperties.h" 
   40 #       pragma warning(push) 
   41 #       pragma warning(disable : 4251) 
  118         size_t  getTabCount(
void) 
const;
 
  126         TabPanePosition getTabPanePosition(
void)
 const 
  127         { 
return d_tabPanePos; }
 
  135         void    setTabPanePosition(TabPanePosition pos);
 
  143     void    setSelectedTab(
const String &name);
 
  151     void    setSelectedTab(uint ID);
 
  159     void    setSelectedTabAtIndex(
size_t index);
 
  166     void    makeTabVisible(
const String &name);
 
  173     void    makeTabVisible(uint ID);
 
  180     void    makeTabVisibleAtIndex(
size_t index);
 
  194     Window*     getTabContentsAtIndex(
size_t index) 
const;
 
  222     Window*     getTabContents(uint ID) 
const;
 
  236     bool        isTabContentsSelected(
Window* wnd) 
const;
 
  245     size_t      getSelectedTabIndex() 
const;
 
  273         virtual void    initialiseComponents(
void);
 
  279     void setTabHeight(
const UDim& height);
 
  285     void setTabTextPadding(
const UDim& padding);
 
  302     void removeTab(
const String& name);
 
  309     void removeTab(uint ID);
 
  350     virtual void addButtonForTabContent(
Window* wnd);
 
  355     virtual void removeButtonForTabContent(
Window* wnd);
 
  374     virtual void selectTab_impl(
Window* wnd);
 
  383     virtual void makeTabVisible_impl(
Window* wnd);
 
  396         virtual bool    testClassName_impl(
const String& class_name)
 const 
  398                 if (class_name==
"TabControl")   
return true;
 
  413     Window* getTabButtonPane() 
const;
 
  426     Window* getTabPane() 
const;
 
  428         void performChildWindowLayout();
 
  432     virtual bool validateWindowRenderer(
const String& name)
 const 
  434         return (name == 
"TabControl");
 
  448     void removeTab_impl(
Window* window);
 
  475     typedef std::vector<TabButton*> TabButtonVector;
 
  502     void calculateTabButtonSizePosition(
size_t index);
 
  515         void    addTabControlProperties(
void);
 
  517     void    addChild_impl(
Window* wnd);
 
  518     void    removeChild_impl(
Window* wnd);
 
  523     bool handleContentWindowTextChanged(
const EventArgs& args);
 
  524     bool handleTabButtonClicked(
const EventArgs& args);
 
  525     bool handleScrollPane(
const EventArgs& e);
 
  526     bool handleDraggedPane(
const EventArgs& e);
 
  527     bool handleWheeledPane(
const EventArgs& e);
 
  534 #if defined(_MSC_VER) 
  535 #       pragma warning(pop) 
  538 #endif  // end of guard _CEGUITabControl_h_