1. 14 Dec, 2016 1 commit
    • Dmitry Kazakov's avatar
      Fix grouping/ungrouping of shapes · b95ea924
      Dmitry Kazakov authored
      There was a weird recursion problem in setParent()/addShape()
      functions. Now KoShape can use only specialized interface of
      the container that should not be used by anyone else.
      b95ea924
  2. 29 Nov, 2016 1 commit
    • Dmitry Kazakov's avatar
      Implement KoShape::cloneShape() · 7699443c
      Dmitry Kazakov authored
      This is a mandatory function to be able to load shapes from SVG,
      because the same shape may be instantiated from different places.
      We still need to discuss whether we need to really "share" the
      shape template, but for now I just deep-copy them (which is the
      easiest because of shape normalization problem we have).
      
      There are the following drawbacks/hacks in this patch:
      
      1) Not all the shapes have KoShape::cloneShape() implemented! Basically,
         it is defined only for group shape and all the descendants of a path
         shape (which are the only shapes used in SVG). Other shapes use the
         default implementation which simply returns null.
      
         Ideally, there should be no default implementation and all the shapes
         should define it. But, given that we are going to deprecate quite a lot
         of stuff, I'll keep them just unimplemented for now.
      
      2) The following shape properties are not yet copied during cloning:
      
         * toolDelegates
         * dependees
         * shadow
         * border
         * filterEffectStack
      
         All the properties, except of tool delegates will probably be
         deprecated soon. And for the tool delegates we need to invent
         something ingenious to handle the pointers to recover pointers
         to the *cloned* shapes.
      
      3) I cannot guarantee TextShape's work anymore. I just blindly
         refactored it to use QScopedPointer to QTextDocument instead of
         the previous raw pointers trickery and never tested it. Hope it
         still works...
      7699443c
  3. 30 Jan, 2016 1 commit
  4. 30 Sep, 2015 1 commit
  5. 15 May, 2012 1 commit
  6. 11 Oct, 2011 1 commit
    • C. Boemann's avatar
      Pass a KoShapePaintingContext down through te shape painting. · 0fd9a5d1
      C. Boemann authored
      At the moment it's an empty class but soon it will be used to pass various settings like
      showFormttingCharacters in text etc.
      
      The paintDecorations method has been removed. any such functionality can be done much better
      using the KoShapePaintingContext.
      
      REVIEW: 102809
      0fd9a5d1
  7. 21 Apr, 2011 2 commits
    • Sebastian Sauer's avatar
      Fix Crash is observed while opening the attached ppt file. · 44b226e9
      Sebastian Sauer authored
      This makes sure that pages are always deleting there layers and children of them what fixes a crash in the textlayout-branch.
      Also I merged the both ctor's together, introduced a KoShapeContainer::removeAllShapes method and improved the documentation.
      BUG:270960
      44b226e9
    • Sebastian Sauer's avatar
      Fix Crash is observed while opening the attached ppt file. · 8e111364
      Sebastian Sauer authored
      This makes sure that pages are always deleting there layers and children of them what fixes a crash in the textlayout-branch.
      Also I merged the both ctor's together, introduced a KoShapeContainer::removeAllShapes method and improved the documentation.
      BUG:270960
      8e111364
  8. 02 Jan, 2011 1 commit
  9. 27 Dec, 2010 1 commit
  10. 17 Jul, 2010 1 commit
  11. 22 May, 2010 1 commit
    • Thomas Zander's avatar
      Make inheriting transformation an explicit property. · cbc15f9a
      Thomas Zander authored
      When the KoShapeContainer was introduced it had a 'clipped'
      property which implied two things;
       * the shape is clipped to the outline of its parent container.
       * the shape inherits the transformation of its parent container.
      
      When I used a container, now 4 years later, I was confused why my
      shape didn't inherit the transformation and only by reading the code
      did I figure out thats because I designed it that way...
      Now it doesn't make sense to me anymore that one implies the other,
      the connection between them is a bit thin.
      So, split up the two properties and provide plenty of API docs on the
      matter.
      
      Incidentally, this helps a usecase where I need the inherit concept
      but not the clipping concept ;)
      
      svn path=/trunk/koffice/; revision=1129452
      cbc15f9a
  12. 17 May, 2010 1 commit
    • Thomas Zander's avatar
      API docs · c4a5e903
      Thomas Zander authored
      svn path=/trunk/koffice/; revision=1127827
      c4a5e903
  13. 07 May, 2010 1 commit
    • Thomas Zander's avatar
      API review of KoShapeContainer · 7114c121
      Thomas Zander authored
      Make the methods much more consistent both with each other
      and with other classes which follow a Qt-ish api.
      childClipped() -> isClipped()
      setClipping() -> setClipped()
      
      etc.
      
      svn path=/trunk/koffice/; revision=1124024
      7114c121
  14. 18 Sep, 2009 1 commit
    • Thorsten Zachmann's avatar
      Fix Bug 187838: Variables do not work · 1c3f7cf8
      Thorsten Zachmann authored
      The patch adds a KoPageProvider that can give back a KoTextPage for
      shape. This is done in the paint event of the textshape. It will
      relayout the textshape if needed (when the page number changed) and
      will block all update calls when doing so to avoid retriggering of
      the paint event.
      
      If a application does not offer a page provider the behaviour is the
      same as before. It is possible to use this behaviour for selected
      shapes only if an app whishes.
      
      BUG: 187838
      
      svn path=/trunk/koffice/; revision=1025130
      1c3f7cf8
  15. 02 Jul, 2009 1 commit
  16. 10 Jun, 2009 1 commit
  17. 07 Jun, 2009 1 commit
  18. 20 Apr, 2009 1 commit
  19. 29 Sep, 2008 1 commit
  20. 28 Mar, 2008 1 commit
  21. 04 Mar, 2008 1 commit
  22. 30 Jul, 2007 1 commit
  23. 20 Jul, 2007 1 commit
  24. 05 Jun, 2007 1 commit
  25. 15 May, 2007 1 commit
  26. 05 Apr, 2007 3 commits
    • Thomas Zander's avatar
      Add getter for the model. · 4985b3df
      Thomas Zander authored
      Make KoShapeContainerModel compile on its own
      Replace all 'object' references to 'shape' as a long time ago we renamed the classes
      
      svn path=/trunk/koffice/; revision=650925
      4985b3df
    • Thomas Zander's avatar
      Split KoShapeContainerModel out into its own file. · d4569079
      Thomas Zander authored
      Noted that the KoShapeLayer had a copy paste of a SimpleShapeContainerModel
      from KoShapeGroup, so splitted that out into its own file and remove the
      duplicate.
      
      svn path=/trunk/koffice/; revision=650915
      d4569079
    • Thomas Zander's avatar
      SVN_SILENT fixlet · 34c0698d
      Thomas Zander authored
      svn path=/trunk/koffice/; revision=650829
      34c0698d
  27. 15 Mar, 2007 1 commit
    • Thomas Zander's avatar
      pedantic-- · 4025723e
      Thomas Zander authored
      I always wanted to write that word :)
      
      svn path=/trunk/koffice/; revision=642823
      4025723e
  28. 28 Feb, 2007 1 commit
    • Thomas Zander's avatar
      Fix EBN warning; · 4469aaac
      Thomas Zander authored
      apparantly private inner classes are not a smart thing to have an a public
      and installable header file.
      
      svn path=/trunk/koffice/; revision=638066
      4469aaac
  29. 22 Feb, 2007 1 commit
  30. 04 Feb, 2007 1 commit
  31. 18 Jan, 2007 1 commit
  32. 29 Dec, 2006 1 commit
    • Thomas Zander's avatar
      Apparantly people read the docs and thought they always had to supply a · d3cd7dde
      Thomas Zander authored
      model to use the KoShapeContainer.  Thats certainly not the case, the
      default constructor will use a model that provides all the functionality
      you want from a container.
      Only when you want less features or special actions should you write your
      own model.
      
      svn path=/trunk/koffice/; revision=617454
      d3cd7dde
  33. 14 Nov, 2006 1 commit
  34. 05 Nov, 2006 1 commit
  35. 25 Sep, 2006 1 commit
  36. 04 Aug, 2006 1 commit
    • Thomas Zander's avatar
      API docs · 84f45f70
      Thomas Zander authored
      Also rename some enum values to be CamelCase like the rest
      
      svn path=/trunk/koffice/; revision=569625
      84f45f70
  37. 31 Jul, 2006 1 commit