summaryrefslogtreecommitdiffstats
path: root/src/widgets/styles/qgtkstyle_p.cpp
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@digia.com>2012-11-06 16:03:45 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2012-11-06 16:34:42 +0100
commit15fc255c7c0a6a693c754734c39c37bd50b0634b (patch)
treef6ede3093fdf1aefcac43c3550c32e1f4696eaed /src/widgets/styles/qgtkstyle_p.cpp
parentb73465550b9f15a27e30e924d316501344c8ed86 (diff)
QGtkStyle: GTK3 compatible combo boxes
Use gtk_combo_box_new_with_entry when gtk_combo_box_entry_new is not available. The latter was deprecated since 2.24 and is no longer available in GTK3. Notice that gtk_combo_box_new_with_entry returns a GtkComboBox, whereas the old gtk_combo_box_entry_new returned a GtkComboBoxEntry. Change-Id: I4aa3c528c6e04967ed783fce72036acb6063445b Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Diffstat (limited to 'src/widgets/styles/qgtkstyle_p.cpp')
-rw-r--r--src/widgets/styles/qgtkstyle_p.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/widgets/styles/qgtkstyle_p.cpp b/src/widgets/styles/qgtkstyle_p.cpp
index 93c1beffb6..fff7766ea5 100644
--- a/src/widgets/styles/qgtkstyle_p.cpp
+++ b/src/widgets/styles/qgtkstyle_p.cpp
@@ -130,6 +130,7 @@ Ptr_gtk_separator_tool_item_new QGtkStylePrivate::gtk_separator_tool_item_new =
Ptr_gtk_tree_view_new QGtkStylePrivate::gtk_tree_view_new = 0;
Ptr_gtk_combo_box_new QGtkStylePrivate::gtk_combo_box_new = 0;
Ptr_gtk_combo_box_entry_new QGtkStylePrivate::gtk_combo_box_entry_new = 0;
+Ptr_gtk_combo_box_new_with_entry QGtkStylePrivate::gtk_combo_box_new_with_entry = 0;
Ptr_gtk_progress_bar_new QGtkStylePrivate::gtk_progress_bar_new = 0;
Ptr_gtk_container_add QGtkStylePrivate::gtk_container_add = 0;
Ptr_gtk_menu_shell_append QGtkStylePrivate::gtk_menu_shell_append = 0;
@@ -420,6 +421,8 @@ void QGtkStylePrivate::resolveGtk() const
gtk_entry_new = (Ptr_gtk_entry_new)libgtk.resolve("gtk_entry_new");
gtk_tree_view_new = (Ptr_gtk_tree_view_new)libgtk.resolve("gtk_tree_view_new");
gtk_combo_box_new = (Ptr_gtk_combo_box_new)libgtk.resolve("gtk_combo_box_new");
+ gtk_combo_box_entry_new = (Ptr_gtk_combo_box_entry_new)libgtk.resolve("gtk_combo_box_entry_new");
+ gtk_combo_box_new_with_entry = (Ptr_gtk_combo_box_entry_new)libgtk.resolve("gtk_combo_box_new_with_entry");
gtk_progress_configure = (Ptr_gtk_progress_configure)libgtk.resolve("gtk_progress_configure");
gtk_range_get_adjustment = (Ptr_gtk_range_get_adjustment)libgtk.resolve("gtk_range_get_adjustment");
gtk_range_set_adjustment = (Ptr_gtk_range_set_adjustment)libgtk.resolve("gtk_range_set_adjustment");
@@ -459,7 +462,6 @@ void QGtkStylePrivate::resolveGtk() const
gtk_frame_new = (Ptr_gtk_frame_new)libgtk.resolve("gtk_frame_new");
gtk_expander_new = (Ptr_gtk_expander_new)libgtk.resolve("gtk_expander_new");
gtk_statusbar_new = (Ptr_gtk_statusbar_new)libgtk.resolve("gtk_statusbar_new");
- gtk_combo_box_entry_new = (Ptr_gtk_combo_box_entry_new)libgtk.resolve("gtk_combo_box_entry_new");
gtk_container_forall = (Ptr_gtk_container_forall)libgtk.resolve("gtk_container_forall");
gtk_widget_size_allocate =(Ptr_gtk_widget_size_allocate)libgtk.resolve("gtk_widget_size_allocate");
gtk_widget_size_request =(Ptr_gtk_widget_size_request)libgtk.resolve("gtk_widget_size_request");
@@ -598,7 +600,10 @@ void QGtkStylePrivate::initGtkWidgets() const
addWidget(QGtkStylePrivate::gtk_check_button_new());
addWidget(QGtkStylePrivate::gtk_radio_button_new(NULL));
addWidget(QGtkStylePrivate::gtk_combo_box_new());
- addWidget(QGtkStylePrivate::gtk_combo_box_entry_new());
+ if (gtk_combo_box_entry_new)
+ addWidget(QGtkStylePrivate::gtk_combo_box_entry_new());
+ if (gtk_combo_box_new_with_entry)
+ addWidget(QGtkStylePrivate::gtk_combo_box_new_with_entry());
addWidget(QGtkStylePrivate::gtk_entry_new());
addWidget(QGtkStylePrivate::gtk_frame_new(NULL));
addWidget(QGtkStylePrivate::gtk_expander_new(""));