+Dialog& m_dialog;
+ui::VBox m_vbox;
+public:
+PreferencesPage( Dialog& dialog, ui::VBox vbox ) : m_dialog( dialog ), m_vbox( vbox ){
+}
+ui::CheckButton appendCheckBox( const char* name, const char* flag, bool& data ){
+ return m_dialog.addCheckBox( m_vbox, name, flag, data );
+}
+ui::CheckButton appendCheckBox( const char* name, const char* flag, Property<bool> const &cb ){
+ return m_dialog.addCheckBox( m_vbox, name, flag, cb );
+}
+void appendCombo( const char* name, StringArrayRange values, Property<int> const &cb ){
+ m_dialog.addCombo( m_vbox, name, values, cb );
+}
+void appendCombo( const char* name, int& data, StringArrayRange values ){
+ m_dialog.addCombo( m_vbox, name, data, values );
+}
+void appendSlider( const char* name, int& data, gboolean draw_value, const char* low, const char* high, double value, double lower, double upper, double step_increment, double page_increment ){
+ m_dialog.addSlider( m_vbox, name, data, draw_value, low, high, value, lower, upper, step_increment, page_increment );
+}
+void appendRadio( const char* name, StringArrayRange names, Property<int> const &cb ){
+ m_dialog.addRadio( m_vbox, name, names, cb );
+}
+void appendRadio( const char* name, int& data, StringArrayRange names ){
+ m_dialog.addRadio( m_vbox, name, data, names );
+}
+void appendRadioIcons( const char* name, StringArrayRange icons, Property<int> const &cb ){
+ m_dialog.addRadioIcons( m_vbox, name, icons, cb );
+}
+void appendRadioIcons( const char* name, int& data, StringArrayRange icons ){
+ m_dialog.addRadioIcons( m_vbox, name, data, icons );
+}
+ui::Widget appendEntry( const char* name, Property<int> const &cb ){
+ return m_dialog.addIntEntry( m_vbox, name, cb );
+}
+ui::Widget appendEntry( const char* name, int& data ){
+ return m_dialog.addEntry( m_vbox, name, data );
+}
+ui::Widget appendEntry( const char* name, Property<std::size_t> const &cb){
+ return m_dialog.addSizeEntry( m_vbox, name, cb );
+}
+ui::Widget appendEntry( const char* name, std::size_t& data ){
+ return m_dialog.addEntry( m_vbox, name, data );
+}
+ui::Widget appendEntry( const char* name, Property<float> const &cb ){
+ return m_dialog.addFloatEntry( m_vbox, name, cb );
+}
+ui::Widget appendEntry( const char* name, float& data ){
+ return m_dialog.addEntry( m_vbox, name, data );
+}
+ui::Widget appendPathEntry( const char* name, bool browse_directory, Property<const char *> const &cb ){
+ return m_dialog.addPathEntry( m_vbox, name, browse_directory, cb );
+}
+ui::Widget appendPathEntry( const char* name, CopiedString& data, bool directory ){
+ return m_dialog.addPathEntry( m_vbox, name, data, directory );
+}
+ui::SpinButton appendSpinner( const char* name, int& data, double value, double lower, double upper ){
+ return m_dialog.addSpinner( m_vbox, name, data, value, lower, upper );
+}
+ui::SpinButton appendSpinner( const char* name, double value, double lower, double upper, Property<int> const &cb ){
+ return m_dialog.addSpinner( m_vbox, name, value, lower, upper, cb );
+}
+ui::SpinButton appendSpinner( const char* name, double value, double lower, double upper, Property<float> const &cb ){
+ return m_dialog.addSpinner( m_vbox, name, value, lower, upper, cb );
+}