#
4b0dffe5 |
|
21-Aug-2023 |
Zardshard <0azrune6@zard.anonaddy.com> |
Icon-O-Matic: Make list items copy/pastable Also: * make transformers draggable * clean up archiving code Partially addresses #18400 Change-Id: Ibc384a1919e1330113a5e2857da16284181a834e Reviewed-on: https://review.haiku-os.org/c/haiku/+/6869 Reviewed-by: waddlesplash <waddlesplash@gmail.com> Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
|
#
c6c2c042 |
|
08-Aug-2023 |
Zardshard <0azrune6@zard.anonaddy.com> |
Icon-O-Matic: Add perspective transformations As part of adding perspective transformations, agg_trans_perspective.h was patched to fix a multiple definitions error. This change has been submitted for review to the "upstream" repositories at [1], [2], and [3]. Also includes various other improvements such as VertexSource being split into its own file, code style improvements, and documentation improvements. [1] https://sourceforge.net/p/agg/patches/6/ [2] https://github.com/ghaerr/agg-2.6/pull/9 [3] https://github.com/aggeom/agg-2.6/pull/7 Change-Id: I4bffd2f87354bde10155e23145a232a925be6ff3 Reviewed-on: https://review.haiku-os.org/c/haiku/+/6801 Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
|
#
c70aca11 |
|
14-Aug-2023 |
Zardshard <0azrune6@zard.anonaddy.com> |
Icon-O-Matic: Make left sidebar lists resizable Makes the Path, Shape, Transformer, and Properties menu vertically resizable. Implements #2745 Change-Id: I322b6ecffbe807694c7f188c5ffa5025cbc5e711 Reviewed-on: https://review.haiku-os.org/c/haiku/+/6815 Reviewed-by: waddlesplash <waddlesplash@gmail.com> Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
|
#
3961af9f |
|
29-Jul-2023 |
Humdinger <humdingerb@gmail.com> |
Use UTF8 multiplication sign "×" instead of "x" It was suggested for translations in Pootle, and I agree it looks subtly nicer: a bit smaller and vertically centered. Also made all strings that include the "x" translatable, in case there are different local usages. For icon sizes in Tracker, move menu creation into a loop with an kIconSizes array holding the pixel dimensions. Change-Id: I805279d7186d90a13a40b4d4495670cdfac18913 Reviewed-on: https://review.haiku-os.org/c/haiku/+/6765 Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org> Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
|
#
a4e4beaf |
|
18-Jul-2023 |
Humdinger <humdingerb@gmail.com> |
IOM: Localization/String improvements * Switching mis-used B_TRANSLATE_CONTEXT to B_TRANSLATE_COMMENT * Use B_TRANSLATE_SYSTEM_NAME for "Icon-O-Matic" * Remove remnants of old localization system * Rename "Control Points" to vertex/vertices * Add a ":" after Undo/Redo * Sentence casing * Avoid Yes/No buttons in BAlert Change-Id: Ibb299925bce1f6ca1cf03216a36df7c44f10bdc6 Reviewed-on: https://review.haiku-os.org/c/haiku/+/6704 Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk> Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
|
#
64279352 |
|
22-Jun-2023 |
Zardshard <0azrune6@zard.anonaddy.com> |
Icon-O-Matic: Generalize some classes * Turns PathContainer, ShapeContainer, StyleContainer into Container. * Makes Shape use Container for storing Tansformers instead of reinventing the wheel yet again. * Moves common logic from AddPathsCommand, AddStylesCommand, AddShapesCommand, and AddTransformersCommand to AddCommand. * Factors out common logic from two more commands similar to above. This adds the MoveCommand and RemoveCommand classes. * Cleans up some code style. Change-Id: I59eca94a1c45eac608514f269f6e5f8628f93fab Reviewed-on: https://review.haiku-os.org/c/haiku/+/6640 Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org> Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
|
#
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>
|
#
943b5775 |
|
23-May-2023 |
Zardshard <0azrune6@zard.anonaddy.com> |
Icon-O-Matic: Fix memory leak I found leak_analyser.sh and gave it a try. Indeed, it did find many leaks, including this one. Change-Id: I7d36274f3f7772aa459c4bf1d30392e7b8cfa171 Reviewed-on: https://review.haiku-os.org/c/haiku/+/6467 Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org> Reviewed-by: waddlesplash <waddlesplash@gmail.com>
|
#
e48af9e4 |
|
22-Mar-2023 |
Yourself <0azrune6@zard.anonaddy.com> |
Icon-O-Matic: cleanup workspace switching code * Remove comment stating DesktopColor is buggy. The documentation has since been updated clarifying that this is the expected behavior. * Refactor code. * No functional changes. Change-Id: I03711136eb613afb80ad8c03a7f18ba6d15f641c Reviewed-on: https://review.haiku-os.org/c/haiku/+/6256 Tested-by: Automation <automation@haiku-os.org> Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
|
#
27ae691c |
|
02-Aug-2020 |
Adrien Destugues <pulkomandy@pulkomandy.tk> |
Icon-O-Matic: fix the main menu bar Mentionned in #8759 as well. Change-Id: I90bb0529a6bf1dd18316a95f87947e142128d5db Reviewed-on: https://review.haiku-os.org/c/haiku/+/3123 Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
|
#
c2151600 |
|
02-Aug-2020 |
Adrien Destugues <pulkomandy@pulkomandy.tk> |
Icon-O-Matic: use BMenuFied for secondary menus Fixes #8759 Change-Id: Ie1c40e6e9ee21bc616119aaf49b3e46162fb82aa Reviewed-on: https://review.haiku-os.org/c/haiku/+/3122 Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
|
#
fa19dd44 |
|
10-Dec-2015 |
looncraz <looncraz@looncraz.net> |
apps: Convert to using Set*UIColor. Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com> Patches 0045-0075, 0077-0087 from looncraz, unmodified.
|
#
0cbb6c11 |
|
09-May-2015 |
Stephan Aßmus <superstippi@gmx.de> |
Icon-O-Matic: Make GradientTransformable a BReferenceable * Switch to using support/Referenceable.h instead of using an older copy of this code. * Make GradientTransformable a BReferenceable and fix #12033.
|
#
991dadd6 |
|
16-Jun-2014 |
Humdinger <humdingerb@gmail.com> |
Make sure there's a space in front of B_UTF8_ELLIPSIS. As PulkoMandy said in hrev47388: C++11 safe and reads better.
|
#
f31a2f68 |
|
31-Dec-2013 |
Stephan Aßmus <superstippi@gmx.de> |
Icon-O-Matic: Forget fMessageAfterSave when FilePanel was cancelled. fMessageAfterSave capture what was to be done after a file panel was used. For example, picking up quitting the app after the user saved unsaved changes. The bug was that when trying to quit IOM, deciding to save, but then cancelling the file panel, the quitting stopped (as expected). But then the next time the document was saved, IOM quit unexpectedly.
|
#
60128b54 |
|
04-May-2013 |
Jérôme Duval <jerome.duval@gmail.com> |
Icon-o-matic: some 64 bit fixes
|
#
776c58b2 |
|
30-Dec-2012 |
Humdinger <humdingerb@gmail.com> |
Unifying the quit/save alerts. Wherever I found an alert prompting to save changes, I used the button labeling 'Cancel', 'Don't save', 'Save' with the first button left aligned, 2nd and 3rd right aligned. I added the shortcuts 'd' for 'Don't save, and 's' for 'Save' where not already set. The topic was discussed at http://permalink.gmane.org/gmane.os.haiku.devel/23244 The discussion died down, I hope I made changes everyone can live with.
|
#
ef4ed1b7 |
|
15-Aug-2012 |
Humdinger <humdingerb@gmail.com> |
Replaced "Preferences"/"Options" with "Settings" Replaced remaining "Preferences" and "Options" with "Settings" as that is generally used for app settings instead of the system preferences found in the preference panels. Renamed Tracker's "Preferences" to "Tracker preferences" to be similar to the entries in the Deskbar and e.g. the Media replicant in the Deskbar tray.
|
#
aed35104 |
|
05-Aug-2012 |
Humdinger <humdingerb@gmail.com> |
Close alerts with ESCAPE key. Added SetFlags(B_CLOSE_ON_ESCAPE) or SetShortcut(index, B_ESCAPE) to BAlerts depending if the result gets used later in the code, or if it's a one-button BAlert.
|
#
e4ef6682 |
|
06-May-2012 |
Stephan Aßmus <superstippi@gmx.de> |
Implemented drag&drop of shape items between I-O-M windows. * The ShapeListView also knows the PathContainer and StyleContainer * When constructing the drag message, also include a complete archive of the dragged shapes, bundled with archives for each included path and the style. * When handling the drop, and it came from another I-O-M window, exract the Shape archive bundle from the drag message. For the Style and the included Paths, try to find an existing Style and existing Paths and reference those in the added Shape(s) instead of adding duplicates.
|
#
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.
|
#
fe10dd20 |
|
11-Dec-2011 |
Michael Lotz <mmlr@mlotz.ch> |
Fix indirect use of fState after deleting it. Calling SetIcon(NULL) calls MakeEmpty() that tries to delete all manipulators on fState. So we may only delete fState after that call. Also reported as CID 10856.
|
#
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
|
#
e6da4edf |
|
10-Apr-2011 |
Stephan Aßmus <superstippi@gmx.de> |
Update window title with file name when it is known. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41213 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
|
#
3587919e |
|
31-Mar-2011 |
Stephan Aßmus <superstippi@gmx.de> |
Fixed possible dead-lock. The export thread invokes fDocument->CommandStack()->Save(); which triggers MainWindow::ObjectChanged() and locked the window, this could happen at a time where the application already has the MainWindow locked in _Open(), and tries to execute fDocument->MakeEmpty(), which in turn waits for the export thread to finish. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41152 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
cf4224b6 |
|
31-Mar-2011 |
Stephan Aßmus <superstippi@gmx.de> |
Use layout aware BMenuBars and do not shrink the left side of the interface below the menu bars minimum width. Resolves cut off strings with localization. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41149 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
560ff447 |
|
25-Mar-2011 |
Jonas Sundström <jonas@kirilla.com> |
Use resource definition files instead of DoCatalogs rule. Rename B_TRANSLATE_APP_NAME and related macros to the more generic B_TRANSLATE_SYSTEM_NAME, to also fits add-ons, folders, etc, and make 'System name' its standard context. Change CodyCam and PoorMan's app signatures to match the overall x-vnd.Haiku-App pattern. Some clean-up. Make SlideShowSaver build again. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41103 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
066522e8 |
|
14-Mar-2011 |
Jonas Sundström <jonas@kirilla.com> |
Localization changes. Use of B_TRANSLATE_APP_NAME(). Small cleanups. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40949 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c16bcdfc |
|
10-Feb-2011 |
Joachim Seemer <humdingerb@googlemail.com> |
Made some more strings localizable, removed some unnecessary localizations from CDPlayer. I hope everything's OK... git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40436 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
|
#
1812583c |
|
18-Dec-2010 |
Stephan Aßmus <superstippi@gmx.de> |
Fixed spacing in Style group layout. (ticket #6553) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39894 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
aed19c75 |
|
18-Dec-2010 |
Stephan Aßmus <superstippi@gmx.de> |
* Coding style cleanup. * Removed R5 versions of the code, since I don't believe other parts of Icon-O-Matic still compile on R5... * No functional changes. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39893 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
e80276e2 |
|
06-Sep-2010 |
Alex Wilson <yourpalal2@gmail.com> |
Fix some more regressions from r38512, Tracker prefs, Icon-O-Matic, Expander & Screenshot. Thanks to diver for finding these. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38538 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
fa8101b5 |
|
23-Jan-2010 |
Stephan Aßmus <superstippi@gmx.de> |
Remember the mouse snapping mode across sessions... fixes #4740. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35252 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
7974d3dc |
|
13-Jan-2010 |
Stephan Aßmus <superstippi@gmx.de> |
Patch by Humdinger: Updated Haiku apps to use sentence-case. What a huge undertaking... The files where I had to apply the patch manually (for mysterious reasons) have also gotten a whitespace cleanup. I've proof-read everything so hopefully there should be no problems. This should be the final part of #5169. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35049 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
b24366c6 |
|
17-Oct-2009 |
Stephan Aßmus <superstippi@gmx.de> |
Implemented focusing the Name property on pressing Command-E. (Ticket #2742) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33631 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
8a05db2d |
|
27-Jul-2009 |
Ryan Leavengood <leavengood@gmail.com> |
Icon-O-Matic: Snap to Grid, 64 x 64 is now set by default. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31837 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
5bd358ac |
|
27-Jul-2009 |
Stephan Aßmus <superstippi@gmx.de> |
Improved menu item labels. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31804 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
991547ef |
|
14-Oct-2008 |
Stephan Aßmus <superstippi@gmx.de> |
Patch by Artur Wyszynski: * Implemented BGradient, BGradientLinear, BGradientRadial, BGradientDiamond, BGradientConic and BGradientRadialFocus new Interface Kit classes. * Implemented all the (AGG-based) backend necessary in the app_server to render gradients (Painter, DrawingEngine) * app_server/View can convert a BGradient layout to screen coordinates. * Added BGradient methods of the Fill* methods in BView. * Implemented a test app and added it to the image as a demo. * Adopted Icon-O-Matic and libs/icon in order to avoid clashing with the new BGradient class. Re-use some parts where possible. Awesome work, Artur! Thanks a lot. Now a more modern looking GUI has just become much easier to implement! :-) TODO: * Remove the need to have gradient type twice in the app_server protocol. * Refactor some parts of the patch to remove duplicated code (Painter, DrawingEngine). * Adopt the BPicture protocol to know about BGradients. * Review some parts of the BArchivable implementation. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28109 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
60a6c9c3 |
|
14-Oct-2008 |
Stephan Aßmus <superstippi@gmx.de> |
Add short cuts for changing the snapping mode. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28100 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
9a1e8ef4 |
|
14-Oct-2008 |
François Revol <revol@free.fr> |
- factor out code - name color drops git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28075 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
8457f71f |
|
13-Oct-2008 |
François Revol <revol@free.fr> |
- handle color drops as a new style - handle dropped/pastes text as shapes with path (and style when with text_runs from StyledEdit) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28064 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
133f20b0 |
|
27-Jan-2008 |
Stephan Aßmus <superstippi@gmx.de> |
* fixed a little GUI layout issue git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23763 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
|
#
c4ce9e76 |
|
21-Sep-2007 |
Stephan Aßmus <superstippi@gmx.de> |
* the custom ScrollView supports B_NO_BORDER, B_PLAIN_BORDER and B_FANCY_BORDER and each side of the border can be turned off or on individually * -> cosmetic improvements git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22268 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
f10474fc |
|
21-Sep-2007 |
Stephan Aßmus <superstippi@gmx.de> |
* the main window is now using the min/max size from the layout system * added Min/MaxSize() implementations to PropertyListView and ScrollView, which fixes the instable layout (upper list views shrinking towards the top whenever views are added/removed in the property list) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22267 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
|
#
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
|
#
84153c7a |
|
21-Nov-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* various UI improvements and fixes git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19347 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
|
#
c2c1e4c7 |
|
05-Nov-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* added scroll view around canvas in Haiku version * used new layout features in StyleView for Haiku version git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19212 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
|
#
0e684ccf |
|
11-Jul-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* added a framework for affine transformations and manipulating them - Transformable: the base class with a nice interface to agg::trans_affine - ChannelTransform: inheriting from Transformable, keeping the affine parameters separate - TransformBox: inheriting from ChannelTransform and Manipulator - TransformShapesBox: transfering the TransformBox transformation onto multiple selected Shape objects * Shape inherits from Transformable * solved an important TODO in IconRenderer: a Gradient is now transformed along with a Shape TODO: Undo/Redo for manipulating the transformation git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18099 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2205ee09 |
|
10-Jul-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* added GradientControl which can edit a Gradient * filled out StyleView for configuring a Style * added SetGradientCommand for undo/redo editing a Gradient * Style::SetGradient() doesn't assume ownership of the Gradient passed in anymore git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18092 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
85623bad |
|
09-Jul-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* relayout of the GUI, you can start to take it serious :-) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18077 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
8b97f0dc |
|
09-Jul-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* editing the color of a style works now * added current color swatch view * clicking current color will open the color picker panel git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18076 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4215c452 |
|
08-Jul-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* implemented MoveTransformersCommand (so Transformers can be drag sorted now) * implemented RemoveTransformersCommand * implemented StyleListView (I promise, this is the last list view :-) * implemented adding new styles via the Style menu * implemented selecting the Style of the currently selected Shape git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18072 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
e2a31283 |
|
05-Jul-2006 |
Stephan Aßmus <superstippi@gmx.de> |
many improvements and bug fixes: * added VertexSource::SetLast() used by PathSource to call agg::path_storage::close_polygon(). The StrokeTransformer avoids this of course. Affine and PerspectiveTransformer forward this to their source. * TransformerItems watch their transformers for notifications * made VectorPath an IconObject * VectorPath no longer uses close_polygon() when converting to agg::path_storage to allow open strokes * added IconObjectListView which inherits from PropertyListView and allows to edit the properties of the last selected object from one of the other list views * fixed a couple bugs when adopting properties: - removed the Property* in the PropertyEditorView base class, and made GetProperty() virtual, as the base class pointer was not maintained and superfluous - delete the old PropertyObject in PropertyListView::SetTo when adopting the properties instead of the object whose properties were adopted... * added SetPropertiesCommand to allow Undo/Redo on changes of properties * Style is also an IconObject now (TODO: yet another list view for styles... :-) * Style watches its Gradient for notifications and builds and caches the color array now * removed generating the color array for each scanline in IconRenderer, so the performance is improved a lot * Shape watches its Transformers for notifications in order to trigger rerendering * StrokeTransformers adds a bunch of properties like stroke width, cap and join mode * StateView keyboard filter no longer steals keydown events from BTextViews * PropertyItemViews resize with the parent * refined the interface for PropertyListView for easier tracking of the changed properties in derived classes * added HasPendingNotifications() to Observable, so that IconObjects can track changes more easily when adopting a PropertyObject * the name is now part of any IconObject git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18045 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
bab183a2 |
|
04-Jul-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* Transformers have Name() now * added TransformerFactory to instantiate the various types via the GUI * added Transformer menu to main window * added TransformerListView that shows the Transformers applied to the selected Shape * implemented more powerful listener interface for Shape, used by TransformerListView git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18027 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
9b4fa889 |
|
03-Jul-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* the path list view shows check boxes now when a shape is selected, the marked paths are used in the shape * a new path is auto-selected * deselecting a shape still sends the selection message * PathSource does not call agg::path_storage::start_new_path() for each subpath... a move_to() is sufficient and makes sure the subpaths are rendered even :-) * updated NOTES * moved IconView into gui subfolder git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18021 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
8815fed6 |
|
02-Jul-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* MultipleManipulatorState invalidates the area of an added or removed Manipulator * added a menu bar to the MainWindow * undo/redo work from the menu now * one can add a new path object * the selected path will get focus for being manipulated (will be moved elsewhere later on...) TODO: allow to connect paths to shapes git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18004 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2ce8d31d |
|
30-Jun-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* added MoveShapesCommand and RemoveShapesCommand * ShapeContainerListener also gets the index at which a Shape was added * ShapeListView allows to drag-sort the shapes * ShapeListView allows to remove shapes (untested) * IconRenderer is independent of StyleManager now, the order of shapes is now correct * disabled clipping for now, since clear() ignores it (clearing will be changed for a checker background anyways) * added copy constructor to Shape (needs to clone the Transformers yet) * Selectable optionally knows the global Selection, so that one could use Selectable::SetSelected() and it would add itself to the selection (not yet used) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17995 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
cfda5dd7 |
|
30-Jun-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* work in progress on GUI classes - added IconView which just uses an IconRenderer to display a preview of the icon at a certain size - PathListView and ShapeListView (very much work in progress) * actually had the gamma correction applied in the wrong direction... now the anti-aliasing looks as smooth as planned * added SetName() and Name() to Shape and VectorPath... will be in a common base class later on git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17988 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
|
#
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
|
#
f71eec5f |
|
21-Jun-2006 |
Stephan Aßmus <superstippi@gmx.de> |
added three more Transformer implementations: * AffineTransformer - affine matrix transformation * PerspectiveTransformer - perspective transformation * ContourTransformer - extending the underlying VertexSource by a certain width (like "false bold" in text rendering) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17898 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0199e126 |
|
21-Jun-2006 |
Stephan Aßmus <superstippi@gmx.de> |
implemented a cool vertex transformation pipeline: * VertexSource virtualizes the AGG "VertexSource" interface * Transformer is an interface for building pipelines of VertexSource objects, each taking the output of the previous object and transforming it in some way * StrokeTransformer is currently the only implementation and converts a path into an outline stroke * PathSource implements the VertexSource interface on top of a VectorPath which it converts into an agg::path_storage and into an agg::conv_curve<agg::path_storage> to get smooth bezier curves * added VertexSource() to Shape class, which returns the last object of the transformation pipeline, it uses a PathSource for the root object * changed IconRenderer to use the new polymorphic VertexSource pipeline git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17896 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0f50089d |
|
20-Jun-2006 |
Stephan Aßmus <superstippi@gmx.de> |
implemented gradient rendering git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17892 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
f67876a0 |
|
21-Jun-2006 |
Stephan Aßmus <superstippi@gmx.de> |
some more "putting things together" for testing: * add a VectorPath to Document->Icon()->Paths() * add a Style to the global StyleManager * actually add a Shape to the Document->Icon()->Shapes() which uses the style and the path from above fleshing out of CanvasView: * use an offscreen bitmap/view to avoid flickering * use an IconRenderer to render the set Icon * implement support for zooming PathManipulator: * use the conversion from/to Canvas space and View space in CanvasView (I would have liked to solve this in a more generic way, so that PathManipulator didn't have to know CanvasView, but I was not very creative...) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17891 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
|
#
0cbb6c11eec74201f566920c90ebd2c5546b7aa6 |
|
09-May-2015 |
Stephan Aßmus <superstippi@gmx.de> |
Icon-O-Matic: Make GradientTransformable a BReferenceable * Switch to using support/Referenceable.h instead of using an older copy of this code. * Make GradientTransformable a BReferenceable and fix #12033.
|
#
991dadd6324f7b7a68e94743a39ebae789823228 |
|
16-Jun-2014 |
Humdinger <humdingerb@gmail.com> |
Make sure there's a space in front of B_UTF8_ELLIPSIS. As PulkoMandy said in hrev47388: C++11 safe and reads better.
|
#
f31a2f68cc708c0bca626ae6acb2cdd0086fc241 |
|
31-Dec-2013 |
Stephan Aßmus <superstippi@gmx.de> |
Icon-O-Matic: Forget fMessageAfterSave when FilePanel was cancelled. fMessageAfterSave capture what was to be done after a file panel was used. For example, picking up quitting the app after the user saved unsaved changes. The bug was that when trying to quit IOM, deciding to save, but then cancelling the file panel, the quitting stopped (as expected). But then the next time the document was saved, IOM quit unexpectedly.
|
#
60128b54b483dc49e67e08ebbca3f08f5c47edea |
|
04-May-2013 |
Jérôme Duval <jerome.duval@gmail.com> |
Icon-o-matic: some 64 bit fixes
|
#
776c58b2b56d8bcf33638a2ecb6c697f95a1cbf3 |
|
30-Dec-2012 |
Humdinger <humdingerb@gmail.com> |
Unifying the quit/save alerts. Wherever I found an alert prompting to save changes, I used the button labeling 'Cancel', 'Don't save', 'Save' with the first button left aligned, 2nd and 3rd right aligned. I added the shortcuts 'd' for 'Don't save, and 's' for 'Save' where not already set. The topic was discussed at http://permalink.gmane.org/gmane.os.haiku.devel/23244 The discussion died down, I hope I made changes everyone can live with.
|
#
ef4ed1b76b69c8775d46153501862fd4aa082dc8 |
|
15-Aug-2012 |
Humdinger <humdingerb@gmail.com> |
Replaced "Preferences"/"Options" with "Settings" Replaced remaining "Preferences" and "Options" with "Settings" as that is generally used for app settings instead of the system preferences found in the preference panels. Renamed Tracker's "Preferences" to "Tracker preferences" to be similar to the entries in the Deskbar and e.g. the Media replicant in the Deskbar tray.
|
#
aed35104852941f0f6f3d1dcc5338b5f337d0a3c |
|
05-Aug-2012 |
Humdinger <humdingerb@gmail.com> |
Close alerts with ESCAPE key. Added SetFlags(B_CLOSE_ON_ESCAPE) or SetShortcut(index, B_ESCAPE) to BAlerts depending if the result gets used later in the code, or if it's a one-button BAlert.
|
#
e4ef668253317fde1251f6c3130a71c4ace68600 |
|
06-May-2012 |
Stephan Aßmus <superstippi@gmx.de> |
Implemented drag&drop of shape items between I-O-M windows. * The ShapeListView also knows the PathContainer and StyleContainer * When constructing the drag message, also include a complete archive of the dragged shapes, bundled with archives for each included path and the style. * When handling the drop, and it came from another I-O-M window, exract the Shape archive bundle from the drag message. For the Style and the included Paths, try to find an existing Style and existing Paths and reference those in the added Shape(s) instead of adding duplicates.
|
#
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.
|
#
fe10dd20bf40a3c48d10d342197694c5e7a767d3 |
|
11-Dec-2011 |
Michael Lotz <mmlr@mlotz.ch> |
Fix indirect use of fState after deleting it. Calling SetIcon(NULL) calls MakeEmpty() that tries to delete all manipulators on fState. So we may only delete fState after that call. Also reported as CID 10856.
|
#
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
|
#
e6da4edf67fc804db7bae8d9dab32b5c3cdf91db |
|
10-Apr-2011 |
Stephan Aßmus <superstippi@gmx.de> |
Update window title with file name when it is known. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41213 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
|
#
3587919e026f5186d3fc9ba091736e7b13d73ce9 |
|
31-Mar-2011 |
Stephan Aßmus <superstippi@gmx.de> |
Fixed possible dead-lock. The export thread invokes fDocument->CommandStack()->Save(); which triggers MainWindow::ObjectChanged() and locked the window, this could happen at a time where the application already has the MainWindow locked in _Open(), and tries to execute fDocument->MakeEmpty(), which in turn waits for the export thread to finish. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41152 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
cf4224b6dac32583861b29b89a5819b863fd008c |
|
31-Mar-2011 |
Stephan Aßmus <superstippi@gmx.de> |
Use layout aware BMenuBars and do not shrink the left side of the interface below the menu bars minimum width. Resolves cut off strings with localization. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41149 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
560ff4478d5c85455ea3e5ed5e392ef93132d545 |
|
25-Mar-2011 |
Jonas Sundström <jonas@kirilla.com> |
Use resource definition files instead of DoCatalogs rule. Rename B_TRANSLATE_APP_NAME and related macros to the more generic B_TRANSLATE_SYSTEM_NAME, to also fits add-ons, folders, etc, and make 'System name' its standard context. Change CodyCam and PoorMan's app signatures to match the overall x-vnd.Haiku-App pattern. Some clean-up. Make SlideShowSaver build again. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41103 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
066522e87b5aa9f25957e3f419ac3a0565edbb4f |
|
14-Mar-2011 |
Jonas Sundström <jonas@kirilla.com> |
Localization changes. Use of B_TRANSLATE_APP_NAME(). Small cleanups. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40949 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c16bcdfcb779bf4d85a8aceb10602581d3de104f |
|
10-Feb-2011 |
Joachim Seemer <humdingerb@googlemail.com> |
Made some more strings localizable, removed some unnecessary localizations from CDPlayer. I hope everything's OK... git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40436 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
|
#
1812583c059ac55d2be2b15970ccbd5ba0460efb |
|
18-Dec-2010 |
Stephan Aßmus <superstippi@gmx.de> |
Fixed spacing in Style group layout. (ticket #6553) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39894 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
aed19c751be5ff477644c4dfb2e3281af0856ef4 |
|
18-Dec-2010 |
Stephan Aßmus <superstippi@gmx.de> |
* Coding style cleanup. * Removed R5 versions of the code, since I don't believe other parts of Icon-O-Matic still compile on R5... * No functional changes. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39893 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
e80276e2d797269d46da99eecad6b2cc97d15141 |
|
06-Sep-2010 |
Alex Wilson <yourpalal2@gmail.com> |
Fix some more regressions from r38512, Tracker prefs, Icon-O-Matic, Expander & Screenshot. Thanks to diver for finding these. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38538 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
fa8101b56edf7c44e2bc28fbe2ee66175bbbbde5 |
|
23-Jan-2010 |
Stephan Aßmus <superstippi@gmx.de> |
Remember the mouse snapping mode across sessions... fixes #4740. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35252 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
7974d3dcf39ce78e5885b481eee12e561ad6e096 |
|
13-Jan-2010 |
Stephan Aßmus <superstippi@gmx.de> |
Patch by Humdinger: Updated Haiku apps to use sentence-case. What a huge undertaking... The files where I had to apply the patch manually (for mysterious reasons) have also gotten a whitespace cleanup. I've proof-read everything so hopefully there should be no problems. This should be the final part of #5169. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35049 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
b24366c6d8326a768919dde48bb36c0cab131702 |
|
17-Oct-2009 |
Stephan Aßmus <superstippi@gmx.de> |
Implemented focusing the Name property on pressing Command-E. (Ticket #2742) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33631 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
8a05db2d0ec52aba8432c80283bb72ddaa6978f7 |
|
27-Jul-2009 |
Ryan Leavengood <leavengood@gmail.com> |
Icon-O-Matic: Snap to Grid, 64 x 64 is now set by default. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31837 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
5bd358ac3d75b196e01c945992a26dd3c78e478f |
|
27-Jul-2009 |
Stephan Aßmus <superstippi@gmx.de> |
Improved menu item labels. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31804 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
991547ef6c1fca650f0fba855206296ef54bc441 |
|
14-Oct-2008 |
Stephan Aßmus <superstippi@gmx.de> |
Patch by Artur Wyszynski: * Implemented BGradient, BGradientLinear, BGradientRadial, BGradientDiamond, BGradientConic and BGradientRadialFocus new Interface Kit classes. * Implemented all the (AGG-based) backend necessary in the app_server to render gradients (Painter, DrawingEngine) * app_server/View can convert a BGradient layout to screen coordinates. * Added BGradient methods of the Fill* methods in BView. * Implemented a test app and added it to the image as a demo. * Adopted Icon-O-Matic and libs/icon in order to avoid clashing with the new BGradient class. Re-use some parts where possible. Awesome work, Artur! Thanks a lot. Now a more modern looking GUI has just become much easier to implement! :-) TODO: * Remove the need to have gradient type twice in the app_server protocol. * Refactor some parts of the patch to remove duplicated code (Painter, DrawingEngine). * Adopt the BPicture protocol to know about BGradients. * Review some parts of the BArchivable implementation. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28109 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
60a6c9c3316dbf6701f0b4bd84e04cd75019f3a8 |
|
14-Oct-2008 |
Stephan Aßmus <superstippi@gmx.de> |
Add short cuts for changing the snapping mode. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28100 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
9a1e8ef4ceb00f6d9a68e0af5c34c63a4ec8b515 |
|
14-Oct-2008 |
François Revol <revol@free.fr> |
- factor out code - name color drops git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28075 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
8457f71f08cfc413779e81ae21be7f0d28714407 |
|
13-Oct-2008 |
François Revol <revol@free.fr> |
- handle color drops as a new style - handle dropped/pastes text as shapes with path (and style when with text_runs from StyledEdit) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28064 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
133f20b00b1a67ad27403260844f30d9cf79eac9 |
|
27-Jan-2008 |
Stephan Aßmus <superstippi@gmx.de> |
* fixed a little GUI layout issue git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23763 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
|
#
c4ce9e76075d8a9b4a380cedfa790739c7d03585 |
|
21-Sep-2007 |
Stephan Aßmus <superstippi@gmx.de> |
* the custom ScrollView supports B_NO_BORDER, B_PLAIN_BORDER and B_FANCY_BORDER and each side of the border can be turned off or on individually * -> cosmetic improvements git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22268 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
f10474fc0b77e23e362e4e6670dfcbbbba4210ea |
|
21-Sep-2007 |
Stephan Aßmus <superstippi@gmx.de> |
* the main window is now using the min/max size from the layout system * added Min/MaxSize() implementations to PropertyListView and ScrollView, which fixes the instable layout (upper list views shrinking towards the top whenever views are added/removed in the property list) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22267 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
|
#
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
|
#
84153c7a0c3a6df07e996ca265884ec5308a1c2a |
|
21-Nov-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* various UI improvements and fixes git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19347 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
|
#
c2c1e4c72582ca478af6357bf8ba0febe563418b |
|
05-Nov-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* added scroll view around canvas in Haiku version * used new layout features in StyleView for Haiku version git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19212 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
|
#
0e684ccfed8462d5e8647473765eafcf970899f6 |
|
11-Jul-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* added a framework for affine transformations and manipulating them - Transformable: the base class with a nice interface to agg::trans_affine - ChannelTransform: inheriting from Transformable, keeping the affine parameters separate - TransformBox: inheriting from ChannelTransform and Manipulator - TransformShapesBox: transfering the TransformBox transformation onto multiple selected Shape objects * Shape inherits from Transformable * solved an important TODO in IconRenderer: a Gradient is now transformed along with a Shape TODO: Undo/Redo for manipulating the transformation git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18099 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2205ee09148c5472af4cecc2b4cc15a65d643c1d |
|
10-Jul-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* added GradientControl which can edit a Gradient * filled out StyleView for configuring a Style * added SetGradientCommand for undo/redo editing a Gradient * Style::SetGradient() doesn't assume ownership of the Gradient passed in anymore git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18092 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
85623bad057fb4912f355ac5a4dde05fbd471b10 |
|
09-Jul-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* relayout of the GUI, you can start to take it serious :-) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18077 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
8b97f0dcafbbb89ef8f371e5138f2cebcc28304f |
|
09-Jul-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* editing the color of a style works now * added current color swatch view * clicking current color will open the color picker panel git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18076 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4215c452a4a92759e04b8c221016fea48531f1bc |
|
08-Jul-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* implemented MoveTransformersCommand (so Transformers can be drag sorted now) * implemented RemoveTransformersCommand * implemented StyleListView (I promise, this is the last list view :-) * implemented adding new styles via the Style menu * implemented selecting the Style of the currently selected Shape git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18072 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
e2a31283dde5ae5dfc14c3d2075e0d17cf392892 |
|
05-Jul-2006 |
Stephan Aßmus <superstippi@gmx.de> |
many improvements and bug fixes: * added VertexSource::SetLast() used by PathSource to call agg::path_storage::close_polygon(). The StrokeTransformer avoids this of course. Affine and PerspectiveTransformer forward this to their source. * TransformerItems watch their transformers for notifications * made VectorPath an IconObject * VectorPath no longer uses close_polygon() when converting to agg::path_storage to allow open strokes * added IconObjectListView which inherits from PropertyListView and allows to edit the properties of the last selected object from one of the other list views * fixed a couple bugs when adopting properties: - removed the Property* in the PropertyEditorView base class, and made GetProperty() virtual, as the base class pointer was not maintained and superfluous - delete the old PropertyObject in PropertyListView::SetTo when adopting the properties instead of the object whose properties were adopted... * added SetPropertiesCommand to allow Undo/Redo on changes of properties * Style is also an IconObject now (TODO: yet another list view for styles... :-) * Style watches its Gradient for notifications and builds and caches the color array now * removed generating the color array for each scanline in IconRenderer, so the performance is improved a lot * Shape watches its Transformers for notifications in order to trigger rerendering * StrokeTransformers adds a bunch of properties like stroke width, cap and join mode * StateView keyboard filter no longer steals keydown events from BTextViews * PropertyItemViews resize with the parent * refined the interface for PropertyListView for easier tracking of the changed properties in derived classes * added HasPendingNotifications() to Observable, so that IconObjects can track changes more easily when adopting a PropertyObject * the name is now part of any IconObject git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18045 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
bab183a27305174861a27a136599b863d22318c7 |
|
04-Jul-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* Transformers have Name() now * added TransformerFactory to instantiate the various types via the GUI * added Transformer menu to main window * added TransformerListView that shows the Transformers applied to the selected Shape * implemented more powerful listener interface for Shape, used by TransformerListView git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18027 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
9b4fa889fd63d9f22bffcf743dc22f25eef8ebd6 |
|
03-Jul-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* the path list view shows check boxes now when a shape is selected, the marked paths are used in the shape * a new path is auto-selected * deselecting a shape still sends the selection message * PathSource does not call agg::path_storage::start_new_path() for each subpath... a move_to() is sufficient and makes sure the subpaths are rendered even :-) * updated NOTES * moved IconView into gui subfolder git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18021 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
8815fed657af2ded0928525f76d5249c65a936a9 |
|
02-Jul-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* MultipleManipulatorState invalidates the area of an added or removed Manipulator * added a menu bar to the MainWindow * undo/redo work from the menu now * one can add a new path object * the selected path will get focus for being manipulated (will be moved elsewhere later on...) TODO: allow to connect paths to shapes git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18004 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2ce8d31d0911191d25b034aa0aa4a3091dfa8c56 |
|
30-Jun-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* added MoveShapesCommand and RemoveShapesCommand * ShapeContainerListener also gets the index at which a Shape was added * ShapeListView allows to drag-sort the shapes * ShapeListView allows to remove shapes (untested) * IconRenderer is independent of StyleManager now, the order of shapes is now correct * disabled clipping for now, since clear() ignores it (clearing will be changed for a checker background anyways) * added copy constructor to Shape (needs to clone the Transformers yet) * Selectable optionally knows the global Selection, so that one could use Selectable::SetSelected() and it would add itself to the selection (not yet used) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17995 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
cfda5dd75bf4c1cae5b1aa808f37b59da114be26 |
|
30-Jun-2006 |
Stephan Aßmus <superstippi@gmx.de> |
* work in progress on GUI classes - added IconView which just uses an IconRenderer to display a preview of the icon at a certain size - PathListView and ShapeListView (very much work in progress) * actually had the gamma correction applied in the wrong direction... now the anti-aliasing looks as smooth as planned * added SetName() and Name() to Shape and VectorPath... will be in a common base class later on git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17988 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
|
#
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
|
#
f71eec5f41e594b7964894aa6e45c7242202738e |
|
21-Jun-2006 |
Stephan Aßmus <superstippi@gmx.de> |
added three more Transformer implementations: * AffineTransformer - affine matrix transformation * PerspectiveTransformer - perspective transformation * ContourTransformer - extending the underlying VertexSource by a certain width (like "false bold" in text rendering) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17898 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0199e126e25c794f4a3ec7765a29a49d4bbbabcb |
|
21-Jun-2006 |
Stephan Aßmus <superstippi@gmx.de> |
implemented a cool vertex transformation pipeline: * VertexSource virtualizes the AGG "VertexSource" interface * Transformer is an interface for building pipelines of VertexSource objects, each taking the output of the previous object and transforming it in some way * StrokeTransformer is currently the only implementation and converts a path into an outline stroke * PathSource implements the VertexSource interface on top of a VectorPath which it converts into an agg::path_storage and into an agg::conv_curve<agg::path_storage> to get smooth bezier curves * added VertexSource() to Shape class, which returns the last object of the transformation pipeline, it uses a PathSource for the root object * changed IconRenderer to use the new polymorphic VertexSource pipeline git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17896 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0f50089d872ca13b634c2c7f5d9b7200d79c77ea |
|
20-Jun-2006 |
Stephan Aßmus <superstippi@gmx.de> |
implemented gradient rendering git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17892 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
f67876a0c5b91684c175f3dc7989537c35c23f55 |
|
21-Jun-2006 |
Stephan Aßmus <superstippi@gmx.de> |
some more "putting things together" for testing: * add a VectorPath to Document->Icon()->Paths() * add a Style to the global StyleManager * actually add a Shape to the Document->Icon()->Shapes() which uses the style and the path from above fleshing out of CanvasView: * use an offscreen bitmap/view to avoid flickering * use an IconRenderer to render the set Icon * implement support for zooming PathManipulator: * use the conversion from/to Canvas space and View space in CanvasView (I would have liked to solve this in a more generic way, so that PathManipulator didn't have to know CanvasView, but I was not very creative...) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17891 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
|