return self == o;
`}
- fun request_size(width, height: Int) `{
+ # Set the minimum dimension of this widget
+ fun set_size_request(width, height: Int) `{
gtk_widget_set_size_request(self, width, height);
`}
# Hide the widget (reverse the effects of `show`)
fun hide `{ gtk_widget_hide(self); `}
+
+ # Vertical alignement of this widget
+ fun valign=(value: GtkAlign) `{ gtk_widget_set_valign(self, value); `}
+
+ # Horizontal alignement of this widget
+ fun halign=(value: GtkAlign) `{ gtk_widget_set_halign(self, value); `}
+end
+
+# How a widget deals with extra space
+extern class GtkAlign `{ GtkAlign `}
+ new fill `{ return GTK_ALIGN_FILL; `}
+ new start `{ return GTK_ALIGN_START; `}
+ new align_end `{ return GTK_ALIGN_END; `}
+ new center `{ return GTK_ALIGN_CENTER; `}
+ new baseline `{ return GTK_ALIGN_BASELINE; `}
end
# Base class for widgets which contain other widgets
signal_connect("destroy", to_call, user_data)
end
+ # Resize the window as if the user had done so
+ fun resize(width, height: Int) `{
+ return gtk_window_resize(self, width, height);
+ `}
+
fun resizable: Bool `{
return gtk_window_get_resizable(self);
`}
return (GtkFrame *)gtk_frame_new(String_to_cstring(lbl));
`}
- fun frame_label: String `{
- return NativeString_to_s((char *)gtk_frame_get_label(self));
+ fun frame_label: String import CString.to_s_with_copy `{
+ return CString_to_s_with_copy((char *)gtk_frame_get_label(self));
`}
fun frame_label=(lbl: String) import String.to_cstring `{
extern class GtkMisc `{GtkMisc *`}
super GtkWidget
- fun alignment: GtkAlignment is abstract
-
- fun alignment=(x: Float, y: Float) `{
+ fun set_alignment(x, y: Float) `{
gtk_misc_set_alignment(self, x, y);
`}
- fun padding: GtkAlignment is abstract
-
- fun padding=(x: Float, y: Float) `{
+ fun set_padding(x, y: Float) `{
gtk_misc_set_padding(self, x, y);
`}
-
end
# A single line text entry field
return (GtkEntry *)gtk_entry_new();
`}
- fun text: String import NativeString.to_s_with_copy `{
- return NativeString_to_s_with_copy((char *)gtk_entry_get_text(self));
+ fun text: String import CString.to_s_with_copy `{
+ return CString_to_s_with_copy((char *)gtk_entry_get_text(self));
`}
fun text=(value: String) import String.to_cstring `{
`}
# Returns the text of the label
- fun text: String import NativeString.to_s `{
- return NativeString_to_s((char*)gtk_label_get_text(self));
+ fun text: String import CString.to_s_with_copy `{
+ return CString_to_s_with_copy((char*)gtk_label_get_text(self));
`}
# Sets the angle of rotation for the label.
return gtk_label_get_angle(self);
`}
+ # Set simple formatted text content from a `format` string and the `content` which is escaped
+ #
+ # ~~~nitish
+ # GtkLabel lbl = new GtkLabel("Non-formatted text")
+ # lbl.set_markup("<span style=\"italic\">\%s</span>".to_cstring,
+ # "Italic content")
+ # ~~~
+ fun set_markup(format, content: CString) `{
+ char *formatted = g_markup_printf_escaped(format, content);
+ gtk_label_set_markup(self, formatted);
+ g_free(formatted);
+ `}
+
+ # Set justification of the lines in the label relative to each other
+ fun justify=(value: GtkJustification) `{ gtk_label_set_justify(self, value); `}
+
+ # Get justification of the lines in the label relative to each other
+ fun justify: GtkJustification `{ return gtk_label_get_justify(self); `}
end
# A widget displaying an image
return (GtkButton *)gtk_button_new_from_stock(String_to_cstring(stock_id));
`}
- fun text: String `{
- return NativeString_to_s((char *)gtk_button_get_label(self));
+ fun text: String import CString.to_s_with_copy `{
+ return CString_to_s_with_copy((char *)gtk_button_get_label(self));
`}
fun text=(value: String) import String.to_cstring `{
gtk_expander_set_spacing(self, pixels);
`}
- fun label_text: String `{
- return NativeString_to_s((char *)gtk_expander_get_label(self));
+ fun label_text: String import CString.to_s_with_copy `{
+ return CString_to_s_with_copy((char *)gtk_expander_get_label(self));
`}
fun label_text=(lbl: String) import String.to_cstring `{
gtk_combo_box_set_id_column(self, id_column);
`}
- fun active_id: String `{
- return NativeString_to_s((char *)gtk_combo_box_get_active_id(self));
+ fun active_id: String import CString.to_s_with_copy `{
+ return CString_to_s_with_copy((char *)gtk_combo_box_get_active_id(self));
`}
fun active_id=(id_active: String) import String.to_cstring `{
gtk_combo_box_popdown(self);
`}
- fun title: String `{
- return NativeString_to_s((char *)gtk_combo_box_get_title(self));
+ fun title: String import CString.to_s_with_copy `{
+ return CString_to_s_with_copy((char *)gtk_combo_box_get_title(self));
`}
fun title=(t: String) import String.to_cstring `{