gtkhbox.c 2.3 KB
Newer Older
Cody Russell's avatar
Cody Russell committed
1
/* GTK - The GIMP Toolkit
Elliot Lee's avatar
Elliot Lee committed
2 3 4
 * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
 *
 * This library is free software; you can redistribute it and/or
5
 * modify it under the terms of the GNU Lesser General Public
Elliot Lee's avatar
Elliot Lee committed
6 7 8 9 10 11
 * License as published by the Free Software Foundation; either
 * version 2 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12
 * Lesser General Public License for more details.
Elliot Lee's avatar
Elliot Lee committed
13
 *
14
 * You should have received a copy of the GNU Lesser General Public
15 16 17
 * License along with this library; if not, write to the
 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 * Boston, MA 02111-1307, USA.
Elliot Lee's avatar
Elliot Lee committed
18
 */
19 20

/*
21
 * Modified by the GTK+ Team and others 1997-2000.  See the AUTHORS
22 23
 * file for a list of people on the GTK+ Team.  See the ChangeLog
 * files for a list of changes.  These files are distributed with
24
 * GTK+ at ftp://ftp.gtk.org/pub/gtk/.
25 26
 */

27
#include "config.h"
28

Elliot Lee's avatar
Elliot Lee committed
29
#include "gtkhbox.h"
30
#include "gtkorientable.h"
Elliot Lee's avatar
Elliot Lee committed
31

32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47

/**
 * SECTION:gtkhbox
 * @Short_description: A horizontal container box
 * @Title: GtkHBox
 * @See_also: #GtkVBox
 *
 * #GtkHBox is a container that organizes child widgets into a single row.
 *
 * Use the #GtkBox packing interface to determine the arrangement,
 * spacing, width, and alignment of #GtkHBox children.
 *
 * All children are allocated the same height.
 */


Matthias Clasen's avatar
Matthias Clasen committed
48
G_DEFINE_TYPE (GtkHBox, gtk_hbox, GTK_TYPE_BOX)
Elliot Lee's avatar
Elliot Lee committed
49 50 51 52 53 54 55 56 57

static void
gtk_hbox_class_init (GtkHBoxClass *class)
{
}

static void
gtk_hbox_init (GtkHBox *hbox)
{
58 59
  gtk_orientable_set_orientation (GTK_ORIENTABLE (hbox),
                                  GTK_ORIENTATION_HORIZONTAL);
Elliot Lee's avatar
Elliot Lee committed
60

61
  _gtk_box_set_old_defaults (GTK_BOX (hbox));
Elliot Lee's avatar
Elliot Lee committed
62 63
}

64 65 66 67 68 69 70 71 72
/**
 * gtk_hbox_new:
 * @homogeneous: %TRUE if all children are to be given equal space allotments.
 * @spacing: the number of pixels to place by default between children.
 *
 * Creates a new #GtkHBox.
 *
 * Returns: a new #GtkHBox.
 */
73 74 75
GtkWidget *
gtk_hbox_new (gboolean homogeneous,
	      gint     spacing)
Elliot Lee's avatar
Elliot Lee committed
76
{
77 78 79 80
  return g_object_new (GTK_TYPE_HBOX,
                       "spacing",     spacing,
                       "homogeneous", homogeneous ? TRUE : FALSE,
                       NULL);
Elliot Lee's avatar
Elliot Lee committed
81
}