Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
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: Mon May 06 20:43:36 CEST 2024

Total time taken to generate the page: 0.03215 seconds