GTK+ services added at version 3.10

Introduced classes

extern class GtkHeaderBar

gtk :: GtkHeaderBar

Horizontal container with a title and subtitle
extern class GtkListBox

gtk :: GtkListBox

A vertical container of GtkListBoxRow
extern class GtkListBoxRow

gtk :: GtkListBoxRow

A single row of a GtkListBox
extern class GtkStack

gtk :: GtkStack

Container with a single child visible at a time
extern class GtkStackTransitionType

gtk :: GtkStackTransitionType

Type of animation used for transitions between pages in a GtkStack

Redefined classes

redef extern class GtkWindow

gtk :: v3_10 $ GtkWindow

Toplevel which can contain other widgets

All class definitions

extern class GtkHeaderBar

gtk $ GtkHeaderBar

Horizontal container with a title and subtitle
extern class GtkListBox

gtk $ GtkListBox

A vertical container of GtkListBoxRow
extern class GtkListBoxRow

gtk $ GtkListBoxRow

A single row of a GtkListBox
extern class GtkStack

gtk $ GtkStack

Container with a single child visible at a time
extern class GtkStackTransitionType

gtk $ GtkStackTransitionType

Type of animation used for transitions between pages in a GtkStack
redef extern class GtkWindow

gtk :: v3_10 $ GtkWindow

Toplevel which can contain other widgets
package_diagram gtk::v3_10 v3_10 gtk::v3_8 v3_8 gtk::v3_10->gtk::v3_8 gtk::v3_6 v3_6 gtk::v3_8->gtk::v3_6 ...gtk::v3_6 ... ...gtk::v3_6->gtk::v3_6 linux::ui ui linux::ui->gtk::v3_10 a_star-m a_star-m a_star-m->linux::ui a_star-m... ... a_star-m...->a_star-m

Ancestors

module abstract_collection

core :: abstract_collection

Abstract collection classes and services.
module abstract_text

core :: abstract_text

Abstract class for manipulation of sequences of characters
module array

core :: array

This module introduces the standard array structure.
module bitset

core :: bitset

Services to handle BitSet
module bytes

core :: bytes

Services for byte streams and arrays
module circular_array

core :: circular_array

Efficient data structure to access both end of the sequence.
module codec_base

core :: codec_base

Base for codecs to use with streams
module codecs

core :: codecs

Group module for all codec-related manipulations
module collection

core :: collection

This module define several collection classes.
module core

core :: core

Standard classes and methods used by default by Nit programs and libraries.
module environ

core :: environ

Access to the environment variables of the process
module error

core :: error

Standard error-management infrastructure.
module exec

core :: exec

Invocation and management of operating system sub-processes.
module file

core :: file

File manipulations (create, read, write, etc.)
module fixed_ints

core :: fixed_ints

Basic integers of fixed-precision
module fixed_ints_text

core :: fixed_ints_text

Text services to complement fixed_ints
module flat

core :: flat

All the array-based text representations
module gc

core :: gc

Access to the Nit internal garbage collection mechanism
module gdk

gtk :: gdk

Services from GDK
module gdk_enums

gtk :: gdk_enums

module gtk_core

gtk :: gtk_core

Classes and services to use libGTK widgets
module gtk_enums

gtk :: gtk_enums

module hash_collection

core :: hash_collection

Introduce HashMap and HashSet.
module iso8859_1

core :: iso8859_1

Codec for ISO8859-1 I/O
module kernel

core :: kernel

Most basic classes and methods.
module list

core :: list

This module handle double linked lists
module math

core :: math

Mathematical operations
module native

core :: native

Native structures for text and bytes
module numeric

core :: numeric

Advanced services for Numeric types
module protocol

core :: protocol

module queue

core :: queue

Queuing data structures and wrappers
module range

core :: range

Module for range of discrete objects.
module re

core :: re

Regular expression support for all services based on Pattern
module ropes

core :: ropes

Tree-based representation of a String.
module sorter

core :: sorter

This module contains classes used to compare things and sorts arrays.
module stream

core :: stream

Input and output streams of characters
module text

core :: text

All the classes and methods related to the manipulation of text entities
module time

core :: time

Management of time and dates
module union_find

core :: union_find

union–find algorithm using an efficient disjoint-set data structure
module utf8

core :: utf8

Codec for UTF-8 I/O
module v3_4

gtk :: v3_4

module v3_6

gtk :: v3_6

GTK+ services added at version 3.6

Parents

module v3_8

gtk :: v3_8

GTK+ services added at version 3.8

Children

module ui

linux :: ui

Implementation of the app.nit UI module for GNU/Linux

Descendants

module a_star-m

a_star-m

# GTK+ services added at version 3.10
module v3_10 is pkgconfig("gtk+-3.0")

import v3_8

redef class GtkWindow
	fun titlebar=(widget: GtkWidget) `{ gtk_window_set_titlebar(self, widget); `}
end

# A vertical container of `GtkListBoxRow`
extern class GtkListBox `{ GtkListBox * `}
	super GtkContainer

	new `{ return (GtkListBox*)gtk_list_box_new(); `}

	fun prepend(child: GtkWidget) `{ gtk_list_box_prepend(self, child); `}

	fun insert(child: GtkWidget, position: Int) `{ gtk_list_box_insert(self, child, position); `}

	fun selected_row: GtkListBoxRow `{ return gtk_list_box_get_selected_row(self); `}

	fun row_at_index(index: Int): GtkListBoxRow`{ return gtk_list_box_get_row_at_index(self, index); `}

	fun row_at_y(y: Int): GtkListBoxRow `{ return gtk_list_box_get_row_at_y(self, y); `}

	fun select_row(row: GtkListBoxRow) `{ gtk_list_box_select_row(self, row); `}

	fun placeholder=(placeholder: GtkWidget) `{ gtk_list_box_set_placeholder(self, placeholder); `}

	fun adjustment=(adjustment: GtkAdjustment) `{ gtk_list_box_set_adjustment(self, adjustment); `}

	fun selection_mode=(mode: GtkSelectionMode) `{ gtk_list_box_set_selection_mode(self, mode); `}

	fun selection_mode: GtkSelectionMode `{ return gtk_list_box_get_selection_mode (self); `}

	fun invalidate_filter `{ gtk_list_box_invalidate_filter(self); `}

	fun invalidate_sort `{ gtk_list_box_invalidate_sort(self); `}

	fun invalidate_headers `{ gtk_list_box_invalidate_headers(self); `}

	fun activate_on_single_click=(single: Bool) `{ gtk_list_box_set_activate_on_single_click(self, single); `}

	fun activate_on_single_click: Bool `{ return gtk_list_box_get_activate_on_single_click(self); `}

	fun drag_unhighlight_row `{ gtk_list_box_drag_unhighlight_row(self); `}

	fun drag_highlight_row(row: GtkListBoxRow) `{ gtk_list_box_drag_highlight_row(self, row); `}

	# TODO
	#fun (* GtkListBoxForeachFunc)(GtkListBoxRow *row, gpointer user_data) `{ (* GtkListBoxForeachFunc)(self, GtkListBoxRow *row, gpointer user_data); `}
	#fun set_filter_func(GtkListBoxFilterFunc filter_func, gpointer user_data, GDestroyNotify destroy) `{ gtk_list_box_set_filter_func(self, GtkListBoxFilterFunc filter_func, gpointer user_data, GDestroyNotify destroy); `}
	#fun set_header_func(GtkListBoxUpdateHeaderFunc update_header, gpointer user_data, GDestroyNotify destroy) `{ gtk_list_box_set_header_func(self, GtkListBoxUpdateHeaderFunc update_header, gpointer user_data, GDestroyNotify destroy); `}
	#fun set_sort_func(GtkListBoxSortFunc sort_func, gpointer user_data, GDestroyNotify destroy) `{ gtk_list_box_set_sort_func(self, GtkListBoxSortFunc sort_func, gpointer user_data, GDestroyNotify destroy); `}
end

# A single row of a `GtkListBox`
extern class GtkListBoxRow `{ GtkListBoxRow* `}
	super GtkBin

	new `{ return (GtkListBoxRow*)gtk_list_box_row_new(); `}

	fun header: GtkWidget `{ return gtk_list_box_row_get_header(self); `}

	fun header=(header: GtkWidget) `{ gtk_list_box_row_set_header(self, header); `}

	fun index: Int `{ return gtk_list_box_row_get_index(self); `}

	fun changed `{ gtk_list_box_row_changed(self); `}
end

# Horizontal container with a title and subtitle
extern class GtkHeaderBar `{ GtkHeaderBar* `}
	super GtkContainer

	new `{ return (GtkHeaderBar*)gtk_header_bar_new(); `}

	fun title=(title: Text) do native_title = title.to_cstring
	private fun native_title=(title: CString) `{ gtk_header_bar_set_title(self, title); `}

	fun title: String do return native_title.to_s
	private fun native_title: CString `{ return (gchar *)gtk_header_bar_get_title(self); `}

	fun subtitle=(subtitle: Text) do native_subtitle = subtitle.to_cstring
	fun native_subtitle=(subtitle: CString) `{ gtk_header_bar_set_subtitle(self, subtitle); `}

	fun subtitle: String do return native_subtitle.to_s
	fun native_subtitle: CString `{ return (gchar *)gtk_header_bar_get_subtitle(self); `}

	fun custom_title=(title_widget: GtkWidget) `{ gtk_header_bar_set_custom_title(self, title_widget); `}

	fun custom_title: GtkWidget `{ return gtk_header_bar_get_custom_title(self); `}

	fun pack_start(child: GtkWidget) `{ gtk_header_bar_pack_start(self, child); `}

	fun pack_end(child: GtkWidget) `{ gtk_header_bar_pack_end(self, child); `}

	fun show_close_button=(setting: Bool) `{ gtk_header_bar_set_show_close_button(self, setting); `}

	fun show_close_button: Bool `{ return gtk_header_bar_get_show_close_button(self); `}
end

# Container with a single child visible at a time
extern class GtkStack `{ GtkStack * `}
	super GtkContainer

	new `{ return (GtkStack*)gtk_stack_new(); `}

	fun stack_add(child: GtkWidget, name: String) do native_stack_add(child, name.to_cstring)
	private fun native_stack_add(child: GtkWidget, name: CString) `{ gtk_stack_add_named(self, child, name); `}

	fun add_titled(child: GtkWidget, name, title: CString) `{ gtk_stack_add_titled(self, child, name, title); `}
	fun native_add_titled(child: GtkWidget, name, title: CString) `{ gtk_stack_add_titled(self, child, name, title); `}

	fun visible_child=(child: GtkWidget) `{ gtk_stack_set_visible_child(self, child); `}

	fun visible_child: GtkWidget `{ return gtk_stack_get_visible_child(self); `}

	fun visible_child_name=(name: Text) do native_visible_child_name = name.to_cstring
	fun native_visible_child_name=(name: CString) `{ gtk_stack_set_visible_child_name(self, name); `}

	fun visible_child_name: Text do return native_visible_child_name.to_s
	fun native_visible_child_name: CString `{ return (gchar *)gtk_stack_get_visible_child_name(self); `}

	fun set_visible_child_full(name: Text, transition: GtkStackTransitionType) do native_set_visible_child_full(name.to_cstring, transition)
	fun native_set_visible_child_full(name: CString, transition: GtkStackTransitionType) `{
		gtk_stack_set_visible_child_full(self, name, transition);
	`}

	fun homogeneous=(homogeneous: Bool) `{ gtk_stack_set_homogeneous(self, homogeneous); `}

	fun homogeneous: Bool `{ return gtk_stack_get_homogeneous(self); `}

	fun transition_duration=(duration: Int) `{ gtk_stack_set_transition_duration(self, duration); `}

	fun transition_duration: Int `{ return gtk_stack_get_transition_duration(self); `}

	fun transition_type=(transition: GtkStackTransitionType) `{ gtk_stack_set_transition_type(self, transition); `}

	fun transition_type: GtkStackTransitionType `{ return gtk_stack_get_transition_type(self); `}
end

# Type of animation used for transitions between pages in a `GtkStack`
extern class GtkStackTransitionType `{ GtkStackTransitionType `}
	new none `{ return GTK_STACK_TRANSITION_TYPE_NONE; `}
	new crossfade `{ return GTK_STACK_TRANSITION_TYPE_CROSSFADE; `}
	new slide_right `{ return GTK_STACK_TRANSITION_TYPE_SLIDE_RIGHT; `}
	new slide_left `{ return GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT; `}
	new slide_up `{ return GTK_STACK_TRANSITION_TYPE_SLIDE_UP; `}
	new slide_down `{ return GTK_STACK_TRANSITION_TYPE_SLIDE_DOWN; `}
	new slide_left_right `{ return GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT_RIGHT; `}
	new slide_up_down `{ return GTK_STACK_TRANSITION_TYPE_SLIDE_UP_DOWN; `}
end
lib/gtk/v3_10.nit:15,1--167,3