#include <KDChartLayoutItems.h>
Inheritance diagram for KDChart::LineLayoutItem:
Public Member Functions | |
virtual Qt::Orientations | expandingDirections () const |
virtual QRect | geometry () const |
virtual bool | isEmpty () const |
LineLayoutItem (AbstractDiagram *diagram, int length, const QPen &pen, Qt::Alignment alignment=0) | |
virtual QSize | maximumSize () const |
virtual QSize | minimumSize () const |
virtual void | paint (QPainter *) |
virtual void | paintAll (QPainter &painter) |
Default impl: just call paint. | |
virtual void | paintCtx (PaintContext *context) |
Default impl: Paint the complete item using its layouted position and size. | |
QLayout * | parentLayout () |
void | removeFromParentLayout () |
virtual void | setGeometry (const QRect &r) |
void | setParentLayout (QLayout *lay) |
virtual void | setParentWidget (QWidget *widget) |
Inform the item about its widget: This enables the item, to trigger that widget's update, whenever the size of the item's contents has changed. | |
virtual QSize | sizeHint () const |
virtual void | sizeHintChanged () const |
Report changed size hint: ask the parent widget to recalculate the layout. | |
Static Public Member Functions | |
void | paintIntoRect (QPainter *painter, const QRect &rect, const QPen &pen) |
Protected Attributes | |
QWidget * | mParent |
QLayout * | mParentLayout |
|
Definition at line 612 of file KDChartLayoutItems.cpp.
00616 : AbstractLayoutItem( alignment ) 00617 , mDiagram( diagram ) 00618 , mLength( length ) 00619 , mPen( pen ) 00620 { 00621 //have a mini pen width 00622 if ( pen.width() < 2 ) 00623 mPen.setWidth( 2 ); 00624 } |
|
Definition at line 626 of file KDChartLayoutItems.cpp.
00627 { 00628 return 0; // Grow neither vertically nor horizontally 00629 } |
|
Definition at line 631 of file KDChartLayoutItems.cpp.
00632 {
00633 return mRect;
00634 }
|
|
Definition at line 636 of file KDChartLayoutItems.cpp.
00637 { 00638 return false; // never empty, otherwise the layout item would not exist 00639 } |
|
Definition at line 641 of file KDChartLayoutItems.cpp. References sizeHint().
00642 { 00643 return sizeHint(); // PENDING(kalle) Review, quite inflexible 00644 } |
|
Definition at line 646 of file KDChartLayoutItems.cpp. References sizeHint().
00647 { 00648 return sizeHint(); // PENDING(kalle) Review, quite inflexible 00649 } |
|
Implements KDChart::AbstractLayoutItem. Definition at line 661 of file KDChartLayoutItems.cpp. References paintIntoRect().
00662 { 00663 paintIntoRect( painter, mRect, mPen ); 00664 } |
|
Default impl: just call paint. Derived classes like KDChart::AbstractArea are providing additional action here. Reimplemented in KDChart::AbstractArea, and KDChart::TextArea. Definition at line 69 of file KDChartLayoutItems.cpp. References KDChart::AbstractLayoutItem::paint().
00070 { 00071 paint( &painter ); 00072 } |
|
Default impl: Paint the complete item using its layouted position and size.
Reimplemented in KDChart::CartesianAxis. Definition at line 77 of file KDChartLayoutItems.cpp. References KDChart::AbstractLayoutItem::paint(), and KDChart::PaintContext::painter().
00078 { 00079 if( context ) 00080 paint( context->painter() ); 00081 } |
|
Definition at line 666 of file KDChartLayoutItems.cpp. Referenced by paint().
00670 { 00671 if( ! rect.isValid() ) 00672 return; 00673 00674 const QPen oldPen = painter->pen(); 00675 painter->setPen( pen ); 00676 const qreal y = rect.center().y(); 00677 painter->drawLine( QPointF( rect.left(), y ), 00678 QPointF( rect.right(), y ) ); 00679 painter->setPen( oldPen ); 00680 } |
|
Definition at line 74 of file KDChartLayoutItems.h.
00075 { 00076 return mParentLayout; 00077 } |
|
Definition at line 78 of file KDChartLayoutItems.h. Referenced by KDChart::Chart::takeCoordinatePlane().
00079 { 00080 if( mParentLayout ){ 00081 if( widget() ) 00082 mParentLayout->removeWidget( widget() ); 00083 else 00084 mParentLayout->removeItem( this ); 00085 } 00086 } |
|
Definition at line 651 of file KDChartLayoutItems.cpp.
00652 { 00653 mRect = r; 00654 } |
|
Definition at line 70 of file KDChartLayoutItems.h.
00071 { 00072 mParentLayout = lay; 00073 } |
|
Inform the item about its widget: This enables the item, to trigger that widget's update, whenever the size of the item's contents has changed. Thus, you need to call setParentWidget on every item, that has a non-fixed size. Definition at line 64 of file KDChartLayoutItems.cpp. References KDChart::AbstractLayoutItem::mParent. Referenced by KDChart::Legend::buildLegend(), and KDChart::AbstractCartesianDiagram::takeAxis().
00065 { 00066 mParent = widget; 00067 } |
|
Definition at line 656 of file KDChartLayoutItems.cpp. Referenced by maximumSize(), and minimumSize().
00657 {
00658 return QSize( mLength, mPen.width()+2 );
00659 }
|
|
Report changed size hint: ask the parent widget to recalculate the layout.
Definition at line 86 of file KDChartLayoutItems.cpp. Referenced by KDChart::TextLayoutItem::sizeHint().
00087 { 00088 // This is exactly like what QWidget::updateGeometry does. 00089 // qDebug("KDChart::AbstractLayoutItem::sizeHintChanged() called"); 00090 if( mParent ) { 00091 if ( mParent->layout() ) 00092 mParent->layout()->invalidate(); 00093 else 00094 QApplication::postEvent( mParent, new QEvent( QEvent::LayoutRequest ) ); 00095 } 00096 } |
|
Definition at line 88 of file KDChartLayoutItems.h. Referenced by KDChart::AbstractLayoutItem::setParentWidget(). |
|
Definition at line 89 of file KDChartLayoutItems.h. |