diff options
author | Denys Vlasenko <dvlasenk@redhat.com> | 2011-02-16 11:04:10 +0100 |
---|---|---|
committer | Denys Vlasenko <dvlasenk@redhat.com> | 2011-02-16 11:04:10 +0100 |
commit | e1b3f7083531f28d3a10c7cda92bda66a627af17 (patch) | |
tree | 9921c8240df2f1fea5698188e279e17976b470cf /src | |
parent | 91b0316be2b6eb84d44ea045633e544bd9fe16dd (diff) | |
download | abrt-e1b3f7083531f28d3a10c7cda92bda66a627af17.tar.gz abrt-e1b3f7083531f28d3a10c7cda92bda66a627af17.tar.xz abrt-e1b3f7083531f28d3a10c7cda92bda66a627af17.zip |
gui-wizard-gtk: simplify code a bit
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/gui-wizard-gtk/main.c | 5 | ||||
-rw-r--r-- | src/gui-wizard-gtk/wizard.c | 114 |
2 files changed, 50 insertions, 69 deletions
diff --git a/src/gui-wizard-gtk/main.c b/src/gui-wizard-gtk/main.c index 0206d020..9b278740 100644 --- a/src/gui-wizard-gtk/main.c +++ b/src/gui-wizard-gtk/main.c @@ -5,8 +5,6 @@ int main(int argc, char **argv) { - //GtkWidget *assistant; - gtk_init(&argc, &argv); GtkWidget *assistant = create_assistant(); @@ -14,5 +12,6 @@ int main(int argc, char **argv) /* Enter main loop */ gtk_main(); + return 0; -}
\ No newline at end of file +} diff --git a/src/gui-wizard-gtk/wizard.c b/src/gui-wizard-gtk/wizard.c index 2f04ea65..0a708e4e 100644 --- a/src/gui-wizard-gtk/wizard.c +++ b/src/gui-wizard-gtk/wizard.c @@ -19,104 +19,86 @@ #define PAGE_SUMMARY "page_6" #define PAGE_REPORT "page_7" - #define DEFAULT_WIDTH 800 #define DEFAULT_HEIGHT 500 -gchar *pages[] = - { "page_1", - "page_2", - "page_3", - "page_4", - "page_5", - "page_6", - "page_7", - NULL - }; - -GtkBuilder *builder; -GtkWidget *assistant; +static const gchar *const page_names[] = +{ + "page_1", + "page_2", + "page_3", + "page_4", + "page_5", + "page_6", + "page_7", + NULL +}; + +static const gchar *const page_titles[] = +{ + "Select analyzer", + "Analyzing problem", + "Select reporter", + "Approve the backtrace", + "Provide additional information", + "Confirm and send the report", + "Approve the backtrace", +}; + +static const GtkAssistantPageType page_types[] = +{ + GTK_ASSISTANT_PAGE_INTRO, + GTK_ASSISTANT_PAGE_PROGRESS, + GTK_ASSISTANT_PAGE_CONTENT, + GTK_ASSISTANT_PAGE_CONTENT, + GTK_ASSISTANT_PAGE_CONTENT, + GTK_ASSISTANT_PAGE_CONFIRM, + GTK_ASSISTANT_PAGE_SUMMARY, +}; + +static GtkBuilder *builder; +static GtkWidget *assistant; void on_b_refresh_clicked(GtkButton *button) { g_print("Refresh clicked!\n"); } -void add_pages() +static void add_pages() { - GError *error = NULL; - gtk_builder_add_objects_from_file(builder, "wizard.glade", pages, &error); - if(error != NULL) + gtk_builder_add_objects_from_file(builder, "wizard.glade", (gchar**)page_names, &error); + if (error != NULL) { - g_print(error->message); - g_free(error); + error_msg_and_die("can't load %s: %s", "wizard.glade", error->message); } - GtkWidget *page; - gchar **page_names; - for(page_names = pages; *page_names != NULL; page_names++) + for (int i = 0; page_names[i] != NULL; i++) { - page = GTK_WIDGET(gtk_builder_get_object(builder, *page_names)); - if(page == NULL) + GtkWidget *page = GTK_WIDGET(gtk_builder_get_object(builder, page_names[i])); + if (page == NULL) continue; gtk_assistant_append_page(GTK_ASSISTANT(assistant), page); //FIXME: shouldn't be complete until something is selected! gtk_assistant_set_page_complete(GTK_ASSISTANT(assistant), page, true); - if(strcmp(PAGE_ANALYZE_ACTION_SELECTOR, *page_names) == 0) - { - gtk_assistant_set_page_title(GTK_ASSISTANT(assistant), page, "Select analyzer"); - gtk_assistant_set_page_type(GTK_ASSISTANT(assistant), page, GTK_ASSISTANT_PAGE_INTRO); - - } - if(strcmp(PAGE_ANALYZE_PROGRESS, *page_names) == 0) - { - gtk_assistant_set_page_title(GTK_ASSISTANT(assistant), page, "Analyzing problem"); - gtk_assistant_set_page_type(GTK_ASSISTANT(assistant), page, GTK_ASSISTANT_PAGE_PROGRESS); - } - if(strcmp(PAGE_REPORTER_SELECTOR, *page_names) == 0) - { - gtk_assistant_set_page_title(GTK_ASSISTANT(assistant), page, "Select reporter"); - gtk_assistant_set_page_type(GTK_ASSISTANT(assistant), page, GTK_ASSISTANT_PAGE_CONTENT); - } - if(strcmp(PAGE_BACKTRACE_APPROVAL, *page_names) == 0) - { - gtk_assistant_set_page_title(GTK_ASSISTANT(assistant), page, "Approve the backtrace"); - gtk_assistant_set_page_type(GTK_ASSISTANT(assistant), page, GTK_ASSISTANT_PAGE_CONTENT); - } - - if(strcmp(PAGE_HOWTO, *page_names) == 0) - { - gtk_assistant_set_page_title(GTK_ASSISTANT(assistant), page, "Provide additional information"); - gtk_assistant_set_page_type(GTK_ASSISTANT(assistant), page, GTK_ASSISTANT_PAGE_CONTENT); - } - if(strcmp(PAGE_SUMMARY, *page_names) == 0) - { - gtk_assistant_set_page_title(GTK_ASSISTANT(assistant), page, "Confirm and send the report"); - gtk_assistant_set_page_type(GTK_ASSISTANT(assistant), page, GTK_ASSISTANT_PAGE_CONFIRM); - } + gtk_assistant_set_page_title(GTK_ASSISTANT(assistant), page, page_titles[i]); + gtk_assistant_set_page_type(GTK_ASSISTANT(assistant), page, page_types[i]); - if(strcmp(PAGE_REPORT, *page_names) == 0) - { - gtk_assistant_set_page_title(GTK_ASSISTANT(assistant), page, "Approve the backtrace"); - gtk_assistant_set_page_type(GTK_ASSISTANT(assistant), page, GTK_ASSISTANT_PAGE_SUMMARY); - } - g_print("added page: %s\n", *page_names); + g_print("added page: %s\n", page_names[i]); } } GtkWidget *create_assistant() { assistant = gtk_assistant_new(); - gtk_window_set_default_size(GTK_WINDOW(assistant), DEFAULT_WIDTH,DEFAULT_HEIGHT); + gtk_window_set_default_size(GTK_WINDOW(assistant), DEFAULT_WIDTH, DEFAULT_HEIGHT); g_signal_connect(G_OBJECT(assistant), "cancel", G_CALLBACK(gtk_main_quit), NULL); g_signal_connect(G_OBJECT(assistant), "close", G_CALLBACK(gtk_main_quit), NULL); builder = gtk_builder_new(); add_pages(); gtk_builder_connect_signals(builder, NULL); - return assistant; -}
\ No newline at end of file +} |