1 /* 2 * This source file is part of MyGUI. For the latest info, see http://mygui.info/ 3 * Distributed under the MIT License 4 * (See accompanying file COPYING.MIT or copy at http://opensource.org/licenses/MIT) 5 */ 6 7 #include "MyGUI_Precompiled.h" 8 #include "MyGUI_TabItem.h" 9 10 namespace MyGUI 11 { 12 TabItem()13 TabItem::TabItem() 14 { 15 } 16 initialiseOverride()17 void TabItem::initialiseOverride() 18 { 19 Base::initialiseOverride(); 20 21 // FIXME проверить смену скина ибо должно один раз вызываться 22 //mOwner = getParent()->castType<TabControl>(); 23 } 24 shutdownOverride()25 void TabItem::shutdownOverride() 26 { 27 TabControl* owner = getParent() != nullptr ? getParent()->castType<TabControl>(false) : nullptr; 28 if (owner != nullptr) 29 owner->_notifyDeleteItem(this); 30 31 Base::shutdownOverride(); 32 } 33 setCaption(const UString & _value)34 void TabItem::setCaption(const UString& _value) 35 { 36 TabControl* owner = getParent() != nullptr ? getParent()->castType<TabControl>(false) : nullptr; 37 if (owner != nullptr) 38 owner->setItemName(this, _value); 39 else 40 Base::setCaption(_value); 41 } 42 getCaption()43 const UString& TabItem::getCaption() 44 { 45 TabControl* owner = getParent() != nullptr ? getParent()->castType<TabControl>(false) : nullptr; 46 if (owner != nullptr) 47 return owner->getItemName(this); 48 return Base::getCaption(); 49 } 50 setButtonWidth(int _width)51 void TabItem::setButtonWidth(int _width) 52 { 53 TabControl* owner = getParent() != nullptr ? getParent()->castType<TabControl>(false) : nullptr; 54 if (owner != nullptr) 55 owner->setButtonWidth(this, _width); 56 } 57 setPropertyOverride(const std::string & _key,const std::string & _value)58 void TabItem::setPropertyOverride(const std::string& _key, const std::string& _value) 59 { 60 /// @wproperty{TabItem, ButtonWidth, int} Ширина кнопки. 61 if (_key == "ButtonWidth") 62 setButtonWidth(utility::parseValue<int>(_value)); 63 64 else 65 { 66 Base::setPropertyOverride(_key, _value); 67 return; 68 } 69 70 eventChangeProperty(this, _key, _value); 71 } 72 73 } // namespace MyGUI 74