Non puoi selezionare più di 25 argomenti Gli argomenti devono iniziare con una lettera o un numero, possono includere trattini ('-') e possono essere lunghi fino a 35 caratteri.
 
 
 
 
 
 

148 righe
5.8 KiB

  1. /* GTK - The GIMP Toolkit
  2. * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
  3. *
  4. * This library is free software; you can redistribute it and/or
  5. * modify it under the terms of the GNU Lesser General Public
  6. * License as published by the Free Software Foundation; either
  7. * version 2 of the License, or (at your option) any later version.
  8. *
  9. * This library is distributed in the hope that it will be useful,
  10. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  12. * Lesser General Public License for more details.
  13. *
  14. * You should have received a copy of the GNU Lesser General Public
  15. * License along with this library; if not, write to the
  16. * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
  17. * Boston, MA 02111-1307, USA.
  18. */
  19. /*
  20. * Modified by the GTK+ Team and others 1997-2001. See the AUTHORS
  21. * file for a list of people on the GTK+ Team. See the ChangeLog
  22. * files for a list of changes. These files are distributed with
  23. * GTK+ at ftp://ftp.gtk.org/pub/gtk/.
  24. */
  25. #if defined(GTK_DISABLE_SINGLE_INCLUDES) && !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
  26. #error "Only <gtk/gtk.h> can be included directly."
  27. #endif
  28. #ifndef __GTK_BUTTON_H__
  29. #define __GTK_BUTTON_H__
  30. #include <gtk/gtkbin.h>
  31. #include <gtk/gtkimage.h>
  32. G_BEGIN_DECLS
  33. #define GTK_TYPE_BUTTON (gtk_button_get_type ())
  34. #define GTK_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_BUTTON, GtkButton))
  35. #define GTK_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_BUTTON, GtkButtonClass))
  36. #define GTK_IS_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_BUTTON))
  37. #define GTK_IS_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_BUTTON))
  38. #define GTK_BUTTON_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_BUTTON, GtkButtonClass))
  39. typedef struct _GtkButton GtkButton;
  40. typedef struct _GtkButtonClass GtkButtonClass;
  41. struct _GtkButton
  42. {
  43. GtkBin bin;
  44. GdkWindow *GSEAL (event_window);
  45. gchar *GSEAL (label_text);
  46. guint GSEAL (activate_timeout);
  47. guint GSEAL (constructed) : 1;
  48. guint GSEAL (in_button) : 1;
  49. guint GSEAL (button_down) : 1;
  50. guint GSEAL (relief) : 2;
  51. guint GSEAL (use_underline) : 1;
  52. guint GSEAL (use_stock) : 1;
  53. guint GSEAL (depressed) : 1;
  54. guint GSEAL (depress_on_activate) : 1;
  55. guint GSEAL (focus_on_click) : 1;
  56. };
  57. struct _GtkButtonClass
  58. {
  59. GtkBinClass parent_class;
  60. void (* pressed) (GtkButton *button);
  61. void (* released) (GtkButton *button);
  62. void (* clicked) (GtkButton *button);
  63. void (* enter) (GtkButton *button);
  64. void (* leave) (GtkButton *button);
  65. void (* activate) (GtkButton *button);
  66. /* Padding for future expansion */
  67. void (*_gtk_reserved1) (void);
  68. void (*_gtk_reserved2) (void);
  69. void (*_gtk_reserved3) (void);
  70. void (*_gtk_reserved4) (void);
  71. };
  72. GType gtk_button_get_type (void) G_GNUC_CONST;
  73. GtkWidget* gtk_button_new (void);
  74. GtkWidget* gtk_button_new_with_label (const gchar *label);
  75. GtkWidget* gtk_button_new_from_stock (const gchar *stock_id);
  76. GtkWidget* gtk_button_new_with_mnemonic (const gchar *label);
  77. #ifndef GTK_DISABLE_DEPRECATED
  78. void gtk_button_pressed (GtkButton *button);
  79. void gtk_button_released (GtkButton *button);
  80. #endif
  81. void gtk_button_clicked (GtkButton *button);
  82. #ifndef GTK_DISABLE_DEPRECATED
  83. void gtk_button_enter (GtkButton *button);
  84. void gtk_button_leave (GtkButton *button);
  85. #endif
  86. void gtk_button_set_relief (GtkButton *button,
  87. GtkReliefStyle newstyle);
  88. GtkReliefStyle gtk_button_get_relief (GtkButton *button);
  89. void gtk_button_set_label (GtkButton *button,
  90. const gchar *label);
  91. G_CONST_RETURN gchar *gtk_button_get_label (GtkButton *button);
  92. void gtk_button_set_use_underline (GtkButton *button,
  93. gboolean use_underline);
  94. gboolean gtk_button_get_use_underline (GtkButton *button);
  95. void gtk_button_set_use_stock (GtkButton *button,
  96. gboolean use_stock);
  97. gboolean gtk_button_get_use_stock (GtkButton *button);
  98. void gtk_button_set_focus_on_click (GtkButton *button,
  99. gboolean focus_on_click);
  100. gboolean gtk_button_get_focus_on_click (GtkButton *button);
  101. void gtk_button_set_alignment (GtkButton *button,
  102. gfloat xalign,
  103. gfloat yalign);
  104. void gtk_button_get_alignment (GtkButton *button,
  105. gfloat *xalign,
  106. gfloat *yalign);
  107. void gtk_button_set_image (GtkButton *button,
  108. GtkWidget *image);
  109. GtkWidget* gtk_button_get_image (GtkButton *button);
  110. void gtk_button_set_image_position (GtkButton *button,
  111. GtkPositionType position);
  112. GtkPositionType gtk_button_get_image_position (GtkButton *button);
  113. GdkWindow* gtk_button_get_event_window (GtkButton *button);
  114. void _gtk_button_set_depressed (GtkButton *button,
  115. gboolean depressed);
  116. void _gtk_button_paint (GtkButton *button,
  117. const GdkRectangle *area,
  118. GtkStateType state_type,
  119. GtkShadowType shadow_type,
  120. const gchar *main_detail,
  121. const gchar *default_detail);
  122. G_END_DECLS
  123. #endif /* __GTK_BUTTON_H__ */