Here is what I've done on SVN:- added mouse wheel scroll in the image browser (open/save)- program checks new version only every 30 days- mouse wheel to zoom image goes by finer steps (100%, 150%, 200%, 300%...)- added status bar with size of rectangle and other infos

circular: thank for additions! Very wait for scroll with mid-button . Zoom now fine, IMO better than in photoshop. Only need to add more precise zooming(slower zooming) when holding Ctrl.

Also I told it everywhere, and in this topic want repeat too: think 10 once before add new button and... don't add if possible. The main idea is - interactivity instead of buttons. In this case I talk about pallet. many button in interface tires eyes and take place that can be use in future for more important things. In pallet we can attach popup, where will TMenuItems like "Insert current color" and "Delete this color" (for understanding what means "this" color, color on which clicked may be with little border 3pix width "white-black-white" to be visible with any color). After realize it respective buttons on color selector are not needed anymore. Instead of this two button we can place the area floodfill with current color two. That is because a low filled space(like current little rectangle in left bottom corner) and a large filled space with the same color looks a slight different for the eye(as you see on attached screen).

if you do this we'll have(in the end of the end) the photoshop topology. I think AutoCad topology is better. Layer - must be "ideologically" layer, where user can place what he want(text, lines, pen-drawings). Shadow must be a modifier for object(like in 3DMax) - for text or line or pen-drawing.

P/s: Gimp try to clone Photoshop. In fact is very uncomfortable to use, like Photoshop.

Also want to mention the main benefits of your app, that I hope will be saved in all future versions:1) fast loading2) no splash screen on startup3) exe-file only - enough to start4) ini-file(and all what app need to work) created in the same dir, where exe (full Win-registry independent)

All this principles I use in all my app's. Glad to see the same in your work.

More recently I have been moving a bit towards Dll because it is convenient to do so with .NET. However it is not very cross-platform.

There are many versions of .NET Framework and there is nothing more sadly then message "****.dll not found, application will be closed".

I was writing some similar to Paint application, like you(but not as open-source project). But when I found your project I decide that at this time better work on it(as adviser or as developer - not the point), because it more powerful and there already realized some my ideas, that I did not have time to implement. My project was using only one dll (sad about it, but don't know how to workaround it) - FreeImage.dll. And using it only for one thing - fast loading big jpg-files. Maybe in future default JPEG- library(or BGRABitmap-library) will be as fast as FreeImage.

Want to add that known many app, that starts slowly only because of dll-files loading on startup. The good example of working with dll - it is a music sequencer FruityLoops, where VSTi-plugins(virtual instruments for generating sounds) are the dll-files, but app not loading it on startup - respective to dll-file instrument will be loaded only after you add it to sequencer.

In project testbgrafunc.lpk need to be added BGRASceneTypes in uses section of ucube3d.pas

Also be very good:1) simple example(with right-coding style), where the something with Canvas placed on form(TPanel or TBGRAVirtualScreen - not matter) with(impotant!) no calculations of drawing area. I prefer the black background with white line flying from left to right one time 2) to implement .ico load/save support. Delphi icon editor is poor.3) when I open file in some location and edit it(file) I suspect that after SaveAs I will see the same location, where I open file, but I don't.

About (1). I looking examples for to use bgrabitmap class in my apps. But I was wonder - in wiki no one simple example where line moves on some component with canvas(like TPanel). Then I open testbgrafunc, but all of tests are also drawing on TForm, and area "where to draw" are calculating. In umain.pas it's a line:

Also have a little wish. In my editor right mouse button(RMB) was only for one purpose - take color(when Pen tool). Maybe when selected Pen do the same in LazPaint? It's will more comfort than every time select ColorPicker.

I write a little example. Think it must be a very basic of tutorial(if drawing output are use all [fast]potential of component):

Yes, this works fine on Windows, but it does not on MacOS. To be portable, all drawing need to be done in an OnPaint event. And to have an OnPaint event, one need to invalidate the region to be redrawn. And to avoid flickering one need to inhibit the erase-background event.