Skip to content

Commit 6a25de3

Browse files
2 parents e63d1b1 + fa2ab35 commit 6a25de3

File tree

5 files changed

+46
-3
lines changed

5 files changed

+46
-3
lines changed

setup.py

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,13 @@ def _find_sip(self):
159159
return sip_bin
160160

161161
raise SystemExit('Could not find PyQt SIP binary.')
162+
163+
def _sip_sipfiles_dir(self):
164+
sip_dir = super()._sip_sipfiles_dir()
165+
if os.path.exists(sip_dir):
166+
return sip_dir
167+
168+
return os.path.join(sys.prefix, 'sip', 'PyQt5')
162169

163170
def _sip_compile(self, sip_bin, source, sbf):
164171
cmd = [sip_bin]
@@ -210,9 +217,7 @@ def swig_sources (self, sources, extension=None):
210217

211218
return super().swig_sources(sources, extension)
212219

213-
def build_extension(self, ext):
214-
# /usr/bin/rcc -name ads ../../Qt-Advanced-Docking-System/src/ads.qrc -o release/qrc_ads.cpp
215-
220+
def build_extension(self, ext):
216221
cppsources = [source for source in ext.sources if source.endswith(".cpp")]
217222
headersources = ['src/DockAreaTitleBar_p.h']
218223

sip/DockFocusController.sip

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
%Import QtWidgets/QtWidgetsmod.sip
2+
3+
%If (Qt_5_0_0 -)
4+
5+
namespace ads
6+
{
7+
8+
/**
9+
* Manages focus styling of dock widgets and handling of focus changes
10+
*/
11+
class CDockFocusController : QObject
12+
{
13+
%TypeHeaderCode
14+
#include <DockFocusController.h>
15+
%End
16+
17+
public:
18+
CDockFocusController(ads::CDockManager* DockManager);
19+
virtual ~CDockFocusController();
20+
21+
void notifyWidgetOrAreaRelocation(QWidget* RelocatedWidget);
22+
void notifyFloatingWidgetDrop(ads::CFloatingDockContainer* FloatingWidget);
23+
24+
public slots:
25+
void setDockWidgetFocused(ads::CDockWidget* focusedNow);
26+
27+
}; // class DockFocusController
28+
};
29+
// namespace ads
30+
31+
%End

sip/DockManager.sip

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,8 @@ protected:
133133
void removeDockContainer(ads::CDockContainerWidget* DockContainer /TransferBack/);
134134
ads::CDockOverlay* containerOverlay() const;
135135
ads::CDockOverlay* dockAreaOverlay() const;
136+
void notifyWidgetOrAreaRelocation(QWidget* RelocatedWidget);
137+
void notifyFloatingWidgetDrop(ads::CFloatingDockContainer* FloatingWidget);
136138

137139
virtual void showEvent(QShowEvent *event);
138140

@@ -166,6 +168,7 @@ public:
166168
FloatingContainerHasWidgetTitle,
167169
FloatingContainerHasWidgetIcon,
168170
HideSingleCentralWidgetTitleBar,
171+
FocusHighlighting,
169172
DefaultDockAreaButtons,
170173
DefaultBaseConfig,
171174
DefaultOpaqueConfig,
@@ -211,6 +214,7 @@ public:
211214

212215
public slots:
213216
void openPerspective(const QString& PerspectiveName);
217+
void setDockWidgetFocused(ads::CDockWidget* DockWidget);
214218

215219
signals:
216220
void perspectiveListChanged();
@@ -223,6 +227,7 @@ signals:
223227
void dockAreaCreated(ads::CDockAreaWidget* DockArea);
224228
void dockWidgetAboutToBeRemoved(ads::CDockWidget* DockWidget);
225229
void dockWidgetRemoved(ads::CDockWidget* DockWidget);
230+
void focusedDockWidgetChanged(ads::CDockWidget* old, ads::CDockWidget* now);
226231
};
227232

228233
};

sip/DockWidgetTab.sip

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ public:
3434
bool isClosable() const;
3535
virtual bool event(QEvent *e);
3636
void setElideMode(Qt::TextElideMode mode);
37+
void updateStyle();
3738

3839
public slots:
3940
virtual void setVisible(bool visible);

sip/ads.sip

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
%Include DockComponentsFactory.sip
1212
%Include DockContainerWidget.sip
1313
%Include DockingStateReader.sip
14+
%Include DockFocusController.sip
1415
%Include DockManager.sip
1516
%Include DockOverlay.sip
1617
%Include DockSplitter.sip

0 commit comments

Comments
 (0)