00001
00002
00003 #ifndef _HILDON_LIBSMM_APPVIEW_H
00004 #define _HILDON_LIBSMM_APPVIEW_H
00005
00006
00007 #include <glibmm.h>
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/bin.h>
00031 #include <gtkmm/menu.h>
00032 #include <gtkmm/adjustment.h>
00033
00034
00035 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00036 typedef struct _HildonAppView HildonAppView;
00037 typedef struct _HildonAppViewClass HildonAppViewClass;
00038 #endif
00039
00040
00041 namespace Hildon
00042 { class AppView_Class; }
00043 namespace Hildon
00044 {
00045
00051 class AppView : public Gtk::Bin
00052 {
00053 public:
00054 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00055 typedef AppView CppObjectType;
00056 typedef AppView_Class CppClassType;
00057 typedef HildonAppView BaseObjectType;
00058 typedef HildonAppViewClass BaseClassType;
00059 #endif
00060
00061 virtual ~AppView();
00062
00063 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00064
00065 private:
00066 friend class AppView_Class;
00067 static CppClassType appview_class_;
00068
00069
00070 AppView(const AppView&);
00071 AppView& operator=(const AppView&);
00072
00073 protected:
00074 explicit AppView(const Glib::ConstructParams& construct_params);
00075 explicit AppView(HildonAppView* castitem);
00076
00077 #endif
00078
00079 public:
00080 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00081 static GType get_type() G_GNUC_CONST;
00082 static GType get_base_type() G_GNUC_CONST;
00083 #endif
00084
00086 HildonAppView* gobj() { return reinterpret_cast<HildonAppView*>(gobject_); }
00087
00089 const HildonAppView* gobj() const { return reinterpret_cast<HildonAppView*>(gobject_); }
00090
00091
00092 public:
00093
00094 #ifdef GLIBMM_VFUNCS_ENABLED
00095 #endif //GLIBMM_VFUNCS_ENABLED
00096
00097 protected:
00098
00099 #ifdef GLIBMM_VFUNCS_ENABLED
00100 #endif //GLIBMM_VFUNCS_ENABLED
00101
00102
00103 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00104 virtual void on_toolbar_changed();
00105 virtual void on_toolbar_toggle_request();
00106 virtual void on_fullscreen_state_change(bool is_fullscreen);
00107 virtual void on_title_change();
00108 virtual void on_switched_to();
00109 virtual void on_switched_from();
00110 virtual void on_increase_button_event(guint newkeytype);
00111 virtual void on_decrease_button_event(guint newkeytype);
00112 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
00113
00114
00115 private:
00116
00117 public:
00118 explicit AppView(const Glib::ustring& title);
00119
00120
00126 void add_with_scrollbar(Gtk::Widget& child);
00127
00133 void set_fullscreen_key_allowed(bool allow = true);
00134
00140 bool get_fullscreen_key_allowed() const;
00141
00142
00146 bool get_fullscreen() const;
00147
00152 void set_fullscreen(bool fullscreen = true);
00153
00157 Gtk::Menu* get_menu();
00158
00162 const Gtk::Menu* get_menu() const;
00163
00164
00165
00166
00167
00172 void set_title(const Glib::ustring& newname);
00173
00177 Glib::ustring get_title() const;
00178
00179
00185 void set_connected_adjustment(Gtk::Adjustment& adjustment);
00186
00192 Gtk::Adjustment* get_connected_adjustment();
00193
00199 const Gtk::Adjustment* get_connected_adjustment() const;
00200
00201
00206 void set_menu_ui(const Glib::ustring& ui_string);
00207
00212 const Glib::ustring& set_menu_ui();
00213
00214
00215 Glib::SignalProxy0< void > signal_toolbar_changed();
00216
00217
00218 Glib::SignalProxy0< void > signal_toolbar_toggle_request();
00219
00220
00221 Glib::SignalProxy1< void,bool > signal_fullscreen_state_change();
00222
00223
00224 Glib::SignalProxy0< void > signal_title_change();
00225
00226
00227 Glib::SignalProxy0< void > signal_switched_to();
00228
00229
00230 Glib::SignalProxy0< void > signal_switched_from();
00231
00232
00233 Glib::SignalProxy1< void,guint > signal_increase_button_event();
00234
00235
00236 Glib::SignalProxy1< void,guint > signal_decrease_button_event();
00237
00238
00239 #ifdef GLIBMM_PROPERTIES_ENABLED
00240
00246 Glib::PropertyProxy<Gtk::Adjustment*> property_connected_adjustment() ;
00247 #endif //#GLIBMM_PROPERTIES_ENABLED
00248
00249 #ifdef GLIBMM_PROPERTIES_ENABLED
00250
00256 Glib::PropertyProxy_ReadOnly<Gtk::Adjustment*> property_connected_adjustment() const;
00257 #endif //#GLIBMM_PROPERTIES_ENABLED
00258
00259 #ifdef GLIBMM_PROPERTIES_ENABLED
00260
00266 Glib::PropertyProxy<bool> property_fullscreen_key_allowed() ;
00267 #endif //#GLIBMM_PROPERTIES_ENABLED
00268
00269 #ifdef GLIBMM_PROPERTIES_ENABLED
00270
00276 Glib::PropertyProxy_ReadOnly<bool> property_fullscreen_key_allowed() const;
00277 #endif //#GLIBMM_PROPERTIES_ENABLED
00278
00279 #ifdef GLIBMM_PROPERTIES_ENABLED
00280
00286 Glib::PropertyProxy<bool> property_fullscreen() ;
00287 #endif //#GLIBMM_PROPERTIES_ENABLED
00288
00289 #ifdef GLIBMM_PROPERTIES_ENABLED
00290
00296 Glib::PropertyProxy_ReadOnly<bool> property_fullscreen() const;
00297 #endif //#GLIBMM_PROPERTIES_ENABLED
00298
00299 #ifdef GLIBMM_PROPERTIES_ENABLED
00300
00306 Glib::PropertyProxy<Glib::ustring> property_title() ;
00307 #endif //#GLIBMM_PROPERTIES_ENABLED
00308
00309 #ifdef GLIBMM_PROPERTIES_ENABLED
00310
00316 Glib::PropertyProxy_ReadOnly<Glib::ustring> property_title() const;
00317 #endif //#GLIBMM_PROPERTIES_ENABLED
00318
00319 #ifdef GLIBMM_PROPERTIES_ENABLED
00320
00326 Glib::PropertyProxy<Glib::ustring> property_menu_ui() ;
00327 #endif //#GLIBMM_PROPERTIES_ENABLED
00328
00329 #ifdef GLIBMM_PROPERTIES_ENABLED
00330
00336 Glib::PropertyProxy_ReadOnly<Glib::ustring> property_menu_ui() const;
00337 #endif //#GLIBMM_PROPERTIES_ENABLED
00338
00339
00340 };
00341
00342 }
00343
00344
00345 namespace Glib
00346 {
00352 Hildon::AppView* wrap(HildonAppView* object, bool take_copy = false);
00353 }
00354
00355
00356 #endif
00357