----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://git.reviewboard.kde.org/r/107517/#review22775 -----------------------------------------------------------
Ship it! Looks really good to me, and yes please backport it too - C. Boemann On Nov. 29, 2012, 6:35 p.m., Friedrich W. H. Kossebau wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > http://git.reviewboard.kde.org/r/107517/ > ----------------------------------------------------------- > > (Updated Nov. 29, 2012, 6:35 p.m.) > > > Review request for Calligra and C. Boemann. > > > Description > ------- > > The constructor of KoSemanticStylesheet is protected, possibly to control who > can create system stylesheets or user stylesheets. > > Subclasses of KoRdfSemanticItem need to implement the abstract virtual > "QList<hKoSemanticStylesheet> KoRdfSemanticItem::stylesheets() const", where > they create the default system KoSemanticStylesheet. Having no stylesheet at > all fails e.g. in KoRdfSemanticItem::defaultStylesheet() which assumes some > ("Q_ASSERT(ret);"). And setting at least a user stylesheet as workaround > seems to fail in other parts, where at least one system stylesheet is wanted, > and still is a workaround. > Currently only the three subclasses of KoRdfSemanticItem which are part of > Calligra libs can do that, create system stylesheets, because they are listed > as friend classes for KoSemanticStylesheet and only because of that can use > its constructor. 3rd-party subclasses can not. > > Attached patch changes that, by adding a protected helper method to > KoRdfSemanticItem which enables all subclasses of it to create their system > stylesheets as wanted. It also changes the subclasses which are part of > Calligra libs to use this method, to show 3rd-party coders how to do it and > also ensure a single way to create system stylesheets, for consistency and > reducing exceptions and the need for friend class declarations. > > Okay to apply to 2.6 and master? > > > Diffs > ----- > > libs/main/rdf/KoRdfCalendarEvent.cpp d7b6417 > libs/main/rdf/KoRdfFoaF.cpp e5bd1f2 > libs/main/rdf/KoRdfLocation.cpp aa95956 > libs/main/rdf/KoRdfSemanticItem.h d744139 > libs/main/rdf/KoRdfSemanticItem.cpp 64ef7c3 > libs/main/rdf/KoSemanticStylesheet.h 958f1d4 > > Diff: http://git.reviewboard.kde.org/r/107517/diff/ > > > Testing > ------- > > Enables to fix a crash introduced by 3rd-party code not being able to > properly implement KoRdfSemanticItem::stylesheets(), runs fine now. > > > Thanks, > > Friedrich W. H. Kossebau > >
_______________________________________________ calligra-devel mailing list calligra-devel@kde.org https://mail.kde.org/mailman/listinfo/calligra-devel