From 382846248e84c478f713deabbb05a18c1a0d6951 Mon Sep 17 00:00:00 2001 From: Johannes Hofmann Date: Thu, 21 Oct 2004 17:55:36 +0000 Subject: separated model out from PSEditWidget separated model out from PSEditWidget --- src/flpsed.cxx | 59 +++++++++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 44 insertions(+), 15 deletions(-) (limited to 'src/flpsed.cxx') diff --git a/src/flpsed.cxx b/src/flpsed.cxx index eb85736..802ad94 100644 --- a/src/flpsed.cxx +++ b/src/flpsed.cxx @@ -1,5 +1,5 @@ // -// "$Id: flpsed.cxx,v 1.16 2004/10/13 18:03:08 hofmann Exp $" +// "$Id: flpsed.cxx,v 1.17 2004/10/21 19:55:36 hofmann Exp $" // // flpsed program. // @@ -202,27 +202,56 @@ Fl_Menu_Item menuitems[] = { }; int main(int argc, char** argv) { - Fl_Window window(600,700); - Fl_Menu_Bar* m = new Fl_Menu_Bar(0, 0, 600, 30); + char c, *sep, *tmp; + int err; + Fl_Window *win; + Fl_Menu_Bar* m; + Fl_Scroll *scroll; + + win = new Fl_Window(600,700); + m = new Fl_Menu_Bar(0, 0, 600, 30); m->menu(menuitems); - - Fl_Scroll scroll(0, 30, window.w(), window.h()-30); + scroll = new Fl_Scroll(0, 30, win->w(), win->h()-30); gsw_p = new PSEditor(0, 0, 700, 900); - scroll.end(); + scroll->end(); + fl_open_display(); Fl::add_handler(xev_handler); - window.resizable(scroll); - - window.end(); - window.callback((Fl_Callback *)quit_cb); - window.show(1, argv); - - + win->resizable(scroll); + + win->end(); + win->callback((Fl_Callback *)quit_cb); + win->show(1, argv); + + err = 0; + while ((c = getopt(argc, argv, "t:")) != EOF) { + switch (c) { + case 't': + tmp = strdup(optarg); + if (!tmp) { + perror("strdup"); + exit(1); + } + sep = strchr(tmp, '='); + if (!sep) { + fprintf(stderr, "Cannot parse %s\n", optarg); + free(tmp); + continue; + } + *sep = '\0'; + gsw_p->replace_tag(tmp, sep+1); + free(tmp); + break; + default: + err++; + } + } - if (argc >= 2) { - gsw_p->load(argv[1]); + if (err) { + exit(1); } + return Fl::run(); } -- cgit v1.2.3