]> Pileus Git - ~andy/gtk/blobdiff - gtk/gtkalignment.h
stylecontext: Do invalidation on first resize container
[~andy/gtk] / gtk / gtkalignment.h
index 3c3fba77b4568e00adbf4e9a953a59ec79618710..50a5dc4f867a7bc5dd0650d516e2a572dc6ec82d 100644 (file)
  * Lesser General Public License for more details.
  *
  * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
  */
 
 /*
  * Modified by the GTK+ Team and others 1997-2000.  See the AUTHORS
  * file for a list of people on the GTK+ Team.  See the ChangeLog
  * files for a list of changes.  These files are distributed with
- * GTK+ at ftp://ftp.gtk.org/pub/gtk/. 
+ * GTK+ at ftp://ftp.gtk.org/pub/gtk/.
  */
 
 #ifndef __GTK_ALIGNMENT_H__
 #define __GTK_ALIGNMENT_H__
 
 
-#include <gdk/gdk.h>
-#include <gtk/gtkbin.h>
+#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
+#error "Only <gtk/gtk.h> can be included directly."
+#endif
 
+#include <gtk/gtkbin.h>
 
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
 
+G_BEGIN_DECLS
 
 #define GTK_TYPE_ALIGNMENT                  (gtk_alignment_get_type ())
-#define GTK_ALIGNMENT(obj)                  (GTK_CHECK_CAST ((obj), GTK_TYPE_ALIGNMENT, GtkAlignment))
-#define GTK_ALIGNMENT_CLASS(klass)          (GTK_CHECK_CLASS_CAST ((klass), GTK_TYPE_ALIGNMENT, GtkAlignmentClass))
-#define GTK_IS_ALIGNMENT(obj)               (GTK_CHECK_TYPE ((obj), GTK_TYPE_ALIGNMENT))
-#define GTK_IS_ALIGNMENT_CLASS(klass)       (GTK_CHECK_CLASS_TYPE ((klass), GTK_TYPE_ALIGNMENT))
-#define GTK_ALIGNMENT_GET_CLASS(obj)        (GTK_CHECK_GET_CLASS ((obj), GTK_TYPE_ALIGNMENT, GtkAlignmentClass))
+#define GTK_ALIGNMENT(obj)                  (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_ALIGNMENT, GtkAlignment))
+#define GTK_ALIGNMENT_CLASS(klass)          (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_ALIGNMENT, GtkAlignmentClass))
+#define GTK_IS_ALIGNMENT(obj)               (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_ALIGNMENT))
+#define GTK_IS_ALIGNMENT_CLASS(klass)       (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_ALIGNMENT))
+#define GTK_ALIGNMENT_GET_CLASS(obj)        (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_ALIGNMENT, GtkAlignmentClass))
 
 
-typedef struct _GtkAlignment       GtkAlignment;
-typedef struct _GtkAlignmentClass  GtkAlignmentClass;
+typedef struct _GtkAlignment              GtkAlignment;
+typedef struct _GtkAlignmentPrivate       GtkAlignmentPrivate;
+typedef struct _GtkAlignmentClass         GtkAlignmentClass;
 
 struct _GtkAlignment
 {
   GtkBin bin;
 
-  gfloat xalign;
-  gfloat yalign;
-  gfloat xscale;
-  gfloat yscale;
+  /*< private >*/
+  GtkAlignmentPrivate *priv;
 };
 
 struct _GtkAlignmentClass
 {
   GtkBinClass parent_class;
+
+  /* Padding for future expansion */
+  void (*_gtk_reserved1) (void);
+  void (*_gtk_reserved2) (void);
+  void (*_gtk_reserved3) (void);
+  void (*_gtk_reserved4) (void);
 };
 
 
-GtkType    gtk_alignment_get_type   (void) G_GNUC_CONST;
+GType      gtk_alignment_get_type   (void) G_GNUC_CONST;
 GtkWidget* gtk_alignment_new        (gfloat             xalign,
                                     gfloat             yalign,
                                     gfloat             xscale,
@@ -75,10 +78,19 @@ void       gtk_alignment_set        (GtkAlignment      *alignment,
                                     gfloat             xscale,
                                     gfloat             yscale);
 
+void       gtk_alignment_set_padding (GtkAlignment      *alignment,
+                                     guint              padding_top,
+                                     guint              padding_bottom,
+                                     guint              padding_left,
+                                     guint              padding_right);
+
+void       gtk_alignment_get_padding (GtkAlignment      *alignment,
+                                     guint             *padding_top,
+                                     guint             *padding_bottom,
+                                     guint             *padding_left,
+                                     guint             *padding_right);
 
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
+G_END_DECLS
 
 
 #endif /* __GTK_ALIGNMENT_H__ */