rollback to 3428, before the mysterious removal of libs/* at 3431/3432
[ardour.git] / libs / gtkmm2 / atk / atkmm / object.h
1 // -*- c++ -*-
2 // Generated by gtkmmproc -- DO NOT MODIFY!
3 #ifndef _ATKMM_OBJECT_H
4 #define _ATKMM_OBJECT_H
5
6
7 #include <glibmm.h>
8
9 /* $Id$ */
10
11 /* Copyright (C) 1998-2002 The gtkmm Development Team
12  *
13  * This library is free software; you can redistribute it and/or
14  * modify it under the terms of the GNU Library General Public
15  * License as published by the Free Software Foundation; either
16  * version 2 of the License, or (at your option) any later version.
17  *
18  * This library is distributed in the hope that it will be useful,
19  * but WITHOUT ANY WARRANTY; without even the implied warranty of
20  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
21  * Library General Public License for more details.
22  *
23  * You should have received a copy of the GNU Library General Public
24  * License along with this library; if not, write to the Free
25  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
26  */
27
28
29 #include <atkmm/component.h>
30 #include <atkmm/relation.h>
31
32 #ifndef DOXYGEN_SHOULD_SKIP_THIS
33 extern "C" { typedef struct _AtkPropertyValues AtkPropertyValues; }
34 #endif
35
36
37 #ifndef DOXYGEN_SHOULD_SKIP_THIS
38 typedef struct _AtkObject AtkObject;
39 typedef struct _AtkObjectClass AtkObjectClass;
40 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
41
42
43 namespace Atk
44 { class Object_Class; } // namespace Atk
45 namespace Atk
46 {
47
48
49 /** @addtogroup atkmmEnums Enums and Flags */
50
51 /**
52  * @ingroup atkmmEnums
53  */
54 enum Role
55 {
56   ROLE_INVALID,
57   ROLE_ACCEL_LABEL,
58   ROLE_ALERT,
59   ROLE_ANIMATION,
60   ROLE_ARROW,
61   ROLE_CALENDAR,
62   ROLE_CANVAS,
63   ROLE_CHECK_BOX,
64   ROLE_CHECK_MENU_ITEM,
65   ROLE_COLOR_CHOOSER,
66   ROLE_COLUMN_HEADER,
67   ROLE_COMBO_BOX,
68   ROLE_DATE_EDITOR,
69   ROLE_DESKTOP_ICON,
70   ROLE_DESKTOP_FRAME,
71   ROLE_DIAL,
72   ROLE_DIALOG,
73   ROLE_DIRECTORY_PANE,
74   ROLE_DRAWING_AREA,
75   ROLE_FILE_CHOOSER,
76   ROLE_FILLER,
77   ROLE_FONT_CHOOSER,
78   ROLE_FRAME,
79   ROLE_GLASS_PANE,
80   ROLE_HTML_CONTAINER,
81   ROLE_ICON,
82   ROLE_IMAGE,
83   ROLE_INTERNAL_FRAME,
84   ROLE_LABEL,
85   ROLE_LAYERED_PANE,
86   ROLE_LIST,
87   ROLE_LIST_ITEM,
88   ROLE_MENU,
89   ROLE_MENU_BAR,
90   ROLE_MENU_ITEM,
91   ROLE_OPTION_PANE,
92   ROLE_PAGE_TAB,
93   ROLE_PAGE_TAB_LIST,
94   ROLE_PANEL,
95   ROLE_PASSWORD_TEXT,
96   ROLE_POPUP_MENU,
97   ROLE_PROGRESS_BAR,
98   ROLE_PUSH_BUTTON,
99   ROLE_RADIO_BUTTON,
100   ROLE_RADIO_MENU_ITEM,
101   ROLE_ROOT_PANE,
102   ROLE_ROW_HEADER,
103   ROLE_SCROLL_BAR,
104   ROLE_SCROLL_PANE,
105   ROLE_SEPARATOR,
106   ROLE_SLIDER,
107   ROLE_SPLIT_PANE,
108   ROLE_SPIN_BUTTON,
109   ROLE_STATUSBAR,
110   ROLE_TABLE,
111   ROLE_TABLE_CELL,
112   ROLE_TABLE_COLUMN_HEADER,
113   ROLE_TABLE_ROW_HEADER,
114   ROLE_TEAR_OFF_MENU_ITEM,
115   ROLE_TERMINAL,
116   ROLE_TEXT,
117   ROLE_TOGGLE_BUTTON,
118   ROLE_TOOL_BAR,
119   ROLE_TOOL_TIP,
120   ROLE_TREE,
121   ROLE_TREE_TABLE,
122   ROLE_UNKNOWN,
123   ROLE_VIEWPORT,
124   ROLE_WINDOW,
125   ROLE_HEADER,
126   ROLE_FOOTER,
127   ROLE_PARAGRAPH,
128   ROLE_RULER,
129   ROLE_APPLICATION,
130   ROLE_AUTOCOMPLETE,
131   ROLE_EDITBAR,
132   ROLE_EMBEDDED,
133   ROLE_LAST_DEFINED
134 };
135
136 } // namespace Atk
137
138
139 #ifndef DOXYGEN_SHOULD_SKIP_THIS
140 namespace Glib
141 {
142
143 template <>
144 class Value<Atk::Role> : public Glib::Value_Enum<Atk::Role>
145 {
146 public:
147   static GType value_type() G_GNUC_CONST;
148 };
149
150 } // namespace Glib
151 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
152
153
154 namespace Atk
155 {
156
157
158 class RelationSet;
159 class Relation;
160 class StateSet;
161
162 typedef guint64 State;
163
164 /** The base object class for the Accessibility Toolkit API.
165  * This class is the primary class for accessibility support via the Accessibility ToolKit (ATK). Objects which are
166  * instances of Atk::Object (or instances of Atk::Object-derived types) are queried for properties which relate basic
167  * (and generic) properties of a UI component such as name and description. Instances of Atk::Object may also be queried
168  * as to whether they implement other ATK interfaces (e.g. Atk::Action, Atk::Component, etc.), as appropriate to the role
169  * which a given UI component plays in a user interface.
170  *
171  * All UI components in an application which provide useful information or services to the user must provide corresponding
172  * Atk::Object instances on request (in GTK+, for instance, usually on a call to Gtk::Widget::get_accessible()), either via
173  * ATK support built into the toolkit for the widget class or ancestor class, or in the case of custom widgets, if the
174  * inherited Atk::Object implementation is insufficient, via instances of a new Atk::Object subclass. 
175  */
176
177 class Object : public Glib::Object
178 {
179   
180 #ifndef DOXYGEN_SHOULD_SKIP_THIS
181
182 public:
183   typedef Object CppObjectType;
184   typedef Object_Class CppClassType;
185   typedef AtkObject BaseObjectType;
186   typedef AtkObjectClass BaseClassType;
187
188 private:  friend class Object_Class;
189   static CppClassType object_class_;
190
191 private:
192   // noncopyable
193   Object(const Object&);
194   Object& operator=(const Object&);
195
196 protected:
197   explicit Object(const Glib::ConstructParams& construct_params);
198   explicit Object(AtkObject* castitem);
199
200 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
201
202 public:
203   virtual ~Object();
204
205 #ifndef DOXYGEN_SHOULD_SKIP_THIS
206   static GType get_type()      G_GNUC_CONST;
207   static GType get_base_type() G_GNUC_CONST;
208 #endif
209
210   ///Provides access to the underlying C GObject.
211   AtkObject*       gobj()       { return reinterpret_cast<AtkObject*>(gobject_); }
212
213   ///Provides access to the underlying C GObject.
214   const AtkObject* gobj() const { return reinterpret_cast<AtkObject*>(gobject_); }
215
216   ///Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
217   AtkObject* gobj_copy();
218
219 private:
220
221    // see wrap_new() implementation in object.ccg
222   
223 public:
224
225   
226   /** Gets the accessible name of the accessible.
227    * @return A character string representing the accessible name of the object.
228    */
229   Glib::ustring get_name() const;
230   
231   /** Gets the accessible description of the accessible.
232    * @return A character string representing the accessible description
233    * of the accessible.
234    */
235   Glib::ustring get_description() const;
236   
237   /** Gets the accessible parent of the accessible.
238    * @return A Atk::Object representing the accessible parent of the accessible.
239    */
240   Glib::RefPtr<Atk::Object> get_parent();
241   
242   /** Gets the number of accessible children of the accessible.
243    * @return An integer representing the number of accessible children
244    * of the accessible.
245    */
246   int get_n_accessible_children() const;
247   
248   /** Gets a reference to the specified accessible child of the object.
249    * The accessible children are 0-based so the first accessible child is
250    * at index 0, the second at index 1 and so on.
251    * @param i A <tt>int</tt> representing the position of the child, starting from 0.
252    * @return An Atk::Object representing the specified accessible child
253    * of the accessible.
254    */
255   Glib::RefPtr<Atk::Object> get_accessible_child(int i);
256   
257   /** Gets the Atk::RelationSet associated with the object.
258    * @return An Atk::RelationSet representing the relation set of the object.
259    */
260   Glib::RefPtr<RelationSet> get_relation_set();
261   
262   /** Gets the role of the accessible.
263    * @return An Atk::Role which is the role of the accessible.
264    */
265   Role get_role() const;
266   
267   /** Gets a reference to the state set of the accessible; the caller must
268    * unreference it when it is no longer needed.
269    * @return A reference to an Atk::StateSet which is the state
270    * set of the accessible.
271    */
272   Glib::RefPtr<StateSet> get_state_set();
273   
274   /** Gets the 0-based index of this accessible in its parent; returns -1 if the
275    * accessible does not have an accessible parent.
276    * @return An integer which is the index of the accessible in its parent.
277    */
278   int get_index_in_parent();
279   
280   /** Sets the accessible name of the accessible.
281    * @param name A character string to be set as the accessible name.
282    */
283   void set_name(const Glib::ustring& name);
284   
285   /** Sets the accessible description of the accessible.
286    * @param description A character string to be set as the accessible description.
287    */
288   void set_description(const Glib::ustring& description);
289   
290   /** Sets the accessible parent of the accessible.
291    * @param parent An Atk::Object to be set as the accessible parent.
292    */
293   void set_parent(const Glib::RefPtr<Atk::Object>& parent);
294   
295   /** Sets the role of the accessible.
296    * @param role An Atk::Role to be set as the role.
297    */
298   void set_role(Role role);
299   //_WRAP_METHOD(guint connect_property_change_handler(AtkPropertyChangeHandler* handler), atk_object_connect_property_change_handler)
300   //_WRAP_METHOD(void remove_property_change_handler(guint handler_id), atk_object_remove_property_change_handler)
301   
302   /** Emits a state-change signal for the specified state.
303    * @param state An Atk::State whose state is changed.
304    * @param value A <tt>bool</tt> which indicates whether the state is being set on or off.
305    */
306   void notify_state_change(State state, bool value);
307
308   
309   /** Adds a relationship of the specified type with the specified target.
310    * @param relationship The Atk::RelationType of the relation.
311    * @param target The Atk::Object which is to be the target of the relation.
312    * @return <tt>true</tt> if the relationship is added.
313    */
314   bool add_relationship(RelationType relationship, const Glib::RefPtr<Object>& target);
315   
316   /** Removes a relationship of the specified type with the specified target.
317    * @param relationship The Atk::RelationType of the relation.
318    * @param target The Atk::Object which is the target of the relation to be removed.
319    * @return <tt>true</tt> if the relationship is removed.
320    */
321   bool remove_relationship(RelationType relationship, const Glib::RefPtr<Object>& target);
322
323   
324   /**
325    * @par Prototype:
326    * <tt>void on_my_%children_changed(guint change_index, gpointer changed_child)</tt>
327    */
328
329   Glib::SignalProxy2< void,guint,gpointer > signal_children_changed();
330
331   
332   /**
333    * @par Prototype:
334    * <tt>void on_my_%focus_event(bool focus_in)</tt>
335    */
336
337   Glib::SignalProxy1< void,bool > signal_focus_event();
338
339   
340   /**
341    * @par Prototype:
342    * <tt>void on_my_%property_change(AtkPropertyValues* values)</tt>
343    */
344
345   Glib::SignalProxy1< void,AtkPropertyValues* > signal_property_change();
346
347   
348   /**
349    * @par Prototype:
350    * <tt>void on_my_%state_change(const Glib::ustring& name, bool state_set)</tt>
351    */
352
353   Glib::SignalProxy2< void,const Glib::ustring&,bool > signal_state_change();
354
355   
356   /**
357    * @par Prototype:
358    * <tt>void on_my_%visible_data_changed()</tt>
359    */
360
361   Glib::SignalProxy0< void > signal_visible_data_changed();
362
363   
364   /**
365    * @par Prototype:
366    * <tt>void on_my_%active_descendant_changed(void** child)</tt>
367    */
368
369   Glib::SignalProxy1< void,void** > signal_active_descendant_changed();
370
371
372   #ifdef GLIBMM_PROPERTIES_ENABLED
373 /** Object instance's name formatted for assistive technology access.
374    *
375    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
376    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
377    * the value of the property changes.
378    */
379   Glib::PropertyProxy<Glib::ustring> property_accessible_name() ;
380 #endif //#GLIBMM_PROPERTIES_ENABLED
381
382 #ifdef GLIBMM_PROPERTIES_ENABLED
383 /** Object instance's name formatted for assistive technology access.
384    *
385    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
386    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
387    * the value of the property changes.
388    */
389   Glib::PropertyProxy_ReadOnly<Glib::ustring> property_accessible_name() const;
390 #endif //#GLIBMM_PROPERTIES_ENABLED
391
392   #ifdef GLIBMM_PROPERTIES_ENABLED
393 /** Description of an object
394    *
395    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
396    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
397    * the value of the property changes.
398    */
399   Glib::PropertyProxy<Glib::ustring> property_accessible_description() ;
400 #endif //#GLIBMM_PROPERTIES_ENABLED
401
402 #ifdef GLIBMM_PROPERTIES_ENABLED
403 /** Description of an object
404    *
405    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
406    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
407    * the value of the property changes.
408    */
409   Glib::PropertyProxy_ReadOnly<Glib::ustring> property_accessible_description() const;
410 #endif //#GLIBMM_PROPERTIES_ENABLED
411
412   #ifdef GLIBMM_PROPERTIES_ENABLED
413 /** Is used to notify that the parent has changed.
414    *
415    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
416    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
417    * the value of the property changes.
418    */
419   Glib::PropertyProxy< Glib::RefPtr<Atk::Object> > property_accessible_parent() ;
420 #endif //#GLIBMM_PROPERTIES_ENABLED
421
422 #ifdef GLIBMM_PROPERTIES_ENABLED
423 /** Is used to notify that the parent has changed.
424    *
425    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
426    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
427    * the value of the property changes.
428    */
429   Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Atk::Object> > property_accessible_parent() const;
430 #endif //#GLIBMM_PROPERTIES_ENABLED
431
432   #ifdef GLIBMM_PROPERTIES_ENABLED
433 /** Is used to notify that the value has changed.
434    *
435    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
436    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
437    * the value of the property changes.
438    */
439   Glib::PropertyProxy<double> property_accessible_value() ;
440 #endif //#GLIBMM_PROPERTIES_ENABLED
441
442 #ifdef GLIBMM_PROPERTIES_ENABLED
443 /** Is used to notify that the value has changed.
444    *
445    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
446    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
447    * the value of the property changes.
448    */
449   Glib::PropertyProxy_ReadOnly<double> property_accessible_value() const;
450 #endif //#GLIBMM_PROPERTIES_ENABLED
451
452   #ifdef GLIBMM_PROPERTIES_ENABLED
453 /** The accessible role of this object.
454    *
455    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
456    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
457    * the value of the property changes.
458    */
459   Glib::PropertyProxy<int> property_accessible_role() ;
460 #endif //#GLIBMM_PROPERTIES_ENABLED
461
462 #ifdef GLIBMM_PROPERTIES_ENABLED
463 /** The accessible role of this object.
464    *
465    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
466    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
467    * the value of the property changes.
468    */
469   Glib::PropertyProxy_ReadOnly<int> property_accessible_role() const;
470 #endif //#GLIBMM_PROPERTIES_ENABLED
471
472   #ifdef GLIBMM_PROPERTIES_ENABLED
473 /** The accessible layer of this object.
474    *
475    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
476    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
477    * the value of the property changes.
478    */
479   Glib::PropertyProxy_ReadOnly<int> property_accessible_component_layer() const;
480 #endif //#GLIBMM_PROPERTIES_ENABLED
481
482
483   #ifdef GLIBMM_PROPERTIES_ENABLED
484 /** The accessible MDI value of this object.
485    *
486    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
487    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
488    * the value of the property changes.
489    */
490   Glib::PropertyProxy_ReadOnly<int> property_accessible_component_mdi_zorder() const;
491 #endif //#GLIBMM_PROPERTIES_ENABLED
492
493
494   #ifdef GLIBMM_PROPERTIES_ENABLED
495 /** Is used to notify that the table caption has changed; this property should not be used. accessible-table-caption-object should be used instead.
496    *
497    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
498    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
499    * the value of the property changes.
500    */
501   Glib::PropertyProxy<Glib::ustring> property_accessible_table_caption() ;
502 #endif //#GLIBMM_PROPERTIES_ENABLED
503
504 #ifdef GLIBMM_PROPERTIES_ENABLED
505 /** Is used to notify that the table caption has changed; this property should not be used. accessible-table-caption-object should be used instead.
506    *
507    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
508    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
509    * the value of the property changes.
510    */
511   Glib::PropertyProxy_ReadOnly<Glib::ustring> property_accessible_table_caption() const;
512 #endif //#GLIBMM_PROPERTIES_ENABLED
513
514   #ifdef GLIBMM_PROPERTIES_ENABLED
515 /** Is used to notify that the table column description has changed.
516    *
517    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
518    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
519    * the value of the property changes.
520    */
521   Glib::PropertyProxy<Glib::ustring> property_accessible_table_column_description() ;
522 #endif //#GLIBMM_PROPERTIES_ENABLED
523
524 #ifdef GLIBMM_PROPERTIES_ENABLED
525 /** Is used to notify that the table column description has changed.
526    *
527    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
528    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
529    * the value of the property changes.
530    */
531   Glib::PropertyProxy_ReadOnly<Glib::ustring> property_accessible_table_column_description() const;
532 #endif //#GLIBMM_PROPERTIES_ENABLED
533
534   #ifdef GLIBMM_PROPERTIES_ENABLED
535 /** Is used to notify that the table column header has changed.
536    *
537    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
538    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
539    * the value of the property changes.
540    */
541   Glib::PropertyProxy< Glib::RefPtr<Atk::Object> > property_accessible_table_column_header() ;
542 #endif //#GLIBMM_PROPERTIES_ENABLED
543
544 #ifdef GLIBMM_PROPERTIES_ENABLED
545 /** Is used to notify that the table column header has changed.
546    *
547    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
548    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
549    * the value of the property changes.
550    */
551   Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Atk::Object> > property_accessible_table_column_header() const;
552 #endif //#GLIBMM_PROPERTIES_ENABLED
553
554   #ifdef GLIBMM_PROPERTIES_ENABLED
555 /** Is used to notify that the table row description has changed.
556    *
557    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
558    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
559    * the value of the property changes.
560    */
561   Glib::PropertyProxy<Glib::ustring> property_accessible_table_row_description() ;
562 #endif //#GLIBMM_PROPERTIES_ENABLED
563
564 #ifdef GLIBMM_PROPERTIES_ENABLED
565 /** Is used to notify that the table row description has changed.
566    *
567    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
568    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
569    * the value of the property changes.
570    */
571   Glib::PropertyProxy_ReadOnly<Glib::ustring> property_accessible_table_row_description() const;
572 #endif //#GLIBMM_PROPERTIES_ENABLED
573
574   #ifdef GLIBMM_PROPERTIES_ENABLED
575 /** Is used to notify that the table row header has changed.
576    *
577    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
578    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
579    * the value of the property changes.
580    */
581   Glib::PropertyProxy< Glib::RefPtr<Atk::Object> > property_accessible_table_row_header() ;
582 #endif //#GLIBMM_PROPERTIES_ENABLED
583
584 #ifdef GLIBMM_PROPERTIES_ENABLED
585 /** Is used to notify that the table row header has changed.
586    *
587    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
588    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
589    * the value of the property changes.
590    */
591   Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Atk::Object> > property_accessible_table_row_header() const;
592 #endif //#GLIBMM_PROPERTIES_ENABLED
593
594   #ifdef GLIBMM_PROPERTIES_ENABLED
595 /** Is used to notify that the table summary has changed.
596    *
597    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
598    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
599    * the value of the property changes.
600    */
601   Glib::PropertyProxy< Glib::RefPtr<Atk::Object> > property_accessible_table_summary() ;
602 #endif //#GLIBMM_PROPERTIES_ENABLED
603
604 #ifdef GLIBMM_PROPERTIES_ENABLED
605 /** Is used to notify that the table summary has changed.
606    *
607    * You rarely need to use properties because there are get_ and set_ methods for almost all of them.
608    * @return A PropertyProxy that allows you to get or set the property of the value, or receive notification when
609    * the value of the property changes.
610    */
611   Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Atk::Object> > property_accessible_table_summary() const;
612 #endif //#GLIBMM_PROPERTIES_ENABLED
613
614
615 public:
616
617 public:
618   //C++ methods used to invoke GTK+ virtual functions:
619 #ifdef GLIBMM_VFUNCS_ENABLED
620 #endif //GLIBMM_VFUNCS_ENABLED
621
622 protected:
623   //GTK+ Virtual Functions (override these to change behaviour):
624 #ifdef GLIBMM_VFUNCS_ENABLED
625 #endif //GLIBMM_VFUNCS_ENABLED
626
627   //Default Signal Handlers::
628 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
629   virtual void on_children_changed(guint change_index, gpointer changed_child);
630   virtual void on_focus_event(bool focus_in);
631   virtual void on_property_change(AtkPropertyValues* values);
632   virtual void on_state_change(const Glib::ustring& name, bool state_set);
633   virtual void on_visible_data_changed();
634   virtual void on_active_descendant_changed(void** child);
635 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
636
637
638 };
639
640 } // namespace Atk
641
642
643 namespace Glib
644 {
645   /** A Glib::wrap() method for this object.
646    * 
647    * @param object The C instance.
648    * @param take_copy False if the result should take ownership of the C instance. True if it should take a new copy or ref.
649    * @result A C++ instance that wraps this C instance.
650    *
651    * @relates Atk::Object
652    */
653   Glib::RefPtr<Atk::Object> wrap(AtkObject* object, bool take_copy = false);
654 }
655
656
657 #endif /* _ATKMM_OBJECT_H */
658