insilmaril@747: #ifndef BRANCHITEM_H insilmaril@747: #define BRANCHITEM_H insilmaril@747: insilmaril@747: #include "treeitem.h" insilmaril@747: insilmaril@747: class QString; insilmaril@750: class BranchObj; insilmaril@747: insilmaril@747: class BranchItem:public TreeItem insilmaril@747: { insilmaril@747: public: insilmaril@747: BranchItem(const QList &data, TreeItem *parent = 0); insilmaril@747: ~BranchItem(); insilmaril@749: void copy (BranchItem *item); insilmaril@747: insilmaril@747: QString saveToDir (const QString &tmpdir,const QString &prefix, const QPointF& offset); insilmaril@747: insilmaril@749: virtual void unScroll(); insilmaril@749: virtual void toggleScroll(); // scroll or unscroll insilmaril@749: virtual bool isScrolled(); // returns scroll state insilmaril@749: virtual bool hasScrolledParent(BranchItem*); // true, if any of the parents is scrolled insilmaril@749: virtual void tmpUnscroll(); // unscroll scrolled parents temporary e.g. during "find" process insilmaril@749: virtual void resetTmpUnscroll(); // scroll all tmp scrolled parents again e.g. when unselecting insilmaril@749: insilmaril@750: BranchObj* getBranchObj(); insilmaril@749: insilmaril@749: protected: insilmaril@749: bool scrolled; // true if all children are scrolled and thus invisible insilmaril@749: bool tmpUnscrolled; // can only be true (temporary) for a scrolled subtree insilmaril@749: insilmaril@747: }; insilmaril@747: insilmaril@747: #endif