Allen Winter
275e334120
Item_p.h, MultiSplitter.cpp - remove duplicate includes
2020-06-23 11:27:18 -04:00
Allen Winter
f97f920ffb
private/multisplitter/Separator_qwidget.h - fix include guard
2020-06-23 11:26:54 -04:00
Allen Winter
7773c3fe27
minor spelling fixes
2020-06-23 11:10:56 -04:00
Sergio Martins
19d5467f4d
fuzzer: Also generate max-size constraints
2020-06-21 23:28:35 +01:00
Sergio Martins
4c0e418bc1
Add DropArea::frames()
...
instead of the FloatingWindow using findChildren on another object's
internals
2020-06-21 22:07:12 +01:00
Sergio Martins
fab4d39f92
Use a dedicated id() property instead of casting pointers to int
...
Which would be flaky once we have multi-inheritance
2020-06-21 21:17:04 +01:00
Sergio Martins
91b291a1a9
tests: Tests now run 10x faster, with ctest -j10 or so
...
Introduced an indirection, tests_launcher, which can run a subset
of the 140 tests, this way it's paralelizable by ctest
2020-06-20 15:27:58 +01:00
Sergio Martins
be4a71685a
Fix a fuzzer test
...
When restoring a layout it can happen that the widget has
different size constraints when being restored, so this warning
was benign. There's a chekcSanity() later, so that's what's matters
2020-06-20 14:00:33 +01:00
Sergio Martins
8b862b7843
Honour max-size constraints when moving a separator
...
The separator will still move, but won't make the item grow
past its max-size, instead, it will grow the item's neighbours
2020-06-20 13:17:26 +01:00
Sergio Martins
b0503cfeb4
checkSanity: Don't honour max-size when checking the constraints
...
It's not always possible to honour max-size, when there's conflicting
items in the layout with min-sizes which wouldn't allow use to satisfy
max-size constraints. max-size is more of an hint
2020-06-20 13:16:14 +01:00
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