00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
00022 #ifndef _FL_HELP_DIALOG_H_
00023 #define _FL_HELP_DIALOG_H_
00024 
00025 #include "Fl.h"
00026 #include "Fl_Main_Window.h"
00027 #include "Fl_Menu_Bar.h"
00028 #include "Fl_Item_Group.h"
00029 #include "Fl_Item.h"
00030 #include "Fl_Group.h"
00031 #include "Fl_Button.h"
00032 #include "Fl_File_Dialog.h"
00033 #include "Fl_Simple_Html.h"
00034 
00036 class Fl_Help_Dialog : public Fl_Main_Window
00037 {
00038 public:
00039     Fl_Help_Dialog(int x, int y, int w, int h, const char *l);
00040     Fl_Help_Dialog(int w, int h, const char *l);
00041     virtual ~Fl_Help_Dialog();
00042 
00043     void init();
00044     void make_group(int w, int h);
00045 
00046     void load(const char *f) { load_file(f); }
00047     void load_file(const char *f);
00048     void previous_url();
00049     void next_url();
00050     void open_file();
00051 
00052     
00053     void push_prev(const char *url);
00054     char *pop_prev();
00055 
00056     void push_next(const char *url);
00057     char *pop_next();
00058 
00059 private:
00060     Fl_Simple_Html *htmlWidget;
00061 
00062     static void cb_close(Fl_Widget*, void*);
00063     static void cb_back(Fl_Button*, void*);
00064     static void cb_next(Fl_Button*, void*);
00065     static void cb_open(Fl_Button*, void*);
00066     static void cb_html_link(Fl_Widget *w, void *d);
00067 
00068     char *prev_hist[10];
00069     char *next_hist[10];
00070 
00071     Fl_Button *back, *next;
00072 };
00073 
00074 #endif