diff --git a/camera.glade b/camera.glade
index d5a16ec..53c2837 100644
--- a/camera.glade
+++ b/camera.glade
@@ -220,7 +220,7 @@
- page0
+ main
page0
@@ -244,6 +244,47 @@
10
vertical
10
+
+
+
+ False
+ True
+ 0
+
+
True
@@ -308,76 +349,10 @@
-
- True
- False
- start
- Preview mode
-
-
- False
- True
- 2
-
+
-
- True
- False
- vertical
-
-
- Full resolution (slowest)
- True
- True
- False
- True
- True
-
-
- False
- True
- 0
-
-
-
-
- Quarter resolution debayered
- True
- True
- False
- True
- True
- preview_simple
-
-
- False
- True
- 1
-
-
-
-
- Grayscale
- True
- True
- False
- True
- True
- preview_simple
-
-
- False
- True
- 2
-
-
-
-
- False
- True
- 3
-
+
@@ -418,7 +393,6 @@
True
True
False
- True
True
store_vng
@@ -434,7 +408,6 @@
True
True
False
- True
True
store_vng
@@ -472,22 +445,19 @@
False
True
- 0
+ 1
-
-
-
- page1
+ settings
page1
1
diff --git a/main.c b/main.c
index 6248359..21ed8ff 100644
--- a/main.c
+++ b/main.c
@@ -79,6 +79,7 @@ static int preview_height = -1;
GtkWidget *preview;
GtkWidget *error_box;
GtkWidget *error_message;
+GtkWidget *main_stack;
static int
xioctl(int fd, int request, void *arg)
@@ -845,6 +846,18 @@ on_camera_switch_clicked(GtkWidget *widget, gpointer user_data)
start_capturing(video_fd);
}
+void
+on_settings_btn_clicked(GtkWidget *widget, gpointer user_data)
+{
+ gtk_stack_set_visible_child_name(GTK_STACK(main_stack), "settings");
+}
+
+void
+on_back_clicked(GtkWidget *widget, gpointer user_data)
+{
+ gtk_stack_set_visible_child_name(GTK_STACK(main_stack), "main");
+}
+
int
find_config(char *conffile)
{
@@ -923,14 +936,18 @@ main(int argc, char *argv[])
GtkWidget *shutter = GTK_WIDGET(gtk_builder_get_object(builder, "shutter"));
GtkWidget *switch_btn = GTK_WIDGET(gtk_builder_get_object(builder, "switch_camera"));
GtkWidget *settings_btn = GTK_WIDGET(gtk_builder_get_object(builder, "settings"));
+ GtkWidget *settings_back = GTK_WIDGET(gtk_builder_get_object(builder, "settings_back"));
GtkWidget *error_close = GTK_WIDGET(gtk_builder_get_object(builder, "error_close"));
preview = GTK_WIDGET(gtk_builder_get_object(builder, "preview"));
error_box = GTK_WIDGET(gtk_builder_get_object(builder, "error_box"));
error_message = GTK_WIDGET(gtk_builder_get_object(builder, "error_message"));
+ main_stack = GTK_WIDGET(gtk_builder_get_object(builder, "main_stack"));
g_signal_connect(window, "destroy", G_CALLBACK(gtk_main_quit), NULL);
g_signal_connect(shutter, "clicked", G_CALLBACK(on_shutter_clicked), NULL);
g_signal_connect(error_close, "clicked", G_CALLBACK(on_error_close_clicked), NULL);
g_signal_connect(switch_btn, "clicked", G_CALLBACK(on_camera_switch_clicked), NULL);
+ g_signal_connect(settings_btn, "clicked", G_CALLBACK(on_settings_btn_clicked), NULL);
+ g_signal_connect(settings_back, "clicked", G_CALLBACK(on_back_clicked), NULL);
g_signal_connect(preview, "draw", G_CALLBACK(preview_draw), NULL);
g_signal_connect(preview, "configure-event", G_CALLBACK(preview_configure), NULL);