Commit Graph

18399 Commits

Author SHA1 Message Date
Stephan Aßmus
61e693903c * invented a small protocol for use by FileTypes when it wants to
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
2006-11-17 03:04:08 +00:00
Stephan Aßmus
774831e7c2 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
2006-11-17 01:37:36 +00:00
Oliver Tappe
6cc8eecf5e * fixed my own stupid bug that did not reliably check for the legacy compiler
version


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19306 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-16 19:52:27 +00:00
Axel Dörfler
c095e877d8 Fixed building the image.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19305 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-16 13:02:40 +00:00
Axel Dörfler
a0c952adf2 Fixed two warnings (caused by the layout extensions).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19304 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-16 13:02:12 +00:00
Stephan Aßmus
1584cff13b * fixed off-by-one error in scaling algo
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19303 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-16 10:16:59 +00:00
Stephan Aßmus
9f5078060d * fixed a couple of remaining issues with vector icons,
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
2006-11-16 04:53:24 +00:00
Ryan Leavengood
6f095d6a03 Fixed a small bug I found in the Screen preferences:
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
2006-11-16 00:34:25 +00:00
Stephan Aßmus
c8a976202c * added new icon specific verions of GetIcon and SetIcon
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19300 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-16 00:12:15 +00:00
Axel Dörfler
7cb11339a0 * TypeIconView now inherits from IconView and only adds the icon source label
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
2006-11-15 20:22:46 +00:00
Axel Dörfler
b724cb6408 IconView can now also be set to a MIME type instead of a file or a buffer.
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
2006-11-15 18:39:30 +00:00
Axel Dörfler
93ced9a11c The dragged icon is now slightly transparent.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19297 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-15 17:56:46 +00:00
Axel Dörfler
035f2c2a4d When dragging an icon into an icon view that gets its icon from its MIME type,
the vector icon is now retrieved as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19296 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-15 17:49:22 +00:00
Axel Dörfler
8c34572bab Somehow the vector icon version of GetIconForType() was missing.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19295 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-15 17:37:26 +00:00
Axel Dörfler
5e0acbb2fb * Now that the icons are keyboard navigable, we need a different drop target
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
2006-11-15 16:00:08 +00:00
Axel Dörfler
745e7694e5 * The IconView is now keyboard navigable, and can be invoked (via the enter key),
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
2006-11-15 15:23:24 +00:00
Axel Dörfler
f483286d59 Application icons and supported type icons are now also saved.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19292 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-15 14:26:10 +00:00
Axel Dörfler
6e78183a77 * The application type window did not sort the types correctly (they were ordered
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
2006-11-15 10:48:52 +00:00
Axel Dörfler
1415b63512 * Added a simple list view that can indicate that it accepts a dragged object.
* 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
2006-11-15 10:32:20 +00:00
Ryan Leavengood
499aacdd0a Fixed bugs #177 and #180 by adding code to notify the input_server that the
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
2006-11-15 08:19:12 +00:00
Stefano Ceccherini
aadf8a88bb invalidate a bit more
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19288 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-14 23:01:56 +00:00
Philippe Houdoin
7a459c2db3 * Renamed the folder to avoid confusion about the location
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
2006-11-14 22:54:37 +00:00
Stephan Aßmus
1f64dd4cf1 shut up annoying error message (TIFFTranslator was printing
"Not a TIFF file..." for every file thrown at it)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19286 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-14 21:24:37 +00:00
Jérôme Duval
07d5767dec get_class_info takes a size argument
listdev displays scsi devices


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19285 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-14 19:37:11 +00:00
Jérôme Duval
5ac11417e5 fix gcc4 build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19284 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-14 18:34:21 +00:00
Axel Dörfler
00cf1f4671 Moved icon_for_type() to IconView.cpp.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19283 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-14 18:26:10 +00:00
Axel Dörfler
7f721ea14d Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19282 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-14 18:08:53 +00:00
Axel Dörfler
7837924c49 * Fixed warnings.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19281 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-14 17:25:56 +00:00
Stefano Ceccherini
14fd0fa766 Just like the tiff translator...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19280 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-14 16:12:35 +00:00
Axel Dörfler
0b0ff90fa0 * Extended the IconView quite a bit to support what we need:
- 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
2006-11-14 16:11:56 +00:00
Stefano Ceccherini
042d96cb1d resize the BMenuField to leave enough space. Actually we should use a
BOptionPopUp instead


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19278 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-14 15:56:22 +00:00
Stefano Ceccherini
3f4cc718eb Some more updates from Marc Flerackers. Text drawing should work
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19277 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-14 14:15:03 +00:00
Stephan Aßmus
5770ac4cd8 * spelling mistake corretion, thanks Jérôme!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19276 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-13 22:00:16 +00:00
Jérôme Duval
cdbfea10c0 uses constants
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19275 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-13 21:00:48 +00:00
Stephan Aßmus
1eff9cfc8c * spotted just a few mistakes in the revised version (btw, thanks DarkWyrm!)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19274 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-13 20:41:10 +00:00
Jérôme Duval
91b1b84abd factorized pcihdr.h search code
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19273 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-13 20:31:04 +00:00
Stefano Ceccherini
27f1bb5338 fixed warnings when compiled with gcc4
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19272 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-13 19:59:56 +00:00
Jérôme Duval
01bec7ca47 improved display
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19271 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-13 19:35:16 +00:00
Axel Dörfler
fdd0f4ce10 * Made copy constructor and assign public and implemented them.
* 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
2006-11-13 18:56:44 +00:00
Stefano Ceccherini
7022e7903a added license
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19269 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-13 07:28:19 +00:00
Jérôme Duval
54cbe07e63 now uses the generated pcihdr.h
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19268 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-12 23:53:38 +00:00
Jérôme Duval
94acebc5d2 fix the build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19267 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-12 23:25:40 +00:00
Stephan Aßmus
4fac07a088 * 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
2006-11-12 22:24:39 +00:00
Stefano Ceccherini
7743580815 Added a svg file to be able to demo the svg2picture view
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19265 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-12 20:01:59 +00:00
Stefano Ceccherini
420fe80e5c Moved picture data writing to its own class, thus simplifying code in
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
2006-11-12 20:00:36 +00:00
Axel Dörfler
fd5c02b25c * The recent files list now also preserves the case of the MIME strings.
* 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
2006-11-12 17:46:34 +00:00
Jérôme Duval
01b06fcc52 commented raw type handling, as it doesn't work for now
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
2006-11-12 17:22:29 +00:00
Axel Dörfler
ddacfc7ff0 * The recent app list now filters out Tracker & Deskbar, as reported by Korli.
* 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
2006-11-12 17:16:13 +00:00
Jérôme Duval
bef4e1fc77 * each device manager node has now an autogenerated identifier
* 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
2006-11-12 15:28:09 +00:00
Philippe Houdoin
2177785876 Allowed GLInfo to build for BeOS too.
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
2006-11-12 15:04:52 +00:00