summaryrefslogtreecommitdiff
path: root/gtk/gtkviewport.c
diff options
context:
space:
mode:
authorLars Hamann <lars@gtk.org>1998-11-05 15:44:22 +0000
committerLars Hamann <lars@src.gnome.org>1998-11-05 15:44:22 +0000
commit00fbbe68b035f9e2888b0005e30370cb6913be39 (patch)
tree9e450c963e020e15e6b77b124ec8fb36e58d2350 /gtk/gtkviewport.c
parent6a227eec1cd13cd5b364b2f1f3c77febc5d70de5 (diff)
downloadgtk+-00fbbe68b035f9e2888b0005e30370cb6913be39.tar.gz
removed vscrollbar, hscrollbar, vscrollbar_policy, hscrollbar_policy.
Thu Nov 5 16:00:32 1998 Lars Hamann <lars@gtk.org> * gtk/gtkclist.h (struct _GtkCList): removed vscrollbar, hscrollbar, vscrollbar_policy, hscrollbar_policy. added h/vadjustment. * gtk/gtkclist.c (gtk_clist_class_init): added new args types "hadjustment" & "vadjustment" (gtk_clist_set_arg) (gtk_clist_get_arg): new object class set/get_arg functions (gtk_clist_construct): don't create/adjust scrollbars. (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): new functions to set h/vadjustments (gtk_clist_get_vadjustment) (gtk_clist_get_hadjustment): new functions to query h/vadjustments (create_scrollbars): removed. (create_adjustments): replacement for create_scrollbars (gtk_clist_new): call gtk_clist_new_with_titles (gtk_clist_new_with_titles): don't warn on titles == NULL (move_horizontal): use CLAMP instead (gtk_clist_set_policy): deprecated method. use gtk_scrolled_window_set_policy instead. (vadjustment_value_changed): use clist->vadj. (adjust_scrollbars): renamed to adjust_adjustments (adjust_adjustments): former adjust_scrollbars (gtk_clist_destroy): unref adjustments (gtk_clist_size_allocate) (gtk_clist_map) (title_focus) (gtk_clist_unmap) (gtk_clist_size_request) (gtk_clist_focus) (gtk_clist_size_allocate) (gtk_clist_forall): don't use scrollbars (gtk_clist_thaw) (real_insert_row) (real_remove_row) (gtk_clist_set_row_height) (real_resize_column): call adjust_adjustments (gtk_clist_moveto): return if clist has no adjustments yet. (gtk_clist_parent_set): new GtkWidget::parent_set function. Autogenerate h/vadjustments if needed. (move_horizontal) (move_vertical): some cleanups * gtk/gtkviewport.c (gtk_viewport_set_arg) (gtk_viewport_new): call only gtk_viewport_set_h/vadjustment and let these functions do the work. (gtk_viewport_set_hadjustment) (gtk_viewport_set_vadjustment): generate a new adjustment if needed * gtk/gtkscrolledwindow.h ((struct _GtkScrolledWindow): use a guint bitfield for h/vscrollbar_policy and h/vscrollbar_visible * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): queue_resize if visibility of scrollbars changes (gtk_scrolled_window_remove): only call container_remove with scrolled_window->viewport automatically if viewport was autogenerated (gtk_scrolled_window_add): add widget as scrolled_window->viewport. auto create a viewport only if widget does not take h/vadjustments. (gtk_scrolled_window_construct): don't generate a viewport automatically. (gtk_scrolled_window_forall): call callback with viewport in any case (gtk_scrolled_window_set_arg): call gtk_container_add in case of ARG_VIEWPORT (gtk_scrolled_window_size_allocate) (gtk_scrolled_window_size_request) (gtk_scrolled_window_map) (gtk_scrolled_window_unmap): check viewport != NULL * gtk/testgtk.c (create_ctree) (export_ctree) (create_clist): use a scrolled_window in conjunction with clists/ctrees * gtk/gtkfilesel.c (gtk_file_selection_init): use a scrolled_window in conjunction with clists * gtk/gtkfontsel.c (gtk_font_selection_init): use a scrolled_window in conjunction with clists
Diffstat (limited to 'gtk/gtkviewport.c')
-rw-r--r--gtk/gtkviewport.c54
1 files changed, 26 insertions, 28 deletions
diff --git a/gtk/gtkviewport.c b/gtk/gtkviewport.c
index bc9f9460e7..1baf3a8874 100644
--- a/gtk/gtkviewport.c
+++ b/gtk/gtkviewport.c
@@ -140,17 +140,11 @@ gtk_viewport_set_arg (GtkObject *object,
GtkAdjustment *adjustment;
case ARG_HADJUSTMENT:
- g_return_if_fail (viewport->hadjustment == NULL);
adjustment = GTK_VALUE_POINTER (*arg);
- if (!adjustment)
- adjustment = (GtkAdjustment*) gtk_adjustment_new (0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
gtk_viewport_set_hadjustment (viewport, adjustment);
break;
case ARG_VADJUSTMENT:
- g_return_if_fail (viewport->vadjustment == NULL);
adjustment = GTK_VALUE_POINTER (*arg);
- if (!adjustment)
- adjustment = (GtkAdjustment*) gtk_adjustment_new (0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
gtk_viewport_set_vadjustment (viewport, adjustment);
break;
case ARG_SHADOW_TYPE:
@@ -210,12 +204,6 @@ gtk_viewport_new (GtkAdjustment *hadjustment,
viewport = gtk_type_new (gtk_viewport_get_type ());
- if (!hadjustment)
- hadjustment = (GtkAdjustment*) gtk_adjustment_new (0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
-
- if (!vadjustment)
- vadjustment = (GtkAdjustment*) gtk_adjustment_new (0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
-
gtk_viewport_set_hadjustment (viewport, hadjustment);
gtk_viewport_set_vadjustment (viewport, vadjustment);
@@ -257,17 +245,22 @@ gtk_viewport_set_hadjustment (GtkViewport *viewport,
{
g_return_if_fail (viewport != NULL);
g_return_if_fail (GTK_IS_VIEWPORT (viewport));
- g_return_if_fail (adjustment != NULL);
+ if (adjustment)
+ g_return_if_fail (GTK_IS_ADJUSTMENT (adjustment));
- if (viewport->hadjustment != adjustment)
+ if (viewport->hadjustment && viewport->hadjustment != adjustment)
{
- if (viewport->hadjustment)
- {
- gtk_signal_disconnect_by_data (GTK_OBJECT (viewport->hadjustment),
- (gpointer) viewport);
- gtk_object_unref (GTK_OBJECT (viewport->hadjustment));
- }
+ gtk_signal_disconnect_by_data (GTK_OBJECT (viewport->hadjustment),
+ (gpointer) viewport);
+ gtk_object_unref (GTK_OBJECT (viewport->hadjustment));
+ }
+ if (!adjustment)
+ adjustment = GTK_ADJUSTMENT (gtk_adjustment_new (0.0, 0.0, 0.0,
+ 0.0, 0.0, 0.0));
+
+ if (viewport->hadjustment != adjustment)
+ {
viewport->hadjustment = adjustment;
gtk_object_ref (GTK_OBJECT (viewport->hadjustment));
gtk_object_sink (GTK_OBJECT (viewport->hadjustment));
@@ -289,17 +282,22 @@ gtk_viewport_set_vadjustment (GtkViewport *viewport,
{
g_return_if_fail (viewport != NULL);
g_return_if_fail (GTK_IS_VIEWPORT (viewport));
- g_return_if_fail (adjustment != NULL);
+ if (adjustment)
+ g_return_if_fail (GTK_IS_ADJUSTMENT (adjustment));
- if (viewport->vadjustment != adjustment)
+ if (viewport->vadjustment && viewport->vadjustment != adjustment)
{
- if (viewport->vadjustment)
- {
- gtk_signal_disconnect_by_data (GTK_OBJECT (viewport->vadjustment),
- (gpointer) viewport);
- gtk_object_unref (GTK_OBJECT (viewport->vadjustment));
- }
+ gtk_signal_disconnect_by_data (GTK_OBJECT (viewport->vadjustment),
+ (gpointer) viewport);
+ gtk_object_unref (GTK_OBJECT (viewport->vadjustment));
+ }
+
+ if (!adjustment)
+ adjustment = GTK_ADJUSTMENT (gtk_adjustment_new (0.0, 0.0, 0.0,
+ 0.0, 0.0, 0.0));
+ if (viewport->vadjustment != adjustment)
+ {
viewport->vadjustment = adjustment;
gtk_object_ref (GTK_OBJECT (viewport->vadjustment));
gtk_object_sink (GTK_OBJECT (viewport->vadjustment));