1. 21 Jun, 2019 1 commit
  2. 09 Oct, 2018 1 commit
  3. 06 Oct, 2018 1 commit
  4. 02 Jan, 2018 1 commit
  5. 27 Feb, 2017 1 commit
    • Boudewijn Rempt's avatar
      Delete KisView on closing a view. · 6f614b5f
      Boudewijn Rempt authored
      This first makes KoCanvasBase a QObject; that used to be impossible
      because other calligra applications canvas classes multiply inherited
      QWidget and KoCanvasBase. That is no longer a consideration.
      Then every local use of a pointer to KoCanvasBase or KisCanvas2 is
      protected by QPointer. Now every canvas observer knows when a canvas
      has disappeared.
      But the canvas is deleted before the canvascontroller widget; that means
      that when deleting the canvas, the canvas controller widget would get
      confused because the canvas observers' canvas has already been deleted:
      unsetCanvas wouldn't be called on the canvas observers, so the logic here
      is now that if unsetCanvas is called when deleting the canvas controller
      widget, unsetCanvas is always called on all observers.
      Note: no dockers crash even if unsetCanvas isn't called at the right time,
      but it's still proper to call unsetCanvas to allow dockers to clean up
      things like local models linked to the layer model.
  6. 19 Sep, 2016 1 commit
    • Dmitry Kazakov's avatar
      Fixed problems with synchronizations of preset selection widgets · 9ba6db96
      Dmitry Kazakov authored
      1) Now the selector has *no* selection if the currently active preset
         is not present in the filtered list of presets
      2) Clicking on the currently selected preset now either resets it,
         or does nothing depending on the "Save tweaks..." option value.
      3) All the three preset selectors are now synchronized
      4) The selector correctly shown the "dirty" mark right after you
         changed any property of the preset.
      Test Plan:
      1) Check sanity of the current selection in all the three preset
         selectors. They should be sane and synchronized.
      2) Switching the current tag should keep the selection correct (no
         selection is a valid state when the active preset is not present
         in the current tag)
      3) (!) Check if Brush Selector, Texture Selector, Pattern and Gradient
         popups still work correctly! They use the same codebase :(
      Ref T3473
      Reviewers: #krita, timotheegiet
      Maniphest Tasks: T3473
      Differential Revision: https://phabricator.kde.org/D2815
  7. 30 Mar, 2016 1 commit
    • Boudewijn Rempt's avatar
      Fix loading the plugins again on OSX · d7256489
      Boudewijn Rempt authored
      We have two (well, three, but the tests don't work yet) situations:
      after make install, and after deploying. After install, plugins are
      in lib/kritaplugins, after deploy in PlugIns. To avoid trying to
      load way too many plugins, assume that all Krita plugins start with
      Also, move all dockers to plugins/dockers, from plugins/extensions/dockers.
  8. 26 Jan, 2016 1 commit
  9. 25 Jan, 2016 1 commit
    • Boudewijn Rempt's avatar
      Move kritaimage to libs · b46898a0
      Boudewijn Rempt authored
      This shows up a bunch of other problems with alien includes. Some
      tests have been disabled (marked "kisdoc") because they needed
  10. 10 Sep, 2015 1 commit
  11. 28 May, 2015 1 commit
  12. 29 Mar, 2015 1 commit
  13. 15 Jan, 2015 1 commit
  14. 09 Dec, 2014 1 commit
  15. 05 Dec, 2014 1 commit
    • Boudewijn Rempt's avatar
      Merge krita-mvc-rempt into master · 1cb2d177
      Boudewijn Rempt authored
      This refactors Krita to allow the user to have more than one
      image open in a window. Krita no longer uses or depends on the
      komain library.
      For now, Sketch and Gemini are disabled.
  16. 20 Oct, 2014 1 commit
    • Mohit Goyal's avatar
      Squashed commit and merged krita-mohit-testing into master. Introduces two · 74848d9a
      Mohit Goyal authored
      new features :
      Dirty Presets : Keeps temporary tweaks made to the preset till the session ends
          Go to the Brush Editor box. Bottom left -- select "Temporarily save tweaks made to presets"
          Any time you make a change to any setting in the preset -- the textbox will turn pink and a "+" symbol will appear on the icon. The Reload button is used to reset the tweaks for that particular preset
      Locked Settings : Keeps settings constant across presets
          In the brush editor box, for any paint option like "Size" on the left, there will be a "link" icon. Right click on that option to Lock the option. Now that particular setting will remain constant across all presets. If you cange it in one preset - the changes will reflect across all presets.
          To unlock any option : right click on a locked option and click on Drop Locked Settings. You can either use these settings in the preset or load the last settings available in the preset.
      Cumulative Undo/Redo
      1. To use this feature, you will have to first have to go to Settings->Dockers->Undo History to activate the docker.
      2. Next right click on <empty> or on any stroke in the undo docker and select "Use Cumulative Undo/Redo"
      3. This feature merges commands together so the the user doesn't have to undo a particular group one by one and has a much larger undo history than the initial 30 strokes. The feature works on three configurable parameters :
      Time before merging strokes together : While strokes are made, the code keeps checking for a particular timelapse of T seconds before it merges the groups together
      Time to group the strokes : According to this parameter -- groups are made. Every stroke is put into the same group till two consecutive strokes have a time gap of more than T seconds. Then a new group is started.
      Individual strokes to leave at the end : A user may want to keep the ability of Undoing/Redoing his last N strokes. Once N is crossed -- the earlier strokes are merged into the group's first stroke.
  17. 03 Oct, 2013 1 commit
  18. 18 May, 2013 1 commit
    • Boudewijn Rempt's avatar
      Add resource categorizing with tags · c90334d3
      Boudewijn Rempt authored
      Patch by Sascha Suelzer
      FEATURE: Add resource categorizing with tags
      Todo: keep the comboboxes synchronized
      This improves the way the user can organize resources into named sets
      that can be added, deleted and chosen from a drop down menu that I've
      added to KoResourceItemChooser. This made the changes available to the
      paintoppreset choosers, the gradient choosers and the pattern choosers.
      Usage right now is:
      Mostly mouse based version:
      Right clicking any resource can assign it to or remove it from any tag.
      There is an option to create a new tag for the resource as well.
      It's fairly intuitive.
      Mostly keyboard based version:
      Resource dockers and popups start with an unfiltered view, in this view
      the tag search bar at the bottom is disabled.
      To add a tag category, press the plus button and enter a name for the tag.
      This creates an empty view and enables the search text box at the bottom.
      Terms in double quotes "like this" will be matched to the resource name
      Entering terms without quotes will partial matching, good for filtering
      many resources. filtering eraser would remove all resources with eraser in
      their name.
      Putting an exclamation mark in front of a term will exclude the term from
      the set.
      Pressing enter saves the set and will clear the search box, so we don't end
      up with something like erase,sketch,fur,!paint,smudge_1,smudge_2,... etc
      Once a set is defined, it can be used as a search term as well.
      For example:
      We've created a set that contains all erasers and is called 'erasers'.
      If we switch to a different set and type [erasers] in the search box then
      all the items of that set will be added to the current set, exclusions work
      the same way.
      Remarks about the patch:
      Currently only adding and deleting categories is supported, renaming them
      is in the code but lacks an UI feature, which I was unable to implement.
      (I wanted the unfiltered view to be immutable and tried dis and enabling
      the editable state of the drop down box based on which index was active,
      but that introduced a segfault.)
      All in all the UI parts I've written aren't exactly amazing, maybe
      someone more experienced can take care of that? I can do it but it'd be
      slow since I have very little experience with that.
      I have removed the `show all' checkbox in the paintop preset docker and
      all references to that functionality since it made filtering a bit more
      complicated as well as just not making too much sense with the
      improvements to the tagging system.
      I have also removed the proxy adapter in KisPresetChooser since it
      didn't do anything useful after these changes, yet required attention
      since it overloaded some now improved functions.
      Current shortcomings of the system, most of them are UI related:
      - Since I used the already existing KoResourceTagging class to handle all
       the tagging bits, and ultimately save tags to disk, in alphabetical
       order, restarting Krita, and thus repopulating the combo boxes also
       fills them in alphabetical order and not in the order they might have
       been defined by the user.
      - Adding a new tag in a pop-up chooser closes the popup since I used an
       input dialog after failing to implement it with combobox editing.
      - Combo boxes aren't updated for all item choosers of the same kind.
       For example adding a few categories in the preset docker does not update
       the combo box in the preset chooser popup that can be found in the toolbar.
      I also had a crash at one point in time where some brush presets got
      changed around in master and clicking some resources in the brush preset
      box crashed the program, but I was not able to reproduce that after a
      clean rebuild of my local workspace and changing presets around
      externally, so it might not be an issue, but I'm including it for
      completeness sake.
  19. 30 Mar, 2013 1 commit
  20. 24 May, 2012 1 commit
  21. 08 Oct, 2011 1 commit
    • Boudewijn Rempt's avatar
      Separate KoResourceManager for canvas and document · 0b2d5353
      Boudewijn Rempt authored
      KoResourceManager was used in two places: the canvas and document
      classes. This gave rise to endless confusion about which resource
      manager should be used where and contains what. The KoResourceManager
      api also contained methods that were only relevant when used from
      a document and others that were only relevant when used from a canvas.
      This patch splits the resourcemanager into two public and one private
      class. The public classes are KoDocumentResourceManager and
      KoCanvasResourceManager, the private class is KoResourceManager. The
      public classes defer to the private class for code-sharing purposes.
      The old KoCanvasResource and KoDocumentResource enums have been taken
      into the classes themselves.
  22. 02 Aug, 2011 2 commits
  23. 21 Jul, 2011 1 commit
  24. 18 Jul, 2011 3 commits
  25. 21 May, 2011 1 commit
  26. 07 Feb, 2011 1 commit
  27. 18 Sep, 2010 2 commits
  28. 07 Jan, 2010 1 commit
    • Adrian Page's avatar
      Fix deprecated warnings by changing · 7e0897a9
      Adrian Page authored
      typedef KGenericFactory<Plugin> PluginFactory;
      K_EXPORT_COMPONENT_FACTORY(lib, PluginFactory("krita"))
      K_PLUGIN_FACTORY(PluginFactory, registerPlugin<Plugin>();)
      svn path=/trunk/koffice/; revision=1071149
  29. 11 Dec, 2009 1 commit
  30. 03 Dec, 2009 4 commits
  31. 04 Nov, 2009 1 commit
  32. 21 Oct, 2009 1 commit
    • Boudewijn Rempt's avatar
      autumn cleaning · 15cf5d66
      Boudewijn Rempt authored
      Apply kdelibs' astyle to all of krita. We've got enough variation
      in spaces around * and & anyway.
      svn path=/trunk/koffice/; revision=1038712
  33. 06 Oct, 2009 1 commit
    • Boudewijn Rempt's avatar
      First step fixing bug 208828 and 208239 · db48115d
      Boudewijn Rempt authored
      The crashes were caused by incomplete refactoring: dockers used to be
      owned by the view, now they are owned by the main window. In order to
      facilite finishing the refactoring, I have moved all dockers out of
      krita/ui into a default dockers plugins, then I fixed all dockers to
      behave properly.
      * the palette docker now integrates with the KoCanvasResourceProvider
      * the bird's eyeview docker is cleaned up and no longer is deleted when
      the view is delted
      * the histogram docker is temporarily disabled (will be re-enabled in
      step 2
      * the layer docker is cleaned up, is now a client of the canvas instead
      of the view and is notified when the canvas is updated
      * KisCanvas2 has a new signal that is emitted whenever the image is
      svn path=/trunk/koffice/; revision=1031900