00001
00002
00003 #ifndef _LIBGNOMEUIMM_FILE_ENTRY_H
00004 #define _LIBGNOMEUIMM_FILE_ENTRY_H
00005
00006 #include <glibmm.h>
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #include <gtkmm/box.h>
00031 #include <gtkmm/editable.h>
00032
00033
00034
00035 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00036 typedef struct _GnomeFileEntry GnomeFileEntry;
00037 typedef struct _GnomeFileEntryClass GnomeFileEntryClass;
00038 #endif
00039
00040
00041 namespace Gnome
00042 {
00043
00044 namespace UI
00045 { class FileEntry_Class; }
00046
00047 }
00048 namespace Gnome
00049 {
00050
00051 namespace UI
00052 {
00053
00054
00055 class FileEntry
00056 : public Gtk::VBox,
00057 public Gtk::Editable
00058 {
00059 public:
00060 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00061 typedef FileEntry CppObjectType;
00062 typedef FileEntry_Class CppClassType;
00063 typedef GnomeFileEntry BaseObjectType;
00064 typedef GnomeFileEntryClass BaseClassType;
00065 #endif
00066
00067 virtual ~FileEntry();
00068
00069 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00070
00071 private:
00072 friend class FileEntry_Class;
00073 static CppClassType fileentry_class_;
00074
00075
00076 FileEntry(const FileEntry&);
00077 FileEntry& operator=(const FileEntry&);
00078
00079 protected:
00080 explicit FileEntry(const Glib::ConstructParams& construct_params);
00081 explicit FileEntry(GnomeFileEntry* castitem);
00082
00083 #endif
00084
00085 public:
00086 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00087 static GType get_type() G_GNUC_CONST;
00088 static GType get_base_type() G_GNUC_CONST;
00089 #endif
00090
00092 GnomeFileEntry* gobj() { return reinterpret_cast<GnomeFileEntry*>(gobject_); }
00093
00095 const GnomeFileEntry* gobj() const { return reinterpret_cast<GnomeFileEntry*>(gobject_); }
00096
00097
00098 public:
00099
00100
00101 protected:
00102
00103
00104
00105 virtual void on_browse_clicked();
00106 virtual void on_activate();
00107
00108
00109 private:
00110
00111
00112 public:
00113 FileEntry();
00114
00115 FileEntry(const Glib::ustring& history_id, const Glib::ustring& browse_dialog_title);
00116
00117
00118 Gtk::Widget* gnome_entry();
00119
00120 Gtk::Widget* gtk_entry();
00121
00122
00123 void set_title (const Glib::ustring& browse_dialog_title);
00124
00125 void set_default_path(const Glib::ustring& path);
00126
00127 void set_directory_entry(bool directory_entry = true);
00128
00129 bool get_directory_entry() const;
00130
00131 Glib::ustring get_full_path(bool file_must_exist) const;
00132
00133 void set_filename(const Glib::ustring& filename);
00134
00135 void set_modal(bool is_modal = true);
00136
00137 bool get_modal() const;
00138
00139
00144 Glib::SignalProxy0<void> signal_browse_clicked();
00145 ;
00146
00151 Glib::SignalProxy0<void> signal_activate();
00152 ;
00153
00154
00155 };
00156
00157 }
00158 }
00159
00160
00161 namespace Glib
00162 {
00164 Gnome::UI::FileEntry* wrap(GnomeFileEntry* object, bool take_copy = false);
00165 }
00166 #endif
00167