Revision 692114

Go back to digest for 29th July 2007

Features in Graphics

Clarence Dang committed changes in /trunk/KDE/kdegraphics/kolourpaint:

Merge /branches/work/~dang/kdegraphics/kolourpaint/ -"<a href="http://websvn.kde.org/?rev=651355">r651355"</a>;(last merged upto):692068
to be up-to-date, in time for feature freeze.

This represents more than 3 months worth of changes that make KolourPaint a lot better.
However, KolourPaint still needs a lot of work to just work.

The merge took longer than expected as I had to fight SVN quite a bit :(

I'm worried about libkolourpaint_lgpl and symbol visibility as I saw some KDE_EXPORT stuff. Could someone who knows more about this please look into it?
Thanks in advance!

Forward ports from branches/KDE/3.5/:

* Scanning fixes

* Save local files atomically

* Implement rudimentary global session management

* Drop overly-spammed and unchangeable kolourpaint-support@lists.sourceforge.net

* "File / Open Recent" fixes

* CTRL+C'ing a text box also places the text in the middle-mouse-button clipboard, in lieu of being able to highlight the text to do this

* Change minimum allowed zoom level for the grid from 600% to 400%


Unique changes (not in branches/KDE/3.5/):

* Remove individual "Thanks To". Unfortunately, it became unrealistic to keep track of everyone so I give up. It made me feel really bad to have an incomplete list.

* Change rotate menu items to be consistent with Digikam; "Image / Rotate..." goes back to CTRL+R
* Add, to the print dialog, a choice between printing the image at the top-left of the page or at the center (this was previously a hidden configuration option, which is now ignored) [Bug #133481]

* Add Zoom Tool

* Add "Image / Drag Opaque"

* kpTool::mouseReleaseEvent() finally calls draw() before endDraw().

This means that a quick drag of the mouse immediately before releasing the mouse button is no longer ignored in tools that implement just draw() and not endDraw() [not sure there are such tools anymore though].

* Add Tone Enhance effect (Mike Gashler)

* Add "File / Properties..."

* Decouple from kpMainWindow using kp*Environment facades

* Massive selection code refactor
- Support creating text selections that are only borders (contain no text and will not mutate document-is-modified state) i.e. you will be able to drag out text boxes and cancel them without affecting the document-is-modified flag.
[this currently does not work due to lack of support from kpToolText]

* Identify a number of KolourPaint/KDE3 bugs (added TODOs)

* Make all selection tools work

* Rename kpTempPixmap -> kpTempImage

* Split kpCommandSize out of kpPixmapFX

* Much other refactoring

* Configurable color palette and "Colors" menu

* Animate the Color Similarity Tool Bar Item, to highlight the existence of the feature
- And make the configuration more accessible
- Also add "Image / Draw With Color Similarity" to duplicate the tool bar item

* Add support library containing LGPL code derived from elsewhere

File Changes

Added 125 files
  • /trunk/KDE/kdegraphics/kolourpaint
  •   /environments
  •   /kpSelectionDrag.cpp
  •   /kpSelectionDrag.h
  •   /kpSelectionTransparency.cpp
  •   /kpSelectionTransparency.h
  •   /kpTempPixmap.cpp
  •   /kpTempPixmap.h
  •   /kpToolAction.cpp
  •   /kpToolAction.h
  •   /kpViewManager.cpp
  •   /kpViewManager.h
  •   /layers
  •   /lgpl
  •   /long_source_files
  •   /mainWindow
  •   /commands/kpCommand.cpp
  •   /commands/kpCommand.h
  •   /commands/kpCommandHistory.cpp
  •   /commands/kpCommandHistory.h
  •   /commands/kpCommandHistoryBase.cpp
  •   /commands/kpCommandHistoryBase.h
  •   /commands/kpCommandSize.cpp
  •   /commands/kpCommandSize.h
  •   /commands/kpMacroCommand.cpp
  •   /commands/kpMacroCommand.h
  •   /document/kpDocument.h
  •   /document/kpDocument_Open.cpp
  •   /document/kpDocument_Save.cpp
  •   /document/kpDocument_Selection.cpp
  •   /document/kpDocumentPrivate.h
  •   /document/kpDocumentSaveOptions.cpp
  •   /environments/commands
  •   /environments/dialogs
  •   /environments/document
  •   /imagelib/kpFloodFill.cpp
  •   /imagelib/kpFloodFill.h
  •   /imagelib/kpImage.h
  •   /layers/selections
  •   /layers/tempImage
  •   /mainWindow/kpMainWindow.cpp
  •   /mainWindow/kpMainWindow.h
  •   /mainWindow/kpMainWindow_Colors.cpp
  •   /mainWindow/kpMainWindow_Edit.cpp
  •   /mainWindow/kpMainWindow_File.cpp
  •   /mainWindow/kpMainWindow_Help.cpp
  •   /mainWindow/kpMainWindow_Image.cpp
  •   /mainWindow/kpMainWindow_Settings.cpp
  •   /mainWindow/kpMainWindowPrivate.h
  •   /pixmapfx/kpPixmapFX_Transforms.cpp
  •   /tests/freeform-selection.png
  •   /views/kpView.cpp
  •   /views/kpView.h
  •   /environments/commands/kpCommandEnvironment.cpp
  •   /environments/commands/kpCommandEnvironment.h
  •   /environments/dialogs/imagelib
  •   /environments/document/kpDocumentEnvironment.cpp
  •   /environments/document/kpDocumentEnvironment.h
  •   /layers/selections/image
  •   /layers/selections/kpAbstractSelection.cpp
  •   /layers/selections/kpAbstractSelection.h
  •   /layers/selections/kpSelectionDrag.cpp
  •   /layers/selections/kpSelectionDrag.h
  •   /layers/selections/kpSelectionFactory.cpp
  •   /layers/selections/kpSelectionFactory.h
  •   /layers/selections/text
  •   /layers/tempImage/kpTempImage.cpp
  •   /layers/tempImage/kpTempImage.h
  •   /lgpl/generic/kpColorCollection.h
  •   /tools/flow/kpToolEraser.h
  •   /tools/flow/kpToolFlowBase.cpp
  •   /tools/rectangular/kpToolEllipse.cpp
  •   /tools/rectangular/kpToolEllipse.h
  •   /tools/rectangular/kpToolRectangle.cpp
  •   /tools/rectangular/kpToolRectangle.h
  •   /tools/rectangular/kpToolRectangularBase.cpp
  •   /tools/rectangular/kpToolRectangularBase.h
  •   /tools/selection/kpToolEllipticalSelection.cpp
  •   /tools/selection/kpToolEllipticalSelection.h
  •   /tools/selection/kpToolFreeFormSelection.cpp
  •   /tools/selection/kpToolFreeFormSelection.h
  •   /tools/selection/kpToolRectSelection.cpp
  •   /tools/selection/kpToolRectSelection.h
  •   /tools/selection/kpToolSelection.cpp
  •   /tools/selection/kpToolSelection.h
  •   /tools/selection/kpToolText.cpp
  •   /tools/selection/kpToolText.h
  •   /tools/selection/text
  •   /widgets/colorSimilarity/kpColorSimilarityFrame.cpp
  •   /commands/imagelib/effects/kpEffectToneEnhanceCommand.cpp
  •   /commands/imagelib/effects/kpEffectToneEnhanceCommand.h
  •   /commands/imagelib/transforms/kpTransformSkewCommand.cpp
  •   /commands/imagelib/transforms/kpTransformSkewCommand.h
  •   /commands/tools/rectangular/kpToolRectangularCommand.cpp
  •   /commands/tools/rectangular/kpToolRectangularCommand.h
  •   /dialogs/imagelib/effects/kpEffectsDialog.cpp
  •   /dialogs/imagelib/effects/kpEffectsDialog.h
  •   /dialogs/imagelib/transforms/kpTransformSkewDialog.cpp
  •   /dialogs/imagelib/transforms/kpTransformSkewDialog.h
  •   /environments/dialogs/imagelib/transforms
  •   /environments/tools/selection/kpToolSelectionEnvironment.cpp
  •   /layers/selections/image/kpAbstractImageSelection.cpp
  •   /layers/selections/image/kpAbstractImageSelection.h
  •   /layers/selections/image/kpEllipticalImageSelection.cpp
  •   /layers/selections/image/kpEllipticalImageSelection.h
  •   /layers/selections/image/kpFreeFormImageSelection.cpp
  •   /layers/selections/image/kpFreeFormImageSelection.h
  •   /layers/selections/image/kpImageSelectionTransparency.cpp
  •   /layers/selections/image/kpImageSelectionTransparency.h
  •   /layers/selections/image/kpRectangularImageSelection.cpp
  •   /layers/selections/image/kpRectangularImageSelection.h
  •   /layers/selections/text/kpTextSelection.cpp
  •   /layers/selections/text/kpTextSelection.h
  •   /layers/selections/text/kpTextSelection_Cursor.cpp
  •   /layers/selections/text/kpTextSelection_Paint.cpp
  •   /layers/selections/text/kpTextSelectionPrivate.h
  •   /layers/selections/text/kpTextStyle.cpp
  •   /layers/selections/text/kpTextStyle.h
  •   /tools/selection/text/kpToolText.cpp
  •   /tools/selection/text/kpToolText.h
  •   /tools/selection/text/kpToolText_CursorCalc.cpp
  •   /tools/selection/text/kpToolText_InputMethodEvents.cpp
  •   /tools/selection/text/kpToolText_KeyboardEvents.cpp
  •   /commands/tools/selection/text/kpToolTextInsertCommand.cpp
  •   /commands/tools/selection/text/kpToolTextInsertCommand.h
  •   /environments/dialogs/imagelib/transforms/kpTransformDialogEnvironment.cpp
Deleted 26 files
  • /trunk/KDE/kdegraphics/kolourpaint
  •   /interfaces
  •   /kolourpaint.cpp
  •   /kolourpaintui.rc
  •   /kpCommandHistory.cpp
  •   /kpCommandHistory.h
  •   /kpDefs.h
  •   /kpPixmapFX.cpp
  •   /kpPixmapFX.h
  •   /kpSelection.cpp
  •   /kpSelection.h
  •   /imagelib/kpTextStyle.cpp
  •   /imagelib/kpTextStyle.h
  •   /interfaces/imagelib
  •   /lgpl/generic
  •   /imagelib/effects/kpEffectEmboss.h
  •   /imagelib/effects/kpEffectToneEnhance.cpp
  •   /imagelib/transforms/kpTransformAutoCrop.h
  •   /imagelib/transforms/kpTransformCrop.cpp
  •   /interfaces/imagelib/kpDocumentMetaInfoProvider.h
  •   /tools/polygonal/kpToolPolyline.cpp
  •   /tools/polygonal/kpToolPolyline.h
  •   /widgets/colorSimilarity/kpColorSimilarityToolBarItem.h
  •   /commands/tools/selection/kpToolSelectionPullFromDocumentCommand.cpp
  •   /commands/tools/selection/kpToolSelectionPullFromDocumentCommand.h
  •   /widgets/imagelib/effects/kpEffectBalanceWidget.cpp
  •   /widgets/imagelib/effects/kpEffectBalanceWidget.h
Modified 209 files
  • /trunk/KDE/kdegraphics/kolourpaint
  •   /AUTHORS
  •   /BUGS
  •   /CMakeLists.txt
  •   /COPYING
  •   /gen_cmake_include_dirs
  •   /gen_cmake_srcs
  •   /mainwindow
  •   /NEWS
  •   /pixmapfx
  •   /README
  •   /VERSION
  •   /commands/kpNamedCommand.cpp
  •   /commands/kpNamedCommand.h
  •   /dialogs/kpColorSimilarityDialog.cpp
  •   /dialogs/kpColorSimilarityDialog.h
  •   /dialogs/kpDocumentSaveOptionsPreviewDialog.cpp
  •   /dialogs/kpDocumentSaveOptionsPreviewDialog.h
  •   /dialogs/kpPrintDialogPage.cpp
  •   /dialogs/kpPrintDialogPage.h
  •   /document/kpDocument.cpp
  •   /environments/kpEnvironmentBase.cpp
  •   /environments/kpEnvironmentBase.h
  •   /environments/tools
  •   /imagelib/kpDocumentMetaInfo.cpp
  •   /imagelib/kpDocumentMetaInfo.h
  •   /imagelib/kpPainter.cpp
  •   /imagelib/kpPainter.h
  •   /mainWindow/kpMainWindow_StatusBar.cpp
  •   /mainWindow/kpMainWindow_Text.cpp
  •   /mainWindow/kpMainWindow_Tools.cpp
  •   /mainWindow/kpMainWindow_View.cpp
  •   /pics/CMakeLists.txt
  •   /pics/hi22-action-tool_zoom.png
  •   /pixmapfx/kpPixmapFX.h
  •   /pixmapfx/kpPixmapFX_AbstractDraw.cpp
  •   /pixmapfx/kpPixmapFX_DrawRasterOps.cpp
  •   /pixmapfx/kpPixmapFX_DrawShapes.cpp
  •   /pixmapfx/kpPixmapFX_Effects.cpp
  •   /pixmapfx/kpPixmapFX_FormatConversion.cpp
  •   /pixmapfx/kpPixmapFX_GetSetPixmapParts.cpp
  •   /pixmapfx/kpPixmapFX_MaskOps.cpp
  •   /tools/kpTool.cpp
  •   /tools/kpTool.h
  •   /tools/kpTool_Drawing.cpp
  •   /tools/kpTool_KeyboardEvents.cpp
  •   /tools/kpTool_MouseEvents.cpp
  •   /tools/kpTool_OtherEvents.cpp
  •   /tools/kpTool_UserNotifications.cpp
  •   /tools/kpTool_Utilities.cpp
  •   /tools/kpToolAction.cpp
  •   /tools/kpToolAction.h
  •   /tools/kpToolColorPicker.cpp
  •   /tools/kpToolColorPicker.h
  •   /tools/kpToolFloodFill.cpp
  •   /tools/kpToolFloodFill.h
  •   /tools/kpToolPrivate.h
  •   /tools/kpToolZoom.cpp
  •   /tools/kpToolZoom.h
  •   /views/kpView_Events.cpp
  •   /views/kpView_Paint.cpp
  •   /views/kpView_Selections.cpp
  •   /views/kpViewPrivate.h
  •   /views/manager
  •   /widgets/colorSimilarity
  •   /widgets/kpColorCells.cpp
  •   /widgets/kpColorCells.h
  •   /widgets/kpColorPalette.cpp
  •   /widgets/kpColorPalette.h
  •   /widgets/kpColorSimilarityCube.cpp
  •   /widgets/kpColorSimilarityCube.h
  •   /widgets/kpColorSimilarityToolBarItem.cpp
  •   /widgets/kpColorSimilarityToolBarItem.h
  •   /widgets/kpDocumentSaveOptionsWidget.cpp
  •   /widgets/kpDualColorButton.cpp
  •   /widgets/kpDualColorButton.h
  •   /commands/imagelib/kpDocumentMetaInfoCommand.cpp
  •   /commands/imagelib/kpDocumentMetaInfoCommand.h
  •   /commands/tools/kpToolColorPickerCommand.cpp
  •   /commands/tools/kpToolColorPickerCommand.h
  •   /commands/tools/kpToolFloodFillCommand.cpp
  •   /commands/tools/kpToolFloodFillCommand.h
  •   /dialogs/imagelib/kpDocumentMetaInfoDialog.cpp
  •   /dialogs/imagelib/kpDocumentMetaInfoDialog.h
  •   /dialogs/imagelib/kpDocumentMetaInfoTextFieldsTableModel.cpp
  •   /dialogs/imagelib/kpDocumentMetaInfoTextFieldsTableModel.h
  •   /environments/tools/kpToolEnvironment.cpp
  •   /environments/tools/kpToolEnvironment.h
  •   /environments/tools/selection
  •   /imagelib/effects/kpEffectBlurSharpen.cpp
  •   /imagelib/effects/kpEffectBlurSharpen.h
  •   /imagelib/effects/kpEffectEmboss.cpp
  •   /imagelib/effects/kpEffectToneEnhance.h
  •   /imagelib/transforms/kpTransformAutoCrop.cpp
  •   /lgpl/generic/kpColorCollection.cpp
  •   /tools/flow/kpToolBrush.cpp
  •   /tools/flow/kpToolBrush.h
  •   /tools/flow/kpToolColorEraser.cpp
  •   /tools/flow/kpToolColorEraser.h
  •   /tools/flow/kpToolEraser.cpp
  •   /tools/flow/kpToolFlowBase.h
  •   /tools/flow/kpToolFlowPixmapBase.cpp
  •   /tools/flow/kpToolFlowPixmapBase.h
  •   /tools/flow/kpToolPen.cpp
  •   /tools/flow/kpToolPen.h
  •   /tools/flow/kpToolSpraycan.cpp
  •   /tools/flow/kpToolSpraycan.h
  •   /tools/polygonal/kpToolCurve.cpp
  •   /tools/polygonal/kpToolCurve.h
  •   /tools/polygonal/kpToolLine.cpp
  •   /tools/polygonal/kpToolLine.h
  •   /tools/polygonal/kpToolPolygon.cpp
  •   /tools/polygonal/kpToolPolygon.h
  •   /tools/polygonal/kpToolPolygonalBase.cpp
  •   /tools/polygonal/kpToolPolygonalBase.h
  •   /tools/rectangular/kpToolRoundedRectangle.cpp
  •   /tools/rectangular/kpToolRoundedRectangle.h
  •   /views/manager/kpViewManager.cpp
  •   /views/manager/kpViewManager.h
  •   /views/manager/kpViewManager_TextCursor.cpp
  •   /views/manager/kpViewManager_ViewUpdates.cpp
  •   /views/manager/kpViewManagerPrivate.h
  •   /widgets/colorSimilarity/kpColorSimilarityCubeRenderer.cpp
  •   /widgets/colorSimilarity/kpColorSimilarityCubeRenderer.h
  •   /widgets/colorSimilarity/kpColorSimilarityFrame.h
  •   /widgets/colorSimilarity/kpColorSimilarityHolder.cpp
  •   /widgets/colorSimilarity/kpColorSimilarityHolder.h
  •   /widgets/colorSimilarity/kpColorSimilarityToolBarItem.cpp
  •   /widgets/toolbars/kpColorToolBar.cpp
  •   /widgets/toolbars/kpColorToolBar.h
  •   /widgets/toolbars/kpToolToolBar.cpp
  •   /widgets/toolbars/kpToolToolBar.h
  •   /commands/imagelib/effects/kpEffectBalanceCommand.cpp
  •   /commands/imagelib/effects/kpEffectBalanceCommand.h
  •   /commands/imagelib/effects/kpEffectBlurSharpenCommand.cpp
  •   /commands/imagelib/effects/kpEffectBlurSharpenCommand.h
  •   /commands/imagelib/effects/kpEffectClearCommand.cpp
  •   /commands/imagelib/effects/kpEffectClearCommand.h
  •   /commands/imagelib/effects/kpEffectCommandBase.cpp
  •   /commands/imagelib/effects/kpEffectCommandBase.h
  •   /commands/imagelib/effects/kpEffectEmbossCommand.cpp
  •   /commands/imagelib/effects/kpEffectEmbossCommand.h
  •   /commands/imagelib/effects/kpEffectFlattenCommand.cpp
  •   /commands/imagelib/effects/kpEffectFlattenCommand.h
  •   /commands/imagelib/effects/kpEffectGrayscaleCommand.cpp
  •   /commands/imagelib/effects/kpEffectGrayscaleCommand.h
  •   /commands/imagelib/effects/kpEffectHSVCommand.cpp
  •   /commands/imagelib/effects/kpEffectHSVCommand.h
  •   /commands/imagelib/effects/kpEffectInvertCommand.cpp
  •   /commands/imagelib/effects/kpEffectInvertCommand.h
  •   /commands/imagelib/effects/kpEffectReduceColorsCommand.cpp
  •   /commands/imagelib/effects/kpEffectReduceColorsCommand.h
  •   /commands/imagelib/transforms/kpTransformFlipCommand.cpp
  •   /commands/imagelib/transforms/kpTransformFlipCommand.h
  •   /commands/imagelib/transforms/kpTransformResizeScaleCommand.cpp
  •   /commands/imagelib/transforms/kpTransformResizeScaleCommand.h
  •   /commands/imagelib/transforms/kpTransformRotateCommand.cpp
  •   /commands/imagelib/transforms/kpTransformRotateCommand.h
  •   /commands/tools/flow/kpToolFlowCommand.cpp
  •   /commands/tools/flow/kpToolFlowCommand.h
  •   /commands/tools/polygonal/kpToolPolygonalCommand.cpp
  •   /commands/tools/polygonal/kpToolPolygonalCommand.h
  •   /commands/tools/selection/kpToolImageSelectionTransparencyCommand.cpp
  •   /commands/tools/selection/kpToolSelectionCreateCommand.cpp
  •   /commands/tools/selection/kpToolSelectionCreateCommand.h
  •   /commands/tools/selection/kpToolSelectionDestroyCommand.cpp
  •   /commands/tools/selection/kpToolSelectionDestroyCommand.h
  •   /commands/tools/selection/kpToolSelectionMoveCommand.cpp
  •   /commands/tools/selection/kpToolSelectionMoveCommand.h
  •   /commands/tools/selection/kpToolSelectionResizeScaleCommand.cpp
  •   /commands/tools/selection/kpToolSelectionResizeScaleCommand.h
  •   /commands/tools/selection/kpToolSelectionTransparencyCommand.cpp
  •   /commands/tools/selection/kpToolSelectionTransparencyCommand.h
  •   /dialogs/imagelib/transforms/kpTransformFlipDialog.cpp
  •   /dialogs/imagelib/transforms/kpTransformFlipDialog.h
  •   /dialogs/imagelib/transforms/kpTransformPreviewDialog.cpp
  •   /dialogs/imagelib/transforms/kpTransformPreviewDialog.h
  •   /dialogs/imagelib/transforms/kpTransformResizeScaleDialog.cpp
  •   /dialogs/imagelib/transforms/kpTransformResizeScaleDialog.h
  •   /dialogs/imagelib/transforms/kpTransformRotateDialog.cpp
  •   /dialogs/imagelib/transforms/kpTransformRotateDialog.h
  •   /environments/tools/selection/kpToolSelectionEnvironment.h
  •   /widgets/imagelib/effects/kpEffectBlurSharpenWidget.cpp
  •   /widgets/imagelib/effects/kpEffectBlurSharpenWidget.h
  •   /widgets/imagelib/effects/kpEffectEmbossWidget.cpp
  •   /widgets/imagelib/effects/kpEffectEmbossWidget.h
  •   /widgets/imagelib/effects/kpEffectFlattenWidget.cpp
  •   /widgets/imagelib/effects/kpEffectFlattenWidget.h
  •   /widgets/imagelib/effects/kpEffectHSVWidget.cpp
  •   /widgets/imagelib/effects/kpEffectHSVWidget.h
  •   /widgets/imagelib/effects/kpEffectInvertWidget.cpp
  •   /widgets/imagelib/effects/kpEffectInvertWidget.h
  •   /widgets/imagelib/effects/kpEffectReduceColorsWidget.cpp
  •   /widgets/imagelib/effects/kpEffectReduceColorsWidget.h
  •   /widgets/imagelib/effects/kpEffectToneEnhanceWidget.cpp
  •   /widgets/imagelib/effects/kpEffectToneEnhanceWidget.h
  •   /widgets/imagelib/effects/kpEffectWidgetBase.cpp
  •   /widgets/imagelib/effects/kpEffectWidgetBase.h
  •   /widgets/toolbars/options/kpToolWidgetBrush.cpp
  •   /widgets/toolbars/options/kpToolWidgetBrush.h
  •   /widgets/toolbars/options/kpToolWidgetEraserSize.cpp
  •   /widgets/toolbars/options/kpToolWidgetEraserSize.h
  •   /commands/tools/selection/text/kpToolTextBackspaceCommand.cpp
  •   /commands/tools/selection/text/kpToolTextBackspaceCommand.h
  •   /commands/tools/selection/text/kpToolTextChangeStyleCommand.cpp
  •   /commands/tools/selection/text/kpToolTextChangeStyleCommand.h
  •   /commands/tools/selection/text/kpToolTextDeleteCommand.cpp
  •   /commands/tools/selection/text/kpToolTextDeleteCommand.h
  •   /commands/tools/selection/text/kpToolTextEnterCommand.cpp
  •   /commands/tools/selection/text/kpToolTextEnterCommand.h
360 files changed in total