void Button::press(){ this->pressed = !isPressed(); if(pressed){ setFrameRect(getCurrentFrame() + 1); } else{ setFrameRect(getCurrentFrame() - 1); } }
RenderScrollbar::RenderScrollbar(ScrollableArea* scrollableArea, ScrollbarOrientation orientation, Node* ownerNode, LocalFrame* owningFrame) : Scrollbar(scrollableArea, orientation, RegularScrollbar, RenderScrollbarTheme::renderScrollbarTheme()) , m_owner(ownerNode) , m_owningFrame(owningFrame) { ASSERT(ownerNode || owningFrame); // FIXME: We need to do this because RenderScrollbar::styleChanged is called as soon as the scrollbar is created. // Update the scrollbar size. int width = 0; int height = 0; updateScrollbarPart(ScrollbarBGPart); if (RenderScrollbarPart* part = m_parts.get(ScrollbarBGPart)) { part->layout(); width = part->width(); height = part->height(); } else if (this->orientation() == HorizontalScrollbar) width = this->width(); else height = this->height(); setFrameRect(IntRect(0, 0, width, height)); #if ENABLE(OILPAN) ThreadState::current()->registerPreFinalizer(*this); #endif }
void PopupContainer::showInRect(const FloatQuad& controlPosition, const IntSize& controlSize, FrameView* v, int index) { // The controlSize is the size of the select box. It's usually larger than // we need. Subtract border size so that usually the container will be // displayed exactly the same width as the select box. listBox()->setBaseWidth(max(controlSize.width() - borderSize * 2, 0)); listBox()->updateFromElement(); // We set the selected item in updateFromElement(), and disregard the // index passed into this function (same as Webkit's PopupMenuWin.cpp) // FIXME: make sure this is correct, and add an assertion. // ASSERT(popupWindow(popup)->listBox()->selectedIndex() == index); // Save and convert the controlPosition to main window coords. Each point is converted separately // to window coordinates because the control could be in a transformed webview and then each point // would be transformed by a different delta. m_controlPosition.setP1(v->contentsToWindow(IntPoint(controlPosition.p1().x(), controlPosition.p1().y()))); m_controlPosition.setP2(v->contentsToWindow(IntPoint(controlPosition.p2().x(), controlPosition.p2().y()))); m_controlPosition.setP3(v->contentsToWindow(IntPoint(controlPosition.p3().x(), controlPosition.p3().y()))); m_controlPosition.setP4(v->contentsToWindow(IntPoint(controlPosition.p4().x(), controlPosition.p4().y()))); m_controlSize = controlSize; // Position at (0, 0) since the frameRect().location() is relative to the // parent WebWidget. setFrameRect(IntRect(IntPoint(), controlSize)); showPopup(v); }
void LayoutReplica::layout() { setFrameRect(parentBox()->borderBoxRect()); addVisualOverflow(parentBox()->visualOverflowRect()); updateLayerTransformAfterLayout(); clearNeedsLayout(); }
void KALedMeter::resizeEvent( QResizeEvent *e ) { Q3Frame::resizeEvent( e ); int w = ( width() - frameWidth() - 2 ) / mCount * mCount; w += frameWidth() + 2; setFrameRect( QRect( 0, 0, w, height() ) ); }
LayoutScrollbar::LayoutScrollbar(ScrollableArea* scrollableArea, ScrollbarOrientation orientation, Node* ownerNode, LocalFrame* owningFrame) : Scrollbar(scrollableArea, orientation, RegularScrollbar, nullptr, LayoutScrollbarTheme::layoutScrollbarTheme()), m_owner(ownerNode), m_owningFrame(owningFrame) { ASSERT(ownerNode || owningFrame); // FIXME: We need to do this because LayoutScrollbar::styleChanged is called // as soon as the scrollbar is created. // Update the scrollbar size. IntRect rect(0, 0, 0, 0); updateScrollbarPart(ScrollbarBGPart); if (LayoutScrollbarPart* part = m_parts.get(ScrollbarBGPart)) { part->layout(); rect.setSize(flooredIntSize(part->size())); } else if (this->orientation() == HorizontalScrollbar) { rect.setWidth(this->width()); } else { rect.setHeight(this->height()); } setFrameRect(rect); }
void PrettyPopupMenu::resizeEvent(QResizeEvent * e) { KPopupMenu::resizeEvent( e ); setFrameRect( QStyle::visualRect( QRect( s_sidePixmap.width(), 0, width() - s_sidePixmap.width(), height() ), this ) ); }
void RenderScrollbar::updateScrollbarParts(bool destroy) { updateScrollbarPart(ScrollbarBGPart, destroy); updateScrollbarPart(BackButtonStartPart, destroy); updateScrollbarPart(ForwardButtonStartPart, destroy); updateScrollbarPart(BackTrackPart, destroy); updateScrollbarPart(ThumbPart, destroy); updateScrollbarPart(ForwardTrackPart, destroy); updateScrollbarPart(BackButtonEndPart, destroy); updateScrollbarPart(ForwardButtonEndPart, destroy); updateScrollbarPart(TrackBGPart, destroy); if (destroy) return; // See if the scrollbar's thickness changed. If so, we need to mark our owning object as needing a layout. bool isHorizontal = orientation() == HorizontalScrollbar; int oldThickness = isHorizontal ? height() : width(); int newThickness = 0; RenderScrollbarPart* part = m_parts.get(ScrollbarBGPart); if (part) { part->layout(); newThickness = isHorizontal ? part->height() : part->width(); } if (newThickness != oldThickness) { setFrameRect(IntRect(x(), y(), isHorizontal ? width() : newThickness, isHorizontal ? newThickness : height())); owningRenderer()->setChildNeedsLayout(true); } }
void PopupContainer::showInRect(const IntRect& r, FrameView* v, int index) { // The rect is the size of the select box. It's usually larger than we need. // subtract border size so that usually the container will be displayed // exactly the same width as the select box. listBox()->setBaseWidth(max(r.width() - kBorderSize * 2, 0)); listBox()->updateFromElement(); // We set the selected item in updateFromElement(), and disregard the // index passed into this function (same as Webkit's PopupMenuWin.cpp) // FIXME: make sure this is correct, and add an assertion. // ASSERT(popupWindow(popup)->listBox()->selectedIndex() == index); // Convert point to main window coords. IntPoint location = v->contentsToWindow(r.location()); // Move it below the select widget. location.move(0, r.height()); m_originalFrameRect = IntRect(location, r.size()); // Position at (0, 0) since the frameRect().location() is relative to the parent WebWidget. setFrameRect(IntRect(IntPoint(), r.size())); showPopup(v); }
void RenderReplica::layout() { StackStats::LayoutCheckPoint layoutCheckPoint; setFrameRect(parentBox()->borderBoxRect()); updateLayerTransform(); clearNeedsLayout(); }
Button::Button(int frameRect,sf::Texture* tex,std::string buttonName){ this->pressed = false; this->name = buttonName; this->setImage(tex); setFrameSize(BUTTON_WIDTH,BUTTON_HEIGHT); setFrameRect(frameRect); this->visible = true; this->ressource = 0; }
Button::Button(int frameRect,sf::Texture* tex){ this->pressed = false; this->setImage(tex); setFrameSize(BUTTON_WIDTH,BUTTON_HEIGHT); setFrameRect(frameRect); this->visible = true; this->id = -1; this->ressource = 0; }
ItemButton::ItemButton(int frameRect,sf::Texture* tex,int id){ this->id = id; this->setImage(tex); setFrameSize(32,32); setFrameRect(frameRect); text = new sf::Text(); updateCount(0); setVisible(false); }
void PanelKMenu::resizeEvent(QResizeEvent * e) { // kdDebug(1210) << "PanelKMenu::resizeEvent():" << endl; // kdDebug(1210) << geometry().width() << ", " << geometry().height() << endl; PanelServiceMenu::resizeEvent(e); setFrameRect( QStyle::visualRect( QRect( sidePixmap.width(), 0, width() - sidePixmap.width(), height() ), this ) ); }
void QFrame::resizeEvent( QResizeEvent *e ) { if ( !frect.isNull() ) { QRect r( frect.x(), frect.y(), width() - (e->oldSize().width() - frect.width()), height() - (e->oldSize().height() - frect.height()) ); setFrameRect( r ); } QWidget::resizeEvent( e ); }
Button::Button(int frameRect,sf::Texture* tex,std::string buttonName,int sizeX,int sizeY){ this->pressed = false; this->name = buttonName; this->setImage(tex); setFrameSize(sizeX,sizeY); setFrameRect(frameRect); this->visible = true; this->id = 0; this->ressource = 0; }
// **************************************************************************** // Method: QvisAbstractOpacityBar::resizeEvent // // Purpose: // // // Programmer: Jeremy Meredith // Creation: January 31, 2001 // // Modifications: // Brad Whitlock, Fri Jul 18 15:34:34 PDT 2008 // Qt 4. // // Brad Whitlock, Thu Dec 18 14:09:40 PST 2008 // I changed how the image gets invalidated. // // **************************************************************************** void QvisAbstractOpacityBar::resizeEvent(QResizeEvent*) { QRect framerect(rect()); framerect.setLeft(framerect.left() +5); framerect.setRight(framerect.right() -10); setFrameRect(framerect); imageDirty(); update(); }
void QFrame::resizeEvent( QResizeEvent *e ) { if ( !frect.isNull() ) { QRect r( frect.x(), frect.y(), width() - (e->oldSize().width() - frect.width()), height() - (e->oldSize().height() - frect.height()) ); setFrameRect( r ); } if ( autoMask()) updateMask(); }
/* Sets the right frame rect depending on the title. Also calculates the visible part of the title. */ void QGroupBox::calculateFrame() { lenvisible = str.length(); if ( lenvisible && !isCheckable() ) { // do we have a label? QFontMetrics fm = fontMetrics(); while ( lenvisible ) { int tw = fm.width( str, lenvisible ) + 4*fm.width(QChar(' ')); if ( tw < width() ) break; lenvisible--; } if ( lenvisible ) { // but do we also have a visible label? QRect r = rect(); int va = style().styleHint(QStyle::SH_GroupBox_TextLabelVerticalAlignment, this); if(va & AlignVCenter) r.setTop( fm.height()/2 ); // frame rect should be else if(va & AlignTop) r.setTop(fm.ascent()); setFrameRect( r ); // smaller than client rect return; } } else if ( isCheckable() ) { #ifndef QT_NO_CHECKBOX QRect r = rect(); int va = style().styleHint(QStyle::SH_GroupBox_TextLabelVerticalAlignment, this); if( va & AlignVCenter ) r.setTop( d->checkbox->rect().height()/2 ); else if( va & AlignTop ) r.setTop( fontMetrics().ascent() ); setFrameRect( r ); return; #endif } // no visible label setFrameRect( QRect(0,0,0,0) ); // then use client rect }
RenderScrollbar::RenderScrollbar(ScrollbarClient* client, ScrollbarOrientation orientation, RenderBox* renderer, Frame* owningFrame) : Scrollbar(client, orientation, RegularScrollbar, RenderScrollbarTheme::renderScrollbarTheme()) , m_owner(renderer) , m_owningFrame(owningFrame) { // FIXME: We need to do this because RenderScrollbar::styleChanged is called as soon as the scrollbar is created. // Update the scrollbar size. updateScrollbarPart(ScrollbarBGPart); RenderScrollbarPart* part = m_parts.get(ScrollbarBGPart); if (!part) return; part->layout(); setFrameRect(IntRect(0, 0, part->width(), part->height())); }
int QFrame::qt_metacall(QMetaObject::Call _c, int _id, void **_a) { _id = QWidget::qt_metacall(_c, _id, _a); if (_id < 0) return _id; #ifndef QT_NO_PROPERTIES if (_c == QMetaObject::ReadProperty) { void *_v = _a[0]; switch (_id) { case 0: *reinterpret_cast< Shape*>(_v) = frameShape(); break; case 1: *reinterpret_cast< Shadow*>(_v) = frameShadow(); break; case 2: *reinterpret_cast< int*>(_v) = lineWidth(); break; case 3: *reinterpret_cast< int*>(_v) = midLineWidth(); break; case 4: *reinterpret_cast< int*>(_v) = frameWidth(); break; case 5: *reinterpret_cast< QRect*>(_v) = frameRect(); break; } _id -= 6; } else if (_c == QMetaObject::WriteProperty) { void *_v = _a[0]; switch (_id) { case 0: setFrameShape(*reinterpret_cast< Shape*>(_v)); break; case 1: setFrameShadow(*reinterpret_cast< Shadow*>(_v)); break; case 2: setLineWidth(*reinterpret_cast< int*>(_v)); break; case 3: setMidLineWidth(*reinterpret_cast< int*>(_v)); break; case 5: setFrameRect(*reinterpret_cast< QRect*>(_v)); break; } _id -= 6; } else if (_c == QMetaObject::ResetProperty) { _id -= 6; } else if (_c == QMetaObject::QueryPropertyDesignable) { _id -= 6; } else if (_c == QMetaObject::QueryPropertyScriptable) { _id -= 6; } else if (_c == QMetaObject::QueryPropertyStored) { _id -= 6; } else if (_c == QMetaObject::QueryPropertyEditable) { _id -= 6; } else if (_c == QMetaObject::QueryPropertyUser) { _id -= 6; } #endif // QT_NO_PROPERTIES return _id; }
TaskHeader::TaskHeader(QWidget *w, QWidget *parent) : QFrame(parent) { m_widget = w; setFrameShape(QFrame::StyledPanel); setFrameRect(rect().adjusted(0, 8, 0, 0)); setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed); QHBoxLayout *l = new QHBoxLayout(this); l->setMargin(1); m_spacer = new QSpacerItem(0, 0, QSizePolicy::Fixed, QSizePolicy::Fixed); l->addItem(m_spacer); m_text = new QLabel; QFont f = m_text->font(); f.setBold(true); m_text->setFont(f); m_button = new QToolButton; m_button->setObjectName("__qt__passive_button"); m_button->setAutoRaise(true); m_button->setCheckable(true); m_button->setArrowType(Qt::DownArrow); l->addWidget(m_text); l->addWidget(m_button); }
RenderScrollbar::RenderScrollbar(ScrollableArea* scrollableArea, ScrollbarOrientation orientation, RenderBox* renderer, Frame* owningFrame) : Scrollbar(scrollableArea, orientation, RegularScrollbar, RenderScrollbarTheme::renderScrollbarTheme()) , m_owner(renderer) , m_owningFrame(owningFrame) { // FIXME: We need to do this because RenderScrollbar::styleChanged is called as soon as the scrollbar is created. // Update the scrollbar size. int width = 0; int height = 0; updateScrollbarPart(ScrollbarBGPart); if (RenderScrollbarPart* part = m_parts.get(ScrollbarBGPart)) { part->layout(); width = part->width(); height = part->height(); } else if (this->orientation() == HorizontalScrollbar) width = this->width(); else height = this->height(); setFrameRect(IntRect(0, 0, width, height)); }
void LayoutScrollbar::updateScrollbarParts(bool destroy) { updateScrollbarPart(ScrollbarBGPart, destroy); updateScrollbarPart(BackButtonStartPart, destroy); updateScrollbarPart(ForwardButtonStartPart, destroy); updateScrollbarPart(BackTrackPart, destroy); updateScrollbarPart(ThumbPart, destroy); updateScrollbarPart(ForwardTrackPart, destroy); updateScrollbarPart(BackButtonEndPart, destroy); updateScrollbarPart(ForwardButtonEndPart, destroy); updateScrollbarPart(TrackBGPart, destroy); if (destroy) return; // See if the scrollbar's thickness changed. If so, we need to mark our // owning object as needing a layout. bool isHorizontal = orientation() == HorizontalScrollbar; int oldThickness = isHorizontal ? height() : width(); int newThickness = 0; LayoutScrollbarPart* part = m_parts.get(ScrollbarBGPart); if (part) { part->layout(); newThickness = (isHorizontal ? part->size().height() : part->size().width()).toInt(); } if (newThickness != oldThickness) { setFrameRect( IntRect(location(), IntSize(isHorizontal ? width() : newThickness, isHorizontal ? newThickness : height()))); if (LayoutBox* box = owningLayoutObjectWithinFrame()) { if (box->isLayoutBlock()) toLayoutBlock(box)->notifyScrollbarThicknessChanged(); box->setChildNeedsLayout(); if (m_scrollableArea) m_scrollableArea->setScrollCornerNeedsPaintInvalidation(); } } }
void KGroupBoxBase::initBox() { QRect peergeo; frect = QRect(BORDER_X, BORDER_Y, width() - 2*BORDER_X, height() - 2*BORDER_Y); peergeo = QRect(frect.left() + 6, frect.top() + 6, frect.width() - 12 - 1, frect.height() - 12 - 1); // adjust frame to fit title if(_title != 0) { frect.setTop(frect.top() + _title->minimumSize().height()/2); peergeo.setTop(peergeo.top() + _title->minimumSize().height()); _title->resize(_title->minimumSize().width() + 8, _title->minimumSize().height()); _title->move(peergeo.left() + 6, frect.top() - _title->minimumSize().height()/2); } setFrameRect(frect); _peer->setGeometry(peergeo); }
void PopupContainer::refresh(const IntRect& targetControlRect) { IntPoint location = m_frameView->contentsToWindow(targetControlRect.location()); // Move it below the select widget. location.move(0, targetControlRect.height()); listBox()->setBaseWidth(max(m_originalFrameRect.width() - kBorderSize * 2, 0)); listBox()->updateFromElement(); // Store the original size to check if we need to request the location. IntSize originalSize = size(); IntRect widgetRect = layoutAndCalculateWidgetRect(targetControlRect.height(), location); if (originalSize != widgetRect.size()) { ChromeClientChromium* chromeClient = chromeClientChromium(); if (chromeClient) { IntPoint widgetLocation = chromeClient->screenToRootView(widgetRect.location()); widgetRect.setLocation(widgetLocation); setFrameRect(widgetRect); } } invalidate(); }
void RenderReplica::layout() { setFrameRect(parentBox()->borderBoxRect()); setNeedsLayout(false); }
void LayoutSVGText::layout() { ASSERT(needsLayout()); LayoutAnalyzer::Scope analyzer(*this); subtreeStyleDidChange(); bool updateCachedBoundariesInParents = false; if (m_needsTransformUpdate) { m_localTransform = toSVGTextElement(node())->calculateAnimatedLocalTransform(); m_needsTransformUpdate = false; updateCachedBoundariesInParents = true; } if (!everHadLayout()) { // When laying out initially, collect all layout attributes, build the character data map, // and propogate resulting SVGLayoutAttributes to all LayoutSVGInlineText children in the subtree. ASSERT(m_layoutAttributes.isEmpty()); collectLayoutAttributes(this, m_layoutAttributes); updateFontInAllDescendants(this); m_layoutAttributesBuilder.buildLayoutAttributesForForSubtree(*this); m_needsReordering = true; m_needsTextMetricsUpdate = false; m_needsPositioningValuesUpdate = false; updateCachedBoundariesInParents = true; } else if (m_needsPositioningValuesUpdate) { // When the x/y/dx/dy/rotate lists change, recompute the layout attributes, and eventually // update the on-screen font objects as well in all descendants. if (m_needsTextMetricsUpdate) { updateFontInAllDescendants(this); m_needsTextMetricsUpdate = false; } m_layoutAttributesBuilder.buildLayoutAttributesForForSubtree(*this); m_needsReordering = true; m_needsPositioningValuesUpdate = false; updateCachedBoundariesInParents = true; } else if (m_needsTextMetricsUpdate || SVGLayoutSupport::findTreeRootObject(this)->isLayoutSizeChanged()) { // If the root layout size changed (eg. window size changes) or the transform to the root // context has changed then recompute the on-screen font size. updateFontInAllDescendants(this, &m_layoutAttributesBuilder); ASSERT(!m_needsReordering); ASSERT(!m_needsPositioningValuesUpdate); m_needsTextMetricsUpdate = false; updateCachedBoundariesInParents = true; } checkLayoutAttributesConsistency(this, m_layoutAttributes); // Reduced version of LayoutBlock::layoutBlock(), which only takes care of SVG text. // All if branches that could cause early exit in LayoutBlocks layoutBlock() method are turned into assertions. ASSERT(!isInline()); ASSERT(!simplifiedLayout()); ASSERT(!scrollsOverflow()); ASSERT(!hasControlClip()); ASSERT(!positionedObjects()); ASSERT(!isAnonymousBlock()); if (!firstChild()) setChildrenInline(true); // FIXME: We need to find a way to only layout the child boxes, if needed. FloatRect oldBoundaries = objectBoundingBox(); ASSERT(childrenInline()); rebuildFloatsFromIntruding(); LayoutUnit beforeEdge = borderBefore() + paddingBefore(); LayoutUnit afterEdge = borderAfter() + paddingAfter() + scrollbarLogicalHeight(); setLogicalHeight(beforeEdge); LayoutState state(*this, locationOffset()); LayoutUnit paintInvalidationLogicalTop = 0; LayoutUnit paintInvalidationLogicalBottom = 0; layoutInlineChildren(true, paintInvalidationLogicalTop, paintInvalidationLogicalBottom, afterEdge); if (m_needsReordering) m_needsReordering = false; // If we don't have any line boxes, then make sure the frame rect is still cleared. if (!firstLineBox()) setFrameRect(LayoutRect()); m_overflow.clear(); addVisualEffectOverflow(); if (!updateCachedBoundariesInParents) updateCachedBoundariesInParents = oldBoundaries != objectBoundingBox(); // Invalidate all resources of this client if our layout changed. if (everHadLayout() && selfNeedsLayout()) SVGResourcesCache::clientLayoutChanged(this); // If our bounds changed, notify the parents. if (updateCachedBoundariesInParents) LayoutSVGBlock::setNeedsBoundariesUpdate(); clearNeedsLayout(); }
void RenderReplica::layout() { setFrameRect(parentBox()->borderBoxRect()); updateLayerTransform(); setNeedsLayout(false); }