Ardour  9.0-pre0-582-g084a23a80d
treestore.h
Go to the documentation of this file.
1 // -*- c++ -*-
2 // Generated by gmmproc 2.45.3 -- DO NOT MODIFY!
3 #ifndef _GTKMM_TREESTORE_H
4 #define _GTKMM_TREESTORE_H
5 
6 
7 #include <glibmm/ustring.h>
8 #include <sigc++/sigc++.h>
9 
10 /* $Id: treestore.hg,v 1.5 2004/04/03 12:53:49 murrayc Exp $ */
11 
12 /* Copyright(C) 1998-2002 The gtkmm Development Team
13  *
14  * This library is free software; you can redistribute it and/or
15  * modify it under the terms of the GNU Lesser General Public
16  * License as published by the Free Software Foundation; either
17  * version 2.1 of the License, or(at your option) any later version.
18  *
19  * This library is distributed in the hope that it will be useful,
20  * but WITHOUT ANY WARRANTY; without even the implied warranty of
21  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
22  * Lesser General Public License for more details.
23  *
24  * You should have received a copy of the GNU Lesser General Public
25  * License along with this library; if not, write to the Free
26  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
27  */
28 
29 // We couldn't include it in treemodel.h, but doing it here makes it easier for people.
30 #include <gtkmm/treepath.h>
31 
32 #include <gtkmm/treeiter.h>
33 #include <gtkmm/treemodel.h>
34 #include <gtkmm/treesortable.h>
35 #include <gtkmm/treedragdest.h>
36 #include <gtkmm/treedragsource.h>
37 
38 
39 #ifndef DOXYGEN_SHOULD_SKIP_THIS
40 typedef struct _GtkTreeStore GtkTreeStore;
42 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
43 
44 
45 #ifndef DOXYGEN_SHOULD_SKIP_THIS
46 namespace Gtk
47 { class TreeStore_Class; } // namespace Gtk
48 #endif //DOXYGEN_SHOULD_SKIP_THIS
49 
50 namespace Gtk
51 {
52 
57 class TreeStore :
58  public Glib::Object,
59  public Gtk::TreeModel,
60  public TreeSortable,
61  public TreeDragSource,
62  public TreeDragDest
63 {
64 
65 #ifndef DOXYGEN_SHOULD_SKIP_THIS
66 
67 public:
68  typedef TreeStore CppObjectType;
69  typedef TreeStore_Class CppClassType;
70  typedef GtkTreeStore BaseObjectType;
71  typedef GtkTreeStoreClass BaseClassType;
72 
73 private: friend class TreeStore_Class;
74  static CppClassType treestore_class_;
75 
76 private:
77  // noncopyable
78  TreeStore(const TreeStore&);
79  TreeStore& operator=(const TreeStore&);
80 
81 protected:
82  explicit TreeStore(const Glib::ConstructParams& construct_params);
83  explicit TreeStore(GtkTreeStore* castitem);
84 
85 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
86 
87 public:
88  virtual ~TreeStore();
89 
92  static GType get_type() G_GNUC_CONST;
93 
94 #ifndef DOXYGEN_SHOULD_SKIP_THIS
95 
96 
97  static GType get_base_type() G_GNUC_CONST;
98 #endif
99 
101  GtkTreeStore* gobj() { return reinterpret_cast<GtkTreeStore*>(gobject_); }
102 
104  const GtkTreeStore* gobj() const { return reinterpret_cast<GtkTreeStore*>(gobject_); }
105 
108 
109 private:
110 
111 
112 protected:
120 
121  explicit TreeStore(const TreeModelColumnRecord& columns);
122 
123 public:
129  static Glib::RefPtr<TreeStore> create(const TreeModelColumnRecord& columns);
130 
131 
133 
134 
139  iterator erase(const iterator& iter);
140 
141 
142  //TODO: Make this documentation similar to documentation for Standard C++ insert methods.
151  iterator insert(const iterator& iter);
152 
153 
163 
164 
172 
181 
182 
190 
199 
200 
207  void iter_swap(const iterator& a, const iterator& b);
208 
215  void move(const iterator& source, const iterator& destination);
216 
220  void reorder(const TreeNodeChildren& node, const Glib::ArrayHandle<int>& new_order);
221 
222 
225  void clear();
226 
234  bool is_ancestor(const iterator& iter, const iterator& descendant) const;
235 
242  int iter_depth(const iterator& iter) const;
243 
244 
253  bool iter_is_valid(const iterator& iter) const;
254 
255 protected:
256  virtual void set_value_impl(const iterator& row, int column, const Glib::ValueBase& value);
257 
258 
259 public:
260 
261 public:
262  //C++ methods used to invoke GTK+ virtual functions:
263 
264 protected:
265  //GTK+ Virtual Functions (override these to change behaviour):
266 
267  //Default Signal Handlers::
268 
269 
270 };
271 
272 } // namespace Gtk
273 
274 
275 namespace Glib
276 {
285  Glib::RefPtr<Gtk::TreeStore> wrap(GtkTreeStore* object, bool take_copy = false);
286 }
287 
288 
289 #endif /* _GTKMM_TREESTORE_H */
290 
TreeStore(const TreeModelColumnRecord &columns)
GtkTreeStore * gobj_copy()
Provides access to the underlying C instance. The caller is responsible for unrefing it....
GtkTreeStore * gobj()
Provides access to the underlying C GObject.
Definition: treestore.h:101
iterator append()
static GType get_type() G_GNUC_CONST
iterator append(const TreeNodeChildren &node)
static Glib::RefPtr< TreeStore > create(const TreeModelColumnRecord &columns)
iterator prepend()
int iter_depth(const iterator &iter) const
bool iter_is_valid(const iterator &iter) const
virtual void set_value_impl(const iterator &row, int column, const Glib::ValueBase &value)
Glib::RefPtr< Gtk::TreeStore > wrap(GtkTreeStore *object, bool take_copy=false)
iterator erase(const iterator &iter)
virtual ~TreeStore()
iterator insert_after(const iterator &iter)
void reorder(const TreeNodeChildren &node, const Glib::ArrayHandle< int > &new_order)
void iter_swap(const iterator &a, const iterator &b)
iterator prepend(const TreeNodeChildren &node)
iterator insert(const iterator &iter)
const GtkTreeStore * gobj() const
Provides access to the underlying C GObject.
Definition: treestore.h:104
void set_column_types(const TreeModelColumnRecord &columns)
bool is_ancestor(const iterator &iter, const iterator &descendant) const
void move(const iterator &source, const iterator &destination)
Definition: ardour_ui.h:188