Re: hi

On Tue, 24 Aug 1999, Owen Taylor wrote:
>plex <> writes:
>> hi gtk+ developers,
>> i'm the author of gtk+ magic / gmagic and want to tell
>> you that i'm very interested in integration gtkmagic in
>> the main source tree.
>I haven't had the time to study G*Magic in detail, but
>to respond at general level -
>I don't think that adding code to access a network
>configuration database into GTK+ proper would
>be the right thing to do.
>I'd much rather see some patches that allow a module
>to replace code that currently gets the style information
>out of .gtkrc files. 

Well, gtk+ magic respects the use of gtkrc files, here's the priority of a
property-informations, especially in this case the style which is initialized
by GtkWidget:

- programmer explicitly sets the style through gtk_widget_set_style
- resource-file parsed and ensured
- property-information caught by the "class" and each instance get it connected
  (and on property-change the objects are signaled through a connect to 
   GtkProp's "data_changed" callback)

You really have an advantage with Gtk+ Magic, I use it in conjunction with
gnome and others, and it runs. Each time you realized a little aspect of you
gtk+/gnome application which doesn't fit your taste, you startup gtkmagic-config
changed the little aspect in the context (system-wide, group-wide or
user-settings / gtk+ wide or application-specific) and you really see what
happen in your application. There is no need to restart the application or
implement a "refresh resources"-button in the application.

I'm currently working on setting up theme's code on the fly. First tests have
been made. You can write little theme-codes for a specific class, and the
application on the other side reacts. (well this isn't in the current version)

So the user is in full control of its gtk+ applications (and gnome's 8) ) and
that is a real step forward to user-friendly gui's which I know since 1992 on
AmigaOS / MUI.

>The module would essentially provide a replacement
>for gtk_rc_get_style().
>[ Though, note that we need to keep a capability
>  gtk_widget_modify_style() working, apps need
>  to be able to tweek the styles of their widgets
>  without knowing about the details of the
>  current configuration system ]

this works

>> So I really don't know how working in a team, especially
>> in gtk+, is done and what it is all about.
>> I want to integrate the gmagic client code in gtk+ and
>> need help in the decision about using GtkArgs or my currently
>> used GtkProp. As a second, I patched some stuff like
>Is there documentation about GtkProp somewhere? 

sorry, documentation is on the way, but I'm currently working on a very
comprehensive user-interface for gtk+ magic config, so that not programmers
understand to handles styles, borders and stuff, but also normal users
can work with it. Currently you see the whole list of Gtk+ classes (and that
named with "Gtk..." that use GtkStyle's, border_width and button_styles)

>Tim has an argument system in BSE which he would like
>to replace GTK's argument system with at some point.
>> GtkButton.... set_border
>> I just realized, that in some widgets a border shadow-style
>> should be configurable and choosable to have complete aspects
>> of the drawing.
>I know Tk allows you to set the border style on all widgets,
>but I've never quite understand it.

Well it's the look, and a button should be customizable with attributes a
user understands. And when I say "GtkButton" should have a "etched_out" style,
each one knows what it should look like, it's a style.

>The GTK+ approach is that if the application wants a
>decorative frame around a widget, then it should use a GtkFrame.

hmm...each user as a different taste, and I like etched_in buttons more than
shadow out ones 8)

>If a theme wants to draw the border styles differently
>then it should draw them differently.
>That being said, in the future, we do want to allow
>themes to change widget arguments in the future.
>To be able to change this on the fly is going to
>require modifications to the GTK+ argument system
>so that GTK+ can tell 
> a) what the default value of an argument is
> b) whether an argument has been changed by the application
>    or changed by the theme.
>> As a second point in my investigation, I have the problem, that
>> I just can't set the exact Button's Label text-style or just
>> change all GtkLabel styles through my current mechansim. I thought
>> about a GtkContainer::child_proplist property for my database...o( think?!)
>The gtkrc mechansim allows this.
> widget_class "*GtkButton.GtkLabel" style "my-text-style"
> class "GtkLabel" style "my-other-text-style"
>> here is the gmagic/gtk+ magic support site

try it again with

please think about it, the database itself is very interessting, but i think
the documentation should be written as fast as possible, to give all of you here
a bit more information, what it's all about.

A short note: The gtk+ factory settings are dynamically loaded in the database
if it's not available, and the widget classes properties are also mapped in the
database. It will be also possible to remap the whole hierarchy to another
direction. This is done by symbolic links (these are special values in the
database) ... this allows abstraction of properties.
Perhaps you got a bit interessted, please look at it, and then tell me what you
think about it.
If there are any questions about it, just ask.

so long,

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]