History log of /haiku/src/apps/icon-o-matic/IconEditorApp.cpp
Revision Date Author Comments
# 098eaec6 08-Jun-2023 Zardshard <0azrune6@zard.anonaddy.com>

Icon-O-Matic: Add reference images

Fixes #2748

Also fixes a comment misstating a function's name and code style.

Change-Id: I609a1f1e100ded647818e70b428cedc48cf29036
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6604
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>


# cd383c33 20-Jul-2012 Philippe Saint-Pierre <stpere@gmail.com>

CID 610802: Unchecked return of FindMessage()


# fc4d98a2 20-Jul-2012 Philippe Saint-Pierre <stpere@gmail.com>

Coding style fixes, no functionnal changes.

Following comments from Axel about a previous commit of mine. Sorry Axel for the delay.


# b78760b9 25-Jun-2012 Philippe Saint-Pierre <stpere@gmail.com>

Replace several hard-coded paths with find_directory calls


# 546208a5 16-Apr-2012 Oliver Tappe <zooey@hirschkaefer.de>

More catalog-related cleanup.

* rename B_TRANSLATE_CONTEXT to B_TRANSLATION_CONTEXT and
B_TRANSLATE_WITH_CONTEXT to B_TRANSLATE_CONTEXT, squashing a TODO
* adjust all uses of both macros in Haiku's source tree
* use correct header guard for collecting/Catalog.h

The renamed macros require adjustments to all external applications
using catalogs.


# 22c7e632 17-Apr-2011 Stephan Aßmus <superstippi@gmx.de>

Implemented loading a new icon into the same window when that
window is empty.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41262 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 61ee19d1 10-Apr-2011 Stephan Aßmus <superstippi@gmx.de>

* A whole buch of refactoring and other changes to make Icon-O-Matic
a multi-document application. This is already more useful than
before, but will be even more useful once it is possible to copy
more types of objects to the system clipboard and paste them into
other open icons.
* Fixed wrong snapping menu item being marked when restoring settings
that enable a different snapping mode from the default.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41212 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 97056676 04-Apr-2011 Stephan Aßmus <superstippi@gmx.de>

* Created separate PNG exporters for 16x16, 32x32 and 64x64 sizes.
* When exporting for the first time, use the native saver's file
name to initialize the file panel save text.
* Don't shadow exportMode variable.
* Small cleanups.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41181 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c9c3e1ab 31-Mar-2011 Stephan Aßmus <superstippi@gmx.de>

Removed some dead and broken code for setting a document icon.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41151 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d19e434d 31-Mar-2011 Stephan Aßmus <superstippi@gmx.de>

Style cleanup. No functional change.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41150 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 518852fc 29-Dec-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

Patch by Dziadek: localize IconOMatic


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40025 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 609bc8ca 10-Oct-2008 Stephan Aßmus <superstippi@gmx.de>

Fix a confusion with the big-endian versus little endian saving of the
magic four bytes to recognize native (BMessage-based) icons. The file
recognition rule didn't work in the end.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27951 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 036203a0 02-Oct-2008 Karsten Heimrich <host.haiku@gmx.de>

* fix small mem leak



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27854 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 53200f8e 19-Aug-2008 Stephan Aßmus <superstippi@gmx.de>

Icon-O-Matic will now fall back to trying to open the icon attribute of any
node it is requested to open. That this would happen was an assumption of
the FileTypes preflet. Adding an icon to a node from the FileTypes add-on
will now work. Previously, Icon-O-Matic thought this was supposed to be an
icon file. Perhaps it would be better if Icon-O-Matic would ask the user if
adding an icon was the intention. FileTypes could put a flag into the message
to supress this alert. On the other hand, if adding an icon was not the
intention, the user may as well simply close Icon-O-Matic.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27065 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f6884761 19-Nov-2007 Stephan Aßmus <superstippi@gmx.de>

* add a new export format to get the vector icon data as C source


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22953 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 015a014a 21-Sep-2007 Stephan Aßmus <superstippi@gmx.de>

* fixed quite a few selections bugs, most were caused by cyclic notifications,
and the mechanism to prevent them not working...
* could have fixed the "there are still listeners attached" bug (debugger drop)
on exit, I have not seen it again, but I am not sure if it is really fixed
* introduced a way to ask the user, if changes should be saved and then
pick up the line of thought after saving


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22269 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5725361f 08-Sep-2007 Stephan Aßmus <superstippi@gmx.de>

* some fixes to the GUI on BeOS, avoid an app_server bug when resizing the window
after creating the views, but before Show()
* make the MenuFields in the Style section follow left/right


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22204 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1518e410 02-Jun-2007 Stephan Aßmus <superstippi@gmx.de>

* Icon-O-Matic prepends a magic number when writing native files, this way
we can associate these native files with Icon-O-Matic (they also get their
own mime type)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21295 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a8745d98 25-May-2007 Stephan Aßmus <superstippi@gmx.de>

* added "NativeSaver" which combines the MessageExporter and AttributeSaver
to save the document also as icon attribute to a native Icon-O-Matic
document file
* added cmd-Y short cut to main window (on a German keyboard, Y and Z
are swapped, but the Undo/Redo shortcuts are still "Z" while Z is much
harder to reach than Y)
* fixed warning in SetColorCommand.cpp
* FlatIconExporter needs to save the attribute using B_VECTOR_ICON_TYPE
(of course)



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21235 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d63a05d3 17-Nov-2006 Stephan Aßmus <superstippi@gmx.de>

* added support for the editing icons comming in via
B_EDIT_ICON_DATA messages, doesn't load an icon yet
(won't look into it within the next 10 hours... ;-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19311 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 774831e7 16-Nov-2006 Stephan Aßmus <superstippi@gmx.de>

big clean up of Save and Export stuff:
* implemented SavePanel that let's you chose the Export format
* introduced DocumentSaver class and several implementations
* Document no longer remembers any entry_refs, but a native
and export document saver, for other export formats than
HVIF, it is no longer necessary to go through the file panel,
simply invoking Export will do
* this makes it much easier to have a custom saver that sends
a message with an HVIF icon to another app instead of saving
to a file
* cleaned up File menu
* last used export format is persistent


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19307 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4fac07a0 12-Nov-2006 Stephan Aßmus <superstippi@gmx.de>

* started work on saving program settins, window frame is
remembered for now
* fixed some annoying bugs:
- the snapping prevented some of the proximity checks from
working while editing a path or using the transform box,
now the Manipulators themself are responsible for mouse
snapping and can do so at the time it works best for them
- pressing the Esc key while using the transform box did
reset the transformation, but didn't exit the transform
mode (return to path editing)
* improved layout of some views when the window is resized



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19266 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6e3b3b09 03-Nov-2006 Stephan Aßmus <superstippi@gmx.de>

* improvements to saving/loading, biggest flaw was that appending an icon
changed the save entry_ref to the appended file, instead of keeping it
* added cleaning up styles (removing duplicates) after importing from SVG
* compile fixes for rgb_color ==/!= rgb_color
* added Style::operator==(const Style& other)
* improved debug output when listeners are still attached
to a VectorPath upon destruction



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19188 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f4bd80a2 10-Sep-2006 Stephan Aßmus <superstippi@gmx.de>

* when loading an icon via drag&drop, the file will be remembered
for saving later
* added "Clean Up" feature to "Path" menu
* added "Freeze Transformation" to "Shape" menu (will apply the
current shape transformation onto the path and reset the shape
transformation to identity)
* small cleanup in ShapeListView
* implemented zooming in CanvasView
* added context menu while editing a path
* implemented undo/redo for transforming points
(press T or use context menu)
* added "Split Points" feature (path editing context menu), it will
make two points from one control point
* improved selecting path points with selection rect
* improved SVG import for zuMis BeOS icons (more precise scale)



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18800 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0e1ba39f 29-Aug-2006 Stephan Aßmus <superstippi@gmx.de>

* merged Icon-O-Matic from Ingos layout branch into trunk (r18134:18685)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18686 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 61b0e9e3 12-Jul-2006 Stephan Aßmus <superstippi@gmx.de>

* added a little bit of tracing to object destruction, since there
seems to be a problem when quitting the app
* added Undo/Redo commands for numerous operations
- (un)assigning VectorPaths to Shapes
- adding new VectorPaths
- removing VectorPaths
- adding Shapes
- transforming Shapes
- adding Styles
- changing Style color
* there was a mix up in classes inheriting from SimpleListView,
RemoveItemList() gives a list of item pointers, not indices
* GradientControl sent the focus notification to the window instead
of the set BHandler target
* StyleView takes care of transfering the current Style color or
the focused gradient stop color to the CurrentColor object, so
the current color of the SwatchGroup is synced
* small improvement to layout of SwatchGroup
* SwatchGroup no longer knows anything about a Style
* fixed syncing the global Selection to the listview selection
at least for ShapeListView
* implemented cloning Shapes
- added Transformer::Clone(VectorSource& source) to all Transformers
- ShapeListView uses this when dropping shapes with shift pressed
* updated NOTES
* added Transformable::matrix_size, so that "6" isn't hardcoded
everywhere (though it still is at most places)
* added listener interface to TransformBox, this is used by
the new TransformObjectsCommand, as long as the TransformBox still
exists, the command modifies the TransformBox transformation instead
of messing with the objects itself
* fixed hotspot size in TransformBox by using the zoom level of
the CanvasView
* TransformBox rotates/scales correctly around the visible pivot
* fixed TransformCommand toggling to transformation (the diff was bogus)
* Gradient doesn't trigger unnecessary notifications in SetColor()
* CanvasView doesn't eat keyboard events when the GradientControl or
one of the ListViews has focus (is a hack currently...)
* fixed bug in PropertyListView when it calls the PropertyChanged()
hook: because of the notification mechanism, the Properties might
be toast after the hook returns
* moved all GetProperty() implementations from headers into .cpp files



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18122 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e5799544 23-Jun-2006 Stephan Aßmus <superstippi@gmx.de>

beginning to check up on gui components:
* added a group of controls to access and manipulate colors (incomplete)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17917 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 31e20891 23-Jun-2006 Stephan Aßmus <superstippi@gmx.de>

* added a color picker panel
(heavily modified, but originally based on Colors! by Werner Freytag)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17915 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ce181bb0 21-Jun-2006 Stephan Aßmus <superstippi@gmx.de>

* fixed memory leaks and display bugs
* VectorPath objects were released one two many times
by the Shape PathContainers (they don't acquire when
a path is added, the Shape does that for them) the
PathContainer of the Icon needs to release though, as
it "owns" the paths
* put the Selection class used by PathManipulator into
the PathManipulator namespace, since the compiler seemed
to use the wrong destructor (the one from the generic
Selection class)
* uses a better mechanism to track and render
changed parts of icon


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17903 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 128277c9 13-Jun-2006 Stephan Aßmus <superstippi@gmx.de>

the first steps towards Icon-O-Matic
* added a framework with many classes that I think will be useful
* currently, the StateView and Manipulator interface are used to
allow editing a single VectorPath object, nothing more... the
CommandStack framework is also used to support Undo/Redo


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17822 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cd383c3378a59c29329c5c8f47bb4d9ed93854b8 20-Jul-2012 Philippe Saint-Pierre <stpere@gmail.com>

CID 610802: Unchecked return of FindMessage()


# fc4d98a2c09fcc8e96eda3f9a234ae9cd71dba48 20-Jul-2012 Philippe Saint-Pierre <stpere@gmail.com>

Coding style fixes, no functionnal changes.

Following comments from Axel about a previous commit of mine. Sorry Axel for the delay.


# b78760b964a5be4a9453a02c74ba742f87150908 25-Jun-2012 Philippe Saint-Pierre <stpere@gmail.com>

Replace several hard-coded paths with find_directory calls


# 546208a53940a26c6379c48a7854ade1a8250fc5 16-Apr-2012 Oliver Tappe <zooey@hirschkaefer.de>

More catalog-related cleanup.

* rename B_TRANSLATE_CONTEXT to B_TRANSLATION_CONTEXT and
B_TRANSLATE_WITH_CONTEXT to B_TRANSLATE_CONTEXT, squashing a TODO
* adjust all uses of both macros in Haiku's source tree
* use correct header guard for collecting/Catalog.h

The renamed macros require adjustments to all external applications
using catalogs.


# 22c7e6324ceafd33f29a1d4ad0fec14192018c35 17-Apr-2011 Stephan Aßmus <superstippi@gmx.de>

Implemented loading a new icon into the same window when that
window is empty.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41262 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 61ee19d10fcc38e93a80a29b90efe6e4e15604df 10-Apr-2011 Stephan Aßmus <superstippi@gmx.de>

* A whole buch of refactoring and other changes to make Icon-O-Matic
a multi-document application. This is already more useful than
before, but will be even more useful once it is possible to copy
more types of objects to the system clipboard and paste them into
other open icons.
* Fixed wrong snapping menu item being marked when restoring settings
that enable a different snapping mode from the default.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41212 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9705667601610f29e7a9ac65bec273cc198adda6 04-Apr-2011 Stephan Aßmus <superstippi@gmx.de>

* Created separate PNG exporters for 16x16, 32x32 and 64x64 sizes.
* When exporting for the first time, use the native saver's file
name to initialize the file panel save text.
* Don't shadow exportMode variable.
* Small cleanups.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41181 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c9c3e1ab8114a15d3b9807d89d960f596fa39e71 31-Mar-2011 Stephan Aßmus <superstippi@gmx.de>

Removed some dead and broken code for setting a document icon.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41151 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d19e434d9c33fefc2b49e72a1530f2d0f634cecd 31-Mar-2011 Stephan Aßmus <superstippi@gmx.de>

Style cleanup. No functional change.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41150 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 518852fca73d16198413de528219fcdfa6b04647 29-Dec-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

Patch by Dziadek: localize IconOMatic


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40025 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 609bc8ca4724287df91e6bffc01ad7709a2351be 10-Oct-2008 Stephan Aßmus <superstippi@gmx.de>

Fix a confusion with the big-endian versus little endian saving of the
magic four bytes to recognize native (BMessage-based) icons. The file
recognition rule didn't work in the end.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27951 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 036203a01a81fbb866c6203f88bfd93565698151 02-Oct-2008 Karsten Heimrich <host.haiku@gmx.de>

* fix small mem leak



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27854 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 53200f8efabd577fa90d0d472842a7e90fd4e72c 19-Aug-2008 Stephan Aßmus <superstippi@gmx.de>

Icon-O-Matic will now fall back to trying to open the icon attribute of any
node it is requested to open. That this would happen was an assumption of
the FileTypes preflet. Adding an icon to a node from the FileTypes add-on
will now work. Previously, Icon-O-Matic thought this was supposed to be an
icon file. Perhaps it would be better if Icon-O-Matic would ask the user if
adding an icon was the intention. FileTypes could put a flag into the message
to supress this alert. On the other hand, if adding an icon was not the
intention, the user may as well simply close Icon-O-Matic.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27065 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f688476148e9a03699ebee673a7568f5a7cb7420 19-Nov-2007 Stephan Aßmus <superstippi@gmx.de>

* add a new export format to get the vector icon data as C source


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22953 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 015a014aa74d4366a1c2c14ecef92483ebf3e532 21-Sep-2007 Stephan Aßmus <superstippi@gmx.de>

* fixed quite a few selections bugs, most were caused by cyclic notifications,
and the mechanism to prevent them not working...
* could have fixed the "there are still listeners attached" bug (debugger drop)
on exit, I have not seen it again, but I am not sure if it is really fixed
* introduced a way to ask the user, if changes should be saved and then
pick up the line of thought after saving


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22269 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5725361ffe6b7987fcedc7225c3a03081ea5dc86 08-Sep-2007 Stephan Aßmus <superstippi@gmx.de>

* some fixes to the GUI on BeOS, avoid an app_server bug when resizing the window
after creating the views, but before Show()
* make the MenuFields in the Style section follow left/right


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22204 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1518e4101b2157a4981b6b1b24530298ecb60647 02-Jun-2007 Stephan Aßmus <superstippi@gmx.de>

* Icon-O-Matic prepends a magic number when writing native files, this way
we can associate these native files with Icon-O-Matic (they also get their
own mime type)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21295 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a8745d98e92b2e25d6a9024cecc951e9a8ed8de4 25-May-2007 Stephan Aßmus <superstippi@gmx.de>

* added "NativeSaver" which combines the MessageExporter and AttributeSaver
to save the document also as icon attribute to a native Icon-O-Matic
document file
* added cmd-Y short cut to main window (on a German keyboard, Y and Z
are swapped, but the Undo/Redo shortcuts are still "Z" while Z is much
harder to reach than Y)
* fixed warning in SetColorCommand.cpp
* FlatIconExporter needs to save the attribute using B_VECTOR_ICON_TYPE
(of course)



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21235 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d63a05d32bce246496bf9777fcf3851a16afe235 17-Nov-2006 Stephan Aßmus <superstippi@gmx.de>

* added support for the editing icons comming in via
B_EDIT_ICON_DATA messages, doesn't load an icon yet
(won't look into it within the next 10 hours... ;-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19311 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 774831e7c242f07168f07e1d804d93fe63687702 16-Nov-2006 Stephan Aßmus <superstippi@gmx.de>

big clean up of Save and Export stuff:
* implemented SavePanel that let's you chose the Export format
* introduced DocumentSaver class and several implementations
* Document no longer remembers any entry_refs, but a native
and export document saver, for other export formats than
HVIF, it is no longer necessary to go through the file panel,
simply invoking Export will do
* this makes it much easier to have a custom saver that sends
a message with an HVIF icon to another app instead of saving
to a file
* cleaned up File menu
* last used export format is persistent


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19307 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4fac07a0887406d944d78403f8a3b01a4e6154be 12-Nov-2006 Stephan Aßmus <superstippi@gmx.de>

* started work on saving program settins, window frame is
remembered for now
* fixed some annoying bugs:
- the snapping prevented some of the proximity checks from
working while editing a path or using the transform box,
now the Manipulators themself are responsible for mouse
snapping and can do so at the time it works best for them
- pressing the Esc key while using the transform box did
reset the transformation, but didn't exit the transform
mode (return to path editing)
* improved layout of some views when the window is resized



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19266 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6e3b3b09d3905d564fa9c8590a20a46fc260ed36 03-Nov-2006 Stephan Aßmus <superstippi@gmx.de>

* improvements to saving/loading, biggest flaw was that appending an icon
changed the save entry_ref to the appended file, instead of keeping it
* added cleaning up styles (removing duplicates) after importing from SVG
* compile fixes for rgb_color ==/!= rgb_color
* added Style::operator==(const Style& other)
* improved debug output when listeners are still attached
to a VectorPath upon destruction



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19188 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f4bd80a2dcc200d939292c877b3fdadb7f3a261e 10-Sep-2006 Stephan Aßmus <superstippi@gmx.de>

* when loading an icon via drag&drop, the file will be remembered
for saving later
* added "Clean Up" feature to "Path" menu
* added "Freeze Transformation" to "Shape" menu (will apply the
current shape transformation onto the path and reset the shape
transformation to identity)
* small cleanup in ShapeListView
* implemented zooming in CanvasView
* added context menu while editing a path
* implemented undo/redo for transforming points
(press T or use context menu)
* added "Split Points" feature (path editing context menu), it will
make two points from one control point
* improved selecting path points with selection rect
* improved SVG import for zuMis BeOS icons (more precise scale)



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18800 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0e1ba39f0440e200e30b6a648e70c3e8683dc5f7 29-Aug-2006 Stephan Aßmus <superstippi@gmx.de>

* merged Icon-O-Matic from Ingos layout branch into trunk (r18134:18685)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18686 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 61b0e9e3149012ccbd48a10dcbc7f83600bb4769 12-Jul-2006 Stephan Aßmus <superstippi@gmx.de>

* added a little bit of tracing to object destruction, since there
seems to be a problem when quitting the app
* added Undo/Redo commands for numerous operations
- (un)assigning VectorPaths to Shapes
- adding new VectorPaths
- removing VectorPaths
- adding Shapes
- transforming Shapes
- adding Styles
- changing Style color
* there was a mix up in classes inheriting from SimpleListView,
RemoveItemList() gives a list of item pointers, not indices
* GradientControl sent the focus notification to the window instead
of the set BHandler target
* StyleView takes care of transfering the current Style color or
the focused gradient stop color to the CurrentColor object, so
the current color of the SwatchGroup is synced
* small improvement to layout of SwatchGroup
* SwatchGroup no longer knows anything about a Style
* fixed syncing the global Selection to the listview selection
at least for ShapeListView
* implemented cloning Shapes
- added Transformer::Clone(VectorSource& source) to all Transformers
- ShapeListView uses this when dropping shapes with shift pressed
* updated NOTES
* added Transformable::matrix_size, so that "6" isn't hardcoded
everywhere (though it still is at most places)
* added listener interface to TransformBox, this is used by
the new TransformObjectsCommand, as long as the TransformBox still
exists, the command modifies the TransformBox transformation instead
of messing with the objects itself
* fixed hotspot size in TransformBox by using the zoom level of
the CanvasView
* TransformBox rotates/scales correctly around the visible pivot
* fixed TransformCommand toggling to transformation (the diff was bogus)
* Gradient doesn't trigger unnecessary notifications in SetColor()
* CanvasView doesn't eat keyboard events when the GradientControl or
one of the ListViews has focus (is a hack currently...)
* fixed bug in PropertyListView when it calls the PropertyChanged()
hook: because of the notification mechanism, the Properties might
be toast after the hook returns
* moved all GetProperty() implementations from headers into .cpp files



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18122 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e57995449d5e5a8ed659229d98274bea0d824cef 23-Jun-2006 Stephan Aßmus <superstippi@gmx.de>

beginning to check up on gui components:
* added a group of controls to access and manipulate colors (incomplete)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17917 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 31e20891067fdd01ab68bc891566f070ff73ef58 23-Jun-2006 Stephan Aßmus <superstippi@gmx.de>

* added a color picker panel
(heavily modified, but originally based on Colors! by Werner Freytag)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17915 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ce181bb0cd9855442f7a1db340e7e9d51f231e33 21-Jun-2006 Stephan Aßmus <superstippi@gmx.de>

* fixed memory leaks and display bugs
* VectorPath objects were released one two many times
by the Shape PathContainers (they don't acquire when
a path is added, the Shape does that for them) the
PathContainer of the Icon needs to release though, as
it "owns" the paths
* put the Selection class used by PathManipulator into
the PathManipulator namespace, since the compiler seemed
to use the wrong destructor (the one from the generic
Selection class)
* uses a better mechanism to track and render
changed parts of icon


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17903 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 128277c969aa806add78941cd2972754c37a1572 13-Jun-2006 Stephan Aßmus <superstippi@gmx.de>

the first steps towards Icon-O-Matic
* added a framework with many classes that I think will be useful
* currently, the StateView and Manipulator interface are used to
allow editing a single VectorPath object, nothing more... the
CommandStack framework is also used to support Undo/Redo


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17822 a95241bf-73f2-0310-859d-f6bbb57e9c96