U++ framework
Do not panic. Ask here before giving up.

Home » Developing U++ » U++ TheIDE and Library: Releases and ChangeLogs » GTK theming a reality
Re: GTK theming a reality [message #6826 is a reply to message #6814] Wed, 29 November 2006 20:12 Go to previous messageGo to previous message
guido is currently offline  guido
Messages: 169
Registered: April 2006
Experienced Member
luzr wrote on Wed, 29 November 2006 11:57



Sure:

	char *font_name = "";
	GOBJ().g_object_get(GTK().gtk_settings_get_default(), "gtk-font-name", &font_name, NULL);

	const char *q = strrchr(font_name, ' ');
	if(q) {
		int h = atoi(q);
		String face(font_name, q);
		int ii = Font::FindFaceNameIndex(face);
		if(ii < 0)
			if(ToUpper(face[0]) == 'M')
				ii = Font::COURIER;
			else
			if(ToUpper(face[0]) == 'S' && ToUpper(face[1]) == 'e')
				ii = Font::ROMAN;
			else
				ii = Font::ARIAL;
		Draw::SetStdFont(Font(ii, h ? h * 96 / 72 : 13));
	}


(in short, it expects h * 96 / 72 converts retrieved point size to 96dpi screen pixels).

For me, font is exactly as big as in other gnome apps. But as you already noted, I tend to oversimplify things, maybe this simple height retrieval needs to take into account more factors?

Mirek




From the GTK2 docs:
"""
The "gtk-xft-dpi" property

"gtk-xft-dpi" gint : Read / Write

Resolution for Xft, in 1024 * dots/inch. -1 to use default value.

Allowed values: [-1,1048576]

Default value: -1
"""

Maybe use that in your formula?

Guido
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: TrayIcon Win32 fixed some misbehaviour....
Next Topic: New Vector optimization reduces Linux executable size by 0.8%
Goto Forum:
  


Current Time: Sun Apr 26 01:42:46 GMT+2 2026

Total time taken to generate the page: 0.00659 seconds