diff --git a/configuration.cc b/configuration.cc index d3eec2f..992dec0 100644 --- a/configuration.cc +++ b/configuration.cc @@ -111,7 +111,7 @@ void Configuration::SaveConfig(std::string filename) { // // save windows position for (i = 0; i < 5; i++) { - int x, y, w, h; + int x, y, w, h, show; string name; switch (i) { @@ -135,6 +135,8 @@ void Configuration::SaveConfig(std::string filename) { GtkWidget *wnd = GTK_WIDGET(gtk_builder_get_object (GTK_BUILDER(_builder_), name.c_str())); if (wnd) { + g_object_get (wnd, "visible", &show, NULL); + gtk_widget_show (wnd); gtk_window_get_position (GTK_WINDOW(wnd), &x, &y); gtk_window_get_size (GTK_WINDOW(wnd), &w, &h); @@ -142,6 +144,7 @@ void Configuration::SaveConfig(std::string filename) { jp.AddObject(name+"_y", y); jp.AddObject(name+"_w", w); jp.AddObject(name+"_h", h); + jp.AddObject(name+"_show", show); } } @@ -250,7 +253,7 @@ void Configuration::LoadConfig(std::string filename) { // // load windows position for (i = 0; i < 5; i++) { - int x, y, w, h; + int x, y, w, h, show; string name; switch (i) { @@ -272,13 +275,15 @@ void Configuration::LoadConfig(std::string filename) { } if (jp.GetValueInt(name+"_x", &x) && jp.GetValueInt(name+"_y", &y) && - jp.GetValueInt(name+"_w", &w) && jp.GetValueInt(name+"_h", &h)) { + jp.GetValueInt(name+"_w", &w) && jp.GetValueInt(name+"_h", &h) && + jp.GetValueInt(name+"_show", &show)) { GtkWidget *wnd = GTK_WIDGET(gtk_builder_get_object (GTK_BUILDER(_builder_), name.c_str())); if (wnd) { printf ("%s:%d window '%s' set geometry %d,%d : %d x %d\n", __FILE__, __LINE__, name.c_str(), x, y, w, h); gtk_window_move (GTK_WINDOW(wnd), x, y); gtk_window_resize (GTK_WINDOW(wnd), w, h); + if (show) gtk_widget_show(wnd); } } } diff --git a/gui.cc b/gui.cc index ef4725d..20e1199 100644 --- a/gui.cc +++ b/gui.cc @@ -59,14 +59,10 @@ void cb_window_show (GtkWidget *widget, gpointer data) { GtkWidget *rboff = GTK_WIDGET(gtk_builder_get_object (GTK_BUILDER(_builder_), "detect-pos-cboff")); GtkWidget *rbcrossc = GTK_WIDGET(gtk_builder_get_object (GTK_BUILDER(_builder_), "detect-type-indet2")); - GtkWidget *win_detect = GTK_WIDGET(gtk_builder_get_object (GTK_BUILDER(_builder_), "window-detect")); - GtkWidget *win_input = GTK_WIDGET(gtk_builder_get_object (GTK_BUILDER(_builder_), "window-input")); - GtkWidget *win_output = GTK_WIDGET(gtk_builder_get_object (GTK_BUILDER(_builder_), "window-output")); - GtkWidget *win_histogram = GTK_WIDGET(gtk_builder_get_object (GTK_BUILDER(_builder_), "window-histogram")); - gtk_widget_show (win_detect); - gtk_widget_show (win_input); - gtk_widget_show (win_output); - gtk_widget_show (win_histogram); +// GtkWidget *win_detect = GTK_WIDGET(gtk_builder_get_object (GTK_BUILDER(_builder_), "window-detect")); +// GtkWidget *win_input = GTK_WIDGET(gtk_builder_get_object (GTK_BUILDER(_builder_), "window-input")); +// GtkWidget *win_output = GTK_WIDGET(gtk_builder_get_object (GTK_BUILDER(_builder_), "window-output")); +// GtkWidget *win_histogram = GTK_WIDGET(gtk_builder_get_object (GTK_BUILDER(_builder_), "window-histogram")); // changing the value, will cause the 'change' event to be triggered gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(rboff), true); @@ -91,6 +87,11 @@ void cb_window_show (GtkWidget *widget, gpointer data) { // // update the input video controls every 2 seconds. g_timeout_add(2000, videoctrl_update, NULL); + +// gtk_widget_show (win_detect); +// gtk_widget_show (win_input); +// gtk_widget_show (win_output); +// gtk_widget_show (win_histogram); }; diff --git a/simpleskycam.ui b/simpleskycam.ui index 84e7f70..297f322 100644 --- a/simpleskycam.ui +++ b/simpleskycam.ui @@ -596,13 +596,24 @@ - - Flat + True - True - True - - + False + False + on + True + + FLAT + was anderes + + + + False + False + 6 + FLAT + + False