----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/123440/#review79405 -----------------------------------------------------------
Ship it! Looks good. - Thorsten Zachmann On April 20, 2015, 10:11 p.m., Friedrich W. H. Kossebau wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://git.reviewboard.kde.org/r/123440/ > ----------------------------------------------------------- > > (Updated April 20, 2015, 10:11 p.m.) > > > Review request for Calligra and Thorsten Zachmann. > > > Repository: calligra > > > Description > ------- > > Currently for marker styles (i.e. line ends, e.g. arrows) KoMarkerCollection > loads a file "markers.xml". It finds a file with the name by the resource > type "styles". Calligra itself installs only one such file, i.e. the library > of KoMarkerCollection itself does that. The path where that one file is > installed is registered for resource type "styles" by KoGlobal (while > kowidgets actually depends on flake, not the other way round). > libs/widgets/KoGlobal.cpp: KGlobal::dirs()->addResourceType("styles", > "data", "calligra/styles/"); > libs/flake/KoMarkerCollection.cpp: QString > filePath(KStandardDirs::locate("styles", "markers.xml")); > libs/flake/styles/CMakeLists.txt: install(FILES markers.xml DESTINATION > ${DATA_INSTALL_DIR}/calligra/styles) > > The resource type "styles" is also used by Words, Stage & Flow, registering > "words/styles/" etc. They use the type to tell KoOdfLoadingContext where to > find the app-specific defaultstyles.xml: > words/part/KWFactory.cpp: s_instance->dirs()->addResourceType("styles", > "data", "words/styles/"); > stage/part/KPrFactory.cpp: s_instance->dirs()->addResourceType("styles", > "data", "stage/styles/"); > flow/part/FlowFactory.cpp: s_instance->dirs()->addResourceType("styles", > "data", "flow/styles/"); > libs/odf/KoOdfLoadingContext.cpp: QString fileName( > KStandardDirs::locate("styles", "defaultstyles.xml", componentData ) ); > > The resource type "styles" is used nowhere else. > > Was it ever planned that Words, Stage, Flow (or perhaps another app) could > overwrite the basic default markers.xml file, and is that the reason why the > shared resource type is used? > > If not, what I assume, then I propose to remove that indirect access, and > have KoMarkerCollection search the file directly in calligra/styles, instead > of any other paths registered for "styles". > With the registration of "calligra/styles" no longer needed, removing it > should also speed up minimally loading the defaultstyles.xml, as there are > two paths less to look inside now. > And porting to Qt5 QStandardPaths has one issue less in the end ;) > > > Diffs > ----- > > libs/flake/KoMarkerCollection.cpp 06c8f98 > libs/widgets/KoGlobal.cpp 80c3b2e > > Diff: https://git.reviewboard.kde.org/r/123440/diff/ > > > Testing > ------- > > The default markers are still loaded in all apps, tested with Karbon, Words & > Stage. > > > Thanks, > > Friedrich W. H. Kossebau > >
_______________________________________________ calligra-devel mailing list calligra-devel@kde.org https://mail.kde.org/mailman/listinfo/calligra-devel