denemo-devel
[Top][All Lists]
Advanced

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

Re: [Denemo-devel] denemo too large for my screen


From: Jeremiah Benham
Subject: Re: [Denemo-devel] denemo too large for my screen
Date: Fri, 25 Jan 2008 22:59:13 -0600

This sounds like a good idea. I think gimp has this functionality where
you can change the shape of the window and the dimensions get restored
when reopened. I think that would be a nice feature for denemo to have. 

Jeremiah

On Sat, 2008-01-26 at 04:28 +0100, Benoit Rouits wrote:
> GLib provides a simple way to store configuration in .ini files
> We can use it to store the last window state and reap it on the next
> launch. Basically, the state.ini file can be :
> 
> [State]
> width=600
> heigth=200
> maximised=false
> 
> We can store/generate it with things like:
> 
> GKeyFile *keyfile;
> 
> keyfile = g_key_file_new ();
> 
> g_key_file_set_integer (keyfile, "State", "width", gui->width);
> g_key_file_set_integer (keyfile, "State", "height", gui->height);
> g_key_file_set_boolean (keyfile, "State", "maximised", gui->maximized);
> contents = g_key_file_to_data (keyfile, NULL, NULL);
> g_key_file_free (keyfile);
> filename = g_build_filename (denemo_dot_dir (), "state.ini", NULL);
> g_file_set_contents (filename, contents, -1, NULL);
> g_free (filename);
> g_free (contents);
> 
> 
> And reap it with something like:
> 
> filename = g_build_filename (locatedotdenemo (), "state.ini", NULL);
> keyfile = g_key_file_new ();
> if (g_key_file_load_from_file (keyfile, filename,
>       G_KEY_FILE_NONE, NULL) == FALSE) {
>         w = INITIAL_WIDTH;
>         h = INITIAL_HEIGHT;
>         g_free (filename);
> } else {
>         g_free (filename);
> 
>         w = g_key_file_get_integer (keyfile, "State", "width", &err);
>         if (err != NULL) {
>             w = 0;
>             g_error_free (err);
>             err = NULL;
>         }
> 
>         h = g_key_file_get_integer (keyfile, "State", "heigth", &err);
>         if (err != NULL) {
>             h = 0;
>             g_error_free (err);
>             err = NULL;
>         }
> 
>         maximised = g_key_file_get_boolean (keyfile, "State",
>                 "maximised", &err);
>         if (err != NULL) {
>             g_error_free (err);
>             err = NULL;
>         }
> 
>         g_key_file_free (keyfile);
> 
>       if (w > 0 && h > 0 && maximised == FALSE) {
>               gtk_window_set_default_size (GTK_WINDOW (gui->window),
>                 w, h);
>               gui->width = w;
>               gui->heigth = h;
>       } else if (gui->maximised != FALSE) {
>               gtk_window_maximize (GTK_WINDOW (gui->window));
>       }
> 
> I think it's understandable...
> ... all that in view.c, which manage the main window.
> 
> Le vendredi 25 janvier 2008 à 10:20 -0600, Jeremiah Benham a écrit :
> > Every time I launch denemo now the application window is larger then my
> > screen. I tried resizing it and then reopening it thinking it would
> > remember the size and shape but it does not. What would it take to fix
> > this?
> > 
> > Thanks,
> > Jeremiah
> 
> 
> 
> _______________________________________________
> Denemo-devel mailing list
> address@hidden
> http://lists.gnu.org/mailman/listinfo/denemo-devel





reply via email to

[Prev in Thread] Current Thread [Next in Thread]