GTK and C# comparison: compare and contrast discussion
Hello, This is a request for someone to contrast the similarities in scope and differences between the following concepts: - GTK properties and C# properties - GTK Quarks and C# enums I am assuming that these concepts are somewhat akin to each other. Furthermore I would like to ask whether GTK provides some support for component-based (as opposed to object-based) programming, and if so, then how is the component paradigm accomplished in GTK? Feedback welcome, Best Regards, Neil Zanella ___ gtk-list mailing list gtk-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-list
please help disabling spinbutton arrows
Hello, I need to temporarily disable spinbutton arrows so that the user can still cut text from the spinbutton contents and paste it elsewhere, but cannot change it in any way. In particular the arrows need to be disabled without disabling the entire widget. This makes sense for the following reason: the disabling is temporary: the user presses a button which disables it in order for a particular operation to complete in a way that makes sense, an then another button click elsewhere reenables editing the numbers using the spin button arrows. So, how do I temporarily disable the spin button arrows so that they become grayed out but without the text entry box being grayed out? I want the spin button arrows to be disabled, and the user to still be able to cut text from the white space for text entry. How do I do this? Thanks, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: g_signal_handlers_block_by_func
On Mon, 6 Dec 2004 09:08:43 -0500, Tristan Van Berkom <[EMAIL PROTECTED]> wrote: > On Fri, 3 Dec 2004 16:33:27 -0700, Neil Zanella <[EMAIL PROTECTED]> wrote: > > Hello, > > > > I would like to know whether the function call > > > > g_signal_handlers_block_by_func > > > > can be applied to (external) events in the same way as it can be applied > > to (internal) Gtk signals so as to temporarily block them and then call > [...] > The GSignal api works on GSignals, sometimes there is some confusion > about events & signals (I think theres something in the reference about > that...) > > Signals on the GtkWidgetClass with the suffix "-event" (like > "button-press-event") > are events, but that doesn't mean that they are not signals. > > So the answer is yes and no, if the external event is a signal, you can > block it with the GSignal API, otherwise... So does this mean that unless the signal/event ends with the suffix "-event" then I can block it with g_signal_handlers_block_by_func? Thanks, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
spinbutton problem with numeric input
Hello, I am using a spinbutton for numeric input. The problem is that when I set the numeric property to on I cannot seem to enter text with the keyboard. On the other hand, when the numeric property is off, it is possible to enter non-numeric junk characters into the spinbox which is also not what I want. So what should I do about this? Thanks, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
g_signal_handlers_block_by_func
Hello, I would like to know whether the function call g_signal_handlers_block_by_func can be applied to (external) events in the same way as it can be applied to (internal) Gtk signals so as to temporarily block them and then call g_signal_handlers_unblock_by_func Do both of these work on external events in the same way as they do on internal signals? And if not, then is there an analogous function for temporarily blocking handlers external events which work as the two mentioned above? Thanks, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
GtkCList: is row selected?
Hello, I would like to know whether there is a way to programmatically determine whether a particular row is selected in a columned list. How come there is no such method to do this? Thanks, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
hiding windows when pressing on window manager (X)
Hello, I would like to know, is there a way to tell GTK that when the user clicks on the window manager's (X) usually found in the upper right hand corner of window frames, the window is to be hidden instead of destroyed? This behavior is the one needed for child windows of parent windows which the main application usually just hides. Thanks, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
date entry widgets for GTK on Windows
Hello, Can someone please point me to a date entry widgets that will compile on GTK on windows (i.e. must not be a gnome widget). If you know of such a widget which I can use temporarily until something makes it into the real GTK core set of widgets then I would be very happy to use it. Thanks, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: GtkEntry and numeric floating point input
Hello... thank you for your reply. But let me add to my question, what is the most appropriate way to provide a widget that supports monetary values? Given that the valid monetary values to be supported are going to be locale specific how can this be done in a portable way? Thanks, Neil On Mon, 29 Nov 2004 07:29:03 -0800, Vlietstra, Joe (NSSD) <[EMAIL PROTECTED]> wrote: > Neil Zanella <[EMAIL PROTECTED]> wrote: > > > > I've got a GtkEntry and I need to confine user input into this widget > > to numeric values which will fit into the underlying C data types. > > What is the best way to do this? If the values were only allowed to > > be integers I'd use a GtkSpinBox (I think that's what it's > called), > > but since they are now allowed to have decimal points etc... > > what should I do to be sure the user doesn't enter invalid data. > > What's the best way? > > GtkSpinButton will work for both integer and floating-point numbers. > See "Example 2" in the API documentation at: >http://developer.gnome.org/doc/API/2.0/gtk/GtkSpinButton.html > > We use spin buttons in instrumentation control (power supplies, > RF sources, etc.). Spin button range checking works well and our > operators like the up/down arrows. > > There are three properties of spin buttons that you may need to think > about: > -- Non-numeric characters >Default spin button behavior reacts to non-numeric keys. >We've never found a use/benefit for this behavior (hex entry?). >Use gtk_spin_button_set_numeric to ignore non-numeric characters. >API documentation is contradictory (description of "numeric" >parameter is opposite of function summary). Set the "numeric" >parameter to TRUE to ignore non-numeric characters. > -- Snap to tick >Default spin button behavior allows operator to enter a value >that is not on a "tick" (up/down arrow) boundary. This is >desirable most of the time but you may need to call >gtk_spin_button_set_snap_to_ticks to change this behavior. >Example: Resolution of RF synthesizer hardware is 0.02 dB. >Synthesizer will accept commands at finer resolution and >quietly change the RF output to the nearest 0.02 dB tick. >Better to have the application snap to tick than the hardware. > -- Update policy >99% of the time the default policy (GTK_UPDATE_ALWAYS) is what >you want. The spin button will be able to display a value that >isn't in the range of the adjustment. This can be handy. >Example: Application will query the voltage level from a DC >power supply during initialization and display it in the spin >button; this voltage level may be out of range but you need to >inform the operator of the actual level. > > Joe Vlietstra > ___ > gtk-list mailing list > [EMAIL PROTECTED] > http://mail.gnome.org/mailman/listinfo/gtk-list > ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: g_string_insert_c
On Sat, 27 Nov 2004 16:53:52 +0100, Sven Neumann <[EMAIL PROTECTED]> wrote: > Hi, > > Neil Zanella <[EMAIL PROTECTED]> writes: > > > I would like to know whether g_string_insert_c inserts the character > > before the character at the specified position or after. > > It inserts the character at the specified position. Not before, not > after, but at the specified position. What's not clear about this? You're right, it's clear. :O) The character at that position is moved forward, so the inserted character ends up being before the character at that position. Well, it is clear, I must have been very tired when I wrote that message. Sorry. :O) :O) ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
GtkEntry and numeric floating point input
Hello, I've got a GtkEntry and I need to confine user input into this widget to numeric values which will fit into the underlying C data types. What is the best way to do this? If the values were only allowed to be integers I'd use a GtkSpinBox (I think that's what it's called), but since they are now allowed to have decimal points etc... what should I do to be sure the user doesn't enter invalid data. What's the best way? Thanks, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
GtkCList and scrollbar configuration
Hello, I would like to know whether it is possible to configure GtkCList (or the replacement widget) so as to have the vertical scrollbar displayed on the left instead of on the right, or, optionally, have scrollbars on both sides. This would be useful for really wide tables where the user has to use the horizontal scrollbar to see the left hand side of the list or the right hand side of the list. Well, I know scrollbars are not part of GtkCList itself, but what I am asking is whether I can have scrollbars on both or either side, and I used GtkCList as an example of where this could be useful. Thanks, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
columned list, programmatic highlighting, and self-adjusting scrollbars
Hello, I have a columned list and would like to know the following: Suppose I highlight a row from the columned list programmatically. I would like the scrollbar to adjust itself so that the highlighted row is the first one to be displayed. Is this possible with GTK? How? Thanks, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
g_string_insert_c
Hello, I would like to know whether g_string_insert_c inserts the character before the character at the specified position or after. The documentation does not mention this but I think it should be more specific. Thanks, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: gtk_tree_model_get_iter_first
Thank you for your feedback. It just seemed to me that we could do away with one more variable if the boolean were not there. I guess allocating the iterator on the stack rather than on the heap is faster, and makes sense since as you said iterators are meant to be used for looping and are not expected to be used beyond block scope, so by having them on the stack you need not free them. Interesting explanation. Others welcome... Best Regards, Neil On Wed, 24 Nov 2004 23:29:51 +, Tim Müller <[EMAIL PROTECTED]> wrote: > On Wednesday 24 November 2004 23:03, Neil Zanella wrote: > > > > > I would like to know how come gtk_tree_model_get_iter_first doesn't > > just return a GtkTreeIter and set it to NULL when the end of the > > iteration is reached rather than returning a boolean? Why is the design of > > the API such that it returns a boolean instead? Wouldn't the approach I > > describe simplify the API? > > If it returned a pointer to a GtkTreeIter, it would need to dynamically > allocate memory for that, which you would need to later free yourself as > well. It's more efficient to allocate the iter on the stack, and have > gtk_tree_model_get_iter_first() fill in the values. Also, you're not supposed > to keep iters around for longer than absolutely necessary, so dynamic > allocation doesn't really make sense in most cases. > > I find the approach where a boolean is returned makes the code actually > clearer and more legible, but maybe that's just me. > > Cheers > -Tim > > ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: columned list
This is very interesting but something very odd happens when I press the down arrow key on a GtkCList which has just been created with text in it and has no selections: the first row gets a box, and if I keep moving with the down keyboard key I end up with two boxes. This is with GTK 2.4.13. Then when I press space this problem goes away. Thanks, Best Regards, Neil On Sun, 21 Nov 2004 15:26:17 +0100 (CET), Jan-Marek Glogowski <[EMAIL PROTECTED]> wrote: > Hi > > The idea is to "emulate" the mouse behaviour. If you have a large list you > can scroll with the mouse, without selecting an item. Same with the > cursor: you scroll the list (change focus) and then select an item (press > space). > > To move the selection with the focus: > > gtk_clist_set_selection_mode( clist, GTK_SELECTION_BROWSE ); > > Now you need to follow the focus row - maybe connect button_press and > check, if clist->focus_row has changed. Then gtk_clist_select_row( clist, > focus_row, 0 ); > > HTH > > Jan-Marek > ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
gtk_tree_model_get_iter_first
Hello, I would like to know how come gtk_tree_model_get_iter_first doesn't just return a GtkTreeIter and set it to NULL when the end of the iteration is reached rather than returning a boolean? Why is the design of the API such that it returns a boolean instead? Wouldn't the approach I describe simplify the API? Thanks, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
gtk_clist_append() question
Hello, I would like to know, when I call gtk_clist_append() does the underlying GtkCList widget take ownership of the char ** parameter? So do I have to create a new one for each new row to avoid segfaults? Thanks, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
GtkCList: number of columns
Hello, Is there a way to get the number of columns in the deprecated GtkCList widget? Thanks, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: another GtkToggleButton signal question
Really, all of this should be documented. It really is essential in not all but in several cases to know when the signal is emitted with respect to transitions of other widget properties. Thanks, Neil On Sun, 21 Nov 2004 22:16:51 -0600, James M. Cape <[EMAIL PROTECTED]> wrote: > On Sun, 2004-11-21 at 19:49 -0700, Neil Zanella wrote: > > > > Hello, > > > > Can I also rely on the fact that if a GtkToggleButton is active then a > > function call > > to set its active state to TRUE is not going to trigger a signal. In > > general, is it true > > that signal handlers are invoked when properties are CHANGED BY A FUNCTION > > OR USER ACTION, and not when a function causes the given property to remain > > the same? > > > In particular, if a toggle button state is true, then setting it to > > true via a function > > does not generate a signal. Is this concept true for GTK signals in general? > > It depends entirely on the signal and property in question. For signals > in GTK+ itself, generally yes (I don't know of a counter-example within > libgdk/libgdk-pixbuf/libgtk offhand). Outside of GTK+ it depends > entirely on the code given. GObject's "notify" signal, for example, is > always emitted when set_property() is called (so "toggled" will only be > fired when the "active" property has changed, whereas "notify::active" > will be fired anytime someone calls 'g_object_set (button, "active", > someval, NULL);' > > -- > Peace, > > Jim Cape > http://esco.mine.nu > http://ignore-your.tv > > "If even one reporter had stood up during a pre-Iraq Bush press > conference last year and shouted, `Bullshit!' it might have made a > difference." > -- Matt Taibbi, New York Press > > > ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: GtkToggleButton signals question
On Sun, 21 Nov 2004 22:06:54 -0600, James M. Cape <[EMAIL PROTECTED]> wrote: > On Sun, 2004-11-21 at 19:27 -0700, Neil Zanella wrote: > > > Hello, > > > > I would like to know whether the following behavior is reliable, since > > it is not documented > > in the API reference: > > > > When I press a GtkToggleButton (suppose the button goes from being > > pressed out to > > pressed in), I notice that the "toggled" signal is emitted _AFTER_ the > > button becomes > > pressed in, not before. > > > > Can I rely on this behavior? > > Probably yes, because the "toggled" signal is emitted from the "clicked" > handler inside of gtktogglebutton.c, though why do you *need* to rely on > this behavior? What do you mean why? Obviously, if I need to set the state of other buttons and widgets in my signal handler based on whether the user made the up to down transition on the button, I need to know that the signal handler is running at the right moment. Of course! Why else? > > Also, how is the "toggled" signal different from the "clicked" signal > > pertaining to the > > GtkButton widget from which GtkToggleButton inherits? > > "toggled" is emitted whenever the "active" property changes (which may > happen as a result of user interaction or calls to > gtk_toggle_button_set_active/g_object_set), whereas "clicked" is only > emitted when the user actually clicks on a button (or, I think, uses > mnemonic shortcuts). I wish this was documented. It really feel that this is a _CRUCIAL_ piece of information. Peace, Neil > > -- > Peace, > > Jim Cape > http://esco.mine.nu > http://ignore-your.tv > > "If even one reporter had stood up during a pre-Iraq Bush press > conference last year and shouted, `Bullshit!' it might have made a > difference." > -- Matt Taibbi, New York Press > > > ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
g_object_unref
Hello, The developer documentation does not mention here so I thought I'd ask on this list. Is it OK to call g_object_unref() on a NULL pointer (with nothing happening)? Thank you, (and I think this should be mentioned in the docs) Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
another GtkToggleButton signal question
Hello, Can I also rely on the fact that if a GtkToggleButton is active then a function call to set its active state to TRUE is not going to trigger a signal. In general, is it true that signal handlers are invoked when properties are CHANGED BY A FUNCTION OR USER ACTION, and not when a function causes the given property to remain the same? In particular, if a toggle button state is true, then setting it to true via a function does not generate a signal. Is this concept true for GTK signals in general? Thanks, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
GtkToggleButton signals question
Hello, I would like to know whether the following behavior is reliable, since it is not documented in the API reference: When I press a GtkToggleButton (suppose the button goes from being pressed out to pressed in), I notice that the "toggled" signal is emitted _AFTER_ the button becomes pressed in, not before. Can I rely on this behavior? Also, how is the "toggled" signal different from the "clicked" signal pertaining to the GtkButton widget from which GtkToggleButton inherits? Thanks, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
columned list
Hello all, Please don't tell me about Columned List being deprecated: I know. What I would like to ask about it is, when I move with the up and down arrows, a rectangular box moves, but the blue highlighting stays in the same place (unlike what happens when I click with the mouse). Could someone please explain to me what the difference between the two is (that is, why two different kind of boxes), and how can I bind them together so they both move when I press the keyboard up and down arrows? Thanks, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
G_CONST_RETURN
Hello, When looking at the GTK API I see several places that use G_CONST_RETURN. What are these macros there? I cast their effect away with casts, but I am not sure whether that is the right thing to do. I wonder whether someone can elaborate on this (not sure why a function would have to return a const value any more). Thanks, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
g_list_next(foo) vs. foo->next
Hello, I was just wondering whether g_list_next(foo) and foo->next are really the same or not. It seems to me that they are but that the former construct is preferable for object-oriented-like reasons. Thanks, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: newbie question: connecting signals to callbacks
On Tue, 2 Nov 2004 09:17:13 +, Tim Müller <[EMAIL PROTECTED]> wrote: > Yes, it's fine to call a function with more arguments than it takes (in C). I think your explanation is missing some detail... could you explain that again please??? #include #include int main(void) { puts("hello world", "hello world", "hello world"); strcmp("abc"); } $ gcc foo.c foo.c: In function `main': foo.c:5: error: too many arguments to function `puts' foo.c:6: error: too few arguments to function `strcmp' Thanks! Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
newbie question: connecting signals to callbacks
Hello, I have a basic question which I would like to ask: The function prototype for gtk_main_quit() is: void gtk_main_quit(void); The GtkObject signal prototype for the "destroy" callback is: void user_function(GtkObject *object, gpointer user_data); Yet I can connect the two as follows: g_signal_connect(widget, "destroy", G_CALLBACK(gtk_main_quit), NULL); My question is, is it always legal to connect a signal to a function with less parameter arguments than those described in the API? Thanks, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: undocumented parameters
OK, I am now connecting the "switch-page" for notebooks which seems to be the only one that works. However, void foo(GtkNotebook *notebook, GtkNotebookPage *page, guint page_num, gpointer data) { assert(page_num == (guint) gtk_notebook_get_current_page(notebook)); ... } The above assertion always fails. What's the matter? Seems like the signal is called before emission. Also, GtkNotebookPage: an opaque implementation detail of GtkNotebook. What does "opaque" mean here? Thanks, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
Re: running real time application behind glade
Hi, I would like to help you except I do not fully understand your question... How is the fact that your application is real time different in this context. I.e. what does it have to do with Glade? Are you trying to embed an OpenGL window within some widgets? What OS are you running? If I understand your question correctly, you can leave a space in Glade and use GTK+ to pack your widget wherever you need it using container methods. Regards, Neil On Mon, 1 Nov 2004 01:30:36 -0800 (PST), Aaron Yang <[EMAIL PROTECTED]> wrote: > hi, > > does anyone know how do I go about running a real > time application after I executed a glade program? > > how should I edit main.c, so that glade shows the > windows created and at the same time, runs a real time > program in the background? > > I'm using rtlinux-3.2-pre2, and have written a > program that counts from 0 onwards and is printed at > the command prompt. But so far, I've only managed to > execute the real time first before it shows the > created window... > > regards, > aaron > > __ > Do you Yahoo!? > Yahoo! Mail Address AutoComplete - You start. We finish. > http://promotions.yahoo.com/new_mail > ___ > gtk-list mailing list > [EMAIL PROTECTED] > http://mail.gnome.org/mailman/listinfo/gtk-list > ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
undocumented parameters
There is a bunch of undocumented parameters at: http://developer.gnome.org/doc/API/2.0/gtk/GtkNotebook.html#GtkNotebook-select-page In the following, I guess arg1 is the index of the page? I'm just guessing, but it would be nice if they were documented properly. Thanks. And BTW what is the name of the program used to generate the documentation from sources. Is doxygen being used or some other program? Thanks, Neil Signals The "change-current-page" signal voiduser_function (GtkNotebook *notebook, gint arg1, gpointer user_data); notebook : the object which received the signal. arg1 : user_data : user data set when the signal handler was connected. ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
GTK stock icons vs. GNOME stock icons
Hello, I wonder what the rationale is behind having gnome stock icons which don't show up in GTK when GTK is compiled without GNOME support. There is nothing not GTKish about the GNOME icons not fitting in the GTK category. I wonder if someone could just please pretty please do me a favor and place the GNOME stock icons in the GTK distribution so that we can all use them on windows which doesn't support GNOME (as far as I know)? For the time being, is there a way I can just copy these icons and use them? How? I am using glade to build them. Thanks, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
just a couple of migrating newbie questions
Hello, Anyone know how to popup a window with a frame? Also, what is the difference between fprintf("") and gprint(""). Is there a GDK documentation for the G_ macros and stuff other than the GTK API and Tutorial (for the lower layer library)? OK, I'll just keep going through the API... Well thanks, NP, void display_popup(GtkButton *button, gpointer data) { g_print("popping up popup widget...\n"); gtk_widget_show_all((GtkWidget *) data); } g_signal_connect(G_OBJECT(glade_xml_get_widget(xml, "foo_button")), "clicked", G_CALLBACK(display_popup), (gpointer) glade_xml_get_widget(xml, "foo_button")); ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list
GTK+ Qt widget stack: how?
Hello, I am migrating from Qt to GTK+ and from Qt designer to Glade. Hence, I would like to know the following as I cannot seem to find the answers in the GTK+ documentation: -- 1. Qt Designer has the following widet, called a widget stack: $ designer -> Window -> View -> Object Explorer -> Containers -> Widget Stack which comes from the Qt class QWidgetStack. This basically allows you to superimpose widgets in a container, with only one of them being visible at a time. Then a selection such as the one from a combo box emits a signal and the desisred widget from the widget stack is plaed on the top of the stack with the other ones becoming invisible as this takes place. Does GTK offer a similar widget? How about GNOME? I think there should be such a widget somewhere. How do I use it from within glade? --- 2. Glade 2.5.0 is telling me that the GTK+ Column Table (ctable) widget is deprecated. However it seems to me that the new API does not show it as being deprecated. What gives? What else am I supposed to use if it relly is deprecated. Cause I really do need a widget with columns that looks like a table, and it seems to me that the glade "List or Tree View" isn't quite capable of achieving the same effect (at least, in glade, it doesn't seem to let me specify how many columns I want, which is not good). So is ctable deprecated or not, and if it is, what am I supposed to do about it? I'm using GTK 2.4.7 - Thanks for answering my newbie questions, Best Regards, Neil ___ gtk-list mailing list [EMAIL PROTECTED] http://mail.gnome.org/mailman/listinfo/gtk-list