00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef CONEXUSMMSERIALCOMBOBOX_H
00020 #define CONEXUSMMSERIALCOMBOBOX_H
00021
00022 #include <gtkmm.h>
00023 #include <hal/libhal.h>
00024
00025 #include <conexus/serial.h>
00026
00027 namespace ConexusGtk {
00028
00032 class SerialComboBox : public Gtk::ComboBox
00033 {
00034 public:
00035 SerialComboBox();
00036
00037 ~SerialComboBox();
00038
00039 std::string device();
00040
00041 void set_device( const std::string& device );
00042
00043 protected:
00044 DBusError m_dbus_error;
00045 LibHalContext *m_hal_ctx;
00046
00047 bool m_hal_ctx_status;
00048
00049 void load_from_hal();
00050
00051 class ModelColumns: public Gtk::TreeModel::ColumnRecord {
00052 public:
00053 ModelColumns() {
00054 add(description); add(device); }
00055
00056 Gtk::TreeModelColumn<Glib::ustring> description;
00057 Gtk::TreeModelColumn<Glib::ustring> device;
00058 };
00059
00060 ModelColumns m_modelcolumns;
00061 Glib::RefPtr<Gtk::ListStore> m_reftreemodel;
00062
00063 };
00064
00065 }
00066
00067 #endif