void View::onSizeHint(SizeHintEvent& ev) { Widget::onSizeHint(ev); gfx::Size sz = ev.sizeHint(); sz += m_viewport.sizeHint(); ev.setSizeHint(sz); }
void SearchEntry::onSizeHint(SizeHintEvent& ev) { Entry::onSizeHint(ev); Size sz = ev.sizeHint(); SkinTheme* theme = static_cast<SkinTheme*>(this->theme()); auto icon = theme->parts.iconSearch()->bitmap(0); sz.h = MAX(sz.h, icon->height()+border().height()); ev.setSizeHint(sz); }
void View::onSizeHint(SizeHintEvent& ev) { Size viewSize = m_viewport.sizeHint(); viewSize.w += border().width(); viewSize.h += border().height(); ev.setSizeHint(viewSize); }
void PopupWindow::onSizeHint(SizeHintEvent& ev) { ScreenGraphics g; g.setFont(font()); Size resultSize(0, 0); if (hasText()) resultSize = g.fitString(text(), (clientBounds() - border()).w, align()); resultSize.w += border().width(); resultSize.h += border().height(); if (!children().empty()) { Size maxSize(0, 0); Size reqSize; for (auto child : children()) { reqSize = child->sizeHint(); maxSize.w = MAX(maxSize.w, reqSize.w); maxSize.h = MAX(maxSize.h, reqSize.h); } resultSize.w = MAX(resultSize.w, maxSize.w + border().width()); resultSize.h += maxSize.h; } ev.setSizeHint(resultSize); }
void onSizeHint(SizeHintEvent& ev) override { SkinTheme* theme = static_cast<SkinTheme*>(this->theme()); Style* style = theme->styles.recentFile(); Style* styleDetail = theme->styles.recentFileDetail(); Style::State state; gfx::Size sz1 = style->sizeHint(m_name.c_str(), state); gfx::Size sz2 = styleDetail->sizeHint(m_path.c_str(), state); ev.setSizeHint(gfx::Size(sz1.w+sz2.w, MAX(sz1.h, sz2.h))); }
void onSizeHint(SizeHintEvent& ev) override { SkinTheme* theme = static_cast<SkinTheme*>(this->theme()); ui::Style* style = theme->styles.newsItem(); setText(m_title); gfx::Size sz = theme->calcSizeHint(this, style); if (!m_desc.empty()) sz.h *= 5; ev.setSizeHint(gfx::Size(0, sz.h)); }
void Label::onSizeHint(SizeHintEvent& ev) { gfx::Size sz(0, 0); if (hasText()) { // Labels are not UIString sz.w = font()->textLength(text().c_str()); sz.h = textHeight(); } sz.w += border().width(); sz.h += border().height(); ev.setSizeHint(sz); }
void IntEntry::onSizeHint(SizeHintEvent& ev) { int trailing = font()->textLength(getSuffix()); trailing = MAX(trailing, 2*theme()->getEntryCaretSize(this).w); int min_w = font()->textLength(m_slider.convertValueToText(m_min)); int max_w = font()->textLength(m_slider.convertValueToText(m_max)) + trailing; int w = MAX(min_w, max_w); int h = textHeight(); w += border().width(); h += border().height(); ev.setSizeHint(w, h); }
void onSizeHint(SizeHintEvent& ev) override { SkinTheme* theme = static_cast<SkinTheme*>(this->theme()); Style* style = theme->styles.newsItem(); Style* styleDetail = theme->styles.newsItemDetail(); Style::State state; gfx::Size sz1 = style->sizeHint(text().c_str(), state); gfx::Size sz2, sz2fourlines; if (!m_desc.empty()) { View* view = View::getView(parent()); sz2 = styleDetail->sizeHint(m_desc.c_str(), state, (view ? view->viewportBounds().w: 0)); sz2fourlines = styleDetail->sizeHint("\n\n\n", state); } ev.setSizeHint(gfx::Size(0, MIN(sz1.h+sz2fourlines.h, sz1.h+sz2.h))); }
void Grid::onSizeHint(SizeHintEvent& ev) { int w, h; w = h = 0; calculateSize(); // Calculate the total sumStripSize(m_colstrip, w); sumStripSize(m_rowstrip, h); w += border().width(); h += border().height(); ev.setSizeHint(Size(w, h)); }
void Entry::onSizeHint(SizeHintEvent& ev) { int trailing = font()->textLength(getSuffix()); trailing = MAX(trailing, 2*theme()->getEntryCaretSize(this).w); int w = font()->textLength("w") * std::min(m_maxsize, 6) + + trailing + border().width(); w = std::min(w, ui::display_w()/2); int h = + font()->height() + border().height(); ev.setSizeHint(w, h); }
void ListItem::onSizeHint(SizeHintEvent& ev) { int w = 0, h = 0; Size maxSize; if (hasText()) maxSize = textSize(); else maxSize.w = maxSize.h = 0; for (auto child : children()) { Size reqSize = child->sizeHint(); maxSize.w = MAX(maxSize.w, reqSize.w); maxSize.h = MAX(maxSize.h, reqSize.h); } w = maxSize.w + border().width(); h = maxSize.h + border().height(); ev.setSizeHint(Size(w, h)); }
void ColorSpectrum::onSizeHint(SizeHintEvent& ev) { ev.setSizeHint(gfx::Size(32*ui::guiscale(), 32*ui::guiscale())); }
void ColorCurveEditor::onSizeHint(SizeHintEvent& ev) { ev.setSizeHint(gfx::Size(1 + border().width(), 1 + border().height())); }
void ColorSliders::onSizeHint(SizeHintEvent& ev) { ev.setSizeHint(m_grid.sizeHint()); }
void Notifications::onSizeHint(SizeHintEvent& ev) { ev.setSizeHint(gfx::Size(16, 10)*guiscale()); // TODO hard-coded flag size }
void StyledButton::onSizeHint(SizeHintEvent& ev) { ev.setSizeHint( m_style->sizeHint(NULL, skin::Style::State()) + 4*guiscale()); }