Revision 1183433

Go back to digest for 10th October 2010

Optimization in Office

Boudewijn Rempt committed changes in /branches/work/koffice-essen:

De-QObject-ify the factories and registries

There is no reason for the registries and the factories the registries contain to be QObjects. The only thing it was used for was the parent-child relation so the factories would be deleted on shutdown.

The objects would thus both be in the hashmap and in the list of children of the registry, effectively clouding the ownership relation.

To make all registries in KOffice consistent in usage, the destructors of the registries now delete their contents, there is no parent-child relationship anymore.

It also saves memory and makes it clear where all these objects are destroyed

File Changes

Modified 271 files
  • /branches/work/koffice-essen
  •   /interfaces/KoGenericRegistry.h
  •   /kspread/FunctionModuleRegistry.cpp
  •   /kspread/FunctionModuleRegistry.h
  •   /kformula/flake/KoFormulaShapeFactory.cpp
  •   /kformula/flake/KoFormulaShapeFactory.h
  •   /kformula/flake/KoFormulaShapePlugin.cpp
  •   /kformula/flake/KoFormulaToolFactory.cpp
  •   /kformula/flake/KoFormulaToolFactory.h
  •   /kpresenter/part/KPrDocument.cpp
  •   /kpresenter/part/KPrPlaceholderShapeFactory.cpp
  •   /kpresenter/part/KPrPlaceholderShapeFactory.h
  •   /krita/ui/kis_factory2.cc
  •   /kspread/part/CellToolFactory.cpp
  •   /kspread/part/CellToolFactory.h
  •   /kspread/part/ToolRegistry.cpp
  •   /kspread/shape/TableShapeFactory.cpp
  •   /kspread/shape/TableShapeFactory.h
  •   /kspread/shape/TableToolFactory.cpp
  •   /kspread/shape/TableToolFactory.h
  •   /libs/flake/KoConnectionShapeFactory.cpp
  •   /libs/flake/KoConnectionShapeFactory.h
  •   /libs/flake/KoDockRegistry.cpp
  •   /libs/flake/KoDockRegistry.h
  •   /libs/flake/KoFilterEffectFactoryBase.cpp
  •   /libs/flake/KoFilterEffectFactoryBase.h
  •   /libs/flake/KoFilterEffectRegistry.cpp
  •   /libs/flake/KoFilterEffectRegistry.h
  •   /libs/flake/KoInputDeviceHandlerRegistry.cpp
  •   /libs/flake/KoInputDeviceHandlerRegistry.h
  •   /libs/flake/KoLineBorderFactory.cpp
  •   /libs/flake/KoLineBorderFactory.h
  •   /libs/flake/KoPathShapeFactory.cpp
  •   /libs/flake/KoPathShapeFactory.h
  •   /libs/flake/KoShapeBorderFactoryBase.cpp
  •   /libs/flake/KoShapeBorderFactoryBase.h
  •   /libs/flake/KoShapeBorderRegistry.cpp
  •   /libs/flake/KoShapeBorderRegistry.h
  •   /libs/flake/KoShapeFactoryBase.cpp
  •   /libs/flake/KoShapeFactoryBase.h
  •   /libs/flake/KoShapeRegistry.cpp
  •   /libs/flake/KoShapeRegistry.h
  •   /libs/flake/KoToolFactoryBase.cpp
  •   /libs/flake/KoToolFactoryBase.h
  •   /libs/flake/KoToolRegistry.cpp
  •   /libs/flake/KoToolRegistry.h
  •   /libs/kotext/KoInlineObjectFactoryBase.cpp
  •   /libs/kotext/KoInlineObjectFactoryBase.h
  •   /libs/kotext/KoInlineObjectRegistry.cpp
  •   /libs/kotext/KoInlineObjectRegistry.h
  •   /libs/kotext/KoTextEditingFactory.cpp
  •   /libs/kotext/KoTextEditingFactory.h
  •   /libs/kotext/KoTextEditingRegistry.cpp
  •   /libs/kotext/KoTextEditingRegistry.h
  •   /libs/pigment/KoColorSpaceRegistry.h
  •   /libs/pigment/KoColorTransformationFactoryRegistry.cpp
  •   /plugins/artistictextshape/ArtisticTextShapeFactory.cpp
  •   /plugins/artistictextshape/ArtisticTextShapeFactory.h
  •   /plugins/artistictextshape/ArtisticTextShapePlugin.cpp
  •   /plugins/artistictextshape/ArtisticTextToolFactory.cpp
  •   /plugins/artistictextshape/ArtisticTextToolFactory.h
  •   /plugins/chartshape/ChartShapeFactory.cpp
  •   /plugins/chartshape/ChartShapeFactory.h
  •   /plugins/chartshape/ChartToolFactory.cpp
  •   /plugins/chartshape/ChartToolFactory.h
  •   /plugins/commentshape/CommentShapeFactory.cpp
  •   /plugins/commentshape/CommentShapeFactory.h
  •   /plugins/commentshape/CommentToolFactory.cpp
  •   /plugins/commentshape/CommentToolFactory.h
  •   /plugins/commentshape/Plugin.cpp
  •   /plugins/defaultTools/Plugin.cpp
  •   /plugins/divineProportion/DivineProportionPlugin.cpp
  •   /plugins/divineProportion/DivineProportionShapeFactory.cpp
  •   /plugins/divineProportion/DivineProportionShapeFactory.h
  •   /plugins/divineProportion/DivineProportionToolFactory.cpp
  •   /plugins/divineProportion/DivineProportionToolFactory.h
  •   /plugins/musicshape/MusicShapeFactory.cpp
  •   /plugins/musicshape/MusicShapeFactory.h
  •   /plugins/musicshape/MusicToolFactory.cpp
  •   /plugins/musicshape/MusicToolFactory.h
  •   /plugins/musicshape/SimpleEntryToolFactory.cpp
  •   /plugins/musicshape/SimpleEntryToolFactory.h
  •   /plugins/paragraphtool/ParagraphPlugin.cpp
  •   /plugins/paragraphtool/ParagraphToolFactory.cpp
  •   /plugins/paragraphtool/ParagraphToolFactory.h
  •   /plugins/pathshapes/PathShapesPlugin.cpp
  •   /plugins/pictureshape/PictureShapeFactory.cpp
  •   /plugins/pictureshape/PictureShapeFactory.h
  •   /plugins/pictureshape/PictureToolFactory.cpp
  •   /plugins/pictureshape/PictureToolFactory.h
  •   /plugins/pictureshape/Plugin.cpp
  •   /plugins/pluginshape/Plugin.cpp
  •   /plugins/pluginshape/PluginShapeFactory.cpp
  •   /plugins/pluginshape/PluginShapeFactory.h
  •   /plugins/spacenavigator/Plugin.cpp
  •   /plugins/textshape/ChangeTrackingToolFactory.cpp
  •   /plugins/textshape/ChangeTrackingToolFactory.h
  •   /plugins/textshape/TextEditingPluginContainer.cpp
  •   /plugins/textshape/TextPlugin.cpp
  •   /plugins/textshape/TextShapeFactory.cpp
  •   /plugins/textshape/TextShapeFactory.h
  •   /plugins/textshape/TextToolFactory.cpp
  •   /plugins/textshape/TextToolFactory.h
  •   /plugins/treeshape/Plugin.cpp
  •   /plugins/treeshape/TreeShapeFactory.cpp
  •   /plugins/treeshape/TreeShapeFactory.h
  •   /plugins/treeshape/TreeToolFactory.cpp
  •   /plugins/treeshape/TreeToolFactory.h
  •   /plugins/variables/DateVariableFactory.cpp
  •   /plugins/variables/DateVariableFactory.h
  •   /plugins/variables/InfoVariableFactory.cpp
  •   /plugins/variables/InfoVariableFactory.h
  •   /plugins/variables/PageVariableFactory.cpp
  •   /plugins/variables/PageVariableFactory.h
  •   /plugins/variables/VariablesPlugin.cpp
  •   /plugins/vectorshape/VectorShapeFactory.cpp
  •   /plugins/vectorshape/VectorShapeFactory.h
  •   /plugins/vectorshape/VectorShapePlugin.cpp
  •   /plugins/vectorshape/VectorToolFactory.cpp
  •   /plugins/vectorshape/VectorToolFactory.h
  •   /plugins/videoshape/Plugin.cpp
  •   /plugins/videoshape/VideoShapeFactory.cpp
  •   /plugins/videoshape/VideoShapeFactory.h
  •   /tools/f-office/FoCellToolFactory.cpp
  •   /tools/f-office/FoCellToolFactory.h
  •   /tools/f-office/MainWindow.cpp
  •   /karbon/plugins/filtereffects/BlendEffectFactory.cpp
  •   /karbon/plugins/filtereffects/BlendEffectFactory.h
  •   /karbon/plugins/filtereffects/BlurEffectFactory.cpp
  •   /karbon/plugins/filtereffects/BlurEffectFactory.h
  •   /karbon/plugins/filtereffects/ColorMatrixEffectFactory.cpp
  •   /karbon/plugins/filtereffects/ColorMatrixEffectFactory.h
  •   /karbon/plugins/filtereffects/ComponentTransferEffectFactory.cpp
  •   /karbon/plugins/filtereffects/ComponentTransferEffectFactory.h
  •   /karbon/plugins/filtereffects/CompositeEffectFactory.cpp
  •   /karbon/plugins/filtereffects/CompositeEffectFactory.h
  •   /karbon/plugins/filtereffects/ConvolveMatrixEffectFactory.cpp
  •   /karbon/plugins/filtereffects/ConvolveMatrixEffectFactory.h
  •   /karbon/plugins/filtereffects/FloodEffectFactory.cpp
  •   /karbon/plugins/filtereffects/FloodEffectFactory.h
  •   /karbon/plugins/filtereffects/ImageEffectFactory.cpp
  •   /karbon/plugins/filtereffects/ImageEffectFactory.h
  •   /karbon/plugins/filtereffects/KarbonFilterEffectsPlugin.cpp
  •   /karbon/plugins/filtereffects/MergeEffectFactory.cpp
  •   /karbon/plugins/filtereffects/MergeEffectFactory.h
  •   /karbon/plugins/filtereffects/MorphologyEffectFactory.cpp
  •   /karbon/plugins/filtereffects/MorphologyEffectFactory.h
  •   /karbon/plugins/filtereffects/OffsetEffectFactory.cpp
  •   /karbon/plugins/filtereffects/OffsetEffectFactory.h
  •   /karbon/plugins/tools/KarbonGradientToolFactory.cpp
  •   /karbon/plugins/tools/KarbonGradientToolFactory.h
  •   /karbon/plugins/tools/KarbonPatternToolFactory.cpp
  •   /karbon/plugins/tools/KarbonPatternToolFactory.h
  •   /karbon/plugins/tools/KarbonPencilToolFactory.cpp
  •   /karbon/plugins/tools/KarbonPencilToolFactory.h
  •   /karbon/plugins/tools/KarbonToolsPlugin.cpp
  •   /kexi/shapes/relationdesign/kexirelationdesignfactory.cpp
  •   /kexi/shapes/relationdesign/kexirelationdesignfactory.h
  •   /kexi/shapes/relationdesign/kexirelationdesignshapeplugin.cpp
  •   /kexi/shapes/relationdesign/kexirelationdesigntoolfactory.cpp
  •   /kexi/shapes/relationdesign/kexirelationdesigntoolfactory.h
  •   /kpresenter/part/pageeffects/KPrPageEffectRegistry.cpp
  •   /kpresenter/part/shapeanimations/KPrShapeAnimationRegistry.cpp
  •   /kpresenter/part/tools/KPrPlaceholderToolFactory.cpp
  •   /kpresenter/part/tools/KPrPlaceholderToolFactory.h
  •   /kpresenter/plugins/variable/PresentationVariableFactory.cpp
  •   /kpresenter/plugins/variable/PresentationVariableFactory.h
  •   /krita/image/filter/kis_color_transformation_filter.cc
  •   /krita/ui/flake/kis_shape_selection.cpp
  •   /krita/ui/flake/kis_shape_selection.h
  •   /kspread/plugins/calendar/CalendarToolFactory.cpp
  •   /kspread/plugins/calendar/CalendarToolFactory.h
  •   /libs/flake/tests/TestKoShapeFactory.cpp
  •   /libs/flake/tools/KoCreatePathToolFactory.cpp
  •   /libs/flake/tools/KoCreatePathToolFactory.h
  •   /libs/flake/tools/KoCreateShapesToolFactory.cpp
  •   /libs/flake/tools/KoCreateShapesToolFactory.h
  •   /libs/flake/tools/KoPanToolFactory.cpp
  •   /libs/flake/tools/KoPanToolFactory.h
  •   /libs/flake/tools/KoPathToolFactory.cpp
  •   /libs/flake/tools/KoPathToolFactory.h
  •   /libs/flake/tools/KoZoomToolFactory.cpp
  •   /libs/flake/tools/KoZoomToolFactory.h
  •   /plugins/defaultTools/connectionTool/ConnectionToolFactory.cpp
  •   /plugins/defaultTools/connectionTool/ConnectionToolFactory.h
  •   /plugins/defaultTools/defaulttool/DefaultToolFactory.cpp
  •   /plugins/defaultTools/defaulttool/DefaultToolFactory.h
  •   /plugins/defaultTools/guidestool/GuidesToolFactory.cpp
  •   /plugins/defaultTools/guidestool/GuidesToolFactory.h
  •   /plugins/dockers/shapecollection/CollectionShapeFactory.cpp
  •   /plugins/dockers/shapecollection/CollectionShapeFactory.h
  •   /plugins/dockers/shapecollection/ShapeCollectionDocker.cpp
  •   /plugins/pathshapes/ellipse/EllipseShapeFactory.cpp
  •   /plugins/pathshapes/ellipse/EllipseShapeFactory.h
  •   /plugins/pathshapes/enhancedpath/EnhancedPathShapeFactory.cpp
  •   /plugins/pathshapes/enhancedpath/EnhancedPathShapeFactory.h
  •   /plugins/pathshapes/rectangle/RectangleShapeFactory.cpp
  •   /plugins/pathshapes/rectangle/RectangleShapeFactory.h
  •   /plugins/pathshapes/spiral/SpiralShapeFactory.cpp
  •   /plugins/pathshapes/spiral/SpiralShapeFactory.h
  •   /plugins/pathshapes/star/StarShapeFactory.cpp
  •   /plugins/pathshapes/star/StarShapeFactory.h
  •   /plugins/textediting/autocorrection/AutocorrectFactory.cpp
  •   /plugins/textediting/autocorrection/AutocorrectFactory.h
  •   /plugins/textediting/autocorrection/AutocorrectPlugin.cpp
  •   /plugins/textediting/changecase/ChangecaseFactory.cpp
  •   /plugins/textediting/changecase/ChangecaseFactory.h
  •   /plugins/textediting/changecase/ChangecasePlugin.cpp
  •   /plugins/textediting/spellcheck/SpellCheckFactory.cpp
  •   /plugins/textediting/spellcheck/SpellCheckFactory.h
  •   /plugins/textediting/spellcheck/SpellCheckPlugin.cpp
  •   /plugins/textediting/thesaurus/ThesaurusFactory.cpp
  •   /plugins/textediting/thesaurus/ThesaurusFactory.h
  •   /plugins/textediting/thesaurus/ThesaurusPlugin.cpp
  •   /karbon/plugins/tools/CalligraphyTool/KarbonCalligraphicShapeFactory.cpp
  •   /karbon/plugins/tools/CalligraphyTool/KarbonCalligraphicShapeFactory.h
  •   /karbon/plugins/tools/CalligraphyTool/KarbonCalligraphyOptionWidget.cpp
  •   /karbon/plugins/tools/CalligraphyTool/KarbonCalligraphyToolFactory.cpp
  •   /karbon/plugins/tools/CalligraphyTool/KarbonCalligraphyToolFactory.h
  •   /karbon/plugins/tools/filterEffectTool/KarbonFilterEffectsToolFactory.cpp
  •   /karbon/plugins/tools/filterEffectTool/KarbonFilterEffectsToolFactory.h
  •   /kpresenter/part/tools/animationtool/KPrAnimationToolFactory.cpp
  •   /kpresenter/part/tools/animationtool/KPrAnimationToolFactory.h
  •   /kpresenter/part/tools/animationtool/Plugin.cpp
  •   /krita/plugins/assistants/RulerAssistant/kis_ruler_assistant_tool.h
  •   /krita/plugins/assistants/RulerAssistant/ruler_assistant_tool.cc
  •   /krita/plugins/tools/defaulttools/default_tools.cc
  •   /krita/plugins/tools/defaulttools/kis_tool_brush.h
  •   /krita/plugins/tools/defaulttools/kis_tool_colorpicker.h
  •   /krita/plugins/tools/defaulttools/kis_tool_ellipse.h
  •   /krita/plugins/tools/defaulttools/kis_tool_fill.h
  •   /krita/plugins/tools/defaulttools/kis_tool_gradient.h
  •   /krita/plugins/tools/defaulttools/kis_tool_line.h
  •   /krita/plugins/tools/defaulttools/kis_tool_measure.h
  •   /krita/plugins/tools/defaulttools/kis_tool_move.h
  •   /krita/plugins/tools/defaulttools/kis_tool_pan.h
  •   /krita/plugins/tools/defaulttools/kis_tool_path.h
  •   /krita/plugins/tools/defaulttools/kis_tool_rectangle.h
  •   /krita/plugins/tools/selectiontools/kis_tool_select_brush.h
  •   /krita/plugins/tools/selectiontools/kis_tool_select_contiguous.h
  •   /krita/plugins/tools/selectiontools/kis_tool_select_elliptical.cc
  •   /krita/plugins/tools/selectiontools/kis_tool_select_elliptical.h
  •   /krita/plugins/tools/selectiontools/kis_tool_select_magnetic.h
  •   /krita/plugins/tools/selectiontools/kis_tool_select_outline.h
  •   /krita/plugins/tools/selectiontools/kis_tool_select_path.h
  •   /krita/plugins/tools/selectiontools/kis_tool_select_polygonal.h
  •   /krita/plugins/tools/selectiontools/kis_tool_select_rectangular.h
  •   /krita/plugins/tools/selectiontools/kis_tool_select_similar.h
  •   /krita/plugins/tools/selectiontools/selection_tools.cc
  •   /krita/plugins/tools/tool_crop/kis_tool_crop.h
  •   /krita/plugins/tools/tool_crop/tool_crop.cc
  •   /krita/plugins/tools/tool_curves/kis_tool_bezier_paint.h
  •   /krita/plugins/tools/tool_curves/kis_tool_bezier_select.h
  •   /krita/plugins/tools/tool_curves/kis_tool_example.h
  •   /krita/plugins/tools/tool_curves/kis_tool_moutline.h
  •   /krita/plugins/tools/tool_dyna/kis_tool_dyna.h
  •   /krita/plugins/tools/tool_dyna/tool_dyna.cpp
  •   /krita/plugins/tools/tool_grid/kis_tool_grid.h
  •   /krita/plugins/tools/tool_grid/tool_grid.cc
  •   /krita/plugins/tools/tool_perspectivegrid/kis_tool_perspectivegrid.h
  •   /krita/plugins/tools/tool_perspectivegrid/tool_perspectivegrid.cc
  •   /krita/plugins/tools/tool_polygon/kis_tool_polygon.h
  •   /krita/plugins/tools/tool_polygon/tool_polygon.cc
  •   /krita/plugins/tools/tool_polyline/kis_tool_polyline.h
  •   /krita/plugins/tools/tool_polyline/tool_polyline.cc
  •   /krita/plugins/tools/tool_star/kis_tool_star.h
  •   /krita/plugins/tools/tool_star/tool_star.cc
  •   /krita/plugins/tools/tool_transform2/kis_tool_transform.h
  •   /krita/plugins/tools/tool_transform2/tool_transform.cc
  •   /libs/kopageapp/tools/backgroundTool/KoPABackgroundToolFactory.cpp
  •   /libs/kopageapp/tools/backgroundTool/KoPABackgroundToolFactory.h
  •   /libs/kopageapp/tools/backgroundTool/Plugin.cpp
271 files changed in total