123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713 |
- // included by gtk2.pas
- {$IFDEF read_forward_definitions}
- {$ENDIF read_forward_definitions}
- //------------------------------------------------------------------------------
- {$IFDEF read_interface_types}
- PGtkCList = ^TGtkCList;
- PGtkCListColumn = ^TGtkCListColumn;
- PGtkCListRow = ^TGtkCListRow;
- PGtkCell = ^TGtkCell;
- { cell types }
- PGtkCellType = ^TGtkCellType;
- TGtkCellType = (
- GTK_CELL_EMPTY,
- GTK_CELL_TEXT,
- GTK_CELL_PIXMAP,
- GTK_CELL_PIXTEXT,
- GTK_CELL_WIDGET
- );
- PGtkCListDragPos = ^TGtkCListDragPos;
- TGtkCListDragPos = (
- GTK_CLIST_DRAG_NONE,
- GTK_CLIST_DRAG_BEFORE,
- GTK_CLIST_DRAG_INTO,
- GTK_CLIST_DRAG_AFTER
- );
- PGtkButtonAction = ^TGtkButtonAction;
- TGtkButtonAction = longint;
- TGtkCListCompareFunc = function (clist:PGtkCList; ptr1:gconstpointer; ptr2:gconstpointer):gint; cdecl;
- PGtkCListCellInfo = ^TGtkCListCellInfo;
- TGtkCListCellInfo = record
- row : gint;
- column : gint;
- end;
- PGtkCListDestInfo = ^TGtkCListDestInfo;
- TGtkCListDestInfo = record
- cell : TGtkCListCellInfo;
- insert_pos : TGtkCListDragPos;
- end;
- { mem chunks }
- { allocation rectangle after the conatiner_border_width
- and the width of the shadow border }
- { rows }
- { columns }
- { dynamicly allocated array of column structures }
- { the scrolling window and its height and width to
- make things a little speedier }
- { offsets for scrolling }
- { border shadow style }
- { the list's selection mode (gtkenums.h) }
- { list of selected rows }
- { mouse buttons }
- { dnd }
- { scroll adjustments }
- { xor GC for the vertical drag line }
- { gc for drawing unselected cells }
- { cursor used to indicate dragging }
- { the current x-pixel location of the xor-drag line }
- { focus handling }
- { dragging the selection }
- TGtkCList = record
- container : TGtkContainer;
- flags : guint16;
- row_mem_chunk : PGMemChunk;
- cell_mem_chunk : PGMemChunk;
- freeze_count : guint;
- internal_allocation : TGdkRectangle;
- rows : gint;
- row_height : gint;
- row_list : PGList;
- row_list_end : PGList;
- columns : gint;
- column_title_area : TGdkRectangle;
- title_window : PGdkWindow;
- column : PGtkCListColumn;
- clist_window : PGdkWindow;
- clist_window_width : gint;
- clist_window_height : gint;
- hoffset : gint;
- voffset : gint;
- shadow_type : TGtkShadowType;
- selection_mode : TGtkSelectionMode;
- selection : PGList;
- selection_end : PGList;
- undo_selection : PGList;
- undo_unselection : PGList;
- undo_anchor : gint;
- button_actions : array[0..4] of guint8;
- drag_button : guint8;
- click_cell : TGtkCListCellInfo;
- hadjustment : PGtkAdjustment;
- vadjustment : PGtkAdjustment;
- xor_gc : PGdkGC;
- fg_gc : PGdkGC;
- bg_gc : PGdkGC;
- cursor_drag : PGdkCursor;
- x_drag : gint;
- focus_row : gint;
- focus_header_column : gint;
- anchor : gint;
- anchor_state : TGtkStateType;
- drag_pos : gint;
- htimer : gint;
- vtimer : gint;
- sort_type : TGtkSortType;
- compare : TGtkCListCompareFunc;
- sort_column : gint;
- drag_highlight_row : gint;
- drag_highlight_pos : TGtkCListDragPos;
- end;
- PGtkCListClass = ^TGtkCListClass;
- TGtkCListClass = record
- parent_class : TGtkContainerClass;
- set_scroll_adjustments : procedure (clist:PGtkCList; hadjustment:PGtkAdjustment; vadjustment:PGtkAdjustment); cdecl;
- refresh : procedure (clist:PGtkCList); cdecl;
- select_row : procedure (clist:PGtkCList; row:gint; column:gint; event:PGdkEvent); cdecl;
- unselect_row : procedure (clist:PGtkCList; row:gint; column:gint; event:PGdkEvent); cdecl;
- row_move : procedure (clist:PGtkCList; source_row:gint; dest_row:gint); cdecl;
- click_column : procedure (clist:PGtkCList; column:gint); cdecl;
- resize_column : procedure (clist:PGtkCList; column:gint; width:gint); cdecl;
- toggle_focus_row : procedure (clist:PGtkCList); cdecl;
- select_all : procedure (clist:PGtkCList); cdecl;
- unselect_all : procedure (clist:PGtkCList); cdecl;
- undo_selection : procedure (clist:PGtkCList); cdecl;
- start_selection : procedure (clist:PGtkCList); cdecl;
- end_selection : procedure (clist:PGtkCList); cdecl;
- extend_selection : procedure (clist:PGtkCList; scroll_type:TGtkScrollType; position:gfloat; auto_start_selection:gboolean); cdecl;
- scroll_horizontal : procedure (clist:PGtkCList; scroll_type:TGtkScrollType; position:gfloat); cdecl;
- scroll_vertical : procedure (clist:PGtkCList; scroll_type:TGtkScrollType; position:gfloat); cdecl;
- toggle_add_mode : procedure (clist:PGtkCList); cdecl;
- abort_column_resize : procedure (clist:PGtkCList); cdecl;
- resync_selection : procedure (clist:PGtkCList; event:PGdkEvent); cdecl;
- selection_find : function (clist:PGtkCList; row_number:gint; row_list_element:PGList):PGList; cdecl;
- draw_row : procedure (clist:PGtkCList; area:PGdkRectangle; row:gint; clist_row:PGtkCListRow); cdecl;
- draw_drag_highlight : procedure (clist:PGtkCList; target_row:PGtkCListRow; target_row_number:gint; drag_pos:TGtkCListDragPos); cdecl;
- clear : procedure (clist:PGtkCList); cdecl;
- fake_unselect_all : procedure (clist:PGtkCList; row:gint); cdecl;
- sort_list : procedure (clist:PGtkCList); cdecl;
- insert_row : function (clist:PGtkCList; row:gint; text:array of Pgchar):gint; cdecl;
- remove_row : procedure (clist:PGtkCList; row:gint); cdecl;
- set_cell_contents : procedure (clist:PGtkCList; clist_row:PGtkCListRow; column:gint; _type:TGtkCellType; text:Pgchar;
- spacing:guint8; pixmap:PGdkPixmap; mask:PGdkBitmap); cdecl;
- cell_size_request : procedure (clist:PGtkCList; clist_row:PGtkCListRow; column:gint; requisition:PGtkRequisition); cdecl;
- end;
- TGtkCListColumn = record
- title : Pgchar;
- area : TGdkRectangle;
- button : PGtkWidget;
- window : PGdkWindow;
- width : gint;
- min_width : gint;
- max_width : gint;
- justification : TGtkJustification;
- flag0 : word;
- end;
- TGtkCListRow = record
- cell : PGtkCell;
- state : TGtkStateType;
- foreground : TGdkColor;
- background : TGdkColor;
- style : PGtkStyle;
- data : gpointer;
- destroy : TGtkDestroyNotify;
- flag0 : word;
- end;
- { Cell Structures }
- PGtkCellText = ^TGtkCellText;
- TGtkCellText = record
- _type : TGtkCellType;
- vertical : gint16;
- horizontal : gint16;
- style : PGtkStyle;
- text : Pgchar;
- end;
- PGtkCellPixmap = ^TGtkCellPixmap;
- TGtkCellPixmap = record
- _type : TGtkCellType;
- vertical : gint16;
- horizontal : gint16;
- style : PGtkStyle;
- pixmap : PGdkPixmap;
- mask : PGdkBitmap;
- end;
- PGtkCellPixText = ^TGtkCellPixText;
- TGtkCellPixText = record
- _type : TGtkCellType;
- vertical : gint16;
- horizontal : gint16;
- style : PGtkStyle;
- text : Pgchar;
- spacing : guint8;
- pixmap : PGdkPixmap;
- mask : PGdkBitmap;
- end;
- PGtkCellWidget = ^TGtkCellWidget;
- TGtkCellWidget = record
- _type : TGtkCellType;
- vertical : gint16;
- horizontal : gint16;
- style : PGtkStyle;
- widget : PGtkWidget;
- end;
- TGtkCell = record
- _type : TGtkCellType;
- vertical : gint16;
- horizontal : gint16;
- style : PGtkStyle;
- u : record
- case longint of
- 0 : ( text : Pgchar );
- 1 : ( pm : record
- pixmap : PGdkPixmap;
- mask : PGdkBitmap;
- end );
- 2 : ( pt : record
- text : Pgchar;
- spacing : guint8;
- pixmap : PGdkPixmap;
- mask : PGdkBitmap;
- end );
- 3 : ( widget : PGtkWidget );
- end;
- end;
- {$ENDIF read_interface_types}
- //------------------------------------------------------------------------------
- {$IFDEF read_interface_rest}
- const
- { clist flags }
- GTK_CLIST_IN_DRAG = 1 shl 0;
- GTK_CLIST_ROW_HEIGHT_SET = 1 shl 1;
- GTK_CLIST_SHOW_TITLES = 1 shl 2;
- GTK_CLIST_ADD_MODE = 1 shl 4;
- GTK_CLIST_AUTO_SORT = 1 shl 5;
- GTK_CLIST_AUTO_RESIZE_BLOCKED = 1 shl 6;
- GTK_CLIST_REORDERABLE = 1 shl 7;
- GTK_CLIST_USE_DRAG_ICONS = 1 shl 8;
- GTK_CLIST_DRAW_DRAG_LINE = 1 shl 9;
- GTK_CLIST_DRAW_DRAG_RECT = 1 shl 10;
- GTK_BUTTON_IGNORED = 0;
- GTK_BUTTON_SELECTS = 1 shl 0;
- GTK_BUTTON_DRAGS = 1 shl 1;
- GTK_BUTTON_EXPANDS = 1 shl 2;
- const
- bm_TGtkCListColumn_visible = $1;
- bp_TGtkCListColumn_visible = 0;
- bm_TGtkCListColumn_width_set = $2;
- bp_TGtkCListColumn_width_set = 1;
- bm_TGtkCListColumn_resizeable = $4;
- bp_TGtkCListColumn_resizeable = 2;
- bm_TGtkCListColumn_auto_resize = $8;
- bp_TGtkCListColumn_auto_resize = 3;
- bm_TGtkCListColumn_button_passive = $10;
- bp_TGtkCListColumn_button_passive = 4;
- bm_TGtkCListRow_fg_set = $1;
- bp_TGtkCListRow_fg_set = 0;
- bm_TGtkCListRow_bg_set = $2;
- bp_TGtkCListRow_bg_set = 1;
- bm_TGtkCListRow_selectable = $4;
- bp_TGtkCListRow_selectable = 2;
- function GTK_TYPE_CLIST : GType;
- function GTK_CLIST(obj: pointer) : PGtkCList;
- function GTK_CLIST_CLASS(klass: pointer) : PGtkCListClass;
- function GTK_IS_CLIST(obj: pointer) : boolean;
- function GTK_IS_CLIST_CLASS(klass: pointer) : boolean;
- function GTK_CLIST_GET_CLASS(obj: pointer) : PGtkCListClass;
- function GTK_CLIST_FLAGS(clist : pointer) : guint16;
- procedure GTK_CLIST_SET_FLAG(clist: PGtkCList; flag: guint16);
- // (GTK_CLIST_FLAGS (clist) |= (GTK_ ## flag)) }
- procedure GTK_CLIST_UNSET_FLAG(clist: PGtkCList; flag: guint16);
- // (GTK_CLIST_FLAGS (clist) &= ~(GTK_ ## flag)) }
- function GTK_CLIST_IN_DRAG_get(clist : pointer) : boolean;
- function GTK_CLIST_ROW_HEIGHT_SET_get(clist : pointer) : boolean;
- function GTK_CLIST_SHOW_TITLES_get(clist : pointer) : boolean;
- function GTK_CLIST_ADD_MODE_get(clist : pointer) : boolean;
- function GTK_CLIST_AUTO_SORT_get(clist : pointer) : boolean;
- function GTK_CLIST_AUTO_RESIZE_BLOCKED_get(clist : pointer) : boolean;
- function GTK_CLIST_REORDERABLE_get(clist : pointer) : boolean;
- function GTK_CLIST_USE_DRAG_ICONS_get(clist : pointer) : boolean;
- function GTK_CLIST_DRAW_DRAG_LINE_get(clist : pointer) : boolean;
- function GTK_CLIST_DRAW_DRAG_RECT_get(clist : pointer) : boolean;
- function GTK_CLIST_ROW_get(_glist_ : PGList) : PGtkCListRow;
- { pointer casting for cells }
- function GTK_CELL_TEXT_get(cell : pointer) : PGtkCellText;
- function GTK_CELL_PIXMAP_get(cell : pointer) : PGtkCellPixmap;
- function GTK_CELL_PIXTEXT_get(cell : pointer) : PGtkCellPixText;
- function GTK_CELL_WIDGET_get(cell : pointer) : PGtkCellWidget;
- function visible(var a : TGtkCListColumn) : guint; overload;
- procedure set_visible(var a : TGtkCListColumn; __visible : guint); overload;
- function width_set(var a : TGtkCListColumn) : guint;
- procedure set_width_set(var a : TGtkCListColumn; __width_set : guint);
- function resizeable(var a : TGtkCListColumn) : guint;
- procedure set_resizeable(var a : TGtkCListColumn; __resizeable : guint);
- function auto_resize(var a : TGtkCListColumn) : guint;
- procedure set_auto_resize(var a : TGtkCListColumn; __auto_resize : guint);
- function button_passive(var a : TGtkCListColumn) : guint;
- procedure set_button_passive(var a : TGtkCListColumn; __button_passive : guint);
- function fg_set(var a : TGtkCListRow) : guint;
- procedure set_fg_set(var a : TGtkCListRow; __fg_set : guint);
- function bg_set(var a : TGtkCListRow) : guint;
- procedure set_bg_set(var a : TGtkCListRow; __bg_set : guint);
- function selectable(var a : TGtkCListRow) : guint;
- procedure set_selectable(var a : TGtkCListRow; __selectable : guint);
- function gtk_clist_get_type:TGtkType; cdecl; external gtklib;
- { create a new GtkCList }
- function gtk_clist_new(columns:gint):PGtkWidget; cdecl; external gtklib;
- function gtk_clist_new_with_titles(columns:gint):PGtkWidget; varargs; cdecl; external gtklib;
- { set adjustments of clist }
- procedure gtk_clist_set_hadjustment(clist:PGtkCList; adjustment:PGtkAdjustment); cdecl; external gtklib;
- procedure gtk_clist_set_vadjustment(clist:PGtkCList; adjustment:PGtkAdjustment); cdecl; external gtklib;
- { get adjustments of clist }
- function gtk_clist_get_hadjustment(clist:PGtkCList):PGtkAdjustment; cdecl; external gtklib;
- function gtk_clist_get_vadjustment(clist:PGtkCList):PGtkAdjustment; cdecl; external gtklib;
- { set the border style of the clist }
- procedure gtk_clist_set_shadow_type(clist:PGtkCList; _type:TGtkShadowType); cdecl; external gtklib;
- { set the clist's selection mode }
- procedure gtk_clist_set_selection_mode(clist:PGtkCList; mode:TGtkSelectionMode); cdecl; external gtklib;
- { enable clists reorder ability }
- procedure gtk_clist_set_reorderable(clist:PGtkCList; reorderable:gboolean); cdecl; external gtklib;
- procedure gtk_clist_set_use_drag_icons(clist:PGtkCList; use_icons:gboolean); cdecl; external gtklib;
- procedure gtk_clist_set_button_actions(clist:PGtkCList; button:guint; button_actions:guint8); cdecl; external gtklib;
- { freeze all visual updates of the list, and then thaw the list after
- you have made a number of changes and the updates wil occure in a
- more efficent mannor than if you made them on a unfrozen list
- }
- procedure gtk_clist_freeze(clist:PGtkCList); cdecl; external gtklib;
- procedure gtk_clist_thaw(clist:PGtkCList); cdecl; external gtklib;
- { show and hide the column title buttons }
- procedure gtk_clist_column_titles_show(clist:PGtkCList); cdecl; external gtklib;
- procedure gtk_clist_column_titles_hide(clist:PGtkCList); cdecl; external gtklib;
- { set the column title to be a active title (responds to button presses,
- prelights, and grabs keyboard focus), or passive where it acts as just
- a title
- }
- procedure gtk_clist_column_title_active(clist:PGtkCList; column:gint); cdecl; external gtklib;
- procedure gtk_clist_column_title_passive(clist:PGtkCList; column:gint); cdecl; external gtklib;
- procedure gtk_clist_column_titles_active(clist:PGtkCList); cdecl; external gtklib;
- procedure gtk_clist_column_titles_passive(clist:PGtkCList); cdecl; external gtklib;
- { set the title in the column title button }
- procedure gtk_clist_set_column_title(clist:PGtkCList; column:gint; title:Pgchar); cdecl; external gtklib;
- { returns the title of column. Returns NULL if title is not set }
- function gtk_clist_get_column_title(clist:PGtkCList; column:gint):Pgchar; cdecl; external gtklib;
- { set a widget instead of a title for the column title button }
- procedure gtk_clist_set_column_widget(clist:PGtkCList; column:gint; widget:PGtkWidget); cdecl; external gtklib;
- { returns the column widget }
- function gtk_clist_get_column_widget(clist:PGtkCList; column:gint):PGtkWidget; cdecl; external gtklib;
- { set the justification on a column }
- procedure gtk_clist_set_column_justification(clist:PGtkCList; column:gint; justification:TGtkJustification); cdecl; external gtklib;
- { set visibility of a column }
- procedure gtk_clist_set_column_visibility(clist:PGtkCList; column:gint; visible:gboolean); cdecl; external gtklib;
- { enable/disable column resize operations by mouse }
- procedure gtk_clist_set_column_resizeable(clist:PGtkCList; column:gint; resizeable:gboolean); cdecl; external gtklib;
- { resize column automatically to its optimal width }
- procedure gtk_clist_set_column_auto_resize(clist:PGtkCList; column:gint; auto_resize:gboolean); cdecl; external gtklib;
- function gtk_clist_columns_autosize(clist:PGtkCList):gint; cdecl; external gtklib;
- { return the optimal column width, i.e. maximum of all cell widths }
- function gtk_clist_optimal_column_width(clist:PGtkCList; column:gint):gint; cdecl; external gtklib;
- { set the pixel width of a column; this is a necessary step in
- creating a CList because otherwise the column width is chozen from
- the width of the column title, which will never be right
- }
- procedure gtk_clist_set_column_width(clist:PGtkCList; column:gint; width:gint); cdecl; external gtklib;
- { set column minimum/maximum width. min/max_width < 0 => no restriction }
- procedure gtk_clist_set_column_min_width(clist:PGtkCList; column:gint; min_width:gint); cdecl; external gtklib;
- procedure gtk_clist_set_column_max_width(clist:PGtkCList; column:gint; max_width:gint); cdecl; external gtklib;
- { change the height of the rows, the default (height=0) is
- the hight of the current font.
- }
- procedure gtk_clist_set_row_height(clist:PGtkCList; height:guint); cdecl; external gtklib;
- { scroll the viewing area of the list to the given column and row;
- row_align and col_align are between 0-1 representing the location the
- row should appear on the screnn, 0.0 being top or left, 1.0 being
- bottom or right; if row or column is -1 then then there is no change
- }
- procedure gtk_clist_moveto(clist:PGtkCList; row:gint; column:gint; row_align:gfloat; col_align:gfloat); cdecl; external gtklib;
- { returns whether the row is visible }
- function gtk_clist_row_is_visible(clist:PGtkCList; row:gint):TGtkVisibility; cdecl; external gtklib;
- { returns the cell type }
- function gtk_clist_get_cell_type(clist:PGtkCList; row:gint; column:gint):TGtkCellType; cdecl; external gtklib;
- { sets a given cell's text, replacing its current contents }
- procedure gtk_clist_set_text(clist:PGtkCList; row:gint; column:gint; text:Pgchar); cdecl; external gtklib;
- { for the "get" functions, any of the return pointer can be
- NULL if you are not interested
- }
- function gtk_clist_get_text(clist:PGtkCList; row:gint; column:gint; text:PPgchar):gint; cdecl; external gtklib;
- { sets a given cell's pixmap, replacing its current contents }
- procedure gtk_clist_set_pixmap(clist:PGtkCList; row:gint; column:gint; pixmap:PGdkPixmap; mask:PGdkBitmap); cdecl; external gtklib;
- function gtk_clist_get_pixmap(clist:PGtkCList; row:gint; column:gint; var pixmap:PGdkPixmap; var mask:PGdkBitmap):gint; cdecl; external gtklib;
- { sets a given cell's pixmap and text, replacing its current contents }
- procedure gtk_clist_set_pixtext(clist:PGtkCList; row:gint; column:gint; text:Pgchar; spacing:guint8;
- pixmap:PGdkPixmap; mask:PGdkBitmap); cdecl; external gtklib;
- function gtk_clist_get_pixtext(clist:PGtkCList; row:gint; column:gint; text:PPgchar; spacing:Pguint8;
- var pixmap:PGdkPixmap; var mask:PGdkBitmap):gint; cdecl; external gtklib;
- { sets the foreground color of a row, the color must already
- be allocated
- }
- procedure gtk_clist_set_foreground(clist:PGtkCList; row:gint; color:PGdkColor); cdecl; external gtklib;
- { sets the background color of a row, the color must already
- be allocated
- }
- procedure gtk_clist_set_background(clist:PGtkCList; row:gint; color:PGdkColor); cdecl; external gtklib;
- { set / get cell styles }
- procedure gtk_clist_set_cell_style(clist:PGtkCList; row:gint; column:gint; style:PGtkStyle); cdecl; external gtklib;
- function gtk_clist_get_cell_style(clist:PGtkCList; row:gint; column:gint):PGtkStyle; cdecl; external gtklib;
- procedure gtk_clist_set_row_style(clist:PGtkCList; row:gint; style:PGtkStyle); cdecl; external gtklib;
- function gtk_clist_get_row_style(clist:PGtkCList; row:gint):PGtkStyle; cdecl; external gtklib;
- { this sets a horizontal and vertical shift for drawing
- the contents of a cell; it can be positive or negitive;
- this is particulary useful for indenting items in a column
- }
- procedure gtk_clist_set_shift(clist:PGtkCList; row:gint; column:gint; vertical:gint; horizontal:gint); cdecl; external gtklib;
- { set/get selectable flag of a single row }
- procedure gtk_clist_set_selectable(clist:PGtkCList; row:gint; selectable:gboolean); cdecl; external gtklib;
- function gtk_clist_get_selectable(clist:PGtkCList; row:gint):gboolean; cdecl; external gtklib;
- { prepend/append returns the index of the row you just added,
- making it easier to append and modify a row
- }
- function gtk_clist_prepend(clist:PGtkCList):gint; varargs; cdecl; external gtklib;
- function gtk_clist_append(clist:PGtkCList):gint; varargs; cdecl; external gtklib;
- { inserts a row at index row and returns the row where it was
- actually inserted (may be different from "row" in auto_sort mode)
- }
- function gtk_clist_insert(clist:PGtkCList; row:gint):gint; varargs; cdecl; external gtklib;
- { removes row at index row }
- procedure gtk_clist_remove(clist:PGtkCList; row:gint); cdecl; external gtklib;
- { sets a arbitrary data pointer for a given row }
- procedure gtk_clist_set_row_data(clist:PGtkCList; row:gint; data:gpointer); cdecl; external gtklib;
- { sets a data pointer for a given row with destroy notification }
- procedure gtk_clist_set_row_data_full(clist:PGtkCList; row:gint; data:gpointer; destroy:TGtkDestroyNotify); cdecl; external gtklib;
- { returns the data set for a row }
- function gtk_clist_get_row_data(clist:PGtkCList; row:gint):gpointer; cdecl; external gtklib;
- { givin a data pointer, find the first (and hopefully only!)
- row that points to that data, or -1 if none do
- }
- function gtk_clist_find_row_from_data(clist:PGtkCList; data:gpointer):gint; cdecl; external gtklib;
- { force selection of a row }
- procedure gtk_clist_select_row(clist:PGtkCList; row:gint; column:gint); cdecl; external gtklib;
- { force unselection of a row }
- procedure gtk_clist_unselect_row(clist:PGtkCList; row:gint; column:gint); cdecl; external gtklib;
- { undo the last select/unselect operation }
- procedure gtk_clist_undo_selection(clist:PGtkCList); cdecl; external gtklib;
- { clear the entire list -- this is much faster than removing
- each item with gtk_clist_remove
- }
- procedure gtk_clist_clear(clist:PGtkCList); cdecl; external gtklib;
- { return the row column corresponding to the x and y coordinates,
- the returned values are only valid if the x and y coordinates
- are respectively to a window == clist->clist_window
- }
- function gtk_clist_get_selection_info(clist:PGtkCList; x:gint; y:gint; row:Pgint; column:Pgint):gint; cdecl; external gtklib;
- { in multiple or extended mode, select all rows }
- procedure gtk_clist_select_all(clist:PGtkCList); cdecl; external gtklib;
- { in all modes except browse mode, deselect all rows }
- procedure gtk_clist_unselect_all(clist:PGtkCList); cdecl; external gtklib;
- { swap the position of two rows }
- procedure gtk_clist_swap_rows(clist:PGtkCList; row1:gint; row2:gint); cdecl; external gtklib;
- { move row from source_row position to dest_row position }
- procedure gtk_clist_row_move(clist:PGtkCList; source_row:gint; dest_row:gint); cdecl; external gtklib;
- { sets a compare function different to the default }
- procedure gtk_clist_set_compare_func(clist:PGtkCList; cmp_func:TGtkCListCompareFunc); cdecl; external gtklib;
- { the column to sort by }
- procedure gtk_clist_set_sort_column(clist:PGtkCList; column:gint); cdecl; external gtklib;
- { how to sort : ascending or descending }
- procedure gtk_clist_set_sort_type(clist:PGtkCList; sort_type:TGtkSortType); cdecl; external gtklib;
- { sort the list with the current compare function }
- procedure gtk_clist_sort(clist:PGtkCList); cdecl; external gtklib;
- { Automatically sort upon insertion }
- procedure gtk_clist_set_auto_sort(clist:PGtkCList; auto_sort:gboolean); cdecl; external gtklib;
- { Private function for clist, ctree }
- function _gtk_clist_create_cell_layout(clist:PGtkCList; clist_row:PGtkCListRow; column:gint):PPangoLayout; cdecl; external gtklib;
- {$ENDIF read_interface_rest}
- //------------------------------------------------------------------------------
- {$IFDEF read_implementation}
- function GTK_TYPE_CLIST : GType;
- begin
- GTK_TYPE_CLIST:=gtk_clist_get_type;
- end;
- function GTK_CLIST(obj: pointer) : PGtkCList;
- begin
- GTK_CLIST:=PGtkCList(GTK_CHECK_CAST(obj,GTK_TYPE_CLIST));
- end;
- function GTK_CLIST_CLASS(klass: pointer) : PGtkCListClass;
- begin
- GTK_CLIST_CLASS:=PGtkCListClass(GTK_CHECK_CLASS_CAST(klass,GTK_TYPE_CLIST));
- end;
- function GTK_IS_CLIST(obj: pointer) : boolean;
- begin
- GTK_IS_CLIST:=GTK_CHECK_TYPE(obj,GTK_TYPE_CLIST);
- end;
- function GTK_IS_CLIST_CLASS(klass: pointer) : boolean;
- begin
- GTK_IS_CLIST_CLASS:=GTK_CHECK_CLASS_TYPE(klass,GTK_TYPE_CLIST);
- end;
- function GTK_CLIST_GET_CLASS(obj: pointer) : PGtkCListClass;
- begin
- GTK_CLIST_GET_CLASS:=PGtkCListClass(GTK_CHECK_GET_CLASS(obj,GTK_TYPE_CLIST));
- end;
- function GTK_CLIST_FLAGS(clist : pointer) : guint16;
- begin
- GTK_CLIST_FLAGS:=GTK_CLIST(clist)^.flags;
- end;
- procedure GTK_CLIST_SET_FLAG(clist: PGtkCList; flag: guint16);
- begin
- clist^.flags:=GTK_CLIST(clist)^.flags or flag;
- end;
- procedure GTK_CLIST_UNSET_FLAG(clist: PGtkCList; flag: guint16);
- begin
- clist^.flags:=GTK_CLIST(clist)^.flags and not flag;
- end;
- function GTK_CLIST_IN_DRAG_get(clist : pointer) : boolean;
- begin
- GTK_CLIST_IN_DRAG_get:=((GTK_CLIST_FLAGS(clist)) and GTK_CLIST_IN_DRAG)<>0;
- end;
- function GTK_CLIST_ROW_HEIGHT_SET_get(clist : pointer) : boolean;
- begin
- GTK_CLIST_ROW_HEIGHT_SET_get:=((GTK_CLIST_FLAGS(clist)) and GTK_CLIST_ROW_HEIGHT_SET)<>0;
- end;
- function GTK_CLIST_SHOW_TITLES_get(clist : pointer) : boolean;
- begin
- GTK_CLIST_SHOW_TITLES_get:=((GTK_CLIST_FLAGS(clist)) and GTK_CLIST_SHOW_TITLES)<>0;
- end;
- function GTK_CLIST_ADD_MODE_get(clist : pointer) : boolean;
- begin
- GTK_CLIST_ADD_MODE_get:=((GTK_CLIST_FLAGS(clist)) and GTK_CLIST_ADD_MODE)<>0;
- end;
- function GTK_CLIST_AUTO_SORT_get(clist : pointer) : boolean;
- begin
- GTK_CLIST_AUTO_SORT_get:=((GTK_CLIST_FLAGS(clist)) and GTK_CLIST_AUTO_SORT)<>0;
- end;
- function GTK_CLIST_AUTO_RESIZE_BLOCKED_get(clist : pointer) : boolean;
- begin
- GTK_CLIST_AUTO_RESIZE_BLOCKED_get:=((GTK_CLIST_FLAGS(clist)) and GTK_CLIST_AUTO_RESIZE_BLOCKED)<>0;
- end;
- function GTK_CLIST_REORDERABLE_get(clist : pointer) : boolean;
- begin
- GTK_CLIST_REORDERABLE_get:=((GTK_CLIST_FLAGS(clist)) and GTK_CLIST_REORDERABLE)<>0;
- end;
- function GTK_CLIST_USE_DRAG_ICONS_get(clist : pointer) : boolean;
- begin
- GTK_CLIST_USE_DRAG_ICONS_get:=((GTK_CLIST_FLAGS(clist)) and GTK_CLIST_USE_DRAG_ICONS)<>0;
- end;
- function GTK_CLIST_DRAW_DRAG_LINE_get(clist : pointer) : boolean;
- begin
- GTK_CLIST_DRAW_DRAG_LINE_get:=((GTK_CLIST_FLAGS(clist)) and GTK_CLIST_DRAW_DRAG_LINE)<>0;
- end;
- function GTK_CLIST_DRAW_DRAG_RECT_get(clist : pointer) : boolean;
- begin
- GTK_CLIST_DRAW_DRAG_RECT_get:=((GTK_CLIST_FLAGS(clist)) and GTK_CLIST_DRAW_DRAG_RECT)<>0;
- end;
- function GTK_CLIST_ROW_get(_glist_ : PGList) : PGtkCListRow;
- begin
- GTK_CLIST_ROW_get:=PGtkCListRow(_glist_^.data);
- end;
- function GTK_CELL_TEXT_get(cell : pointer) : PGtkCellText;
- begin
- GTK_CELL_TEXT_get:=PGtkCellText(@(cell));
- end;
- function GTK_CELL_PIXMAP_get(cell : pointer) : PGtkCellPixmap;
- begin
- GTK_CELL_PIXMAP_get:=PGtkCellPixmap(@(cell));
- end;
- function GTK_CELL_PIXTEXT_get(cell : pointer) : PGtkCellPixText;
- begin
- GTK_CELL_PIXTEXT_get:=PGtkCellPixText(@(cell));
- end;
- function GTK_CELL_WIDGET_get(cell : pointer) : PGtkCellWidget;
- begin
- GTK_CELL_WIDGET_get:=PGtkCellWidget(@(cell));
- end;
- function visible(var a : TGtkCListColumn) : guint;
- begin
- visible:=(a.flag0 and bm_TGtkCListColumn_visible) shr bp_TGtkCListColumn_visible;
- end;
- procedure set_visible(var a : TGtkCListColumn; __visible : guint);
- begin
- a.flag0:=a.flag0 or ((__visible shl bp_TGtkCListColumn_visible) and bm_TGtkCListColumn_visible);
- end;
- function width_set(var a : TGtkCListColumn) : guint;
- begin
- width_set:=(a.flag0 and bm_TGtkCListColumn_width_set) shr bp_TGtkCListColumn_width_set;
- end;
- procedure set_width_set(var a : TGtkCListColumn; __width_set : guint);
- begin
- a.flag0:=a.flag0 or ((__width_set shl bp_TGtkCListColumn_width_set) and bm_TGtkCListColumn_width_set);
- end;
- function resizeable(var a : TGtkCListColumn) : guint;
- begin
- resizeable:=(a.flag0 and bm_TGtkCListColumn_resizeable) shr bp_TGtkCListColumn_resizeable;
- end;
- procedure set_resizeable(var a : TGtkCListColumn; __resizeable : guint);
- begin
- a.flag0:=a.flag0 or ((__resizeable shl bp_TGtkCListColumn_resizeable) and bm_TGtkCListColumn_resizeable);
- end;
- function auto_resize(var a : TGtkCListColumn) : guint;
- begin
- auto_resize:=(a.flag0 and bm_TGtkCListColumn_auto_resize) shr bp_TGtkCListColumn_auto_resize;
- end;
- procedure set_auto_resize(var a : TGtkCListColumn; __auto_resize : guint);
- begin
- a.flag0:=a.flag0 or ((__auto_resize shl bp_TGtkCListColumn_auto_resize) and bm_TGtkCListColumn_auto_resize);
- end;
- function button_passive(var a : TGtkCListColumn) : guint;
- begin
- button_passive:=(a.flag0 and bm_TGtkCListColumn_button_passive) shr bp_TGtkCListColumn_button_passive;
- end;
- procedure set_button_passive(var a : TGtkCListColumn; __button_passive : guint);
- begin
- a.flag0:=a.flag0 or ((__button_passive shl bp_TGtkCListColumn_button_passive) and bm_TGtkCListColumn_button_passive);
- end;
- function fg_set(var a : TGtkCListRow) : guint;
- begin
- fg_set:=(a.flag0 and bm_TGtkCListRow_fg_set) shr bp_TGtkCListRow_fg_set;
- end;
- procedure set_fg_set(var a : TGtkCListRow; __fg_set : guint);
- begin
- a.flag0:=a.flag0 or ((__fg_set shl bp_TGtkCListRow_fg_set) and bm_TGtkCListRow_fg_set);
- end;
- function bg_set(var a : TGtkCListRow) : guint;
- begin
- bg_set:=(a.flag0 and bm_TGtkCListRow_bg_set) shr bp_TGtkCListRow_bg_set;
- end;
- procedure set_bg_set(var a : TGtkCListRow; __bg_set : guint);
- begin
- a.flag0:=a.flag0 or ((__bg_set shl bp_TGtkCListRow_bg_set) and bm_TGtkCListRow_bg_set);
- end;
- function selectable(var a : TGtkCListRow) : guint;
- begin
- selectable:=(a.flag0 and bm_TGtkCListRow_selectable) shr bp_TGtkCListRow_selectable;
- end;
- procedure set_selectable(var a : TGtkCListRow; __selectable : guint);
- begin
- a.flag0:=a.flag0 or ((__selectable shl bp_TGtkCListRow_selectable) and bm_TGtkCListRow_selectable);
- end;
- {$ENDIF read_implementation}
- // included by gtk2.pas
|