MCPcopy Create free account
hub / github.com/MyGUI/mygui / _updateView

Method _updateView

MyGUIEngine/src/MyGUI_Widget.cpp:359–404  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

357 }
358
359 void Widget::_updateView()
360 {
361 bool margin = mCroppedParent ? _checkMargin() : false;
362
363 // вьюпорт стал битым
364 if (margin)
365 {
366 // проверка на полный выход за границу
367 if (_checkOutside())
368 {
369 // запоминаем текущее состояние
370 mIsMargin = margin;
371
372 // скрываем
373 _setSubSkinVisible(false);
374
375 // вся иерархия должна быть проверенна
376 for (auto& widget : mWidgetChild)
377 widget->_updateView();
378 for (auto& widget : mWidgetChildSkin)
379 widget->_updateView();
380
381 return;
382 }
383 }
384 // мы не обрезаны и были нормальные
385 else if (!mIsMargin)
386 {
387 _updateSkinItemView();
388 return;
389 }
390
391 // запоминаем текущее состояние
392 mIsMargin = margin;
393
394 // если скин был скрыт, то покажем
395 _setSubSkinVisible(true);
396
397 // обновляем наших детей, а они уже решат обновлять ли своих детей
398 for (auto& widget : mWidgetChild)
399 widget->_updateView();
400 for (auto& widget : mWidgetChildSkin)
401 widget->_updateView();
402
403 _updateSkinItemView();
404 }
405
406 bool Widget::_setWidgetState(std::string_view _state)
407 {

Callers 2

_updateChildsMethod · 0.45
_updateSkinItemViewMethod · 0.45

Calls 1

_checkOutsideFunction · 0.85

Tested by

no test coverage detected