Hi,
since I am doing style and theme stuff on winxp, I would be surprised if
kde is breaking this...
On linux I am using gnome, not kde, so I cannot test it quickly...
Anset.
ted leslie wrote:
arggh......
ok i simply ran my app on a different system
and it worked with the styles through the rcgtk and parsestring (in app)
i run a kde on suse 9.2 and determined that NO gtk based app
is doing sqwat with the style specs. (or themes for that matter)
yet i put a gnome on another X screen and run the
gtk#/mono apps all if fine,
on a redhat installed machine i got it to run on gnome and kde desktops just
fine,
i have a stock 9.2 suse, i dunno why its doing this, but screw it,
i will upgrade to suse 9.3 with full installed components for both desktops
(maybe even give gnome a try) and hopefully this issue will be
behind me.
I will give an update as to whether i can change styles
on widgets other then rc or parsestring methods,
to concur if in fact there is a bug with the direct widget manipulation
of styles.
-tl
On Thu, Aug 04, 2005 at 04:28:59PM +0200, Anset wrote:
Hi,
On both os you can find examples of resource files. do a search for
gtkrc files and you should find a few. On windows you will find them
under the directory where you installed GTK.
The best documentation is to be found on the gnome developer website.
look at the api documentation.
of course it is all C code, but you should get the point.
The only problem is that the RC class is not fully ported yet.
(depending on your version of gtk#, your success wil vary).
So if things do not seem to work for you, take a look at the custom
files on svn.myrealbox.org to see what has been "ported".
Below are the examples you asked for. MAKE SURE TO GIVE YOUR WIDGET A
NAME! that is how the styles are matched.
Here is a part of a resource file:
############
# Defaults #
############
style "Default_Style"
{
font_name = "Times new Roman 10"
fg[NORMAL] = "#000000"
bg_pixmap[NORMAL] = "ice.png"
bg_pixmap[ACTIVE] = "cork.png"
bg_pixmap[PRELIGHT] = "camouflage.png"
bg_pixmap[INSENSITIVE] = "purple_marble.png"
engine "pixmap"
{
}
}
class "GtkWidget" style "Default_Style"
#widget "*" style "Default_Style"
#widget "DDD_Main_Window" style "Default_Style"
#widget "DDD_Main_Window.*" style "Default_Style"
##################
# Startup Dialog #
##################
style "Startup_Dialog_Title_Style"
{
font_name = "Times new Roman Bold 12"
fg[NORMAL] = "#000000"
}
widget "*.Startup_Dialog_Title" style "Startup_Dialog_Title_Style"
Here is an example parsing a string in your program:
Basically you just put the text you would put in the resource file in a
string and then parse it. It's a lot less clear, but this way you can
"hide" style settings.
Gtk.Rc.ParseString( "pixmap_path \"images\"\n"+
"style \"Startup_Dialog_Style\" {\n"+
"bg_pixmap[NORMAL] = \"startup.png\"\"\n"+
"}\n"+
"widget \"*Startup_Dialog\" style \"Startup_Dialog_Style\"");
ted leslie wrote:
do you have any examples of this,
i see some for GTKmm but thats not quite the same.
any code snipets, file?
-tl
On Thu, Aug 04, 2005 at 03:37:56PM +0200, Anset wrote:
Hi,
The only way I found that works is using a resource file, or building a
resource string and then parse it using the RC class.
Afaik, rcstyle in gtk# is broken.
Anset
ted leslie wrote:
i am just trying to get the color of a button to change, i think i
exhausted
ever color type in the widget below, but none take effect,
Relief takes effect when i change it from one type to another, but
nothing else,
What am i doing wrong,
I use the GTKmm pages for documentation because i havnt found much
on GTK# anywhere, is there some ..
No one seems to do this on any of the GTK# applications in the mono site
so i am baffed..
Gtk.RcStyle rc_style;
rc_style= new Gtk.RcStyle();
Gdk.Color color;
color.Red = 65535;
color.Green = 0;
color.Blue = 0;
color.Pixel = 65535; // whats this?
btn3.Style=null;
btn3.ModifyStyle(rc_style);
btn3.Relief=Gtk.ReliefStyle.Half; // this works and we see impact!!!
btn3.ModifyBg(Gtk.StateType.Selected, color);
btn3.ModifyFg(Gtk.StateType.Selected, color);
btn3.ModifyBase(Gtk.StateType.Selected, color);
Console.WriteLine(btn3.Style.BaseColors[1]);
Console.WriteLine(btn3.Style.Foregrounds[0]);
btn3.Style.DarkColors[0]=color;
btn3.Style.DarkColors[1]=color;
btn3.Style.DarkColors[2]=color;
btn3.Style.DarkColors[3]=color;
btn3.Style.DarkColors[4]=color;
btn3.Style.LightColors[0]=color;
btn3.Style.LightColors[1]=color;
btn3.Style.LightColors[2]=color;
btn3.Style.LightColors[3]=color;
btn3.Style.LightColors[4]=color;
btn3.Style.BaseColors[1]=color;
btn3.Style.BaseColors[0]=color;
btn3.Style.BaseColors[2]=color;
btn3.Style.BaseColors[3]=color;
btn3.Style.BaseColors[4]=color;
btn3.Style.Foregrounds[0]=color;
btn3.Style.Foregrounds[1]=color;
btn3.Style.Foregrounds[2]=color;
btn3.Style.Foregrounds[3]=color;
btn3.Style.Foregrounds[4]=color;
..... assign widget into another container ....
_______________________________________________
Gtk-sharp-list maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/gtk-sharp-list
_______________________________________________
Gtk-sharp-list maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/gtk-sharp-list
_______________________________________________
Gtk-sharp-list maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/gtk-sharp-list