[openbeos] Re: New icons

  • From: François Revol <revol@xxxxxxx>
  • To: openbeos@xxxxxxxxxxxxx
  • Date: Thu, 30 Jan 2003 23:17:42 +0100 (CET)

En réponse à DarkWyrm <bpmagic@xxxxxxxxxxxxxxx>:

> >Which of course is incompatible with the Dano/Zeta headers :^)
> Not to be antagonistic, but it doesn't make much difference, anyway.
> Dano/
> Zeta breaks binary compatibility with R5 because of how they are
> defined. R5 
> uses an enum with integer values. Dano uses global const char *'s. Our

False:
[revol@patrick /boot/home]$ grep 'B_[A-Z_]*COLOR = ' /Exp\ \ \ 
Nov-15-01/develop/headers/be/interface/InterfaceDefs.h
        B_PANEL_BACKGROUND_COLOR = 1,
        B_PANEL_TEXT_COLOR = 10,
        B_DOCUMENT_BACKGROUND_COLOR = 11,
        B_DOCUMENT_TEXT_COLOR = 12,
        B_CONTROL_BACKGROUND_COLOR = 13,
        B_CONTROL_TEXT_COLOR = 14,
        B_CONTROL_BORDER_COLOR = 15,
        B_CONTROL_HIGHLIGHT_COLOR = 16,
        B_NAVIGATION_BASE_COLOR = 4,
        B_NAVIGATION_PULSE_COLOR = 17,
        B_SHINE_COLOR = 18,
        B_SHADOW_COLOR = 19,
        B_MENU_BACKGROUND_COLOR = 2,
        B_MENU_SELECTED_BACKGROUND_COLOR = 6,
        B_MENU_ITEM_TEXT_COLOR = 7,
        B_MENU_SELECTED_ITEM_TEXT_COLOR = 8,
        B_MENU_SELECTED_BORDER_COLOR = 9,
        B_TOOLTIP_BACKGROUND_COLOR = 20,
        B_TOOLTIP_TEXT_COLOR = 21,
        B_SUCCESS_COLOR = 100,
        B_FAILURE_COLOR = 101,
        B_KEYBOARD_NAVIGATION_COLOR = B_NAVIGATION_BASE_COLOR,
        B_MENU_SELECTION_BACKGROUND_COLOR = B_MENU_SELECTED_BACKGROUND_COLOR,
        B_DESKTOP_COLOR = 5,
        B_WINDOW_TAB_COLOR = 3,
        B_RANDOM_COLOR = 0x80000000,
It *both* has the string based ui_color() and the old one, but with new values.

rgb_color       ui_color(color_which which);
rgb_color       ui_color(const char* name);

> new 
> values, while utilized by no one else at this point, will not break BC.
False again :P

> If 
> you want source compatibility with ui_color, it's probably going to take
> a 
> little bit of playing around no matter what we do because of what Be did
> with 
> Dano. I guess it's time for me to join BeUnited and write a standard.
Sure.

The string based version is unneed IMO
but the int one should be kept compatible with Dano if possible.

> 
> >François.
> >P.S. how would I #ifdef such a thing ? can't #ifdef on enums
> Probably #ifdef the whole enum definition would be the only way to go
> AFAIK.

enum isn't a preprocessor directive, it doesn't even see it.


François.

Other related posts: