Sergio Martins
3fb8861eee
Remove "EXPERIMENTAL" comment from MDI option
...
MDI doesn't have known bugs
2021-08-29 17:43:21 +01:00
Allen Winter
4f4a5de700
fix misspellings found by codespell
2021-07-15 09:46:53 -04:00
Renato Araujo Oliveira Filho
ec4a4d1c86
Python: Create bindings for InitialOption
...
Added bindings for missing enums
Added InitialOption as value type
Task-Id: #198
2021-07-13 17:33:09 +01:00
Allen Winter
7001aa58ce
clang-format on code base
2021-07-12 17:05:37 -04:00
Sergio Martins
45f12db8d3
windows: Fix place of export macro for namespace
2021-04-12 10:02:50 +01:00
Sergio Martins
9956b3fed3
qt6: Fix KDDW build on Windows
...
Namespace needs to be exported due to Q_NAMESPACE
2021-04-12 09:57:49 +01:00
Sergio Martins
e7d37402d7
Rename DefaultSizeMode::None
...
Fixes QtQuick warnings about two different enum class having an
enumerator called "None"
Known QML limitation with "enum class"
2021-04-05 22:33:11 +01:00
Sergio Martins
b18783c17a
qtquick: Add some Q_ENUM_NS
2021-04-05 20:36:38 +01:00
Sergio Martins
201d06d878
qtquick: Use MainWindowOption instead of int for the property too
2021-04-05 20:32:11 +01:00
Sergio Martins
742ef7d529
qtquick: Use the MainWindowOptions enum instead of int
2021-04-05 20:28:57 +01:00
Sergio Martins
9ce50fa305
qtquick: Minor refactoring, deal in CursorPosition
2021-03-03 14:59:24 +00:00
Sergio Martins
f0240deaeb
qtquick: Use Q_NAMESPACE for the KDDockWidgets namespace
2021-03-03 14:40:24 +00:00
Sergio Martins
ff67b9bcbc
Merge branch '1.3' into master
2021-02-26 15:20:32 +00:00
Sergio Martins
7c3f06f98f
When using a native title bar make floating window geometry smaller
...
When undocking a dock widget, the size of the dock widget should
be maintained
Fixes #174
2021-02-26 15:12:43 +00:00
Sergio Martins
610b85d01a
Minor readability improv: replace bool with enum
...
CC issue #174
2021-02-26 14:32:55 +00:00
Sergio Martins
64db52fd17
Move the CursorPositions header to the enums header instead
...
Otherwise will have to include WidgetResizeHandler_p.h
where I don't want to. And make it an installed header etc.
2021-02-11 18:52:21 +00:00
Sergio Martins
ae81f64d07
MDI: Comment that these methods don't make sense for MDI
2021-02-09 19:47:51 +00:00
Sergio Martins
8dca2e346c
Add experimental MDI support
2021-02-09 19:25:28 +00:00
Sergio Martins
46210203f7
Rename ItemContainer to ItemBoxContainer
2021-01-08 22:02:02 +00:00
Sergio Martins
0d2bccc15e
Deprecate AddingOption
...
Will probably be removed in v1.5
2021-01-05 20:32:14 +00:00
Sergio Martins
842b89c36d
Restore source-compat with 1.2
...
It's not very hard. Just added the old enum and an implicit ctor.
2021-01-05 19:09:11 +00:00
Allen Winter
875544a449
Merge branch '1.2'
2021-01-02 09:32:20 -05:00
Allen Winter
a2f4c972a6
update copyright year
2021-01-02 09:27:50 -05:00
Sergio Martins
003ec5aa5b
Probably fix namespaced build
2020-12-28 19:35:03 +00:00
Sergio Martins
6719dd2b9e
Allow to pass a preferred initial size to MainWindow::addDockWidget()
...
fixes #95
2020-12-28 11:59:09 +00:00
Sergio Martins
08c058b214
Remove unimplemented DefaultSizeMode::SizePolicy
...
It's public API so don't expose enumerators that don't work
2020-12-28 10:58:37 +00:00
Sergio Martins
db928a0fca
refactor: Move the DefaultSizingMode enum into InitialSizingOption
...
It's another enum that affects the initial sizing.
No behaviour was change in this commit.
Needed for issue #95
2020-12-28 00:17:13 +00:00
Sergio Martins
5582f37a18
Introduce InitialOption struct
...
addDockWidget() received a AddingOption enumerator. But that
enum isn't enough, as we also want to be able to specify an initial
QSize.
So, instead of adding yet another parameter to addDockWidget(), we
create a struct to old those "initial settings".
Implies a minor source break, but trivial to fix in user code,
just rename the enumerator.
Honouring preferredSize will be a followup.
Needed for issue #95
2020-12-27 20:22:02 +00:00
Sergio Martins
a28e152a37
Remove duplicate DefaultSizeMode enum
...
It's already in Item_p.h
2020-12-27 13:56:58 +00:00
Sergio Martins
89635d8b98
qt6: build is fixed now
2020-12-08 21:47:35 +00:00
Sergio Martins
a5c65ae039
Introduce NullIndicators and a Config option for it
...
Mostly for debugging purposes, but also useful if anyone doesn't
want to display indicators
2020-11-28 14:11:39 +00:00
Sergio Martins
d1b2d17f7d
Allow the normal/restore icon to be different than float/dock
...
Allow we use the same icon, the user might now want to, so allow
them to use a different icon
2020-10-03 14:58:07 +01:00
Sergio Martins
f009f57581
Move TitleBarButtonType next to all other enums
2020-10-03 14:29:36 +01:00
Sergio Martins
b8891a5727
Start implementing overlaying on top of main window
2020-09-20 12:56:31 +01:00
Sergio Martins
fcb6f5a6af
Use the top sidebar too
2020-09-19 12:16:51 +01:00
Sergio Martins
76e2ec6429
Add East, West and North sidebars too
...
Instead of just south.
Only south is used for now though.
2020-09-19 11:00:42 +01:00
Sergio Martins
a5d0a202a5
Add enum with sidebar location
2020-09-19 10:35:36 +01:00
Sergio Martins
113e6453ea
example: Show usage of segmented indicators
2020-08-23 16:57:48 +01:00
Allen Winter
b4f49895c2
clarify: licensing is GPL2 or GPL3 or commercial licensed
...
follow the REUSE specs
2020-07-24 18:16:13 -04:00
Sergio Martins
63c90875aa
example: Add example of docking main window into main window
2020-05-25 21:45:21 +01:00
Sergio Martins
0dac5eed68
Item: Add DefaultSizeMode enum
...
To control how we calculate the item's initial size when
we add it
2020-05-10 21:20:31 +01:00
Sergio Martins
97c1ca30fd
Layouting engine rewrite
...
The layouting was becoming too complex to maintain and to introduce
new features. Was even buggy, the fuzzer was constantly finding
bugs, which took hours to workaround.
Problem with the old layout engine is that there was a catch 22, between
Items driving the separators, and separators driving the anchors.
The new layout is much simpler, both in implementation and conceptually.
There's simply a recursive hierarchy of Item elements. An Item can either
have a QWidget to show, or be a ItemContainer, which contains Item children,
and so forth. Each ItemContainer is either vertical or horizontal. That's enough
to represent the "nested multi-splitter" concept which KDDW uses.
After each item insertion/deletion/resize, the separators are regenerated. They
are essentially dumb now.
TODO:
- Separators are drawn, but are not interactive yet
- There's 5 tests failing
- LayoutSaver scalling functionality
2020-05-04 00:02:03 +01:00
Sergio Martins
ca211f2494
LayoutSaver: Add an option to restore in relative sizes
...
and not touching the main window geometry.
The option is not exposed yet, there's a layouting bug to fix first.
2020-02-25 19:06:43 +00:00
Allen Winter
df692686e7
various - update copyright year
2020-01-07 11:36:56 -05:00
Sergio Martins
5a5e6f3762
Add Q_DECLARE_OPERATORS_FOR_FLAGS for FrameOptions
2019-10-08 18:01:11 +01:00
Sergio Martins
a0d05b4e2b
Move Frame::Options enum to KDDockWidgets.h
...
So we can forward declare Frame and not include private headers
in FrameworkWidgetFactory.h
2019-10-07 13:43:48 +01:00
Sergio Martins
b5fad9a601
docs++
2019-10-05 12:54:25 +01:00
Sergio Martins
eb96288534
docs: Improved @file docs
2019-10-04 17:33:42 +01:00
Sergio Martins
d960c27b00
Remove unneeded ;
2019-08-20 15:25:48 +01:00
Sergio Martins
fc380eab72
More tests for rectForDrop()
2019-07-17 11:46:42 +01:00