Opened 15 years ago

Last modified 13 years ago

#4545 closed enhancement

Add IconsUtils.h as public header — at Version 8

Reported by: stargater Owned by: axeld
Priority: normal Milestone:
Component: Kits/Interface Kit Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Platform: All

Description (last modified by mmadia)

In /Development/Header/be/InterfaceKit is IconsUtils.h missing.

Note: "IconUtils is experimental API, therefore it will stay private in R1" from comment:7

Change History (8)

comment:1 by phoudoin, 15 years ago

Which also means that libicon.a should be merged in libbe.so, then.

comment:2 by stippi, 15 years ago

That should already be the case. I don't anticipate the BIconUtils interface would change in the near future, so perhaps we can indeed make the API public. However, please note that all the other icon APIs are working with vector icons. So it isn't strictly necessary to use BIconUtils. What do you need it for, stargater?

comment:3 by stargater, 15 years ago

I need it for pairs game and my new screensaver for Haiku ( is send it tu you), i think when developer need HVIF for here apps, then need IconUtils.h and this is not in the alpha 1.

in reply to:  3 comment:4 by VinDuv, 15 years ago

Replying to stargater:

I need it for pairs game and my new screensaver for Haiku ( is send it tu you)

I'm currently building a screensaver which uses Haiku icons, I hope we didn't have the same idea ;-p
If you have integrated your code to the Haiku build system, using IconsUtils.h is pretty straightforward. Here is what I used:

SubDir HAIKU_TOP src add-ons screen_savers fallingicons ;

UseLibraryHeaders icon ;

ScreenSaver FallingIcons :
	ConfigView.cpp FallingIconsSaver.cpp FallingIcon.cpp : 
	be libscreensaver.so libicon.a $(TARGET_LIBSUPC++)
;

comment:5 by stargater, 15 years ago

in the haiku trunk, we have no problem, i used UseLiberyHeaders icon too, but what is when developer code outsinde from haiku trunk (source)? So then cant use HVIF for the apps. P.S: oh i have the same idear, i have my code send to Karsten and Stephan, i hope hi put into the haiku trunk, but my icons a drop on screen, i maild my source to you.

comment:6 by Pete, 15 years ago

Component: - GeneralUser Interface

May I add my support to this request? Actually I think it ought to have some fairly high priority, as vector icons are supposed to be basic to Haiku.

I've been adding vector icon support to PatchBay (as midi_server now exports them) and to do it in the standard /boot/develop environment I had to link IconUtils.h into the header tree from the Haiku source tree. I have this latter available, but app developers shouldn't be required to. And as PatchBay should definitely count as a generally-modifiable program, there shouldn't be any special requirements other than the standard environment. (Philippe Houdoin has put PatchBay in the .../test/kits.. hierarchy for current convenience, but the source is Be Sample Code so should remain generally available.)

Also, can it be assumed that libicon.a is permanently part of libbe? I'm told it is 'experimental' but it seems fairly solid [provided one feeds it the right data! (:-/)].

comment:7 by axeld, 15 years ago

Component: User InterfaceKits/Interface Kit

IconUtils is experimental API, therefore it will stay private in R1. The layout engine is also considered experimental at this point, though.

I would wait at least until we support PNG icons before thinking about making that API public.

comment:8 by mmadia, 15 years ago

Description: modified (diff)
Milestone: R1
Summary: Missing header <IconsUtils.h>Add IconsUtils.h as public header
Type: bugenhancement
Version: R1/alpha1R1/Development

Adjusting ticket, since IconUtils isn't planned to go public before R1.

Note: See TracTickets for help on using tickets.