1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/algowin.h Tue Jan 03 17:30:22 2006 +0000
1.3 @@ -0,0 +1,53 @@
1.4 +// -*- C++ -*- //
1.5 +
1.6 +#ifndef ALGOWIN_H
1.7 +#define ALGOWIN_H
1.8 +
1.9 +class AlgoWin;
1.10 +
1.11 +#include <all_include.h>
1.12 +#include <algobox.h>
1.13 +#include <libgnomecanvasmm.h>
1.14 +#include <libgnomecanvasmm/polygon.h>
1.15 +
1.16 +enum {GENERAL, ALGO_NUM}; // algorithm IDs;
1.17 +
1.18 +class AlgoWin : public Gtk::Dialog
1.19 +{
1.20 +private:
1.21 + AlgoBox * ab;
1.22 +
1.23 +protected:
1.24 + sigc::signal<void, AlgoWin *> signal_closed;
1.25 +
1.26 +public:
1.27 + sigc::signal<void, AlgoWin *> signal_closing()
1.28 + {
1.29 + return signal_closed;
1.30 + }
1.31 +
1.32 + AlgoWin(int algoid, std::vector<std::string> tabnames)
1.33 + {
1.34 + Gtk::VBox * vbox=get_vbox();
1.35 +
1.36 + ab=new AlgoBox(tabnames);
1.37 +
1.38 + vbox->pack_start(*ab);
1.39 +
1.40 + add_button(Gtk::Stock::OK, Gtk::RESPONSE_OK);
1.41 +
1.42 + show_all_children();
1.43 + };
1.44 +
1.45 + void update_tablist(std::vector<std::string> tabnames)
1.46 + {
1.47 + ab->update_tablist(tabnames);
1.48 + }
1.49 +
1.50 + void on_hide()
1.51 + {
1.52 + signal_closed.emit(this);
1.53 + Gtk::Dialog::on_hide();
1.54 + }
1.55 +};
1.56 +#endif //ALGOWIN_H