summaryrefslogtreecommitdiff
path: root/source4/gtk/tools/gregedit.c
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2005-02-15 11:57:43 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:10:43 -0500
commit2251186b5bd164f1ad7707a428d0b6c91297f573 (patch)
tree8e0674ec2f688aa2f90856e5cfca50b034eefc9e /source4/gtk/tools/gregedit.c
parent39713c703daa75becef7ae30da6930d80216e29c (diff)
downloadsamba-2251186b5bd164f1ad7707a428d0b6c91297f573.tar.gz
samba-2251186b5bd164f1ad7707a428d0b6c91297f573.tar.bz2
samba-2251186b5bd164f1ad7707a428d0b6c91297f573.zip
r5409: - add a gtk events plugin
- this is used in our gtk apps - make the main() functions of the gtk apps look more simular (we need to get rid of the globals in gregedit!) metze (This used to be commit 1051f9b32f4a5c69a1a6928e6849c8ada047032e)
Diffstat (limited to 'source4/gtk/tools/gregedit.c')
-rw-r--r--source4/gtk/tools/gregedit.c48
1 files changed, 23 insertions, 25 deletions
diff --git a/source4/gtk/tools/gregedit.c b/source4/gtk/tools/gregedit.c
index 918ebd6945..9d0a87f2a7 100644
--- a/source4/gtk/tools/gregedit.c
+++ b/source4/gtk/tools/gregedit.c
@@ -660,7 +660,7 @@ gboolean on_key_activate(GtkTreeSelection *selection,
return TRUE;
}
-static GtkWidget* create_mainwin (void)
+static GtkWidget* create_mainwindow(void)
{
GtkWidget *vbox1;
GtkWidget *menubar;
@@ -955,43 +955,41 @@ static GtkWidget* create_savefilewin (void)
return savefilewin;
}
+static int gregedit_load_defaults(void)
+{
+ WERROR error = reg_open_local(&registry);
+ if(!W_ERROR_IS_OK(error)) {
+ gtk_show_werror(mainwin, error);
+ return -1;
+ }
+ registry_load_root();
+
+ return 0;
+}
+
int main(int argc, char *argv[])
{
- poptContext pc;
- WERROR error;
- int opt;
- struct poptOption long_options[] = {
- POPT_AUTOHELP
- POPT_TABLEEND
- };
+ int ret;
gregedit_init_subsystems;
-
lp_load(dyn_CONFIGFILE,True,False,False);
load_interfaces();
+ setup_logging(argv[0], DEBUG_STDERR);
- gtk_init (&argc, &argv);
mem_ctx = talloc_init("gregedit");
- pc = poptGetContext(argv[0], argc, (const char **) argv, long_options,0);
+ gtk_init(&argc, &argv);
+ mainwin = create_mainwindow();
+ gtk_widget_show_all(mainwin);
- while((opt = poptGetNextOpt(pc)) != -1) {
- }
+ ret = gregedit_load_defaults();
+ if (ret != 0) goto failed;
- error = reg_open_local(&registry);
- if(!W_ERROR_IS_OK(error)) {
- gtk_show_werror(mainwin, error);
- return -1;
- }
- mainwin = create_mainwin ();
- registry_load_root();
-
- gtk_widget_show_all (mainwin);
-
- gtk_main ();
+ ret = gtk_event_loop();
+failed:
talloc_free(mem_ctx);
- return 0;
+ return ret;
}