insilmaril@747
|
1 |
#ifndef BRANCHITEM_H
|
insilmaril@747
|
2 |
#define BRANCHITEM_H
|
insilmaril@747
|
3 |
|
insilmaril@779
|
4 |
#include "mapitem.h"
|
insilmaril@747
|
5 |
|
insilmaril@755
|
6 |
|
insilmaril@747
|
7 |
class QString;
|
insilmaril@790
|
8 |
class QGraphicsScene;
|
insilmaril@750
|
9 |
class BranchObj;
|
insilmaril@790
|
10 |
class XLinkItem;
|
insilmaril@747
|
11 |
|
insilmaril@779
|
12 |
class BranchItem:public MapItem
|
insilmaril@747
|
13 |
{
|
insilmaril@747
|
14 |
public:
|
insilmaril@777
|
15 |
BranchItem(const QList<QVariant> &data, TreeItem *parent = 0);
|
insilmaril@756
|
16 |
virtual ~BranchItem();
|
insilmaril@779
|
17 |
virtual void copy (BranchItem *item);
|
insilmaril@795
|
18 |
virtual BranchItem* parentBranch();
|
insilmaril@747
|
19 |
|
insilmaril@779
|
20 |
virtual void insertBranch (int pos,BranchItem *branch);
|
insilmaril@756
|
21 |
|
insilmaril@779
|
22 |
virtual QString saveToDir (const QString &tmpdir,const QString &prefix, const QPointF& offset);
|
insilmaril@747
|
23 |
|
insilmaril@753
|
24 |
virtual void updateVisibility();
|
insilmaril@753
|
25 |
|
insilmaril@758
|
26 |
virtual void setHeadingColor (QColor color); //!Overloaded from TreeItem to update QGraphicsView
|
insilmaril@758
|
27 |
|
insilmaril@753
|
28 |
protected:
|
insilmaril@753
|
29 |
bool scrolled; // true if all children are scrolled and thus invisible
|
insilmaril@753
|
30 |
bool tmpUnscrolled; // can only be true (temporary) for a scrolled subtree
|
insilmaril@753
|
31 |
public:
|
insilmaril@749
|
32 |
virtual void unScroll();
|
insilmaril@767
|
33 |
virtual bool toggleScroll(); // scroll or unscroll
|
insilmaril@749
|
34 |
virtual bool isScrolled(); // returns scroll state
|
insilmaril@749
|
35 |
virtual bool hasScrolledParent(BranchItem*); // true, if any of the parents is scrolled
|
insilmaril@796
|
36 |
virtual bool tmpUnscroll(); // unscroll scrolled parents temporary e.g. during "find" process
|
insilmaril@796
|
37 |
virtual bool resetTmpUnscroll(); // scroll all tmp scrolled parents again e.g. when unselecting
|
insilmaril@822
|
38 |
virtual void sortChildren(bool inverse=false); //! Sort children
|
insilmaril@785
|
39 |
|
insilmaril@785
|
40 |
protected:
|
insilmaril@785
|
41 |
bool includeImagesVer; //! include floatimages in bbox vertically
|
insilmaril@785
|
42 |
bool includeImagesHor; //! include floatimages in bbox horizontally
|
insilmaril@785
|
43 |
public:
|
insilmaril@785
|
44 |
void setIncludeImagesVer(bool);
|
insilmaril@785
|
45 |
bool getIncludeImagesVer();
|
insilmaril@785
|
46 |
void setIncludeImagesHor(bool);
|
insilmaril@785
|
47 |
bool getIncludeImagesHor();
|
insilmaril@785
|
48 |
QString getIncludeImageAttr();
|
insilmaril@785
|
49 |
|
insilmaril@787
|
50 |
protected:
|
insilmaril@787
|
51 |
int lastSelectedBranchNum;
|
insilmaril@787
|
52 |
int lastSelectedBranchNumAlt;
|
insilmaril@785
|
53 |
public:
|
insilmaril@787
|
54 |
virtual void setLastSelectedBranch(); //! Set myself as last selected in parent
|
insilmaril@787
|
55 |
virtual void setLastSelectedBranch(int i); //! Set last selected branch directly
|
insilmaril@787
|
56 |
virtual BranchItem* getLastSelectedBranch(); //! Returns last selected branch usually
|
insilmaril@787
|
57 |
virtual BranchItem* getLastSelectedBranchAlt(); //! Used to return last selected branch left of a mapcenter
|
insilmaril@785
|
58 |
|
insilmaril@787
|
59 |
public:
|
insilmaril@758
|
60 |
TreeItem* findMapItem (QPointF p,TreeItem* excludeTI); //! search map for branches or images. Ignore excludeTI, where search is started
|
insilmaril@754
|
61 |
|
insilmaril@822
|
62 |
virtual void updateStyles (const bool &keepFrame=false); //! update related fonts, parObjects, links, ...
|
insilmaril@760
|
63 |
virtual BranchObj* getBranchObj();
|
insilmaril@822
|
64 |
virtual BranchObj* createMapObj(QGraphicsScene *scene); //! Create classic object in GraphicsView
|
insilmaril@747
|
65 |
};
|
insilmaril@747
|
66 |
|
insilmaril@747
|
67 |
#endif
|