Sergio Martins
ecb01ff9c3
wip
2020-06-19 19:31:04 +01:00
Sergio Martins
40c816e0c5
Improve README regarding running the python bindings
2020-06-17 22:29:53 +01:00
Sergio Martins
6bbba2bff7
python: install to CMAKE_INSTALL_PREFIX by default
...
Set PYTHON_BINDINGS_INSTALL_PREFIX to put them in another place
2020-06-17 22:15:27 +01:00
Sergio Martins
36fba5db3d
After growing neighbours, also honour the max size
...
So items with max-size don't grow past their max-size
2020-06-17 19:33:30 +01:00
Sergio Martins
744f351c4e
Fix highlight when widget has QSizePolicy::Maximum
...
Multisplitter::rectForDrop() was only using QWidget::maximumSize(),
which doesn't need to be set. Also fix the case where the dropped widget
be a complete multisplitter
2020-06-17 18:04:59 +01:00
Sergio Martins
b8664c44c7
example: show the use of max-sizes without developer-build
...
the feature is stable to show
2020-06-17 16:29:45 +01:00
Sergio Martins
e3276411f9
Propagate developer built into the example too
2020-06-17 16:20:21 +01:00
Sergio Martins
84989745b4
Use target_compile_options instead of the hammer
...
Doing per target ensures that the python stuff won't get -Werror.
We can now build the python bindings and still use the developer build
2020-06-17 14:37:42 +01:00
Sergio Martins
3121b4cf28
Add *pyc to .gitignore
2020-06-17 14:29:52 +01:00
Sergio Martins
da6df47706
Merge pull request #50 from KDAB/python
...
Python
2020-06-17 11:12:27 +01:00
Sergio Martins
e5c0316ebb
Fix the highlight/rubber-band size not matching the size the item gets
...
Not all code-paths were using FairButFloor. Dropping a single item
used FairButFloor, but not when dropping another multi-splitter (
Layout with nested items)
2020-06-16 22:34:18 +01:00
Renato Araujo Oliveira Filho
c0d8f22049
Use PySide from the system when possible
2020-06-16 17:57:56 -03:00
Renato Araujo Oliveira Filho
c2d8991283
Allow to install python bindings in a custom dir
...
Added cmake var PYTHON_BINDINGS_INSTALL_PREFIX
2020-06-16 17:57:46 -03:00
Renato Araujo Oliveira Filho
a599736c1b
Create Python bidings
...
Added Cmake files
Ported examples
2020-06-16 15:12:41 -03:00
Sergio Martins
5526022a57
Add another fwd header
2020-06-13 19:09:44 +01:00
Sergio Martins
25dd149475
Add Widget::mapToGlobal()
2020-06-13 19:09:44 +01:00
Sergio Martins
e6b67101fa
Make the example customize TitleBarWidget instead of TitleBar
...
TitleBar will cease to depend on QWidget
2020-06-11 21:26:33 +01:00
Sergio Martins
16c32cea4b
Added Widget::update() and mapFromGlobal
2020-06-11 19:33:20 +01:00
Sergio Martins
9f44eb3154
Add Widget::topLevel()
...
Equivalent to QWidget::window()
2020-06-11 18:18:11 +01:00
Sergio Martins
c7b6a1a654
wip
2020-06-11 18:10:01 +01:00
Sergio Martins
6bbcb8f8f2
Rename LayoutSaver::MultiSplitterLayout to LayoutSaver::MultiSplitter
2020-06-11 17:00:54 +01:00
Sergio Martins
163b194398
Fix clang build, mostly shadowing warnings
2020-06-11 17:00:54 +01:00
Sergio Martins
86e58dd8a7
Merge MultiSplitterLayout into MultiSplitter
...
No need to have two. It's a leftover from the old layouting engine
2020-06-11 16:34:28 +01:00
Sergio Martins
e54ef787ed
Some include cleanup
2020-06-11 11:03:12 +01:00
Sergio Martins
d5957a0dc5
Double-clicking on separator now respects max-size
2020-06-10 23:32:04 +01:00
Sergio Martins
bb79bd12a7
Fix bug in availableToGrowOnSide() and add unit-test
2020-06-10 20:31:03 +01:00
Sergio Martins
47795d0751
min/max pos for separator can honour max-size now
2020-06-10 19:52:20 +01:00
Sergio Martins
e234ad65ab
Add ItemContainer::availableToGrowOnSide_recursive()
2020-06-10 19:24:34 +01:00
Sergio Martins
1c3dd93ee3
More renaming, as we add more functions that honour max-size
2020-06-10 19:02:07 +01:00
Sergio Martins
ccf161e139
Add ItemContainer::availableToGrowOnSide()
2020-06-10 18:58:38 +01:00
Sergio Martins
9636054ccc
Rename Item::availableOnSide() to availableToSqueezeOnSide()
2020-06-10 18:55:54 +01:00
Sergio Martins
6e77dce573
Add Item::neighboursMaxLengthFor()
2020-06-10 18:54:34 +01:00
Renato Araujo Oliveira Filho
e6a335a3f7
Use enum explicitly constructor as default values
...
This will avoid problems generating python bindings, shiboken does not
handle well '{}' initialization.
2020-06-10 12:37:46 -03:00
Sergio Martins
a442419db2
Honour max-size constraints when resizing the window
...
items won't resize past their max-size when resizing the window now
2020-06-10 14:10:41 +01:00
Sergio Martins
479e1acece
tests: guest widget can get a max-size now too
2020-06-10 11:42:50 +01:00
Sergio Martins
a7878122ac
Only use QT_DISABLE_DEPRECATED_BEFORE in developer-mode
...
Many projects just add kddw as a sub-folder and might have
QT_DISABLE_DEPRECATED_BEFORE with a different value, then you get
lots of warnings
2020-06-09 12:40:37 +01:00
Sergio Martins
fa32054085
Merge pull request #48 from KDAB/fix-warning
...
Fix -Wextra-semi
2020-06-08 21:20:26 +01:00
Colin Ogilvie
f3de1ad63d
Fix -Wextra-semi
2020-06-08 19:36:18 +01:00
Sergio Martins
8baac15d24
Fix floating window position when dragging with constraints
...
When the detach starts we might make the window smaller so it
respects the max-size constraint. The quirk was that in that
case the window was no longer under the mouse cursor, so looked
weird while dragging, although it worked
2020-06-08 18:19:46 +01:00
Sergio Martins
4cf1159019
Two more places that should use setSuggestedGeometry()
...
Now dragging by the tab bar also respects the max-size
2020-06-08 17:40:17 +01:00
Sergio Martins
ee065795b9
Fix Frame max size accounting for the waste twice
...
Frame::biggestDockWidgetMaxSize() should return only the max size
of the dock widget, and not mix with sizes of the container frame
2020-06-07 23:12:47 +01:00
Sergio Martins
7f9d160658
Also honour QSizePolicy::Maximum
...
It's yet another way to say you want a max size
2020-06-07 20:14:50 +01:00
Sergio Martins
daa220d513
tests: let the widget receive a size hint
2020-06-07 20:01:37 +01:00
Sergio Martins
d5797a3aea
Honour QSizePolicy::Fixed too
...
Some widgets, for example QPushButton, instead of having an explicit max size,
they communicate the need for a max size through their size policy
2020-06-07 19:53:06 +01:00
Sergio Martins
ab8545e2c2
Bound the item max size just in case
2020-06-06 20:27:36 +01:00
Sergio Martins
5fc16954f5
Fix max-size only working in one orientation
...
ItemContainer::maxSizeHint() algo was wrong.
Add unit-test too.
2020-06-06 20:11:09 +01:00
Sergio Martins
6610e48cb3
Fix qDebug for child items going out of scope before the parents
...
Made the child debug lines appear before
2020-06-06 18:12:44 +01:00
Sergio Martins
dabfeeaf3b
Honour max-size when floating a window
2020-06-05 15:35:55 +01:00
Sergio Martins
9601f57050
example: Don't show the dock widgets immediately
...
It's not needed, as they are going to be added to the layout.
Saves us from flicker and also the temporary floating position
being saved
2020-06-05 13:43:35 +01:00
Sergio Martins
7c442dce85
Fix another place that should use setSuggestedGeometry
2020-06-04 21:47:47 +01:00