32 QT_FORWARD_DECLARE_CLASS(QGridLayout)
36 struct DockOverlayPrivate;
37 class CDockOverlayCross;
47 DockOverlayPrivate*
d;
48 friend struct DockOverlayPrivate;
49 friend class DockOverlayCross;
63 CDockOverlay(QWidget* parent, eMode Mode = ModeDockAreaOverlay);
68 virtual ~CDockOverlay();
73 void setAllowedAreas(DockWidgetAreas areas);
78 DockWidgetAreas allowedAreas()
const;
106 void enableDropPreview(
bool Enable);
111 bool dropPreviewEnabled()
const;
116 QRect dropOverlayRect()
const;
121 virtual bool event(QEvent *e)
override;
124 virtual void paintEvent(QPaintEvent *e)
override;
125 virtual void showEvent(QShowEvent* e)
override;
126 virtual void hideEvent(QHideEvent* e)
override;
130 struct DockOverlayCrossPrivate;
155 class CDockOverlayCross :
public QWidget
158 Q_PROPERTY(QString iconColors READ iconColors WRITE setIconColors)
159 Q_PROPERTY(QColor iconFrameColor READ iconColor WRITE setIconFrameColor)
160 Q_PROPERTY(QColor iconBackgroundColor READ iconColor WRITE setIconBackgroundColor)
161 Q_PROPERTY(QColor iconOverlayColor READ iconColor WRITE setIconOverlayColor)
162 Q_PROPERTY(QColor iconArrowColor READ iconColor WRITE setIconArrowColor)
163 Q_PROPERTY(QColor iconShadowColor READ iconColor WRITE setIconShadowColor)
169 WindowBackgroundColor,
176 DockOverlayCrossPrivate*
d;
177 friend struct DockOverlayCrossPrivate;
178 friend class CDockOverlay;
185 QString iconColors()
const;
190 QColor iconColor()
const {
return QColor();}
191 void setIconFrameColor(
const QColor& Color) {setIconColor(FrameColor, Color);}
192 void setIconBackgroundColor(
const QColor& Color) {setIconColor(WindowBackgroundColor, Color);}
193 void setIconOverlayColor(
const QColor& Color) {setIconColor(OverlayColor, Color);}
194 void setIconArrowColor(
const QColor& Color) {setIconColor(ArrowColor, Color);}
195 void setIconShadowColor(
const QColor& Color) {setIconColor(ShadowColor, Color);}
201 CDockOverlayCross(CDockOverlay* overlay);
206 virtual ~CDockOverlayCross();
211 void setIconColor(eIconColor ColorIndex,
const QColor& Color);
216 QColor iconColor(eIconColor ColorIndex)
const;
228 void setupOverlayCross(CDockOverlay::eMode Mode);
233 void updateOverlayIcons();
243 void updatePosition();
256 void setIconColors(
const QString& Colors);
259 virtual void showEvent(QShowEvent* e)
override;
260 void setAreaWidgets(
const QHash<DockWidgetArea, QWidget*>& widgets);
264 #endif // DockOverlayH