Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Where does the color for "Button Face" come from?

976 views
Skip to first unread message

JG

unread,
May 12, 2004, 4:08:50 PM5/12/04
to
Hi,

question: When you select the "button face" color, where does PowerBuilder
go to get the RGB value to use? Is this saved in the Registry somewhere?
Or is this a hardcoded value in PB and/or Windows?

I realize one can change different settings via the Display Properties
window. However I do not see an entry named "Button Face".

Any info would be appreciated...

regards,
joe


Mike Kruchten

unread,
May 12, 2004, 4:34:38 PM5/12/04
to
I kept the following post from 2002 as an explanation. Following the post is
the numbers I got after exporting an object with the various colors set.

Mike Kruchten

------------------------------------------------------------------
They are both right, but Roy is "more right" The windows color is
specified by a 4 byte word. The lower 24 bits specify the
combinations of Red Green and Blue components. The upper 8 bits
specify a custom color. If any of the upper bits are set the lower 24
are ignored. Here is the full list:

2^1 = Red
2^2 = Red
2^3 = Red
2^4 = Red
2^5 = Red
2^6 = Red
2^7 = Red
2^8 = Red

2^9 = Green
2^10 = Green
2^11 = Green
2^12 = Green
2^13 = Green
2^14 = Green
2^15 = Green
2^16 = Green

2^17 = Blue
2^18 = Blue
2^19 = Blue
2^20 = Blue
2^21 = Blue
2^22 = Blue
2^23 = Blue
2^24 = Blue

2^25 = Window Text
2^26 = buttonface
2^27 = scrollbar background
2^28 = app. workspace
2^29 = transparent
2^30 = Window Background
2^31 = unused
2^32 = unused


Boris Gasin [TeamSybase]
mailto:bga...@dynamictechgroup.com

-----------------------------------------------------

window_background = 1073741824
window_text = 33554432
application_workspace = 268435456
button_face = 67108864
scrollbar = 134217728
desktop = 134217729
active_title_bar = 134217730
inactive_title_bar = 134217731
menu_bar = 134217732
window_frame = 134217734
menu_text = 134217735
active_titlebar_text = 134217737
active_border = 134217738
inactive_border = 134217739
highlight = 134217741
highlight_text = 134217742
button_shadow = 134217744
disabled_text = 134217745
button_text = 134217746
inactive_titlebar_text = 134217747
button_highlight = 134217748
button_dark_shadow = 134217749
button_light_shadow = 134217750
tooltip_text = 134217751
tooltip = 134217752
link = 134217856
link_hover = 134217857
link_active = 134217858
link_visited = 134217859


Daniel Coppersmith

unread,
May 12, 2004, 5:55:51 PM5/12/04
to
The actual color of button face comes from the windows preferences. It's no
doubt stored in the registry somewhere, but where exactly, not sure.


"Mike Kruchten" <mkru...@fsisolutions.com> wrote in message
news:40a28a5b$1@forums-2-dub...

Search4

unread,
May 13, 2004, 7:06:23 AM5/13/04
to
Hi,

That's how we got the 'Buttonface' color

li_return = RegistryGet("HKEY_CURRENT_USER\Control Panel\Colors",
"ButtonFace", RegString!, ls_buttoncolor)
IF li_return = -1 THEN
il_buttoncolor = RGB(192,192,192)
ELSE
li_color = 1
li_buttonpos = 1
li_buttonstart = 1
FOR li_color = 1 TO 3
li_buttonpos = pos(ls_buttoncolor," ",li_buttonstart)
li_buttonrgb[li_color] = integer(mid(ls_buttoncolor,li_buttonstart,
li_buttonpos))
li_buttonstart = li_buttonpos
NEXT
il_buttoncolor = RGB(li_buttonrgb[1],li_buttonrgb[2],li_buttonrgb[3])

IF IsNull(il_buttoncolor) OR il_buttoncolor = -1 THEN il_buttoncolor =
rgb(192,192,192)
END IF

Greets,
Search4


"Daniel Coppersmith" <daniel_N.0.S.P.A.M_at_InFrontSoftware_D0T_C0M> wrote
in message news:40a29d64$1@forums-2-dub...

Ken Balakrishnan

unread,
May 13, 2004, 8:15:57 AM5/13/04
to
If you're asking about how a user would change this value, it's equivalent
to the "3D Objects" item in the Appearance setup.

Ken

"JG" <nospam> wrote in message news:40a2844e$1@forums-2-dub...

0 new messages