28 #include <QtGui/QIcon>
29 #include <QtGui/QPixmap>
30 #include <QtWidgets/QWidget>
31 #include <QtWidgets/QDockWidget>
32 #include <QtWidgets/QPushButton>
33 #include <QtWidgets/QHeaderView>
34 #include <QtCore/QTimer>
42 class DtChannelManager;
44 class DtObserverObject;
49 class DtAutoHidePanelItem;
50 class DtPropCreatePalette;
51 class DtEntityCreatePalette;
52 class DtTacticalGraphicCreatePalette;
53 class DtHazardAreaCreatePalette;
77 virtual void on_triggered();
80 virtual void on_aboutToShow();
111 virtual const QPixmap& icon()
const;
112 virtual void setIcon(
const QIcon& p);
115 const std::string&
className()
const {
return myClassName; };
118 virtual QString iconText();
119 virtual void setIconText(
const QString& s);
123 virtual bool toggled()
const;
124 virtual void setToggled(
bool flag);
127 virtual void setSelected(
bool flag);
131 virtual void setAvailable(
bool visible,
bool updateVisibilityState =
true);
132 virtual bool available()
const;
135 virtual void setAboutToBeShown(
bool flag);
139 virtual void refreshSize(
int minsize=-1);
142 virtual void setToggle(
bool flag);
147 virtual void enterEvent(QEvent* e);
150 virtual void leaveEvent(QEvent *);
153 virtual void mouseReleaseEvent( QMouseEvent * event );
156 virtual void paintEvent(QPaintEvent* p);
250 virtual void clear();
257 virtual void setPanelItemVisible(
const std::string& panelClassName,
bool,
bool updateVisibilityState =
false);
261 virtual void hideAllDocks();
264 virtual int itemCount();
267 virtual void placeItems();
283 virtual std::vector< std::pair<DtString, QString> > panelsThatCanBeUsedOnCreateMenu()
const;
285 virtual void changeVisibility(
bool);
308 virtual void selectPage(
const std::string& pageClassName) {};
315 template <
typename PaletteClass>
316 PaletteClass* createPalette()
318 DtAutoHideDockList::iterator iter = myDocks.begin();
320 while (iter != myDocks.end())
322 PaletteClass* p =
dynamic_cast<PaletteClass*
>((*iter)->widget());
335 template <
typename PaletteClass>
338 DtAutoHideDockList::iterator iter = myDocks.begin();
340 while (iter != myDocks.end())
342 PaletteClass* p =
dynamic_cast<PaletteClass*
>((*iter)->widget());
358 return createPalette<DtEntityCreatePalette>();
363 return creationDock<DtEntityCreatePalette>();
369 return createPalette<DtHazardAreaCreatePalette>();
374 return creationDock<DtHazardAreaCreatePalette>();
380 return createPalette<DtTacticalGraphicCreatePalette>();
385 return creationDock<DtTacticalGraphicCreatePalette>();
391 return createPalette<DtPropCreatePalette>();
396 return creationDock<DtPropCreatePalette>();
406 virtual void setupGui();
409 virtual bool eventFilter(
QObject* p, QEvent* e);
412 virtual void installEventFilters();
415 virtual int maxItemWidth();
421 virtual void relocateAnyPinnedDock();
424 virtual void refreshItems(
int minsize);
427 virtual void refreshAppearanceOfItem(
DtAutoHidePanelItem* autoHideItemWidget,
bool forceVisible);
464 virtual void slot_showDockOfCurrentItem(
bool lockIt=
false);
467 virtual void slot_closeTimerTimeout();
473 virtual void placeCompass();
475 virtual void finalizeSetup();