Commit Graph

79 Commits

Author SHA1 Message Date
mfreiholz
9c530dcc58 refactor: Renames member _splitAreas to _cross.
mod: removes ContainerWiget::set/Orientation() members. Obsolete since
everything is managed over drop areas.
2016-04-18 07:18:50 +02:00
mfreiholz
86c23c6269 refactor: Renames DropSplitAreas => DropOverlayCross
mod: Uses QPalette::Highlight color, instead of in-source fixed color, for area overlay painting.
2016-04-18 07:06:46 +02:00
mfreiholz
0bd5dc57fa Preparation for #13 - custom drop images.
- DropOverlay and DropSplitArea widgets are friendly, but still separate
  for better customization.
- Both classes are reusable, no longer create a new instance of
  DropSplitArea for each show call.
2016-04-15 12:14:50 +02:00
mfreiholz
5041f5076a fix #17 - get rid of static drop overlay
- holds one instance of DropOverlay for each ContainerWidget.
2016-04-15 08:21:23 +02:00
mfreiholz
823028c6aa clean handling of QEvent::accept() 2016-04-11 09:12:48 +02:00
mfreiholz
fffc84374a Use QT_VERSION_CHECK macro for better compatibility. 2016-04-11 07:27:02 +02:00
mfreiholz
14a80f1753 fix: FloatingWidget calls ContainerWidget::hideSectionContent(...) instead
of it's own close() method to be consistent in the way of hiding and
showing contents.
2016-04-11 07:15:42 +02:00
mfreiholz
932ec71ad8 Issue #15
- adds sectionContentVisibilityChanged(...) signal
2016-04-11 07:08:40 +02:00
mfreiholz
f2a352c305 fixes position mapping of sections inside container. all positions are now relative to it's container. 2016-04-06 07:52:17 +02:00
mfreiholz
0eea083f07 removes no longer required debug prints 2016-04-06 06:55:27 +02:00
mfreiholz
f110ad8ec7 fix: position (not yet tested) 2016-04-05 15:00:05 +02:00
mfreiholz
d8dc37b788 adds read() for SectionIndexData
updates unit-tests
2016-04-05 13:23:01 +02:00
mfreiholz
40727028d6 Fix version check for QLayout::replaceWidget() 2016-04-05 07:54:12 +02:00
mfreiholz
0d50bf8ac0 init x and y 2016-04-04 08:52:03 +02:00
mfreiholz
195b34c0ca Serialize SectionIndexData on storeSate(). 2016-04-04 08:51:38 +02:00
mfreiholz
ac80242545 Fixes version check for serialized data.
Use new ::serialization package for save- and restore state.
2016-04-01 13:06:12 +02:00
mfreiholz
2a1bc4c43b Refactor: Add *Entity to all serialization entities to omit name collisions 2016-04-01 12:35:33 +02:00
mfreiholz
34891e746e Refactor: Moves EntryTypes into namespace enum.
Adds ADS_EXPORT_API defines to public classes.
2016-04-01 12:11:52 +02:00
mfreiholz
158dac5309 Build
- Use absolute file paths by using $$PWD variable.
- Adds unit testing project + unit-test for serialization.
- Adds ADS_IMPORT define possibility for static code include.

Core
- Fixes usage of QBuffer.. missed the QBuffer::open() call..
2016-04-01 11:49:16 +02:00
mfreiholz
5ab1751f9b Build: Moves source file list into separate *.pri file. 2016-04-01 09:58:26 +02:00
mfreiholz
d29bdd1438 Fixes "const" usage 2016-04-01 09:57:52 +02:00
mfreiholz
4debaaaf85 Serialization
- Adds prototype impls for InMemoryWriter and InMemoryReader.
- Use major- and minor-version idiom
2016-04-01 09:52:59 +02:00
mfreiholz
6c587ff8c4 Adds prototype classes for better serialization. 2016-03-31 14:47:19 +02:00
mfreiholz
45f269835b Using grabMouse() leads to more problems. I think there is a better way to ensure that the mouse sometimes doesn't lose the current dragging floating widget. 2016-03-16 13:58:57 +01:00
tanaxiusi
f2f5de707c Fix bug after saving-restoring a empty container with no SectionWidget.
SectionTitleWidget::mousePressEvent call 'grabMouse' to ensure the floaing widget can always follow the mouse after floated.
SectionTitleWidget::mouseMoveEvent check Qt::LeftButton.
2016-03-16 20:12:39 +08:00
mfreiholz
d2d2467101 Adds possibility to remove section contents. 2016-03-14 15:12:34 +01:00
mfreiholz
21f316577f Again... Fixes invisible FloatingWidget's title-widget after restoring state. 2016-03-09 08:37:20 +01:00
mfreiholz
afb5abd635 Fixes invisible FloatingWidget's title-widget after restoring state. 2016-03-09 08:07:16 +01:00
mfreiholz
34cf851e24 Updates default stylesheet and demo app 2016-03-08 14:24:33 +01:00
mfreiholz
9bbc5e41a3 Better implementation of empty QSplitter deletion (no longer crashes).
Call it after restore, because sometimes one splitter was left ?-/
2016-03-08 10:58:56 +01:00
mfreiholz
94d8fe3e25 Fixes invisible SectionWidget TAB, if the content was hidden previously, by calling setvisible(true) on title-widget - content-widget is managed by QStackedWidget. 2016-03-04 06:50:22 +01:00
mfreiholz
c5e39068b2 Replaces a qFatal with qWarning to skip a bug, which i couldn't find yet... 2016-03-03 13:44:14 +01:00
mfreiholz
a47073cdf8 raise* now works on hidden contents, too. 2016-03-03 07:12:26 +01:00
mfreiholz
9f952c38f0 takeContents now also searches for SC in hidden items. Otherwise we sometimes get a crash during restoreState. 2016-03-01 07:41:13 +01:00
mfreiholz
865213c5b5 Fixes includes for Qt4. 2016-02-26 12:48:10 +01:00
mfreiholz
06304b9818 Optimizes includes and forward declarations.
Fixes a bug where SectionWidget removes itself from _sections list during a qDeleteAll call on _sections.. that was stupid..
2016-02-26 12:43:14 +01:00
mfreiholz
74f6ba333f Adds activeTabChanged() signal to let API users know about this state
change. It might be use to re-polish style sheets.
2016-02-26 09:07:19 +01:00
mfreiholz
014fb04daf Linux fixes. 2016-02-24 17:39:35 +01:00
mfreiholz
4482182dad Adds dllimport spec 2016-02-24 15:17:53 +01:00
mfreiholz
0e831ee55f Adds optional "title" attribute to SectionContent and show it in visible
areas e.g. context-menu.
Build as shared library by default.
2016-02-24 12:12:09 +01:00
mfreiholz
7e41d18a6d Adds function to raise a section-content. 2016-02-24 11:45:19 +01:00
mfreiholz
747874b1e5 Adds capabilities to build as shared library on Windows. 2016-02-23 21:31:09 +01:00
mfreiholz
0238828afa Uses static lazy loaded QHash objects instead of static linker initialized
class members. This should fix multi initialization when linking static
into DLL and EXE at the same time. Hopefully..
2016-02-23 20:51:19 +01:00
mfreiholz
8508a0323a Updates stylesheets 2016-02-23 15:14:44 +01:00
mfreiholz
846535c085 Fixes crash, if only a single SectionContent elemet has been added to
ContainerWidget, make it floating and drop it back into ContainerWidget.
2016-02-23 09:30:17 +01:00
mfreiholz
032a5d6cdf Memleak fixes
* Set parent of title- and content-widget to associated container-widget
* inside FloatingWidget::takeContent(...)

Restore state
* Restore all contents as visible and then call hideSectionContent(...) at
* the end. This is more consistent and uses same code (public API).
* Pass version to sub-methods to handle different formats
* Fix serialization, if nothing is visible (no sections, only hidden
* contents)
2016-02-19 12:00:39 +01:00
mfreiholz
6a1b6307c9 Implements show/hide of SectionContent + serialization of state (not yet
completed/tested).
Context menu also works with new impl.
Shows close button on top-right corner of SectionWidget.
2016-02-18 15:06:00 +01:00
mfreiholz
eaff4f3d4e Refactors: Move save/restore impl into separate methods.
Updates SectionContent API: Its only possible to use it as shared pointer
(RefPtr), Copies not possible.
Handle missing or too many content references in restore procecure.
2016-02-17 14:42:46 +01:00
mfreiholz
1b91fe241b Use takeContents() for strict ownership switch. 2016-02-17 11:09:24 +01:00
mfreiholz
d67a7e65e9 Save/restore visiblity state of FloatingWidget. 2016-02-17 10:10:36 +01:00