3 #ifndef _LIBGNOMEUIMM_ICON_LIST_H 4 #define _LIBGNOMEUIMM_ICON_LIST_H 35 #include <libgnomecanvasmm/canvas.h> 36 #include <libgnomecanvasmm/pixbuf.h> 37 #include <gtkmm/container.h> 38 #include <glibmm/helperlist.h> 39 #include <libgnomeui/gnome-icon-list.h> 42 #ifndef DOXYGEN_SHOULD_SKIP_THIS 43 typedef struct _GnomeIconList GnomeIconList;
44 typedef struct _GnomeIconListClass GnomeIconListClass;
52 {
class IconList_Class; }
61 namespace IconList_Helpers
65 class SelectionList :
public Glib::HelperList< int, int, Glib::List_Iterator< int > >
75 typedef Glib::HelperList< int, int, Glib::List_Iterator< int > >
type_base;
77 GnomeIconList* gparent();
78 const GnomeIconList* gparent()
const;
80 virtual GList*& glist()
const;
82 virtual void erase(iterator start, iterator stop);
83 virtual iterator erase(iterator);
84 virtual void remove(const_reference);
87 reference operator[](size_type l)
const;
90 iterator insert(iterator position, element_type& e);
92 template <
class InputIterator>
93 inline void insert(iterator position, InputIterator first, InputIterator last)
95 for(;first != last; ++first)
96 position = insert(position, *first);
100 { insert(begin(), e); }
102 { insert(end(), e); }
119 #ifndef DOXYGEN_SHOULD_SKIP_THIS 121 typedef IconList_Class CppClassType;
122 typedef GnomeIconList BaseObjectType;
123 typedef GnomeIconListClass BaseClassType;
128 #ifndef DOXYGEN_SHOULD_SKIP_THIS 131 friend class IconList_Class;
132 static CppClassType iconlist_class_;
139 explicit IconList(
const Glib::ConstructParams& construct_params);
140 explicit IconList(GnomeIconList* castitem);
145 #ifndef DOXYGEN_SHOULD_SKIP_THIS 146 static GType get_type() G_GNUC_CONST;
149 static GType get_base_type() G_GNUC_CONST;
153 GnomeIconList*
gobj() {
return reinterpret_cast<GnomeIconList*
>(gobject_); }
156 const GnomeIconList*
gobj()
const {
return reinterpret_cast<GnomeIconList*
>(gobject_); }
161 #ifdef GLIBMM_VFUNCS_ENABLED 162 #endif //GLIBMM_VFUNCS_ENABLED 166 #ifdef GLIBMM_VFUNCS_ENABLED 167 #endif //GLIBMM_VFUNCS_ENABLED 170 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED 171 virtual void on_select_icon(
int num, GdkEvent* event);
172 virtual void on_unselect_icon(
int num, GdkEvent* event);
173 virtual void on_focus_icon(
int num);
174 virtual bool on_text_changed(
int num,
const char* new_text);
175 virtual void on_move_cursor(Gtk::DirectionType dir,
bool clear_selection);
176 virtual void on_toggle_cursor_selection();
177 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED 185 explicit IconList(guint icon_width = 80,
bool is_editable =
false);
188 void set_hadjustment(Gtk::Adjustment& hadj);
190 void set_vadjustment(Gtk::Adjustment& vadj);
196 void insert(
int pos,
const Glib::ustring& icon_filename,
const Glib::ustring& text);
198 void insert(
int idx,
const Glib::RefPtr<Gdk::Pixbuf>& im,
const Glib::ustring& icon_filename,
const Glib::ustring& text);
200 int append(
const Glib::ustring& icon_filename,
const Glib::ustring& text);
202 int append(
const Glib::RefPtr<Gdk::Pixbuf>& im,
const Glib::ustring& icon_filename,
const Glib::ustring& text);
206 void remove(
int pos);
208 guint get_num_icons()
const;
210 Gtk::SelectionMode get_selection_mode()
const;
212 void set_selection_mode(Gtk::SelectionMode mode);
214 void select_icon(
int idx);
216 void unselect_icon(
int idx);
222 void focus_icon(gint idx);
224 void set_icon_width (
int w);
226 void set_row_spacing(
int spacing);
228 void set_col_spacing(
int spacing);
230 void set_text_spacing(
int spacing);
232 void set_icon_border(
int spacing);
234 void set_separators(
const Glib::ustring& sep);
236 Glib::ustring get_icon_filename(
int idx)
const;
238 int find_icon_from_filename(
const Glib::ustring& filename)
const;
240 void set_icon_data(
int pos, gpointer data);
243 int find_icon_from_data(gpointer data)
const;
245 gpointer get_icon_data(
int pos);
247 void moveto(
int pos,
double yalign);
249 Gtk::Visibility icon_is_visible(
int pos);
251 int get_icon_at(
int x,
int y)
const;
253 int get_items_per_line()
const;
258 Gnome::Canvas::Pixbuf* get_icon_pixbuf_item(
int idx);
261 SelectionList& selection();
262 const SelectionList& selection()
const;
270 Glib::SignalProxy2< void,int,GdkEvent* > signal_select_icon();
278 Glib::SignalProxy2< void,int,GdkEvent* > signal_unselect_icon();
287 Glib::SignalProxy1< void,int > signal_focus_icon();
296 Glib::SignalProxy2< bool,int,const char* > signal_text_changed();
306 Glib::SignalProxy2< void,Gtk::DirectionType,bool > signal_move_cursor();
314 Glib::SignalProxy0< void > signal_toggle_cursor_selection();
318 #ifndef DOXYGEN_SHOULD_SKIP_THIS 319 mutable SelectionList selection_proxy_;
void push_front(element_type &e)
Definition: icon-list.h:99
void push_back(element_type &e)
Definition: icon-list.h:101
Definition: icon-list.h:65
Definition: icon-textitem.h:57
Glib::HelperList< int, int, Glib::List_Iterator< int > > type_base
Definition: icon-list.h:75
const GnomeIconList * gobj() const
Provides access to the underlying C GtkObject.
Definition: icon-list.h:156
Definition: icon-list.h:116
GnomeIconList * gobj()
Provides access to the underlying C GtkObject.
Definition: icon-list.h:153
IconList_Helpers::SelectionList SelectionList
Definition: icon-list.h:260
GList * glist_
Definition: icon-list.h:106
virtual ~SelectionList()
Definition: icon-list.h:71
void insert(iterator position, InputIterator first, InputIterator last)
Definition: icon-list.h:93