D20400: Karbon: Enable multi page capability

Dag Andersen noreply at phabricator.kde.org
Tue Apr 9 07:40:20 BST 2019


danders created this revision.
danders added a reviewer: anthonyfieroni.
danders added a project: Calligra: 3.0.
danders requested review of this revision.

REVISION SUMMARY
  Since odg spec supports multiple pages, I feel karbon also needs to support it.
  
  The main things that has changed:
  
  1. Since multiple pages is supported, adding/copying/deleting pages is now possible.
  2. 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.

REPOSITORY
  R8 Calligra

BRANCH
  karbon_multipage_danders

REVISION DETAIL
  https://phabricator.kde.org/D20400

AFFECTED FILES
  filters/karbon/CMakeLists.txt
  filters/karbon/image/CMakeLists.txt
  filters/karbon/image/ImageExport.cpp
  filters/karbon/svg/CMakeLists.txt
  filters/karbon/svg/SvgExport.cpp
  filters/karbon/svg/SvgImport.cpp
  filters/karbon/wmf/CMakeLists.txt
  filters/karbon/wmf/WmfExport.cpp
  karbon/CMakeLists.txt
  karbon/data/karbon.rc
  karbon/ui/CMakeLists.txt
  karbon/ui/KarbonDocument.cpp
  karbon/ui/KarbonDocument.h
  karbon/ui/KarbonDocumentMergeCommand.cpp
  karbon/ui/KarbonDocumentMergeCommand.h
  karbon/ui/KarbonFactory.cpp
  karbon/ui/KarbonPart.cpp
  karbon/ui/KarbonPart.h
  karbon/ui/KarbonPrintJob.cpp
  karbon/ui/KarbonPrintJob.h
  karbon/ui/KarbonView.cpp
  karbon/ui/KarbonView.h
  karbon/ui/ProxyView.cpp
  karbon/ui/ProxyView.h
  karbon/ui/dockers/KarbonLayerDocker.cpp
  karbon/ui/dockers/KarbonLayerDocker.h
  karbon/ui/dockers/KarbonLayerModel.cpp
  karbon/ui/dockers/KarbonLayerModel.h
  karbon/ui/dockers/KarbonLayerSortingModel.cpp
  karbon/ui/dockers/KarbonLayerSortingModel.h
  karbon/ui/widgets/KarbonCanvas.cpp
  karbon/ui/widgets/KarbonCanvas.h
  karbon/ui/widgets/KarbonConfigInterfacePage.cpp
  karbon/ui/widgets/KarbonSmallStylePreview.h
  libs/pageapp/KoPAView.cpp
  libs/pageapp/KoPAView.h

To: danders, anthonyfieroni
Cc: Calligra-Devel-list, dcaliste, cochise, vandenoever
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/calligra-devel/attachments/20190409/5910207e/attachment.htm>


More information about the calligra-devel mailing list