kpaint

First, we show classes defined elsewhere that are similar to those in kpaint. Click on a class to browse its source code.
kpaint'AreaSelect is similar to:
katabase'AreaHead, kdelibs'HTMLTextAreaElement, kspread'KSpreadarea, kimageshop'SelectTool, kdelibs'TextAreaWidget, katabase'FormArea, kdelibs'HTMLAreaElement, kdelibs'RenderTextArea, kdelibs'HTMLTextAreaElementImpl, kicker'DockAreaApplet

kpaint'Canvas is similar to:
qt'Canvas, klyx'K_Canvas, kimageshop'KisCanvas, kcontrol'WidgetCanvas, killustrator'Canvas, kdevelop'WidgetsView, kiconedit'KResizeWidget, kdevelop'DialogWidget, kwin'ResizeLeft, klyx'K_Frame

kpaint'Circle is similar to:
ksysv'Tools, kdelibs'KToolBarButton, kimageshop'MoveTool, kimageshop'SelectTool, kimageshop'PenTool, kimageshop'BrushTool, kdelibs'KStepStyle, killustrator'TextTool, kimageshop'GradientTool, killustrator'SelectionTool

kpaint'ColorBar is similar to:
kimageshop'ColorFrame, qt'Frame, qt'QColorShowLabel, qt'QProgressBar, korganizer'KPropColor, kpm'BarGraph, qt'QToolBarSeparator, kcontrol'TitlebarPreview, kdelibs'QPopupFrame, kdelibs'KColorPatch

kpaint'ColorButton is similar to:
kwin'MyButton, kdelibs'KColorButton, korganizer'KPButton, qt'QToolButtonPrivate, kdelibs'Buttons, kdelibs'KToolBarButton, pixie'RGBColorButton, qt'QColorData, kicker'PanelButton, qt'QWhatsThisButton

kpaint'Ellipse is similar to:
kword'Ellipse, kword'EllipseElement, killustrator'EllipseConfigDialog, kpresenter'KPEllipseObject, ksysv'Tools, kdelibs'KToolBarButton, kimageshop'MoveTool, kpresenter'KPObject, kimageshop'SelectTool, kimageshop'PenTool

kpaint'KPaint is similar to:
arts'MainWindow, konquest'MainWindow, kcron'KTApp, kdelibs'MainWindow, kuser'mainWidget, ksirtet'MainWidget, ksokoban'MainWindow, kmines'MainWidget, kworldwatch'TopLevel, kdelibs'Shell

kpaint'KUndo is similar to:
klyx'Undo, kspread'KSpreadUndo, kspread'KSpreadUndoSetText, kspread'KSpreadUndoSetTableName, kspread'KSpreadUndoDelete, abbrowser'UndoStack, klyx'UndoStack, kspread'KSpreadUndoInsertRow, kdevelop'UndoHistory, kdevelop'UndoListBox

kpaint'KUndoData is similar to:
klyx'Undo, kspread'KSpreadUndo, kspread'KSpreadUndoSetText, abbrowser'UndoStack, kspread'KSpreadUndoDelete, kspread'KSpreadUndoSetTableName, klyx'UndoStack, qt'QLineEditUndoItem, kmail'KMUndoInfo, kspread'KSpreadUndoInsertRow

kpaint'Line is similar to:
kpresenter'LineType, ktreebrowser'line, kword'TextLine, kpresenter'LineEnd, killustrator'LineStyle, ksysv'Tools, kdelibs'KToolBarButton, kimageshop'MoveTool, kimageshop'SelectTool, kimageshop'PenTool

kpaint'MainView is similar to:
kdevelop'WidgetsView, ksnake'View, qt'CursorView, kcontrol'EventView, kdevelop'PropertyView, kdelibs'MyMain, kuser'KGroupView, kdevelop'DialogWidget, qt'DrawView, kolib'KColorBar

kpaint'Manager is similar to:
qt'QDragManager, kdevelop'HlManager, kdelibs'KContextMenuManager, kdelibs'PartManager, korn'KDropManager, qt'QTipManager, killustrator'PStateManager, qt'QSessionManager, kdelibs'KDockManager, kdat'TapeManager

kpaint'NavWidget is similar to:
kdevelop'WidgetsView, kdevelop'DialogWidget, kiconedit'KResizeWidget, ksirtet'OptionWidget, qt'CursorView, ksnake'View, katabase'ResizeWidget, kcontrol'HelpWidget, kcontrol'EventView, klyx'K_Frame

kpaint'Pen is similar to:
kword'Pen, kimageshop'PenTool, kword'PenWidth, kpresenter'PenBrushCmd, killustrator'WinObjPenHandle, kpresenter'WinObjPenHandle, kimageshop'KisTool, ksysv'Tools, kdelibs'KToolBarButton, kimageshop'MoveTool

kpaint'QwViewport is similar to:
killustrator'QwViewport, kdevelop'WidgetsView, ksirc'PortPage, ksnake'View, qt'CursorView, kcontrol'EventView, kdevelop'PropertyView, kuser'KGroupView, ksysv'KSVViewPort, kwin'ResizeLeft

kpaint'Rectangle is similar to:
killustrator'RectangleTool, kword'Rectangle, mouse'Rectangle, kword'RectangleElement, killustrator'CreateRectangleCmd, killustrator'Tool, kdf'MyPopupMenu, ksysv'Tools, kdelibs'KToolBarButton, kimageshop'MoveTool

kpaint'Roundangle is similar to:
kword'DocumentPageRounding, kword'Angle, kcalc'_angle_type, kcalc'angle_type, kspread'_angle_type, kspread'angle_type, kword'PageAngle, kword'BaseAngle, kword'TipAngle, kword'FAngle

kpaint'SideBar is similar to:
kimageshop'KisSideBar, kwin'ResizeSide, qt'Frame, kdelibs'ECaptionSide, qt'QMenuBar, qt'QProgressBar, kword'DocumentTwoSides, kimageshop'PixmapWidget, qt'QToolBarSeparator, kcontrol'TitlebarPreview

kpaint'SprayCan is similar to:
kiconedit'KIconEditGrid, kimageshop'BrushTool, kdelibs'KToolBarButton, ksysv'Tools, kimageshop'PenTool, kimageshop'MoveTool, kimageshop'SelectTool, killustrator'TextTool, kiconedit'KColorGrid, kdelibs'KToolBarItem

kpaint'StatusBar is similar to:
kdelibs'KStatusBarLabel, ksysv'Status, qt'Status, qt'QStatusBarPrivate, kdelibs'StatusbarProgress, karchie'KAStatusBar, kdm'DisplayStatus, kdm'displayStatus, khexedit'CStatusBarProgress, kdelibs'tagStatus

kpaint'Text is similar to:
killustrator'TextTool, killustrator'PathTextTool, kword'TextLine, kword'MText, kdelibs'KToolBarButton, ksysv'Tools, kimageshop'PenTool, kimageshop'SelectTool, kimageshop'BrushTool, kimageshop'MoveTool

kpaint'Tool is similar to:
qt'QToolTipGroup, kolib'KoDataTool, killustrator'ToolController, killustrator'RectangleTool, kimageshop'KisTool, ksysv'Timer, qt'QSignal, killustrator'Tool, kimageshop'PenTool, knotes'SaveTimer

kpaint'View is similar to:
kdevelop'WidgetsView, ksnake'View, qt'CursorView, kcontrol'EventView, kdevelop'PropertyView, kuser'KGroupView, qt'DrawView, kiconedit'KResizeWidget, kdevelop'DialogWidget, klyx'K_Frame

kpaint'canvasSizeDialog is similar to:
korn'TypeDialog, qt'Canvas, kolib'MyIconCanvas, kiconedit'KResizeDialog, klyx'K_Canvas, kview'KImageCanvas, kghostview'InfoDialog, kgraph'KGCanvas, kdevelop'DefaultsDialog, klyx'InsertLabelDialog

kpaint'depthDialog is similar to:
korn'TypeDialog, kdevelop'DefaultsDialog, kghostview'MessagesDialog, kghostview'InfoDialog, kpilot'MessageDialog, kdevelop'ColorDialog, qt'QColorDialog, kiconedit'KResizeDialog, killustrator'AboutDialog, kview'KNumDialog

kpaint'fillPropertiesWidget is similar to:
kdevelop'PropertyView, ksysctrl'SettingsPropertiesTab, kdevelop'WidgetsView, kimageshop'BrushWidget, kdevelop'DialogWidget, kiconedit'KResizeWidget, ksirtet'OptionWidget, ksysctrl'GeneralPropertiesTab, kcontrol'HelpWidget, katabase'ResizeWidget

kpaint'imageInfoDialog is similar to:
kghostview'InfoDialog, klyx'InsertInfoDialog, ksnake'Image, korn'TypeDialog, kdelibs'Info, ksirtet'Info, qt'ImageTextEditor, killustrator'DocumentInfo, kdevelop'DefaultsDialog, kimage'KImagePreferencesDialog

kpaint'linePropertiesWidget is similar to:
kdevelop'PropertyView, ksysctrl'SettingsPropertiesTab, kdevelop'WidgetsView, kiconedit'KResizeWidget, kdevelop'DialogWidget, ksirtet'OptionWidget, ksysctrl'GeneralPropertiesTab, katabase'ResizeWidget, ksirc'EndPage, kcontrol'HelpWidget

kpaint'paletteDialog is similar to:
kwin'Palette, qt'QPalette, korn'TypeDialog, kdelibs'KPalette, kdevelop'DefaultsDialog, kghostview'InfoDialog, kpilot'MessageDialog, kdevelop'ColorDialog, kghostview'MessagesDialog, qt'QColorDialog

kpaint'paletteWidget is similar to:
kwin'Palette, kdelibs'KColorCells, kuser'KRowTable, qt'MyTableView, kmidi'Table, killustrator'BrushCells, qt'MyTableLabel, kdelibs'KCharSelectTable, kiconedit'Preview, kghostview'MarkListTable

kpaint'propertiesDialog is similar to:
ksysctrl'PropertiesDialog, qt'TabDialog, kdelibs'PropertiesDialog, kdelibs'Property, kcontrol'classProperties, killustrator'HelplineDialog, kimageshop'LayerPropertyDialog, katabase'PropertyEditor, kdevelop'CGroupPropertiesDlg, kautorun'SetupDialog



Second, we show how kpaint's usage of the KDE libraries differs from other applications. Specifically, we show reuse patterns (e.g., if/then rules) that other applications follow but that kpaint does not; this may indicate a problem. Click on a reuse pattern to browse the corresponding application source code.

class_calls:qt'QBoxLayout^::addStretch() => Confidence Supporters Detractors
1. class_calls:qt'QBoxLayout^::addWidget() 97.5% *234 *6

class_calls:qt'QBoxLayout^::activate() => Confidence Supporters Detractors
2. class_calls:qt'QBoxLayout^::addWidget() 96.4% *190 *7

class_calls:qt'QVBoxLayout::addLayout() => Confidence Supporters Detractors
3. class_instantiates:qt'QFrame^ 96.2% *152 *6

class_calls:qt'QBoxLayout^::addLayout() => Confidence Supporters Detractors
4. class_calls:qt'QBoxLayout^::addWidget() 96.0% *217 *9

class_calls:qt'QPushButton::setAutoResize() => Confidence Supporters Detractors
5. class_calls:qt'QPushButton::setAutoRepeat() 95.2% 60 *3

class_calls:qt'QPushButton^::setFixedSize() => Confidence Supporters Detractors
6. class_instantiates:qt'QFrame^ 95.2% *80 *4

class_calls:qt'QVBoxLayout::activate() => Confidence Supporters Detractors
7. class_instantiates:qt'QFrame^ 94.7% *108 *6

class_instantiates:qt'QRangeControl^ => Confidence Supporters Detractors
8. class_instantiates:qt'QFrame^ 94.3% 150 *9

class_calls:qt'QList::next() => Confidence Supporters Detractors
9. class_calls:qt'QList::first() 93.7% 163 *11

class_receives_signal:qt'QButtonGroup::clicked() => Confidence Supporters Detractors
10. class_instantiates:qt'QRadioButton 91.3% 42 *4

class_calls:qt'QButtonGroup::setExclusive() => Confidence Supporters Detractors
11. class_instantiates:qt'QRadioButton 91.2% 31 *3

class_calls:kdelibs'KStatusBar::changeItem() => Confidence Supporters Detractors
12. class_calls:kdelibs'KStatusBar::insertItem() 91.1% *41 *4
13. class_inherits:kdelibs'KTMainWindow^ 91.1% *41 *4

class_calls:qt'QVBoxLayout::addStretch() => Confidence Supporters Detractors
14. class_instantiates:qt'QFrame^ 90.9% *100 *10

class_instantiates:kdelibs'KColorButton => Confidence Supporters Detractors
15. class_instantiates:qt'QLabel 90.2% 46 *5