13 #if !defined(Q_MOC_RUN)
28 #include <QtGui/QIcon>
29 #include <QtGui/QPixmap>
30 #include <QtWidgets/QWidget>
31 #include <QtWidgets/QDockWidget>
32 #include <QtWidgets/QPushButton>
33 #include <QtWidgets/QToolButton>
34 #include <QtWidgets/QHeaderView>
35 #include <QtCore/QTimer>
43 class DtChannelManager;
45 class DtObserverObject;
50 class DtAutoHidePanelItem;
51 class DtPropCreatePalette;
52 class DtCreateObjectPalette;
76 virtual void on_triggered();
79 virtual void on_aboutToShow();
114 const std::string&
className()
const {
return myClassName; };
117 virtual QString iconText();
118 virtual void setIconText(
const QString& s);
122 virtual bool toggled()
const;
123 virtual void setToggled(
bool flag);
127 virtual void setAvailable(
bool visible,
bool updateVisibilityState =
true);
128 virtual bool available()
const;
131 virtual void setAboutToBeShown(
bool flag);
135 virtual void refreshSize(
int minsize=-1);
138 virtual void setToggle(
bool flag);
144 virtual void enterEvent(
QEvent* e);
147 virtual void leaveEvent(
QEvent *);
150 virtual void paintEvent(QPaintEvent* p);
152 virtual void refreshIcon();
175 virtual void toggleItem();
251 virtual void clear();
258 virtual void setPanelItemVisible(
const std::string& panelClassName,
bool,
bool updateVisibilityState =
false);
262 virtual void hideAllDocks();
265 virtual int itemCount();
268 virtual void placeItems();
284 virtual std::vector< std::pair<DtString, QString> > panelsThatCanBeUsedOnCreateMenu()
const;
286 virtual void changeVisibility(
bool);
309 virtual void selectPage(
const std::string& pageClassName) {};
316 template <
typename PaletteClass>
319 DtAutoHideDockList::iterator iter = myDocks.begin();
321 while (iter != myDocks.end())
323 PaletteClass* p =
dynamic_cast<PaletteClass*
>((*iter)->widget());
336 template <
typename PaletteClass>
339 DtAutoHideDockList::iterator iter = myDocks.begin();
341 while (iter != myDocks.end())
343 PaletteClass* p =
dynamic_cast<PaletteClass*
>((*iter)->widget());
359 return createPalette<DtCreateObjectPalette>();
364 return creationDock<DtCreateObjectPalette>();
370 return createPalette<DtPropCreatePalette>();
375 return creationDock<DtPropCreatePalette>();
383 virtual int maxItemWidth();
388 virtual void setupGui();
394 virtual void installEventFilters();
400 virtual void relocateAnyPinnedDock();
403 virtual void refreshItems(
int minsize);
406 virtual void refreshAppearanceOfItem(
DtAutoHidePanelItem* autoHideItemWidget,
bool forceVisible);
443 virtual void slot_showDockOfCurrentItem(
bool lockIt=
false);
446 virtual void slot_closeTimerTimeout();
452 virtual void placeCompass();
454 virtual void finalizeSetup();
489 virtual DtAutoHidePanel* create(
const std::string& name, QWidget* parent);
int myTopMargin
Definition: autoHidePanel.h:185
std::list< DtAutoHidePanelItem * > DtAutoHidePanelItemList
Definition: autoHidePanel.h:230
Definition: autoHidePanel.h:225
std::string myClassName
Definition: autoHidePanel.h:193
Contains makVrv::DtUserInterfaceAssembler class.
The DtQtPageCollection is an abstract class which implements the page collection interface, and can be used extended by specific Qt implementations such as a tabbed panel or dialog.
Definition: DtQtPageCollection.h:23
DtAutoHideDock * creationDock()
Definition: autoHidePanel.h:337
DtAutoHideDockList myDocks
List with all the items currently on display.
Definition: autoHidePanel.h:460
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
QTimer myTimer
The item that wants to be closed.
Definition: autoHidePanel.h:465
Represents a new kind of dock widget: it has a "pin" button that allows the widget to pin/unpin from ...
Definition: autoHideDock.h:35
virtual DtAutoHideDock * propCreationDock()
Definition: autoHidePanel.h:373
Contains makVrv::DtQtPageCollection class.
#define DT_DLL_VRFGUICOREQT
Definition: vrfGuiCoreQt.h:26
PageCollectionLocation
Definition: DtPageConfiguration.h:42
Definition: DtPageConfiguration.h:56
DtAutoHideDock * myCloseIfMousePressOutside
Definition: autoHidePanel.h:469
makVrv::DtSignalConnectionManager myConnections
Definition: autoHidePanel.h:194
bool myIsToggleType
Definition: autoHidePanel.h:190
makVrv::DtQIconConfigurations myIconConfigurations
Definition: autoHidePanel.h:179
Represents a menu item associated with an autoHidePanelItem widget.
Definition: autoHidePanel.h:57
virtual void selectPageInGui(makVrv::DtPage *page)
Implement selecting a page in the GUI.
Definition: autoHidePanel.h:415
Represents an element of the autoHidePanel. This element is represented as an icon + an icon text...
Definition: autoHidePanel.h:92
virtual DtPropCreatePalette * propCreatePalette()
Return the prop create palette.
Definition: autoHidePanel.h:368
This class implements the panel where auto hide dialogs are placed when they are hidden. This panel is located on the right side of the app.
Definition: autoHidePanel.h:215
QTimer myCloseTimer
Controls the 1 second delay before showing a dock.
Definition: autoHidePanel.h:466
QWidget * myCentralWidget
Definition: autoHidePanel.h:458
bool myAboutToBeShown
Definition: autoHidePanel.h:189
virtual void changeFloatingGeometry(int px, int py, int width, int height)
Implement changing the floating geometry of the collection.
Definition: autoHidePanel.h:297
virtual DtAutoHideDock * createObjectDock()
Definition: autoHidePanel.h:362
DtAutoHideDock * myAutoHideDock
Definition: autoHidePanel.h:188
int myRightMargin
Definition: autoHidePanel.h:184
QIcon myIcon
Definition: autoHidePanel.h:180
QString myIconText
Definition: autoHidePanel.h:182
Contains makVrv::DtVirtualBaseClass class.
std::map< std::string, DtAppearanceOptions >::iterator DtAppearanceListIterator
Definition: autoHidePanel.h:237
DtAutoHidePanelItem * myPanelItem
Definition: autoHidePanel.h:83
DtAutoHidePanelItem * myCurrentItem
Animates the display of a dock.
Definition: autoHidePanel.h:463
Contains makVrv::DtDockable class.
int myIconSize
Definition: autoHidePanel.h:181
Creator for the auto hide panel.
Definition: autoHidePanel.h:473
This abstract base class defines the interface for OS-specific keyboard and mouse event listeners...
Definition: DtObserverObject.h:32
makVrv::DtDe & myDe
Definition: autoHidePanel.h:492
bool myIsAvailable
Definition: autoHidePanel.h:191
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
makVrv::DtDe & myDe
Definition: autoHidePanel.h:85
DtAutoHidePanelItemList::iterator DtAutoHidePanelItemListIterator
Definition: autoHidePanel.h:231
QAction * myAction
Definition: autoHidePanel.h:84
int myBottomMargin
Definition: autoHidePanel.h:186
The page is a single widget component which is viewed in a page collection.
Definition: DtPage.h:30
DtAutoHidePanelItemList myItems
Definition: autoHidePanel.h:459
const DtAutoHideDockList & docks() const
Definition: autoHidePanel.h:311
Definition: autoHidePanel.h:197
makVrv::DtSignalConnectionManager myConnections
Controls the 1 second delay before hiding a dock.
Definition: autoHidePanel.h:468
DtWidgetAnimator * myWidgetAnimator
Keeps track of the last appearance of the items (hidden, pinned, docked, floating) ...
Definition: autoHidePanel.h:462
DtAutoHideDockList::iterator DtAutoHideDockListIterator
Definition: autoHidePanel.h:234
makVrv::DtDe & myDe
Definition: autoHidePanel.h:192
A widget class for showing different items of supplied types to the logic tthat can be created...
Definition: createObjectPalette.h:71
std::list< DtAutoHideDock * > DtAutoHideDockList
Definition: autoHidePanel.h:233
Base class to provide boost signal/slot management.
virtual void changeDockedGeometry(const makVrv::DtPageConfiguration::PageCollectionGeometry &geometry)
Implement changing the docked geometry of the collection.
Definition: autoHidePanel.h:306
int mySpacing
Definition: autoHidePanel.h:187
virtual void changeLocation(makVrv::DtPageConfiguration::PageCollectionLocation)
No-op. Cannot change location or geometry.
Definition: autoHidePanel.h:294
virtual void changeDockedGeometry(int px, int py, int width, int height)
Implement changing the docked geometry of the collection.
Definition: autoHidePanel.h:303
const std::string & className() const
Class name.
Definition: autoHidePanel.h:114
std::map< std::string, DtAppearanceOptions > DtAppearanceList
Definition: autoHidePanel.h:236
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:72
virtual void changeFloatingGeometry(const makVrv::DtPageConfiguration::PageCollectionGeometry &geometry)
Implement changing the floating geometry of the collection.
Definition: autoHidePanel.h:300
A collection of icon configurations. The collection maintains flags indicating whether to generate ic...
Definition: DtQIconConfiguration.h:131
PaletteClass * createPalette()
Definition: autoHidePanel.h:317
QMainWindow * myMainWindow
Definition: autoHidePanel.h:457
virtual void selectPage(const std::string &pageClassName)
Implement selecting a page by name.
Definition: autoHidePanel.h:309
DtAppearanceOptions
Definition: autoHidePanel.h:222
virtual DtCreateObjectPalette * createObjectPalette()
Return the entity create palette.
Definition: autoHidePanel.h:357
Definition: autoHidePanel.h:226
The Qt main window. There will be only one of these per DtDe instance. Note, this window will be dest...
Definition: DtQtDeMainWindow.h:44
int myLeftMargin
Definition: autoHidePanel.h:183
DtAppearanceList myItemsAppearance
List with all the docks registered with this panel.
Definition: autoHidePanel.h:461
DtAutoHidePanelItem * myDockToClose
Current item to be shown.
Definition: autoHidePanel.h:464
A widget class for managing different camera views the currently selected observer can be placed in...
Definition: propCreatePalette.h:39