use Icon-O-Matic to create or edit icons
note to axeld: I'm messing with it right now, hope you're sleeping
and not messing with it too! :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19308 a95241bf-73f2-0310-859d-f6bbb57e9c96
* 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
there is some unfortunate code duplication in AppFileInfo,
because it cannot use BMimeType/BNode alone to retrieve icons,
now it works closer to the code in BIconUtils, this fixes
R5 icons not displaying for other icon sizes
* implemented a bilinear scaling function, I don't know if
it is very fast, but I hope it is reasonable. Now that I
see the results though, I wonder if R5 icons should be
scaled with nearest neighbor instead...
* corrected a small bug in the icon format stuff...
7 bit coords are -32-+95, not 96
* improved comment for BIconUtils function
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19302 a95241bf-73f2-0310-859d-f6bbb57e9c96
Now if the Backgrounds preferences app is already running clicking the
"Set Background..." button will activate it. Previously this was ignored
because the app was launched without checking the return code from be_roster.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19301 a95241bf-73f2-0310-859d-f6bbb57e9c96
to it - it also inherits all the features like drag&drop, of course.
* IconView now inherits from BControl instead of BView, might need some more
work to properly handle the invocation message stuff, though.
* The "Remove Icon" menu item was always enabled, no matter if there was an
icon or not; also it was not properly detected wether or not a MIME type
had an icon when building the menu.
* Dragging in MIME type mode now works as well.
* Added some getter methods to the IconView to retrieve the data it has.
* Some other cleanup, like adding missing consts.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19299 a95241bf-73f2-0310-859d-f6bbb57e9c96
Untested actually, but FileTypesWindow's TypeIconView will be merged to this
one soon.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19298 a95241bf-73f2-0310-859d-f6bbb57e9c96
identifier: note, this reveals a) an incompatibility between R5 and Haiku
with regards to drawing rects with a pen size != 1, b) a drawing bug in
that same case in non 32-bit modes - if you have time, Stippi... :-)
* If the icon view is bound to a file, it will no longer accept that specific
file as a drop target.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19294 a95241bf-73f2-0310-859d-f6bbb57e9c96
or the current icon be deleted (using the delete key).
* Drag&drop between IconViews should now also work as expected for all icon
types (only the large icon was taken into consideration before).
* Improved error handling in the Icon::CopyTo() methods
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19293 a95241bf-73f2-0310-859d-f6bbb57e9c96
by type, not type name (ie. "video/..." vs. "AVI").
* The type list is now using a DropTargetListView and will take over the file types
of any files you drop on it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19291 a95241bf-73f2-0310-859d-f6bbb57e9c96
* The extension list is now using this list view: when you drop some files on
it, it will now take over their extension into the list.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19290 a95241bf-73f2-0310-859d-f6bbb57e9c96
system is shutting down.
For the protocol between the Registrar and input_server I decided to just
re-use the message constant already defined in the input server headers
(SYSTEM_SHUTTING_DOWN.)
The code in the input server to notify the InputServerDevices about the
shutdown was pretty trivial.
For the code in the Registrar I'll let some gurus review it to make sure it
fits in with the rest of the code.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19289 a95241bf-73f2-0310-859d-f6bbb57e9c96
of Mesa framework (src/kits/opengl/mesa) and make
clearer here live the Mesa Software Renderer add-on for
Haiku's OpenGL stack.
* Renamed the class for the same reason.
* Changed the string returned for GL_RENDERER to
help sorting out Haiku's renderer add-on(s) from
Mesa3D BeOS ports's monolithic libGL.so renderer.
* Make the renderer context current if none is already. This fix
the need in GLInfo to call LockGL() before calling any
glGet*() calls, when it was not necessary under R5
(and Mesa3D beos ports)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19287 a95241bf-73f2-0310-859d-f6bbb57e9c96
- supports drag&drop from icons (only tested for non-vector icons yet)
- allows to remove/edit/add icons (there is still need for support in Icon-O-Matic
for this to work completely)
- has a mode where it stores the changed icon data in an object rather than
directly to disk; this object can maintain all BeOS icon types
- reacts to live updates from file icons
- supports different view sizes (for later or uses in other apps)
* works again on BeOS (it crashed before because of a BeOS "feature").
* in the Application window, the "supported types" listview will now be enlarged
with the window instead of the long version description.
* To compensate for that, the latter now shows a scroll bar.
* Application delivered supported type icons are now shown as well, and can
be edited - they're not yet saved, though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19279 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Added BBitmap(const BBitmap&, uint32 flags) constructor as found in Dano/Zeta.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19270 a95241bf-73f2-0310-859d-f6bbb57e9c96
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
various places. Implemented SetLineMode op for BPicture, fixed shape
drawing (I accidentally broke it in the previous commit).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19264 a95241bf-73f2-0310-859d-f6bbb57e9c96
* STL allocations are guarded by a try/catch block.
* As in RecentApps, Get() did not properly populate an error condition.
* Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19263 a95241bf-73f2-0310-859d-f6bbb57e9c96
added a user friendly mode for listdev: it works for PCI
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19262 a95241bf-73f2-0310-859d-f6bbb57e9c96
* The application signatures now preserve the case; this is better for querying
after the app, and has no disadvantage.
* Adding an item to the list is now guarded by a try/catch block - allocations
can fail, and the registrar shouldn't get down because of this. We need to
proof-read all of registrar (and storage kit) for this :-/
* Get() did not populate an eventual error while adding items to the provided
list (such as B_NO_MEMORY).
* Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19261 a95241bf-73f2-0310-859d-f6bbb57e9c96
* added a generic syscall for device_manager
it enables to iterate the device manager tree from userland
* the listdev tool is now using it: it's still incomplete as it only dumps nodes and attributes
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19260 a95241bf-73f2-0310-859d-f6bbb57e9c96
Locking GL context is better, even if it's not mandatory under Be's R5 OpenGL stack.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19259 a95241bf-73f2-0310-859d-f6bbb57e9c96