[Gtk-sharp-list] GTK# App with multiple windows, where does Application.Init() and Application.Run() go?

Anset Anset@anset.org
Sun, 27 Mar 2005 12:40:20 +0200


Hi,

At first, it takes some getting used too, but now I make my gui's faster 
than I did with glade. Add to that that some functionality is not 
exposed through the glade interface, and I come out ahead twice. :)

Seriously, if you need a very simple front end for an app, then glade is 
great. However if you want to have a nice gui, where you have full 
controll, not using glade is easier.

The way you have to bind your methods to the glade widgets is just to 
cumbersome...

I guess it all depends on what you are doing. :)

The reason I let go of glade was that I was just learning to use Gtk 
(about 8 month ago now) and I was seeing some realy strange exceptions 
in Gtk/Gdk... The only way to debug my application (in absence of a 
usable mono debugger) was to rewrite everything without using 
glade(lib). And the moment that was done, those crashes mysteriously 
dissapeared...

I haven't used glade since. :)

But I have to admit that I am a controll freak when it comes to my 
programming. I hate visual designers... :)

As far as I know, glade is the only Gtk+ designer at the moment. The 
Monodevelop people say that they will develop a new designer because 
glade does not work for them (I don;t have details) but they have not 
released anything yet...

I thought that the Sharpdevelop ide had a desinger, but I think it only 
wotks with windows.forms, not Gtk.

But as I have said, I don;t use them so my knowledge may be limited.

Wkr,

Anset.

Timothy Parez wrote:
> I am wondering though,
> If you don't use glade, how do you visualize what you're doing, doesn't it
> take ages to create an GUI that looks exactly like you want it ?
> 
> Will there be (is there) a GTK# designer that writes C# code without using
> Glade?
> 
> Thnx
> 
> -----Oorspronkelijk bericht-----
> Van: gtk-sharp-list-admin@lists.ximian.com
> [mailto:gtk-sharp-list-admin@lists.ximian.com] Namens Anset
> Verzonden: zaterdag 26 maart 2005 19:02
> Aan: Bjoern Schiessle
> CC: gtk-sharp-list@lists.ximian.com
> Onderwerp: Re: [Gtk-sharp-list] GTK# App with multiple windows, where does
> Application.Init() and Application.Run() go?
> 
> True,
> 
> but as I wrote at the end, ditch glade. It's great for a quick app, but 
> if you want to do anything fancy at all, it just won't work.
> 
> Allso, I hate not being in controll of my own application. Glade just 
> makes things complicated and it certainly does not help someone who is 
> just starting out with gtk... Too many things are hidden, and since the 
> doc for gtk is so sparse (I do not mean api info, I mean tut's en such) 
> glade is not a "good thing"(tm)
> 
> Of course, this is my opinion, and I do not expect anybody to agree with 
> me. :)
> 
> Anset
> 
> Bjoern Schiessle wrote:
> 
>>Hi,
>>
>>On Sa, 2005-03-26 at 11:00 +0100, Anset wrote:
>>
>>
>>>First of all, when you create a "MyWndow" class, make it enherit 
>>>Gtk.Window. Makes your life easier:
>>>
>>>Class MyWindow : Gtk.Window
>>>{
>>>...
>>>}
>>
>>
>>Why should i inherit the MyWindow class from Gtk.Window if i have the
>>whole window already in the glade file? If i do this, than i would have
>>two windows, the window represented by the "MyWindow : Gtk.Window" class
>>and the window i have pulled out of the glade file.
>>
>>If i don't use glade i would inherit MyWindow from Gtk.Window, but if i
>>use glade i would do it like this:
>>
>>class MainWindow {
>>
>>    public static void Main(string[] args) {
>>        Application.Init ();
>>        new MainWindow ();
>>        Application.Run ();
>>    }
>>
>>    public MainWindow () {
>>        Glade.XML gxml = new Glade.XML (null, "app.glade",
>>                                        "MainWindow", null);
>>        gxml.Autoconnect (this);
>>    }
>>    ...
>>}
>>
>>and the second window which i call somewhere from MainWindow with "new
>>SubWindow()":
>>
>>class SubWindow {
>>
>>    public SubWindow () {
>>        Glade.XML gxml = new Glade.XML (null, "app.glade",
>>                                        "SubWindow", null);
>>        gxml.Autoconnect (this);
>>    } 
>>    ....
>>}
>>
>>Cheers,
>>Bjoern
>>
> 
> _______________________________________________
> Gtk-sharp-list maillist  -  Gtk-sharp-list@lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/gtk-sharp-list
> 
>