1. 13 Dec, 2005 2 commits
  2. 12 Dec, 2005 1 commit
  3. 11 Dec, 2005 2 commits
  4. 10 Dec, 2005 2 commits
  5. 08 Dec, 2005 1 commit
  6. 29 Oct, 2005 1 commit
    • Adrian Page's avatar
      Add support for displaying images using OpenGL, taking advantage of hardware... · 4571e3f4
      Adrian Page authored
      Add support for displaying images using OpenGL, taking advantage of hardware acceleration if available. This also opens up the world of shaders, for GPU accelerated rendering algorithms and general purpose computation, the first of which should be real-time adjustment of exposure for high dynamic range images.
      
      OpenGL can be enabled/disabled in the settings dialog and it defaults to off for now.
      
      - KisCanvas is no longer a widget, but contains either a QWidget or a QGLWidget. Because of this, a KisCanvasPainter is used to draw on the canvas widget. KisCanvasPainter offers the same API as QPainter, although the OpenGL painter only implements the methods currently used by the tools. This can be filled out as needed. In Qt4, KisCanvasPainter can become a QPainter again as it has gained the ability to paint on OpenGL widgets.
      - The image background is no longer compositied into the projection. KisImage::renderToPainter() now takes flags to say whether the background and/or selection should be rendered. This means we now honour the 'transparent' flag in KisDoc::paintContent() for embedded images.
      - KisBackground is no longer a KisPaintDevice, but instead contains a QImage with the background pattern.
      - The bottom-most layer is now copied into the projection, ignoring the layer's composite op. This is consistent with the gimp and Photoshop.
      - Make COMPOSITE_COPY copy transparent pixels and also apply the opacity to the copied data.
      - Add multiplyAlpha() and hasHighDynamicRange() methods to the colourspaces.
      - Move compositeCopy() from all colorspaces into one in KisAbstractColorSpace.
      - Move the painting methods out of KisBoundary (core) into KisBoundaryPainter (ui).
      - Make the overview zoom slider zoom the image.
      
      
      svn path=/trunk/koffice/; revision=475547
      4571e3f4
  7. 28 Oct, 2005 1 commit
  8. 15 Oct, 2005 1 commit
    • Halla Rempt's avatar
      * Move the colorspaces to their own shared library. · b6553212
      Halla Rempt authored
        There are still a few problems, because I made a few mistakes with
        file placing that I can only fix by committing, fixing and commiting.
        Also, the library isn't completely independent of the rest of Krita yet,
        see the TODO.
      * Add an uml diagram of the histogram design.
      * Add a meta registry -- that needs to be expanded so it becomes a central
        database for all the stuff we have in the myriad of singletons.
      * Fix the HACKING file about getters and setters to conform to Qt standards.
      
      svn path=/trunk/koffice/; revision=470933
      b6553212
  9. 07 Oct, 2005 1 commit
  10. 06 Oct, 2005 1 commit
  11. 27 Sep, 2005 1 commit
  12. 25 Sep, 2005 1 commit
    • Casper Boemann's avatar
      This is a big one. The colorspaces now have · 82df3900
      Casper Boemann authored
      profiles as attributes rather the being two 
      seperate entities.
      
      The colorspace registry has been replaced by a 
      colorspace_factory_registry. Each colormode (eg 
      rgb_u08) has a factory that make colorspaces. So 
      now we can have many colorspaces, but only when 
      they have different profiles.
      
      The new registry handles it so that colorspace 
      instances are still shared.
      
      Some colorspaces do not have profiles. Wet is one 
      of those.
      
      I can't guarantee that there will be no fallout or 
      regression.
      
      Nothing new featurewise in this commit, although it 
      does open the possibilities for future colorspace 
      independence, which we all know IS a big thing.
      
      
      svn path=/trunk/koffice/; revision=463852
      82df3900
  13. 17 Sep, 2005 1 commit
  14. 12 Sep, 2005 1 commit
    • Halla Rempt's avatar
      * Fix memory leak in palette manager · 226a91f2
      Halla Rempt authored
      * Fix focus bug with dockers
      * Removed superfluous headers here and there
      * Made sure we code against the interface, not the implementation of KisColorSpace.
      * More API separation from implementation
      * Replaced all QUANTUM with Q_UINT8 -- we will never do the ImageMagick trick of
        redefining QUANTUM to Q_UINT16 to have instant 16-bit support. We can do better 
        than that.
      * Removed obsolete and empty toolbar 
      * Added a little documentation about the sdk effort.
      
      svn path=/trunk/koffice/; revision=460097
      226a91f2
  15. 25 Aug, 2005 1 commit
    • Halla Rempt's avatar
      * FEATURE: add 16 bits gray and cmyk colorspaces · 732d95c2
      Halla Rempt authored
          * Removed unused brightnes/contrast methods from all colorspaces -- these are replaced
            by applyAdjustment.
          * Moved the popup buttons to a docker, made the paintop box a combobox and placed
            all of them in their own docker; let's see whether that works out. If you don't
            like this arrangement, shout at me.
          * Filled in the u8 and u16 base colorspaces with alpha/to/from qcolor and other
            common functionality.
          * Optimize bigendian display by using lcms for the byte-swapping
          * Made a generic toQImage that uses lcms.
          * Created a KisDlgLayerProperties dialog that shows the colorspace of the current
            layer and also used a .ui file, instead of a coded layout.
          * Added a createdcop.py script that generates the skeleton for a dcop interface
            class.
          * Messed about with dcop some more
          * Since an icc profiles works with any lcms colorspace, make the lcmscolorspace type
            private to kisprofile.
          * Added icons to the items in the paintop box
          * Fix cutting
          * Fix XYZ colorspace
      
      
      svn path=/trunk/koffice/; revision=453234
      732d95c2
  16. 22 Aug, 2005 1 commit
  17. 21 Aug, 2005 1 commit
    • Halla Rempt's avatar
      * Fix colorspace conversion the slow way · a3a47360
      Halla Rempt authored
      * Make conversion a little more streamlined
      * Add base transforms from/to rgb and xyz for all relevant colorspaces
      * Begin implementing default ops in 16-bit xyz.
      * Remove broken icm file
      
      svn path=/trunk/koffice/; revision=451689
      a3a47360
  18. 13 Aug, 2005 1 commit
    • Halla Rempt's avatar
      * Fix enabling/disabling of tools and resettin of tool to brush on · 2b1397a6
      Halla Rempt authored
        layer change.
      * Fix image conversion to other color spaces
      * Add base colorspace classes for 8-bit, 16-bit and 32-bit float colorspaces.
        I'll collect useful and common stuff here to keep the actual implementations
        as small as possible.
      * Reorganize the toolbox to make more sense, change the brush icon to a freehand
        icon and the blend icon to Karbon's gradient icon for more consistency
      * Add an option to the colorpicker to pick colors not just from the active or
        from all visible layers, but from any layer, while still working on this layer.
        (Still needed: pick color with right-click -- don't know how to to this right now)
      * Change image menu layout a bit
      * Started implementing the complete color separations feature.
      
      svn path=/trunk/koffice/; revision=449008
      2b1397a6
  19. 10 Aug, 2005 3 commits
  20. 26 Jul, 2005 2 commits
    • Bart Coppens's avatar
      Undo commit 438690: it caused more trouble than it was worth. I hope... · 966a987b
      Bart Coppens authored
      Undo commit 438690: it caused more trouble than it was worth. I hope everything works again now and I'm sory about the problems with it :-(
      (I'll try to readd the paintop switching after the hackaton, that part of the patch didn't seem to cause any problems)
      
      svn path=/trunk/koffice/; revision=439042
      966a987b
    • Halla Rempt's avatar
      * Fix locking of tools when the layer is locked or invisible · 2e20d064
      Halla Rempt authored
      * Remove the wet paintbrush tool; it's sufficient to use the wet paintop
      * The fsf has moved house, or so Thomas tells me. I guess it's a pretty dumb
        idea to have such volatile information in all headers, but there you are.
        We're up-to-date again...
      
      svn path=/trunk/koffice/; revision=438821
      2e20d064
  21. 25 Jul, 2005 1 commit
    • Bart Coppens's avatar
      Some changes to the colour strategies and their relatives: · 06047618
      Bart Coppens authored
      * Add a KisRenderInformation class. This replaces all hardcoded usages of the specific exposure value for the HDR 32bit float colourspace with a very adaptable per-device class
      * Paintops (e.g. wet brush) now dynamically appear and disappear from the paintopbox when the current layer changes from and to a layer that supports the op (see the wet paintop as an example)
      * The wet colourspace plugin now dynamically shows and hides relevant entries in the krita menu structure. This may not be needed in the long run, but it shows that it can be done quite easily if we would continue to use this
      
      svn path=/trunk/koffice/; revision=438690
      06047618
  22. 24 Jul, 2005 1 commit
    • Adrian Page's avatar
      Add initial support for working with high dynamic range images. · c902bebe
      Adrian Page authored
      - Add a 32-bit floating point RGBA colourspace. This allows use of colour values greater than 1, though the current implementation is copied from one of the integer colourspaces so doesn't always permit this.
      - Add an exposure slider to the Overview docker. This controls how the hdr image is rendered in convertToQImage, it does nothing to the actual pixel data.
      - Swap the slider and spinbox positions for KisDoubleWidget to be consistent with all the other slider/spinboxes we have.
      - Split some of the colourspace plugins into a library for the actual colourspace, and the plugin itself, which links to the library. This allows import/export filters to link against specific colourspaces portably, i.e. not against the plugin directly.
      - Add colourspace-specific setPixel/getPixel methods to the colourspaces so that import/export filters do not have to access pixel data directly.
      
      
      svn path=/trunk/koffice/; revision=438247
      c902bebe
  23. 10 Jul, 2005 1 commit
  24. 02 Jul, 2005 1 commit
  25. 27 Jun, 2005 1 commit
  26. 25 Jun, 2005 1 commit
    • Adrian Page's avatar
      Start a 16-bit integer RGBA colourspace. · 6d067736
      Adrian Page authored
      Painting works, though other things won't due to 8-bit assumptions.
      Loading a 16-bit image (from the PNG testsuite) creates a 16-bit image, but the data isn't there. Investigating...
      
      
      svn path=/trunk/koffice/; revision=428937
      6d067736
  27. 15 Jun, 2005 1 commit
    • Casper Boemann's avatar
      changed bitBlt to take a mask argument · 09c90674
      Casper Boemann authored
       - updated every op in rgb to use the mask
       - updated every up in testcs to use the mask
       - have NOT updated ops in rgb-compsite.h
       - have NOT updated ops in gray
      
      changed behaviour of ERASE op
      
      
      svn path=/trunk/koffice/; revision=425880
      09c90674
  28. 14 Jun, 2005 1 commit
  29. 13 Jun, 2005 1 commit
  30. 11 Jun, 2005 1 commit
    • Adrian Page's avatar
      Rotation and shearing fixes: · 611194d4
      Adrian Page authored
      - Multiply by alpha when blending colours so that the contribution to the resulting colour is proportional to the opacity. This fixes the darkening of border pixels.
      - Process the last column/row to remove the jagged right/bottom edge.
      
      svn path=/branches/koffice/1.4/koffice/; revision=424436
      611194d4
  31. 10 Jun, 2005 1 commit
    • Casper Boemann's avatar
      Next part of colorspace independence · f6a45673
      Casper Boemann authored
       - cleaned up global.h a bit
       - adjust Brightness/adjustContrast introduced in 
      colorspaces (though only implemented fully in rgb)
       - test cs also able to adjust brightness now
      
      
      svn path=/trunk/koffice/; revision=423980
      f6a45673
  32. 02 Jun, 2005 1 commit
  33. 26 May, 2005 1 commit
  34. 30 Apr, 2005 1 commit
    • Adrian Page's avatar
      Composite op fixes: · 41dbc6a5
      Adrian Page authored
      - Only show composite ops that are supported by the colourspace in use.
      - Save/load layer composite op settings.
      - Reorder ops and for now leave out those that are currently not working or only partially.
      - Don't offer internal ops such as copy, erase, clear, as they aren't useful and appear broken to the user.
      - Add missing grayscale versions of the rgba ops that make sense.
      
      svn path=/trunk/koffice/; revision=408888
      41dbc6a5