MyGUI  3.0.1
MyGUI_TabItem.h
Go to the documentation of this file.
1 
7 /*
8  This file is part of MyGUI.
9 
10  MyGUI is free software: you can redistribute it and/or modify
11  it under the terms of the GNU Lesser General Public License as published by
12  the Free Software Foundation, either version 3 of the License, or
13  (at your option) any later version.
14 
15  MyGUI is distributed in the hope that it will be useful,
16  but WITHOUT ANY WARRANTY; without even the implied warranty of
17  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  GNU Lesser General Public License for more details.
19 
20  You should have received a copy of the GNU Lesser General Public License
21  along with MyGUI. If not, see <http://www.gnu.org/licenses/>.
22 */
23 #ifndef __MYGUI_TAB_ITEM_H__
24 #define __MYGUI_TAB_ITEM_H__
25 
26 #include "MyGUI_Prerequest.h"
27 #include "MyGUI_Widget.h"
28 #include "MyGUI_Tab.h"
29 
30 namespace MyGUI
31 {
32 
34  public Widget
35  {
37 
38  public:
39  TabItem();
40 
42  virtual void setCaption(const UString& _value);
44  virtual const UString& getCaption();
45 
47  void setButtonWidth(int _value = DEFAULT);
49  int getButtonWidth();
50 
52  void setItemName(const UString& _value);
54  const UString& getItemName();
55 
57  void setItemData(Any _value);
58 
60  template <typename ValueType>
61  ValueType * getItemData(bool _throw = true)
62  {
63  return mOwner->getItemData<ValueType>(this, _throw);
64  }
65 
67  void setItemSelected();
68 
70  void removeItem();
71 
73  virtual void setProperty(const std::string& _key, const std::string& _value);
74 
75  /*internal*/
76  virtual void _initialise(WidgetStyle _style, const IntCoord& _coord, Align _align, ResourceSkin* _info, Widget* _parent, ICroppedRectangle * _croppedParent, IWidgetCreator * _creator, const std::string& _name);
77 
78  protected:
79  virtual ~TabItem();
80 
81  void setSelected(bool _value);
82 
83  private:
84  Tab* mOwner;
85 
86  };
87 
88 } // namespace MyGUI
89 
90 #endif // __MYGUI_TAB_ITEM_H__