Karbon: Enable multi page capability
Summary:
Since odg spec supports multiple pages, I feel karbon also needs to support it.
The main things that has changed:
- Since multiple pages is supported, adding/copying/deleting pages is now possible.
- The page background color is now set with a tool in the tool box. The entry for background color in the Settings dialog is superflous and has been removed.
Ported to use pageapp classes.
A lot of code was duplicated between pageapp and karbon
and has been removed from karbon:
- Save/load
- Layers docker and all layer operations
- Grid, guides, rulers and zoom
- Event handlers
- Printing
- Show page margins has been moved to pageapp
In general, import/export needs review to determine how to
handle multiple pages when e.g. exporting to a format that
does not support pages.
Known bugs:
- "Separate paths" command:
- Execute command, the shape disappears.
- Undo crashes. Note: Afaics this code is not touched so probably a libs bug.
- Snap to grid does not work
- Number of recent files does not work properly
Test Plan:
I am not an avid user of karbon, so would be nice if some that where could test.
Also, do not have all types of different format docs for filter testing.
Some that work are pdf, svg, jpg and karbon files.
Reviewers: anthonyfieroni
Reviewed By: anthonyfieroni
Subscribers: rjvbb, Calligra-Devel-list
Tags: #calligra:_3.0
Differential Revision: https://phabricator.kde.org/D20400