1. 07 Nov, 2013 1 commit
    • Dmitry Kazakov's avatar
      New implementation of the brush outline display · 6593a82f
      Dmitry Kazakov authored
      This patch effectively fixes two things:
      1) Makes the outline painted correctly of rotated/mirrored canvas or/and dab.
         This is achieved by using a special class for making all the transforms.
         The class is called KisCurrentOulineFetcher.
      
      2) Fixes the Drawing Angle sensor on the mirrored canvas, which has become
         broken quite recently.
      6593a82f
  2. 04 Nov, 2013 1 commit
    • Dmitry Kazakov's avatar
      Make the Weighted Smoothing algorithm use 'distance' instead of 'velocity' · 0f1baf35
      Dmitry Kazakov authored
      The time measurements of the tablet events are really unstable,
      especially when using openGL canvas, which causes the Weighted Smoothing
      processed lines bended and waggy. This patch makes the algorithm use
      distance parameter instead of the velocity parameter, which does not
      depend on time, so does not fluctuate so drastically.
      
      BUG:326512
      0f1baf35
  3. 03 Nov, 2013 1 commit
  4. 30 Oct, 2013 1 commit
  5. 25 Sep, 2013 1 commit
  6. 27 Aug, 2013 1 commit
  7. 03 Aug, 2013 1 commit
    • Dmitry Kazakov's avatar
      Fixed Speed, Distance and Drawing Angle sensors · 327f800d
      Dmitry Kazakov authored
      This patch makes the following user-visible changes:
      
      1) Speed and Distance sensors are fixed
      2) Drawing Angle sensor became much more stable and smooth
      3) Drawing Angle sensor works right on the rotated canvas
      
      Technical details:
      
      This patch hugely refactors the distance information part of
      our painting system. The two most significant changes:
      
      1) KisPaintInformation doesn't have movement() method, because it
         used to get inconsistent *very* fast when the lien was split into
         chunks in paintBezierCurve. The access to drawingDistance(),
         drawingAngle() and drawingSpeep() parameters is provided only by means
         of teh associated KisDistanceInformation.
      
      2) (follows from the point 1) From now on paintAt() function also accepts
          KisDistanceInformation object, because otherwise it will not be able
          to access the calculated parameters.
      
      BUG:321771,308408,279442
      327f800d
  8. 21 Jul, 2013 1 commit
  9. 01 Jul, 2013 1 commit
  10. 30 Jun, 2013 1 commit
  11. 24 Jun, 2013 1 commit
  12. 23 Jun, 2013 2 commits
    • Dmitry Kazakov's avatar
      [FEATURE] Added enchanced weighted smoothing algorithm with tail configuration · 6382948d
      Dmitry Kazakov authored
      Now when you lift up the stylus the line hurries to the tip of the pen
      so that the line ends right at the position of the pen, not delayed.
      
      There is a configuration option for this feature: "Tail Aggressiveness"
      (probably, some other name would be better ;) )
      
      1) Tail Aggressiveness == 0:    There is no tail at all. The line ends where it was.
      2) Tail Aggressiveness == 0.15: The tail ends with the very thin tip.
      3) Tail Aggressiveness >  0.15: The tail ends with bolder tip.
      
      CCMAIL:kimageshop@kde.org
      6382948d
    • Dmitry Kazakov's avatar
      Fixed a "screwed" lines bug · 55753fd9
      Dmitry Kazakov authored
      It turned out that our "bended lines" bug consists from two different bugs.
      1) Lack of tablet events (only in openGL mode)
      2) A bug in Basic Smoothing algorithm (some whirls
         appeared even in QPainter canvas mode).
      
      This patch fixes the second one. The bug was related to the fact that
      the size of the control points for the bezier curves was *not limited*.
      It resulted in lines bending, screwing and whirling effect. Now the size
      of the control lines is always bounded, so the lines became much smoother.
      
      But the first part of the "bended lines" bug is still not fixed, so openGL
      mode will produce bends in lines.
      
      CCMAIL:kimageshop@kde.org
      
      
      The first one is the lack of tablet events in openGL mode, and the second
      one was related to the
      55753fd9
  13. 20 Jun, 2013 2 commits
    • Halla Rempt's avatar
      Fix a bug when enabling mirroring and trying the scratchpad · 90b30c1a
      Halla Rempt authored
      When enabling horizontal and vertical mirroring, painting on the scratchpad
      was broken. This was because the scratchpad creates a KisResourceSnapshot
      with a 0 image pointer. The snapshot then created a default KisDefaultBounds
      object with a 0 image pointer.
      
      That means the KisToolFreehandHelper was told to use an infinite rect
      for calculating the mirroring, and iterating over infinity takes a bit of
      time.
      
      Fixed by passing the scratchpad's defaultBounds object to the freehand
      tool helper, which passes it to the resources snapshot.
      90b30c1a
    • Halla Rempt's avatar
      Rename KoCanvasResourceManager::resourceChanged · 681b2ab8
      Halla Rempt authored
      Rename KoCanvasResourceManager::resourceChanged to canvasResourceChanged.
      This distinguishes this signal from KoDocumentResourceManager::resourceChanged,
      Plan::Project::ResourceChanged, KoAbstractResourceServerAdapter::resourceChanged
      and possibly others.
      681b2ab8
  14. 06 Apr, 2013 1 commit
    • Halla Rempt's avatar
      Make all KDE includes consistent · 83da42dc
      Halla Rempt authored
      We used CamelCase and .h includes all mixed up. This patch chances all
      includes to .h style.
      
      I choose that style over CamelCase for the following reasons
      
      * the change was easier to automate
      * CamelCase include files are created manually and so have inconsistencies
      * the majority of Calligra KDE includes were .h style
      83da42dc
  15. 05 Jan, 2013 1 commit
  16. 31 Dec, 2012 1 commit
  17. 11 May, 2012 1 commit
  18. 20 Dec, 2011 1 commit
    • Dmitry Kazakov's avatar
      The distance information must be associated with the painter · db8e292c
      Dmitry Kazakov authored
      Each painter of the multihand tool must have its own distance information.
      Otherwise the result of the painting is quite random. Now we store both
      KisPainter and KisDistanceInformation in a single struct and operate
      with them as a single struct as well.
      
      BUG:283606
      db8e292c
  19. 08 Oct, 2011 1 commit
    • Halla Rempt's avatar
      Separate KoResourceManager for canvas and document · 0b2d5353
      Halla 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.
      0b2d5353
  20. 18 Aug, 2011 2 commits
  21. 09 Aug, 2011 1 commit
    • Dmitry Kazakov's avatar
      A rewrite for the scratchpad · 4fb3841a
      Dmitry Kazakov authored
      1) Now it shares all the code with the freehand tool completely. No
      duplication.
      2) Threading for stroke is possible even here.
      3) Airbrushing works.
      4) The scratchpad has the same zoom-level as the image
      The bug can be closed when the branch is merged to master
      CCBUG:273867
      4fb3841a
  22. 06 Aug, 2011 2 commits
    • Dmitry Kazakov's avatar
      More removals · 284345b8
      Dmitry Kazakov authored
      Removed the variables those had been moved the the helper class.
      284345b8
    • Dmitry Kazakov's avatar
      Major cleanup in KisToolFreehand · a0eea794
      Dmitry Kazakov authored
      1) Extracted all the painting stuff from the KisToolFreehand into
         a separate class
      2) Removed airbrushing duplications from KisToolBrush and KisToolDyna
         (now airbrushing is in KisToolFreehandHelper)
      3) Removed some old unused code
      a0eea794