summaryrefslogtreecommitdiff
path: root/src/flpsed.cxx
diff options
context:
space:
mode:
authorJohannes Hofmann <johannes.hofmann@gmx.de>2004-10-21 17:55:36 +0000
committerJohannes Hofmann <johannes.hofmann@gmx.de>2004-10-21 17:55:36 +0000
commit382846248e84c478f713deabbb05a18c1a0d6951 (patch)
treeb58f10daa02582f2040acb00459f665ec655d9cf /src/flpsed.cxx
parentaa60a0e14a2f186f1b8d282fdc377889a32fada9 (diff)
separated model out from PSEditWidget
separated model out from PSEditWidget
Diffstat (limited to 'src/flpsed.cxx')
-rw-r--r--src/flpsed.cxx59
1 files changed, 44 insertions, 15 deletions
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();
}