| 226 | } |
| 227 | |
| 228 | void TabControl::notifyPressedBarButtonEvent(MyGUI::Widget* _sender) |
| 229 | { |
| 230 | size_t select = *_sender->_getInternalData<size_t>() + mStartIndex; |
| 231 | // щелкнули по той же кнопке |
| 232 | if (select == mIndexSelect) |
| 233 | { |
| 234 | // стараемся показать выделенную кнопку |
| 235 | beginToItemSelected(); |
| 236 | return; |
| 237 | } |
| 238 | size_t old = mIndexSelect; |
| 239 | mIndexSelect = select; |
| 240 | |
| 241 | size_t count = 0; |
| 242 | for (size_t pos = 0; pos < mItemButton.size(); pos++) |
| 243 | { |
| 244 | Button* button = mItemButton[count]->castType<Button>(); |
| 245 | if (button->getVisible()) |
| 246 | { |
| 247 | // корректируем нажатость кнопки |
| 248 | button->setStateSelected((pos + mStartIndex) == mIndexSelect); |
| 249 | } |
| 250 | count++; |
| 251 | } |
| 252 | |
| 253 | // стараемся показать выделенную кнопку |
| 254 | beginToItemSelected(); |
| 255 | |
| 256 | // поднимаем страницу для пикинга |
| 257 | _forcePick(mItemsInfo[mIndexSelect].item); |
| 258 | |
| 259 | _showItem(mItemsInfo[mIndexSelect].item, true, mSmoothShow); |
| 260 | _showItem(mItemsInfo[old].item, false, mSmoothShow); |
| 261 | |
| 262 | eventTabChangeSelect(this, mIndexSelect); |
| 263 | } |
| 264 | |
| 265 | void TabControl::beginToItemAt(size_t _index) |
| 266 | { |
nothing calls this directly
no test coverage detected