hegyi@103: // -*- C++ -*- // hegyi@103: hegyi@103: #ifndef ALGOWIN_H hegyi@103: #define ALGOWIN_H hegyi@103: hegyi@103: class AlgoWin; hegyi@103: hegyi@103: #include hegyi@103: #include hegyi@103: #include hegyi@103: #include hegyi@103: hegyi@103: enum {GENERAL, ALGO_NUM}; // algorithm IDs; hegyi@103: hegyi@103: class AlgoWin : public Gtk::Dialog hegyi@103: { hegyi@103: private: hegyi@103: AlgoBox * ab; hegyi@103: hegyi@103: protected: hegyi@103: sigc::signal signal_closed; hegyi@103: hegyi@103: public: hegyi@103: sigc::signal signal_closing() hegyi@103: { hegyi@103: return signal_closed; hegyi@103: } hegyi@103: hegyi@103: AlgoWin(int algoid, std::vector tabnames) hegyi@103: { hegyi@103: Gtk::VBox * vbox=get_vbox(); hegyi@103: hegyi@103: ab=new AlgoBox(tabnames); hegyi@103: hegyi@103: vbox->pack_start(*ab); hegyi@103: hegyi@103: add_button(Gtk::Stock::OK, Gtk::RESPONSE_OK); hegyi@103: hegyi@103: show_all_children(); hegyi@103: }; hegyi@103: hegyi@103: void update_tablist(std::vector tabnames) hegyi@103: { hegyi@103: ab->update_tablist(tabnames); hegyi@103: } hegyi@103: hegyi@103: void on_hide() hegyi@103: { hegyi@103: signal_closed.emit(this); hegyi@103: Gtk::Dialog::on_hide(); hegyi@103: } hegyi@103: }; hegyi@103: #endif //ALGOWIN_H