• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdesdk API Reference
  • KDE Home
  • Contact Us
 

kcachegrind

  • sources
  • kde-4.12
  • kdesdk
  • kcachegrind
  • libviews
treemap.h
Go to the documentation of this file.
1 /* This file is part of KCachegrind.
2  Copyright (C) 2002-2009 Josef Weidendorfer <Josef.Weidendorfer@gmx.de>
3 
4  KCachegrind is free software; you can redistribute it and/or
5  modify it under the terms of the GNU General Public
6  License as published by the Free Software Foundation, version 2.
7 
8  This program is distributed in the hope that it will be useful,
9  but WITHOUT ANY WARRANTY; without even the implied warranty of
10  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11  General Public License for more details.
12 
13  You should have received a copy of the GNU General Public License
14  along with this program; see the file COPYING. If not, write to
15  the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
16  Boston, MA 02110-1301, USA.
17 */
18 
30 #ifndef TREEMAP_H
31 #define TREEMAP_H
32 
33 #include <QString>
34 #include <QWidget>
35 #include <QPixmap>
36 #include <QColor>
37 #include <QStringList>
38 #include <QPaintEvent>
39 #include <QKeyEvent>
40 #include <QContextMenuEvent>
41 #include <QMouseEvent>
42 
43 class QMenu;
44 class Q3PopupMenu;
45 class TreeMapWidget;
46 class TreeMapItem;
47 class TreeMapItemList;
48 
49 
54 class DrawParams
55 {
56 public:
68  enum Position { TopLeft, TopCenter, TopRight,
69  BottomLeft, BottomCenter, BottomRight,
70  Default, Unknown};
71 
72  // no constructor as this is an abstract class
73  virtual ~DrawParams() {}
74 
75  virtual QString text(int) const = 0;
76  virtual QPixmap pixmap(int) const = 0;
77  virtual Position position(int) const = 0;
78  // 0: no limit, negative: leave at least -maxLines() free
79  virtual int maxLines(int) const { return 0; }
80  virtual int fieldCount() const { return 0; }
81 
82  virtual QColor backColor() const { return Qt::white; }
83  virtual const QFont& font() const = 0;
84 
85  virtual bool selected() const { return false; }
86  virtual bool current() const { return false; }
87  virtual bool shaded() const { return true; }
88  virtual bool rotated() const { return false; }
89  virtual bool drawFrame() const { return true; }
90 };
91 
92 
93 /*
94  * DrawParam with attributes stored
95  */
96 class StoredDrawParams: public DrawParams
97 {
98 public:
99  StoredDrawParams();
100  explicit StoredDrawParams(const QColor& c,
101  bool selected = false, bool current = false);
102 
103  // getters
104  QString text(int) const;
105  QPixmap pixmap(int) const;
106  Position position(int) const;
107  int maxLines(int) const;
108  int fieldCount() const { return _field.size(); }
109 
110  QColor backColor() const { return _backColor; }
111  bool selected() const { return _selected; }
112  bool current() const { return _current; }
113  bool shaded() const { return _shaded; }
114  bool rotated() const { return _rotated; }
115  bool drawFrame() const { return _drawFrame; }
116 
117  const QFont& font() const;
118 
119  // attribute setters
120  void setField(int f, const QString& t, const QPixmap& pm = QPixmap(),
121  Position p = Default, int maxLines = 0);
122  void setText(int f, const QString&);
123  void setPixmap(int f, const QPixmap&);
124  void setPosition(int f, Position);
125  void setMaxLines(int f, int);
126  void setBackColor(const QColor& c) { _backColor = c; }
127  void setSelected(bool b) { _selected = b; }
128  void setCurrent(bool b) { _current = b; }
129  void setShaded(bool b) { _shaded = b; }
130  void setRotated(bool b) { _rotated = b; }
131  void drawFrame(bool b) { _drawFrame = b; }
132 
133 protected:
134  QColor _backColor;
135  bool _selected :1;
136  bool _current :1;
137  bool _shaded :1;
138  bool _rotated :1;
139  bool _drawFrame :1;
140 
141 private:
142  // resize field array if needed to allow to access field <f>
143  void ensureField(int f);
144 
145  struct Field {
146  QString text;
147  QPixmap pix;
148  Position pos;
149  int maxLines;
150  };
151 
152  QVector<Field> _field;
153 };
154 
155 
156 /* State for drawing on a rectangle.
157  *
158  * Following drawing functions are provided:
159  * - background drawing with shading and 3D frame
160  * - successive pixmap/text drawing at various positions with wrap-around
161  * optimized for minimal space usage (e.g. if a text is drawn at top right
162  * after text on top left, the same line is used if space allows)
163  *
164  */
165 class RectDrawing
166 {
167 public:
168  RectDrawing(const QRect&);
169  ~RectDrawing();
170 
171  // The default DrawParams object used.
172  DrawParams* drawParams();
173  // we take control over the given object (i.e. delete at destruction)
174  void setDrawParams(DrawParams*);
175 
176  // draw on a given QPainter, use this class as info provider per default
177  void drawBack(QPainter*, DrawParams* dp = 0);
178  /* Draw field at position() from pixmap()/text() with maxLines().
179  * Returns true if something was drawn
180  */
181  bool drawField(QPainter*, int f, DrawParams* dp = 0);
182 
183  // resets rectangle for free space
184  void setRect(const QRect&);
185 
186  // Returns the rectangle area still free of text/pixmaps after
187  // a number of drawText() calls.
188  QRect remainingRect(DrawParams* dp = 0);
189 
190 private:
191  int _usedTopLeft, _usedTopCenter, _usedTopRight;
192  int _usedBottomLeft, _usedBottomCenter, _usedBottomRight;
193  QRect _rect;
194 
195  // temporary
196  int _fontHeight;
197  QFontMetrics* _fm;
198  DrawParams* _dp;
199 };
200 
201 
202 class TreeMapItemList: public QList<TreeMapItem*>
203 {
204 public:
205  TreeMapItem* commonParent();
206 };
207 
208 
221 class TreeMapItem: public StoredDrawParams
222 {
223 public:
224 
236  enum SplitMode { Bisection, Columns, Rows,
237  AlwaysBest, Best,
238  HAlternate, VAlternate,
239  Horizontal, Vertical };
240 
241  explicit TreeMapItem(TreeMapItem* parent = 0, double value = 1.0 );
242  TreeMapItem(TreeMapItem* parent, double value,
243  const QString& text1, const QString& text2 = QString(),
244  const QString& text3 = QString(), const QString& text4 = QString());
245  virtual ~TreeMapItem();
246 
247  bool isChildOf(TreeMapItem*);
248 
249  TreeMapItem* commonParent(TreeMapItem* item);
250 
251  // force a redraw of this item
252  void redraw();
253 
254  // delete all children
255  void clear();
256 
257  // force new child generation & refresh
258  void refresh();
259 
260  // call in a reimplemented items() method to check if already called
261  // after a clear(), this will return false
262  bool initialized();
263 
270  void addItem(TreeMapItem*);
271 
276  QStringList path(int) const;
277 
281  int depth() const;
282 
286  TreeMapItem* parent() const { return _parent; }
287 
292  void setItemRect(const QRect& r) { _rect = r; }
293  void clearItemRect();
294  const QRect& itemRect() const { return _rect; }
295  int width() const { return _rect.width(); }
296  int height() const { return _rect.height(); }
297 
302  void clearFreeRects();
303  const QList<QRect>& freeRects() const { return _freeRects; }
304  void addFreeRect(const QRect& r);
305 
309  int index() const { return _index; }
310  void setIndex(int i) { _index = i; }
311 
312 
316  TreeMapWidget* widget() const { return _widget; }
317 
318  void setParent(TreeMapItem* p);
319  void setWidget(TreeMapWidget* w) { _widget = w; }
320  void setSum(double s) { _sum = s; }
321  void setValue(double s) { _value = s; }
322 
323  virtual double sum() const;
324  virtual double value() const;
325  // replace "Default" position with setting from TreeMapWidget
326  virtual Position position(int) const;
327  virtual const QFont& font() const;
328  virtual bool isMarked(int) const;
329 
330  virtual int borderWidth() const;
331 
338  virtual int sorting(bool* ascending) const;
339 
349  void setSorting(int textNo, bool ascending = true);
350 
358  void resort(bool recursive = true);
359 
360  virtual SplitMode splitMode() const;
361  virtual int rtti() const;
362  // not const as this can create children on demand
363  virtual TreeMapItemList* children();
364 
365 protected:
366  TreeMapItemList* _children;
367  double _sum, _value;
368 
369 private:
370  TreeMapWidget* _widget;
371  TreeMapItem* _parent;
372 
373  int _sortTextNo;
374  bool _sortAscending;
375 
376  // temporary layout
377  QRect _rect;
378  QList<QRect> _freeRects;
379  int _depth;
380 
381  // temporary self value (when using level skipping)
382  double _unused_self;
383 
384  // index of last active subitem
385  int _index;
386 };
387 
388 
393 class TreeMapWidget: public QWidget
394 {
395  Q_OBJECT
396 
397 public:
398 
402  enum SelectionMode { Single, Multi, Extended, NoSelection };
403 
404  /* The widget gets owner of the base item */
405  explicit TreeMapWidget(TreeMapItem* base, QWidget* parent=0);
406  ~TreeMapWidget();
407 
411  TreeMapItem* base() const { return _base; }
412 
416  const QFont& currentFont() const;
417 
422  TreeMapItem* item(int x, int y) const;
423 
428  TreeMapItem* visibleItem(TreeMapItem*) const;
429 
435  TreeMapItem* possibleSelection(TreeMapItem*) const;
436 
442  void setSelected(TreeMapItem*, bool selected = true);
443 
453  void setMarked(int markNo = 1, bool redraw = true);
454 
460  bool clearSelection(TreeMapItem* parent = 0);
461 
471  void setRangeSelection(TreeMapItem* i1,
472  TreeMapItem* i2, bool selected);
473 
478  void setCurrent(TreeMapItem*, bool kbd=false);
479 
487  void setMaxSelectDepth(int d) { _maxSelectDepth = d; }
488 
489 
490  void setSelectionMode(SelectionMode m) { _selectionMode = m; }
491 
495  void setSplitMode(TreeMapItem::SplitMode m);
496  TreeMapItem::SplitMode splitMode() const;
497  // returns true if string was recognized
498  bool setSplitMode(const QString&);
499  QString splitModeString() const;
500 
501 
502  /*
503  * Shading of rectangles enabled ?
504  */
505  void setShadingEnabled(bool s);
506  bool isShadingEnabled() const { return _shading; }
507 
508  /* Setting for a whole depth level: draw 3D frame (default) or solid */
509  void drawFrame(int d, bool b);
510  bool drawFrame(int d) const { return (d<4)?_drawFrame[d]:true; }
511 
512  /* Setting for a whole depth level: draw items (default) or transparent */
513  void setTransparent(int d, bool b);
514  bool isTransparent(int d) const { return (d<4)?_transparent[d]:false; }
515 
525  void setVisibleWidth(int width, bool reuseSpace = false);
526 
538  void setSkipIncorrectBorder(bool enable = true);
539  bool skipIncorrectBorder() const { return _skipIncorrectBorder; }
540 
544  void setMaxDrawingDepth(int d);
545  int maxDrawingDepth() const { return _maxDrawingDepth; }
546 
550  void setMinimalArea(int area);
551  int minimalArea() const { return _minimalArea; }
552 
553  /* defaults for text attributes */
554  QString defaultFieldType(int) const;
555  QString defaultFieldStop(int) const;
556  bool defaultFieldVisible(int) const;
557  bool defaultFieldForced(int) const;
558  DrawParams::Position defaultFieldPosition(int) const;
559 
565  void setFieldType(int, const QString&);
566  QString fieldType(int) const;
567 
571  void setFieldStop(int, const QString&);
572  QString fieldStop(int) const;
573 
579  void setFieldVisible(int, bool);
580  bool fieldVisible(int) const;
581 
587  void setFieldForced(int, bool);
588  bool fieldForced(int) const;
589 
593  void setFieldPosition(int, DrawParams::Position);
594  DrawParams::Position fieldPosition(int) const;
595  void setFieldPosition(int, const QString&);
596  QString fieldPositionString(int) const;
597 
601  void setAllowRotation(bool);
602  bool allowRotation() const { return _allowRotation; }
603 
604  void setBorderWidth(int w);
605  int borderWidth() const { return _borderWidth; }
606 
611  void addSplitDirectionItems(QMenu*);
612 
613  TreeMapWidget* widget() { return this; }
614  TreeMapItem* current() const { return _current; }
615  TreeMapItemList selection() const { return _selection; }
616  bool isSelected(TreeMapItem* i) const;
617  int maxSelectDepth() const { return _maxSelectDepth; }
618  SelectionMode selectionMode() const { return _selectionMode; }
619 
624  virtual QString tipString(TreeMapItem* i) const;
625 
630  void redraw(TreeMapItem*);
631  void redraw() { redraw(_base); }
632 
636  void resort() { _base->resort(true); }
637 
638  // internal
639  void drawTreeMap();
640 
641  // used internally when items are destroyed
642  void deletingItem(TreeMapItem*);
643 
644 protected slots:
645  void splitActivated(QAction*);
646 
647 signals:
648  void selectionChanged();
649  void selectionChanged(TreeMapItem*);
650 
656  void currentChanged(TreeMapItem*, bool keyboard);
657  void clicked(TreeMapItem*);
658  void returnPressed(TreeMapItem*);
659  void doubleClicked(TreeMapItem*);
660  void rightButtonPressed(TreeMapItem*, const QPoint &);
661  void contextMenuRequested(TreeMapItem*, const QPoint &);
662 
663 protected:
664  void mousePressEvent( QMouseEvent * );
665  void contextMenuEvent( QContextMenuEvent * );
666  void mouseReleaseEvent( QMouseEvent * );
667  void mouseMoveEvent( QMouseEvent * );
668  void mouseDoubleClickEvent( QMouseEvent * );
669  void keyPressEvent( QKeyEvent* );
670  void paintEvent( QPaintEvent * );
671  void fontChange( const QFont& );
672  bool event(QEvent *event);
673 
674 private:
675  TreeMapItemList diff(TreeMapItemList&, TreeMapItemList&);
676  // returns true if selection changed
677  TreeMapItem* setTmpSelected(TreeMapItem*, bool selected = true);
678  TreeMapItem* setTmpRangeSelection(TreeMapItem* i1,
679  TreeMapItem* i2, bool selected);
680  bool isTmpSelected(TreeMapItem* i);
681 
682  void drawItem(QPainter* p, TreeMapItem*);
683  void drawItems(QPainter* p, TreeMapItem*);
684  bool horizontal(TreeMapItem* i, const QRect& r);
685  void drawFill(TreeMapItem*,QPainter* p, const QRect& r);
686  void drawFill(TreeMapItem*,QPainter* p, const QRect& r,
687  TreeMapItemList* list, int idx, int len, bool goBack);
688  bool drawItemArray(QPainter* p, TreeMapItem*, const QRect& r, double,
689  TreeMapItemList* list, int idx, int len, bool);
690  bool resizeAttr(int);
691 
692  void addSplitAction(QMenu*, const QString&, int);
693 
694  TreeMapItem* _base;
695  TreeMapItem *_current, *_pressed, *_lastOver, *_oldCurrent;
696  int _maxSelectDepth, _maxDrawingDepth;
697 
698  // attributes for field, per textNo
699  struct FieldAttr {
700  QString type, stop;
701  bool visible, forced;
702  DrawParams::Position pos;
703  };
704  QVector<FieldAttr> _attr;
705 
706  SelectionMode _selectionMode;
707  TreeMapItem::SplitMode _splitMode;
708  int _visibleWidth, _stopArea, _minimalArea, _borderWidth;
709  bool _reuseSpace, _skipIncorrectBorder, _drawSeparators, _shading;
710  bool _allowRotation;
711  bool _transparent[4], _drawFrame[4];
712  TreeMapItem * _needsRefresh;
713  TreeMapItemList _selection;
714  int _markNo;
715 
716  // temporary selection while dragging, used for drawing
717  // most of the time, _selection == _tmpSelection
718  TreeMapItemList _tmpSelection;
719  bool _inShiftDrag, _inControlDrag;
720 
721  // temporary widget font metrics while drawing
722  QFont _font;
723  int _fontHeight;
724 
725  // back buffer pixmap
726  QPixmap _pixmap;
727 };
728 
729 #endif
TreeMapWidget::base
TreeMapItem * base() const
Returns the TreeMapItem filling out the widget space.
Definition: treemap.h:411
StoredDrawParams::setSelected
void setSelected(bool b)
Definition: treemap.h:127
TreeMapItem::initialized
bool initialized()
Definition: treemap.cpp:973
TreeMapItem::addFreeRect
void addFreeRect(const QRect &r)
Definition: treemap.cpp:1108
TreeMapItem::clear
void clear()
Definition: treemap.cpp:927
TreeMapItem::borderWidth
virtual int borderWidth() const
Definition: treemap.cpp:1031
StoredDrawParams::setCurrent
void setCurrent(bool b)
Definition: treemap.h:128
RectDrawing::drawField
bool drawField(QPainter *, int f, DrawParams *dp=0)
Definition: treemap.cpp:468
TreeMapWidget::setFieldStop
void setFieldStop(int, const QString &)
Stop drawing at item with name.
Definition: treemap.cpp:1388
TreeMapWidget::splitMode
TreeMapItem::SplitMode splitMode() const
Definition: treemap.cpp:1217
StoredDrawParams::_shaded
bool _shaded
Definition: treemap.h:137
TreeMapItem::sum
virtual double sum() const
Definition: treemap.cpp:1004
TreeMapWidget::setFieldPosition
void setFieldPosition(int, DrawParams::Position)
Set the field position in the area.
Definition: treemap.cpp:1442
DrawParams::fieldCount
virtual int fieldCount() const
Definition: treemap.h:80
RectDrawing::~RectDrawing
~RectDrawing()
Definition: treemap.cpp:193
TreeMapWidget::item
TreeMapItem * item(int x, int y) const
Returns the area item at position x/y, independent from any maxSelectDepth setting.
Definition: treemap.cpp:1541
TreeMapWidget::setSplitMode
void setSplitMode(TreeMapItem::SplitMode m)
for setting/getting global split direction
Definition: treemap.cpp:1209
TreeMapWidget::minimalArea
int minimalArea() const
Definition: treemap.h:551
TreeMapItem::Horizontal
Definition: treemap.h:239
TreeMapItem::setSum
void setSum(double s)
Definition: treemap.h:320
StoredDrawParams::drawFrame
void drawFrame(bool b)
Definition: treemap.h:131
TreeMapItem::_sum
double _sum
Definition: treemap.h:367
TreeMapWidget::tipString
virtual QString tipString(TreeMapItem *i) const
Return tooltip string to show for a item (can be rich text) Default implementation gives lines with "...
Definition: treemap.cpp:1521
StoredDrawParams::pixmap
QPixmap pixmap(int) const
Definition: treemap.cpp:87
TreeMapWidget::allowRotation
bool allowRotation() const
Definition: treemap.h:602
TreeMapWidget::current
TreeMapItem * current() const
Definition: treemap.h:614
TreeMapWidget::addSplitDirectionItems
void addSplitDirectionItems(QMenu *)
Populate given menu with option items.
Definition: treemap.cpp:2848
RectDrawing::drawBack
void drawBack(QPainter *, DrawParams *dp=0)
Definition: treemap.cpp:253
StoredDrawParams::shaded
bool shaded() const
Definition: treemap.h:113
DrawParams::position
virtual Position position(int) const =0
TreeMapWidget::maxSelectDepth
int maxSelectDepth() const
Definition: treemap.h:617
TreeMapWidget::setShadingEnabled
void setShadingEnabled(bool s)
Definition: treemap.cpp:1257
TreeMapItem::redraw
void redraw()
Definition: treemap.cpp:921
StoredDrawParams::_rotated
bool _rotated
Definition: treemap.h:138
TreeMapWidget::setSelected
void setSelected(TreeMapItem *, bool selected=true)
Selects or unselects an item.
Definition: treemap.cpp:1626
QWidget
TreeMapItem::clearItemRect
void clearItemRect()
Definition: treemap.cpp:1097
TreeMapItem::rtti
virtual int rtti() const
Definition: treemap.cpp:1084
DrawParams::font
virtual const QFont & font() const =0
DrawParams
Drawing parameters for an object.
Definition: treemap.h:54
TreeMapItem::height
int height() const
Definition: treemap.h:296
TreeMapWidget::TreeMapWidget
TreeMapWidget(TreeMapItem *base, QWidget *parent=0)
Definition: treemap.cpp:1153
TreeMapItem::TreeMapItem
TreeMapItem(TreeMapItem *parent=0, double value=1.0)
Definition: treemap.cpp:836
TreeMapWidget::~TreeMapWidget
~TreeMapWidget()
Definition: treemap.cpp:1199
StoredDrawParams::setPixmap
void setPixmap(int f, const QPixmap &)
Definition: treemap.cpp:155
TreeMapWidget::setMinimalArea
void setMinimalArea(int area)
Minimal area for rectangles to draw.
Definition: treemap.cpp:1492
TreeMapItem::SplitMode
SplitMode
Split direction for nested areas: AlwaysBest: Choose split direction for every subitem according to l...
Definition: treemap.h:236
TreeMapItem::Columns
Definition: treemap.h:236
TreeMapWidget::visibleItem
TreeMapItem * visibleItem(TreeMapItem *) const
Returns the nearest item with a visible area; this can be the given item itself.
Definition: treemap.cpp:1607
TreeMapWidget::NoSelection
Definition: treemap.h:402
TreeMapWidget::fieldPosition
DrawParams::Position fieldPosition(int) const
Definition: treemap.cpp:1453
TreeMapItem::itemRect
const QRect & itemRect() const
Definition: treemap.h:294
TreeMapWidget::mouseReleaseEvent
void mouseReleaseEvent(QMouseEvent *)
Definition: treemap.cpp:1950
StoredDrawParams::setShaded
void setShaded(bool b)
Definition: treemap.h:129
TreeMapWidget::skipIncorrectBorder
bool skipIncorrectBorder() const
Definition: treemap.h:539
TreeMapWidget::setFieldVisible
void setFieldVisible(int, bool)
Should the text with number textNo be visible? This is only done if remaining space is enough to allo...
Definition: treemap.cpp:1404
TreeMapWidget::setBorderWidth
void setBorderWidth(int w)
Definition: treemap.cpp:1306
TreeMapItem::setParent
void setParent(TreeMapItem *p)
Definition: treemap.cpp:895
TreeMapWidget::Multi
Definition: treemap.h:402
TreeMapWidget::mouseDoubleClickEvent
void mouseDoubleClickEvent(QMouseEvent *)
Definition: treemap.cpp:1980
StoredDrawParams::setMaxLines
void setMaxLines(int f, int)
Definition: treemap.cpp:171
TreeMapItem::setItemRect
void setItemRect(const QRect &r)
Temporary rectangle used for drawing this item the last time.
Definition: treemap.h:292
DrawParams::BottomCenter
Definition: treemap.h:69
StoredDrawParams::setBackColor
void setBackColor(const QColor &c)
Definition: treemap.h:126
TreeMapWidget::fieldForced
bool fieldForced(int) const
Definition: treemap.cpp:1434
StoredDrawParams::font
const QFont & font() const
Definition: treemap.cpp:111
DrawParams::TopLeft
Definition: treemap.h:68
TreeMapWidget::isSelected
bool isSelected(TreeMapItem *i) const
Definition: treemap.cpp:1722
TreeMapItem::sorting
virtual int sorting(bool *ascending) const
Returns the text number after that sorting is done or -1 for no sorting, -2 for value() sorting (defa...
Definition: treemap.cpp:1039
TreeMapItem::value
virtual double value() const
Definition: treemap.cpp:999
TreeMapWidget::defaultFieldType
QString defaultFieldType(int) const
Definition: treemap.cpp:1322
TreeMapWidget::fieldStop
QString fieldStop(int) const
Definition: treemap.cpp:1398
TreeMapWidget::setTransparent
void setTransparent(int d, bool b)
Definition: treemap.cpp:1273
TreeMapWidget::returnPressed
void returnPressed(TreeMapItem *)
TreeMapWidget::mouseMoveEvent
void mouseMoveEvent(QMouseEvent *)
Definition: treemap.cpp:1907
RectDrawing::setRect
void setRect(const QRect &)
Definition: treemap.cpp:214
TreeMapItem::~TreeMapItem
virtual ~TreeMapItem()
Definition: treemap.cpp:883
StoredDrawParams::selected
bool selected() const
Definition: treemap.h:111
StoredDrawParams::_drawFrame
bool _drawFrame
Definition: treemap.h:139
StoredDrawParams::backColor
QColor backColor() const
Definition: treemap.h:110
TreeMapWidget::mousePressEvent
void mousePressEvent(QMouseEvent *)
Definition: treemap.cpp:1839
TreeMapItem::parent
TreeMapItem * parent() const
Parent Item.
Definition: treemap.h:286
DrawParams::selected
virtual bool selected() const
Definition: treemap.h:85
TreeMapWidget::selection
TreeMapItemList selection() const
Definition: treemap.h:615
TreeMapWidget::redraw
void redraw()
Definition: treemap.h:631
TreeMapWidget::paintEvent
void paintEvent(QPaintEvent *)
Definition: treemap.cpp:2171
TreeMapWidget
Class for visualization of a metric of hierarchically nested items as 2D areas.
Definition: treemap.h:393
TreeMapWidget::setAllowRotation
void setAllowRotation(bool)
Do we allow the texts to be rotated by 90 degrees for better fitting?
Definition: treemap.cpp:1281
TreeMapItem::_value
double _value
Definition: treemap.h:367
StoredDrawParams::position
Position position(int) const
Definition: treemap.cpp:95
TreeMapWidget::clicked
void clicked(TreeMapItem *)
TreeMapWidget::resort
void resort()
Resort all TreeMapItems.
Definition: treemap.h:636
TreeMapItem::refresh
void refresh()
Definition: treemap.cpp:942
StoredDrawParams
Definition: treemap.h:96
TreeMapWidget::drawFrame
bool drawFrame(int d) const
Definition: treemap.h:510
TreeMapWidget::fieldVisible
bool fieldVisible(int) const
Definition: treemap.cpp:1415
TreeMapWidget::defaultFieldStop
QString defaultFieldStop(int) const
Definition: treemap.cpp:1327
TreeMapWidget::currentChanged
void currentChanged(TreeMapItem *, bool keyboard)
This signal is emitted if the current item changes.
DrawParams::current
virtual bool current() const
Definition: treemap.h:86
TreeMapWidget::defaultFieldForced
bool defaultFieldForced(int) const
Definition: treemap.cpp:1337
TreeMapItem::AlwaysBest
Definition: treemap.h:237
TreeMapWidget::setMaxSelectDepth
void setMaxSelectDepth(int d)
Set the maximal depth a selected item can have.
Definition: treemap.h:487
TreeMapWidget::selectionChanged
void selectionChanged()
TreeMapItem::isChildOf
bool isChildOf(TreeMapItem *)
Definition: treemap.cpp:901
TreeMapWidget::possibleSelection
TreeMapItem * possibleSelection(TreeMapItem *) const
Returns the item possible for selection.
Definition: treemap.cpp:1593
StoredDrawParams::setField
void setField(int f, const QString &t, const QPixmap &pm=QPixmap(), Position p=Default, int maxLines=0)
Definition: treemap.cpp:135
DrawParams::TopRight
Definition: treemap.h:68
StoredDrawParams::text
QString text(int) const
Definition: treemap.cpp:79
DrawParams::Default
Definition: treemap.h:70
TreeMapWidget::setVisibleWidth
void setVisibleWidth(int width, bool reuseSpace=false)
Items usually have a size proportional to their value().
Definition: treemap.cpp:1289
TreeMapWidget::SelectionMode
SelectionMode
Same as in QListBox/QListView.
Definition: treemap.h:402
RectDrawing::setDrawParams
void setDrawParams(DrawParams *)
Definition: treemap.cpp:208
TreeMapWidget::drawTreeMap
void drawTreeMap()
Definition: treemap.cpp:2178
TreeMapItem::Rows
Definition: treemap.h:236
TreeMapWidget::setCurrent
void setCurrent(TreeMapItem *, bool kbd=false)
Sets the current item.
Definition: treemap.cpp:1735
DrawParams::shaded
virtual bool shaded() const
Definition: treemap.h:87
StoredDrawParams::_current
bool _current
Definition: treemap.h:136
StoredDrawParams::_backColor
QColor _backColor
Definition: treemap.h:134
TreeMapWidget::setFieldType
void setFieldType(int, const QString &)
Set the type name of a field.
Definition: treemap.cpp:1373
TreeMapWidget::Single
Definition: treemap.h:402
RectDrawing::drawParams
DrawParams * drawParams()
Definition: treemap.cpp:199
StoredDrawParams::rotated
bool rotated() const
Definition: treemap.h:114
TreeMapWidget::contextMenuEvent
void contextMenuEvent(QContextMenuEvent *)
Definition: treemap.cpp:1820
TreeMapItem::width
int width() const
Definition: treemap.h:295
DrawParams::text
virtual QString text(int) const =0
TreeMapItem::Vertical
Definition: treemap.h:239
TreeMapWidget::borderWidth
int borderWidth() const
Definition: treemap.h:605
TreeMapItem::isMarked
virtual bool isMarked(int) const
Definition: treemap.cpp:1025
TreeMapWidget::clearSelection
bool clearSelection(TreeMapItem *parent=0)
Clear selection of all selected items which are children of parent.
Definition: treemap.cpp:1705
TreeMapItem::Bisection
Definition: treemap.h:236
TreeMapWidget::event
bool event(QEvent *event)
Definition: treemap.cpp:2148
StoredDrawParams::fieldCount
int fieldCount() const
Definition: treemap.h:108
TreeMapItem::font
virtual const QFont & font() const
Definition: treemap.cpp:1019
TreeMapItem::children
virtual TreeMapItemList * children()
Definition: treemap.cpp:1089
TreeMapItem::setWidget
void setWidget(TreeMapWidget *w)
Definition: treemap.h:319
TreeMapWidget::selectionMode
SelectionMode selectionMode() const
Definition: treemap.h:618
StoredDrawParams::setRotated
void setRotated(bool b)
Definition: treemap.h:130
DrawParams::Position
Position
Positions for drawing into a rectangle.
Definition: treemap.h:68
TreeMapItemList::commonParent
TreeMapItem * commonParent()
Definition: treemap.cpp:800
TreeMapItem::Best
Definition: treemap.h:237
TreeMapWidget::setSkipIncorrectBorder
void setSkipIncorrectBorder(bool enable=true)
If a children value() is almost the parents sum(), it can happen that the border to be drawn for visi...
Definition: treemap.cpp:1298
TreeMapWidget::isShadingEnabled
bool isShadingEnabled() const
Definition: treemap.h:506
TreeMapWidget::setRangeSelection
void setRangeSelection(TreeMapItem *i1, TreeMapItem *i2, bool selected)
Selects or unselects items in a range.
Definition: treemap.cpp:1764
TreeMapWidget::Extended
Definition: treemap.h:402
TreeMapItem::resort
void resort(bool recursive=true)
Resort according to the already set sorting.
Definition: treemap.cpp:1063
TreeMapItem::index
int index() const
Temporary child item index of the child that was current() recently.
Definition: treemap.h:309
TreeMapWidget::widget
TreeMapWidget * widget()
Definition: treemap.h:613
TreeMapWidget::isTransparent
bool isTransparent(int d) const
Definition: treemap.h:514
TreeMapItem::depth
int depth() const
Depth of this item.
Definition: treemap.cpp:963
DrawParams::Unknown
Definition: treemap.h:70
TreeMapItem::_children
TreeMapItemList * _children
Definition: treemap.h:366
StoredDrawParams::StoredDrawParams
StoredDrawParams()
Definition: treemap.cpp:52
TreeMapItem::clearFreeRects
void clearFreeRects()
Temporary rectangle list of free space of this item.
Definition: treemap.cpp:1103
DrawParams::~DrawParams
virtual ~DrawParams()
Definition: treemap.h:73
StoredDrawParams::maxLines
int maxLines(int) const
Definition: treemap.cpp:103
TreeMapItem::setIndex
void setIndex(int i)
Definition: treemap.h:310
TreeMapItem::setValue
void setValue(double s)
Definition: treemap.h:321
TreeMapWidget::setMarked
void setMarked(int markNo=1, bool redraw=true)
Switches on the marking .
Definition: treemap.cpp:1647
DrawParams::BottomLeft
Definition: treemap.h:69
TreeMapWidget::doubleClicked
void doubleClicked(TreeMapItem *)
TreeMapWidget::splitModeString
QString splitModeString() const
Definition: treemap.cpp:1238
DrawParams::TopCenter
Definition: treemap.h:68
DrawParams::drawFrame
virtual bool drawFrame() const
Definition: treemap.h:89
TreeMapItem::path
QStringList path(int) const
Returns a list of text strings of specified text number, from root up to this item.
Definition: treemap.cpp:949
RectDrawing
Definition: treemap.h:165
TreeMapItem::setSorting
void setSorting(int textNo, bool ascending=true)
Set the sorting for child drawing.
Definition: treemap.cpp:1046
StoredDrawParams::setText
void setText(int f, const QString &)
Definition: treemap.cpp:147
TreeMapItem::commonParent
TreeMapItem * commonParent(TreeMapItem *item)
Definition: treemap.cpp:913
TreeMapWidget::rightButtonPressed
void rightButtonPressed(TreeMapItem *, const QPoint &)
RectDrawing::remainingRect
QRect remainingRect(DrawParams *dp=0)
Definition: treemap.cpp:228
TreeMapWidget::currentFont
const QFont & currentFont() const
Returns a reference to the current widget font.
Definition: treemap.cpp:1204
TreeMapWidget::defaultFieldPosition
DrawParams::Position defaultFieldPosition(int) const
Definition: treemap.cpp:1342
TreeMapWidget::keyPressEvent
void keyPressEvent(QKeyEvent *)
Definition: treemap.cpp:2027
StoredDrawParams::setPosition
void setPosition(int f, Position)
Definition: treemap.cpp:163
TreeMapWidget::maxDrawingDepth
int maxDrawingDepth() const
Definition: treemap.h:545
TreeMapWidget::fieldPositionString
QString fieldPositionString(int) const
Definition: treemap.cpp:1479
TreeMapWidget::defaultFieldVisible
bool defaultFieldVisible(int) const
Definition: treemap.cpp:1332
TreeMapItem::VAlternate
Definition: treemap.h:238
TreeMapWidget::fontChange
void fontChange(const QFont &)
Definition: treemap.cpp:2142
TreeMapWidget::drawFrame
void drawFrame(int d, bool b)
Definition: treemap.cpp:1265
DrawParams::rotated
virtual bool rotated() const
Definition: treemap.h:88
StoredDrawParams::drawFrame
bool drawFrame() const
Definition: treemap.h:115
RectDrawing::RectDrawing
RectDrawing(const QRect &)
Definition: treemap.cpp:185
TreeMapItem
Base class of items in TreeMap.
Definition: treemap.h:221
TreeMapItem::addItem
void addItem(TreeMapItem *)
Adds an item to a parent.
Definition: treemap.cpp:982
TreeMapItem::widget
TreeMapWidget * widget() const
TreeMap widget this item is put in.
Definition: treemap.h:316
DrawParams::backColor
virtual QColor backColor() const
Definition: treemap.h:82
TreeMapItem::position
virtual Position position(int) const
Definition: treemap.cpp:1009
TreeMapWidget::deletingItem
void deletingItem(TreeMapItem *)
Definition: treemap.cpp:1501
TreeMapItem::freeRects
const QList< QRect > & freeRects() const
Definition: treemap.h:303
StoredDrawParams::_selected
bool _selected
Definition: treemap.h:135
TreeMapWidget::splitActivated
void splitActivated(QAction *)
Definition: treemap.cpp:2835
TreeMapWidget::setMaxDrawingDepth
void setMaxDrawingDepth(int d)
Maximal nesting depth.
Definition: treemap.cpp:1314
DrawParams::BottomRight
Definition: treemap.h:69
DrawParams::maxLines
virtual int maxLines(int) const
Definition: treemap.h:79
TreeMapWidget::setSelectionMode
void setSelectionMode(SelectionMode m)
Definition: treemap.h:490
TreeMapWidget::setFieldForced
void setFieldForced(int, bool)
Should the drawing of the name into the rectangle be forced? This enables drawing of the name before ...
Definition: treemap.cpp:1423
DrawParams::pixmap
virtual QPixmap pixmap(int) const =0
TreeMapWidget::fieldType
QString fieldType(int) const
Definition: treemap.cpp:1382
TreeMapItem::HAlternate
Definition: treemap.h:238
TreeMapWidget::contextMenuRequested
void contextMenuRequested(TreeMapItem *, const QPoint &)
TreeMapItemList
Definition: treemap.h:202
QList
TreeMapItem::splitMode
virtual SplitMode splitMode() const
Definition: treemap.cpp:1076
StoredDrawParams::current
bool current() const
Definition: treemap.h:112
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 23:03:27 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

kcachegrind

Skip menu "kcachegrind"
  • Main Page
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members

kdesdk API Reference

Skip menu "kdesdk API Reference"
  • kapptemplate
  • kcachegrind
  • kompare
  • lokalize
  • okteta
  • umbrello
  •   umbrello

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal