![]() |
![]() |
![]() |
![]() |
Вызывает метод Размерности указанного суперкласса
void PtSuperClassExtent( PtWidgetClassRef_t *wc_ref, PtWidget_t *widget );
Эта функция вызывает метод Размерности указанного суперкласса wc_ref.
Метод Размерности класса PtLabel обрабатывает многострочный текст (с подчеркиванием и полями) и политикой изменения размера.
Метод Размерности класса PtContainer обрабатывает политику изменения размера для всех его подклассов.
Метод Размерности класса PtGraphic вычисляет размерности, основанные на массиве точек, веса строки, начала координат и политики изменения размера.
Чтобы виджет имел минимальный ресурс x измерения:
static void my_container_extent( PtWidget_t *widget ) { MyWidget_t *mw = (MyWidget_t *)widget; PhRect_t canvas, render, old_extent; old_extent = widget->extent; if( PtResizePolicy( widget ) ) { PtChildBoundingBox( widget, &canvas, &render ); if( render.lr.x - render.ul.x + 1 < mw->min_x ) render.lr.x = render.ul.x + mw->min_x -1; PtAttemptResize( widget, &canvas, &render ); } else if( widget->area.size.x < mw->min_x ) widget->area.size.x = mw->min_x; PtSuperClassExtent( PtBasic, widget ); // Применить закрепление. PtApplyAnchors( widget ); if( memcmp( &widget->area, &old_area, sizeof( old_area ) ) ) PtInvokeResizeCallbacks( widget ); }
Фотон
Безопасность: | |
---|---|
Обработчик прерывания | Нет |
Обработчик сигнала | Нет |
Ветвь | Нет |
![]() |
![]() |
![]() |
![]() |
Все мессаги сюда:yanich@inbox.ru |