/src/wrappers/gtk/library/gtk_tree_view.e
Specman e | 1487 lines | 359 code | 272 blank | 856 comment | 14 complexity | fccf372578bd2f45e8125d1ba7ce04b4 MD5 | raw file
Large files files are truncated, but you can click here to view the full file
1indexing 2 description: "GtkTreeView A widget for displaying both trees and lists." 3 copyright: "[ 4 Copyright (C) 2006 eiffel-libraries team, GTK+ team 5 6 This library is free software; you can redistribute it and/or 7 modify it under the terms of the GNU Lesser General Public License 8 as published by the Free Software Foundation; either version 2.1 of 9 the License, or (at your option) any later version. 10 11 This library is distributed in the hope that it will be useful, but 12 WITHOUT ANY WARRANTY; without even the implied warranty of 13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 Lesser General Public License for more details. 15 16 You should have received a copy of the GNU Lesser General Public 17 License along with this library; if not, write to the Free Software 18 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 19 02110-1301 USA 20 ]" 21 date: "$Date:$" 22 revision: "$Revision:$" 23 24class GTK_TREE_VIEW 25inherit 26 GTK_CONTAINER 27 28 -- GtkTreeView implements AtkImplementorIface. 29insert 30 GTK_TREE_VIEW_EXTERNALS 31 GTK_TREE_VIEW_DROP_POSITION 32 33creation make, with_model, from_external_pointer 34 35feature {} -- Creation 36 make is 37 -- Creates a new GtkTreeView widget. 38 require gtk_initialized: gtk.is_initialized 39 do 40 from_external_pointer (gtk_tree_view_new) 41 end 42 43 with_model (a_model: GTK_TREE_MODEL) is 44 -- Creates a new GtkTreeView widget with the model initialized to `a_model'. 45 require 46 gtk_initialized: gtk.is_initialized 47 valid_model: a_model /= Void 48 do 49 from_external_pointer (gtk_tree_view_new_with_model (a_model.handle)) 50 end 51 52feature 53 model: GTK_TREE_MODEL is 54 -- The model the GtkTreeView is based on. Void if the model 55 -- is unset. 56 local model_factory: G_OBJECT_EXPANDED_FACTORY [GTK_TREE_MODEL] 57 do 58 Result := model_factory.wrapper_or_void(gtk_tree_view_get_model (handle)) 59 end 60 61 set_model (a_model: GTK_TREE_MODEL) is 62 -- Sets the model for a GtkTreeView. If the tree view already 63 -- has a model set, it will remove it before setting the new 64 -- model. 65 require valid_model: a_model /= Void 66 do 67 gtk_tree_view_set_model (handle, a_model.handle) 68 end 69 70 unset_model is 71 -- Unset the old model. 72 do 73 gtk_tree_view_set_model (handle, default_pointer) 74 end 75 76feature 77 selection: GTK_TREE_SELECTION is 78 -- the GtkTreeSelection associated with tree view. 79 local factory: G_OBJECT_EXPANDED_FACTORY[GTK_TREE_SELECTION] 80 do 81 Result := factory.wrapper(gtk_tree_view_get_selection (handle)) 82 end 83 84 hadjustment: GTK_ADJUSTMENT is 85 -- the GtkAdjustment currently being used for the horizontal 86 -- aspect or Void if none is currently being used. 87 local factory: G_OBJECT_EXPANDED_FACTORY[GTK_ADJUSTMENT] 88 do 89 Result := factory.wrapper(gtk_tree_view_get_hadjustment (handle)) 90 end 91 92 set_hadjustment (an_adjustment: GTK_ADJUSTMENT) is 93 -- Sets the GtkAdjustment for the current orizontal aspect. 94 require valid_adjustment: an_adjustment/=Void 95 do 96 gtk_tree_view_set_hadjustment (handle, an_adjustment.handle) 97 end 98 99 unset_hadjustment is 100 -- Unsets the GtkAdjustment for the current orizontal aspect. 101 do 102 gtk_tree_view_set_hadjustment (handle, default_pointer) 103 end 104 105 106 vadjustment: GTK_ADJUSTMENT is 107 -- Gets the GtkAdjustment currently being used for the 108 -- vertical aspect or Void if none is currently being used. 109 local factory: G_OBJECT_EXPANDED_FACTORY[GTK_ADJUSTMENT] 110 do 111 Result := factory.wrapper(gtk_tree_view_get_vadjustment (handle)) 112 end 113 114 set_vadjustment (an_adjustment: GTK_ADJUSTMENT) is 115 -- Sets the GtkAdjustment for the current vertical aspect. 116 require valid_adjustment: an_adjustment/=Void 117 do 118 gtk_tree_view_set_vadjustment (handle, an_adjustment.handle) 119 end 120 121 unset_vadjustment is 122 -- Unsets the GtkAdjustment for the current vertical aspect. 123 do 124 gtk_tree_view_set_vadjustment (handle, default_pointer) 125 end 126 127 are_headers_visible: BOOLEAN is 128 -- Are the headers on the tree view visible? 129 do 130 Result := gtk_tree_view_get_headers_visible(handle).to_boolean 131 end 132 133 set_headers_visible is 134 -- Makes the headers are visible 135 do 136 gtk_tree_view_set_headers_visible (handle,1) 137 ensure are_headers_visible 138 end 139 140 set_headers_invisible is 141 -- Makes the headers are invisible 142 do 143 gtk_tree_view_set_headers_visible (handle,0) 144 ensure not are_headers_visible 145 end 146 147 columns_autosize is 148 -- Resizes all columns to their optimal width. Only works 149 -- after the treeview has been realized. 150 do 151 gtk_tree_view_columns_autosize (handle) 152 end 153 154 set_headers_clickable is 155 -- Allow the column title buttons to be clicked. 156 do 157 gtk_tree_view_set_headers_clickable (handle,1) 158 end 159 160 set_headers_unclickable is 161 -- Forbid the column title buttons to be clicked. 162 do 163 gtk_tree_view_set_headers_clickable (handle,0) 164 end 165 166 --TODO: set_rules_hint () 167 168 -- void gtk_tree_view_set_rules_hint (GtkTreeView *tree_view, 169 -- gboolean setting); 170 171 -- This function tells GTK+ that the user interface for your 172 -- application requires users to read across tree rows and 173 -- associate cells with one another. By default, GTK+ will then 174 -- render the tree with alternating row colors. Do not use it just 175 -- because you prefer the appearance of the ruled tree; that's a 176 -- question for the theme. Some themes will draw tree rows in 177 -- alternating colors even when rules are turned off, and users who 178 -- prefer that appearance all the time can choose those themes. You 179 -- should call this function only as a semantic hint to the theme 180 -- engine that your tree makes alternating colors useful from a 181 -- functional standpoint (since it has lots of columns, generally). 182 183 -- tree_view : a GtkTreeView 184 -- setting : TRUE if the tree requires reading across rows 185 186 -- TODO: gtk_tree_view_get_rules_hint () 187 188 -- gboolean gtk_tree_view_get_rules_hint (GtkTreeView *tree_view); 189 190 -- Gets the setting set by gtk_tree_view_set_rules_hint(). 191 192 -- tree_view : a GtkTreeView 193 -- Returns : TRUE if rules are useful for the user of this tree 194 195 columns_number: INTEGER 196 -- Number of columns of Current GTK_TREE_VIEW 197 198 append_column (a_column: GTK_TREE_VIEW_COLUMN) is 199 -- Appends column to the list of columns. If tree view has 200 -- "fixed_height" mode enabled, then column must have its 201 -- "sizing" property set to be GTK_TREE_VIEW_COLUMN_FIXED. 202 require 203 valid_column: a_column/=Void 204 -- TODO: fixed_height_requirements: is_height_fixed implies a_column.is_sizing_fixed 205 do 206 columns_number := gtk_tree_view_append_column (handle, a_column.handle) 207 end 208 209 remove_column (a_column: GTK_TREE_VIEW_COLUMN) is 210 -- Removes `a_column' from tree view. 211 require 212 valid_column: a_column/=Void 213 do 214 columns_number := gtk_tree_view_remove_column (handle, a_column.handle) 215 end 216 217 insert_column (a_column: GTK_TREE_VIEW_COLUMN; a_position: INTEGER) is 218 -- This inserts `a_column' into the tree view at `a_position'. If 219 -- position is -1, then the column is inserted at the end. If 220 -- tree_view has "fixed_height" mode enabled, then column 221 -- must have its "sizing" property set to be 222 -- GTK_TREE_VIEW_COLUMN_FIXED. 223 require 224 valid_column: a_column /= Void 225 valid_position: a_position >= -1 226 do 227 columns_number := gtk_tree_view_insert_column (handle,a_column.handle,a_position) 228 end 229 230 -- Note: gtk_tree_view_insert_column_with_attributes () unwrappable since variadic. 231 232 -- TODO: Provide a feature equivalent to gtk_tree_view_insert_column_with_attributes 233 234 -- gint gtk_tree_view_insert_column_with_attributes 235 -- (GtkTreeView *tree_view, 236 -- gint position, 237 -- const gchar *title, 238 -- GtkCellRenderer *cell, 239 -- ...); 240 241 -- Creates a new GtkTreeViewColumn and inserts it into the tree_view at position. If position is -1, then the newly created column is inserted at the end. The column is initialized with the attributes given. If tree_view has "fixed_height" mode enabled, then column must have its sizing property set to be GTK_TREE_VIEW_COLUMN_FIXED. 242 243 -- tree_view : A GtkTreeView 244 -- position : The position to insert the new column in. 245 -- title : The title to set the header to. 246 -- cell : The GtkCellRenderer. 247 -- ... : A NULL-terminated list of attributes. 248 -- Returns : The number of columns in tree_view after insertion. 249 250 -- TODO wrap gtk_tree_view_insert_column_with_data_func () 251 252 -- gint gtk_tree_view_insert_column_with_data_func (GtkTreeView 253 -- *tree_view, gint position, const gchar *title, GtkCellRenderer 254 -- *cell, GtkTreeCellDataFunc func, gpointer data, GDestroyNotify 255 -- dnotify); 256 257 -- Convenience function that inserts a new column into the 258 -- GtkTreeView with the given cell renderer and a GtkCellDataFunc 259 -- to set cell renderer attributes (normally using data from the 260 -- model). See also gtk_tree_view_column_set_cell_data_func(), 261 -- gtk_tree_view_column_pack_start(). If tree_view has 262 -- "fixed_height" mode enabled, then column must have its "sizing" 263 -- property set to be GTK_TREE_VIEW_COLUMN_FIXED. 264 265 -- tree_view : a GtkTreeView 266 -- position : Position to insert, -1 for append 267 -- title : column title 268 -- cell : cell renderer for column 269 -- func : function to set attributes of cell renderer 270 -- data : data for func 271 -- dnotify : destroy notifier for data 272 -- Returns : number of columns in the tree view post-insert 273 274 column (a_position: INTEGER): GTK_TREE_VIEW_COLUMN is 275 -- the GtkTreeViewColumn at the given `a_position' in the tree view. 276 require valid_number: a_position.in_range(0,columns.count) 277 local ptr: POINTER 278 do 279 create Result.from_external_pointer (gtk_tree_view_get_column (handle, a_position)) 280 end 281 282 columns: G_LIST[GTK_TREE_VIEW_COLUMN] is 283 -- a GList of all the GtkTreeViewColumn s currently in tree view. 284 do 285 create {G_OBJECT_LIST[GTK_TREE_VIEW_COLUMN]} 286 Result.from_external_pointer(gtk_tree_view_get_columns(handle)) 287 -- Note: The returned list must be freed with g_list_free(). 288 end 289 290 move_column_after (a_column, a_base: GTK_TREE_VIEW_COLUMN) is 291 -- Moves `a_column' to be after to `a_base' column. If 292 -- `a_base' is Void, then column is placed in the first 293 -- position. 294 require valid_column: a_column/=Void 295 do 296 if a_base /= Void then 297 gtk_tree_view_move_column_after (handle, a_column.handle, a_base.handle) 298 else 299 gtk_tree_view_move_column_after (handle, a_column.handle, default_pointer) 300 end 301 end 302 303 set_expander_column (a_column: GTK_TREE_VIEW_COLUMN) is 304 -- Sets the column to draw the expander arrow at. It must be 305 -- in tree view. If `a_column' is Void, then the expander 306 -- arrow is always at the first visible column. 307 308 -- If you do not want expander arrow to appear in your tree, 309 -- set the expander column to a hidden column. 310 do 311 if a_column = Void then 312 gtk_tree_view_set_expander_column (handle, default_pointer) 313 else 314 gtk_tree_view_set_expander_column (handle, a_column.handle) 315 end 316 end 317 318 expander_column: GTK_TREE_VIEW_COLUMN is 319 -- the column that is the current expander column. This 320 -- column has the expander arrow drawn next to it. 321 do 322 create Result.from_external_pointer (gtk_tree_view_get_expander_column (handle)) 323 end 324 325 -- TODO: wrap gtk_tree_view_set_column_drag_function () 326 327 -- void gtk_tree_view_set_column_drag_function (GtkTreeView 328 -- *tree_view, GtkTreeViewColumnDropFunc func, gpointer user_data, 329 -- GtkDestroyNotify destroy); 330 331 -- Sets a user function for determining where a column may be 332 -- dropped when dragged. This function is called on every column 333 -- pair in turn at the beginning of a column drag to determine 334 -- where a drop can take place. The arguments passed to func are: 335 -- the tree_view, the GtkTreeViewColumn being dragged, the two 336 -- GtkTreeViewColumn s determining the drop spot, and user_data. If 337 -- either of the GtkTreeViewColumn arguments for the drop spot are 338 -- NULL, then they indicate an edge. If func is set to be NULL, 339 -- then tree_view reverts to the default behavior of allowing all 340 -- columns to be dropped everywhere. 341 342 -- tree_view : A GtkTreeView. 343 -- func : A function to determine which columns are reorderable, or NULL. 344 -- user_data : User data to be passed to func, or NULL 345 -- destroy : Destroy notifier for user_data, or NULL 346 347 scroll_to_point (an_x, an_y: INTEGER) is 348 -- Scrolls the tree view such that the top-left corner of the 349 -- visible area is `an_x', `an_y', where `an_x' and `an_y' 350 -- are specified in tree window coordinates. The tree_view 351 -- must be realized before this function is called. If it 352 -- isn't, you probably want to be using `scroll_to_cell'. 353 354 -- If either `an_x' or `an_y' are -1, then that direction isn't scrolled. 355 do 356 gtk_tree_view_scroll_to_point (handle, an_x, an_y) 357 end 358 359 scroll_to_cell (a_path: GTK_TREE_PATH; a_column: GTK_TREE_VIEW_COLUMN; 360 use_align: BOOLEAN; row_align, col_align: REAL_32) is 361 -- Moves the alignments of tree view to the position 362 -- specified by `a_column' and `a_path'. If `a_column' is 363 -- Void, then no horizontal scrolling occurs. Likewise, if 364 -- `a_path' is Void no vertical scrolling occurs. At a 365 -- minimum, one of `a_column' or `a_path' need to be 366 -- non-Void. `row_align' determines where the row is placed, 367 -- and `col_align' determines where `a_column' is 368 -- placed. Both are expected to be between 0.0 and 1.0. 0.0 369 -- means left/top alignment, 1.0 means right/bottom 370 -- alignment, 0.5 means center. 371 372 -- If `use_align' is False, then the alignment arguments are 373 -- ignored, and the tree does the minimum amount of work to 374 -- scroll the cell onto the screen. This means that the cell 375 -- will be scrolled to the edge closest to its current 376 -- position. If the cell is currently visible on the screen, 377 -- nothing is done. 378 379 -- This function only works if the model is set, and `a_path' 380 -- is a valid row on the model. If the model changes before 381 -- the tree_view is realized, the centered `a_path' will be 382 -- modified to reflect this change. 383 384 -- `a_path' : The path of the row to move to, or Void. 385 -- `a_column' : The GtkTreeViewColumn to move horizontally to, or Void. 386 -- `use_align' : whether to use alignment arguments, or FALSE. 387 -- `row_align' : The vertical alignment of the row specified by path. 388 -- `col_align' : The horizontal alignment of the column specified by column. 389 require 390 either_column_or_path_not_void: a_column/=Void or a_path/=Void 391 valid_row_align: row_align.in_range ({REAL_32 0.0}, {REAL_32 1.0}) 392 valid_col_align: col_align.in_range ({REAL_32 0.0}, {REAL_32 1.0}) 393 local 394 column_ptr, path_ptr: POINTER 395 do 396 if a_column /= Void then column_ptr := a_column.handle end 397 if a_path /= Void then path_ptr := a_path.handle end 398 399 gtk_tree_view_scroll_to_cell (handle, path_ptr, column_ptr, 400 use_align.to_integer, row_align, col_align) 401 end 402 403 set_cursor (a_path: GTK_TREE_PATH; a_focus_column: GTK_TREE_VIEW_COLUMN; start_editing: BOOLEAN) is 404 -- Sets the current keyboard focus to be at `a_path', and 405 -- selects it. This is useful when you want to focus the 406 -- user's attention on a particular row. If `a_focus_column' 407 -- is not Void, then focus is given to the column specified 408 -- by it. Additionally, if `a_focus_column' is specified, and 409 -- `start_editing' is TRUE, then editing should be started in 410 -- the specified cell. This function is often followed by 411 -- gtk_widget_grab_focus (tree_view) in order to give 412 -- keyboard focus to the widget. Please note that editing can 413 -- only happen when the widget is realized. 414 415 -- `a_path' : A GtkTreePath 416 -- `a_focus_column' : A GtkTreeViewColumn, or Void 417 -- `start_editing' : TRUE if the specified cell should start being edited. 418 require valid_path: a_path /= Void 419 do 420 if a_focus_column=Void then 421 gtk_tree_view_set_cursor (handle, a_path.handle, 422 default_pointer, start_editing.to_integer) 423 else 424 gtk_tree_view_set_cursor (handle, a_path.handle, 425 a_focus_column.handle, start_editing.to_integer) 426 end 427 end 428 429 set_cursor_on_cell (a_path: GTK_TREE_PATH; a_focus_column: GTK_TREE_VIEW_COLUMN; 430 a_focus_cell: GTK_CELL_RENDERER; start_editing: BOOLEAN) is 431 -- Sets the current keyboard focus to be at `a_path', and selects 432 -- it. This is useful when you want to focus the user's 433 -- attention on a particular row. If `a_focus_column' is not 434 -- Void, then focus is given to the column specified by 435 -- it. If `a_focus_column' and `a_focus_cell' are not Void, and 436 -- `a_focus_column' contains 2 or more editable or activatable 437 -- cells, then focus is given to the cell specified by 438 -- `a_focus_cell'. Additionally, if `a_focus_column' is specified, 439 -- and `start_editing' is TRUE, then editing should be started 440 -- in the specified cell. This function is often followed by 441 -- gtk_widget_grab_focus (tree_view) in order to give 442 -- keyboard focus to the widget. Please note that editing can 443 -- only happen when the widget is realized. 444 445 -- tree_view : A GtkTreeView 446 -- `a_path' : A GtkTreePath 447 -- `a_focus_column' : A GtkTreeViewColumn, or Void 448 -- `a_focus_cell' : A GtkCellRenderer, or Void 449 -- `start_editing' : TRUE if the specified cell should start being edited. 450 require valid_path: a_path /= Void 451 local column_ptr,cell_ptr: POINTER 452 do 453 if a_focus_column/=Void then column_ptr := a_focus_column.handle end 454 if a_focus_cell/=Void then cell_ptr := a_focus_cell.handle end 455 456 gtk_tree_view_set_cursor_on_cell (handle, a_path.handle, column_ptr, cell_ptr, 457 start_editing.to_integer) 458 end 459 460 cursor: TUPLE[GTK_TREE_PATH, GTK_TREE_VIEW_COLUMN] is 461 -- The path and focus column with the current path and focus column. If the cursor isn't currently set, then path will be Void. If no column currently has focus, then the column will be Void. 462 local 463 path_ptr, column_ptr: POINTER; 464 a_path: GTK_TREE_PATH; 465 a_column: GTK_TREE_VIEW_COLUMN 466 do 467 gtk_tree_view_get_cursor (handle, $path_ptr, $column_ptr) 468 if path_ptr.is_not_null then create a_path.from_external_pointer(path_ptr) end 469 if column_ptr.is_not_null then create a_column.secondary_wrapper_from(column_ptr) end 470 create Result.make_2 (a_path, a_column) 471 ensure 472 Result /= Void 473 Result.first /= Void implies Result.first.is_not_null 474 Result.second /= Void implies Result.second.is_not_null 475 end 476 477 row_expanded (a_path: GTK_TREE_PATH): BOOLEAN is 478 -- Returns True if the node pointed to by `a_path' is expanded in Current. 479 require 480 a_path /= Void 481 do 482 Result := gtk_tree_view_row_expanded (handle, a_path.handle).to_boolean 483 end 484 485 expand_row (a_path: GTK_TREE_PATH; open_all: BOOLEAN): BOOLEAN is 486 -- Opens the row so its children are visible. 487 -- `open_all' indicates whether to recursively expand, or 488 -- just expand immediate children 489 -- Returns True if the row existed and had children 490 require 491 a_path /= Void 492 do 493 Result := gtk_tree_view_expand_row(handle, a_path.handle, open_all.to_integer) > 0 494 end 495 496 collapse_row (a_path: GTK_TREE_PATH): BOOLEAN is 497 -- Collapses a row (hides its child rows, if they exist). 498 -- Returns True if the row was collapsed. 499 require 500 a_path /= Void 501 do 502 Result := gtk_tree_view_collapse_row(handle, a_path.handle) > 0 503 end 504 505 expand_all is 506 -- Recursively expands all nodes in the tree view. 507 do 508 gtk_tree_view_expand_all(handle) 509 end 510 511 collapse_all is 512 -- Recursively collapses all visible, expanded nodes in tree view. 513 do 514 gtk_tree_view_collapse_all(handle) 515 end 516 517 expand_to_path (a_path: GTK_TREE_PATH) is 518 -- Expands the row at `a_path'. This will also expand all parent rows of path as necessary. 519 -- Since 2.2 520 require 521 a_path /= Void 522 do 523 gtk_tree_view_expand_to_path (handle, a_path.handle) 524 end 525 526 -- gtk_tree_view_map_expanded_rows () 527 528 -- void gtk_tree_view_map_expanded_rows (GtkTreeView *tree_view, 529 -- GtkTreeViewMappingFunc func, 530 -- gpointer data); 531 532 -- Calls func on all expanded rows. 533 534 -- tree_view : A GtkTreeView 535 -- func : A function to be called 536 -- data : User data to be passed to the function. 537 538 set_reorderable(a_reorderable: BOOLEAN) is 539 -- This function is a convenience function to allow you to 540 -- reorder models that support the GtkDragSourceIface and the 541 -- GtkDragDestIface. Both GtkTreeStore and GtkListStore support 542 -- these. If `a_reorderable' is True, then the user can reorder 543 -- the model by dragging and dropping rows. The developer can 544 -- listen to these changes by connecting to the model's 545 -- row_inserted and row_deleted signals. 546 -- 547 -- This function does not give you any degree of control over 548 -- the order. *Any* reordering is allowed. If more control 549 -- is needed, you should probably handle drag and drop manually. 550 do 551 gtk_tree_view_set_reorderable(handle, a_reorderable.to_integer) 552 ensure 553 is_reorderable = a_reorderable 554 end 555 556 is_reorderable: BOOLEAN is 557 -- Retrieves whether the user can reorder the tree via 558 -- drag-and-drop. See set_reorderable(). 559 -- Returns True if the tree can be reordered. 560 do 561 Result := gtk_tree_view_get_reorderable(handle) > 0 562 end 563 564 row_activated (a_path: GTK_TREE_PATH; a_column: GTK_TREE_VIEW_COLUMN) is 565 -- Activates the cell determined by `a_path' and `a_column'. 566 require 567 a_path /= Void 568 a_column /= Void 569 do 570 gtk_tree_view_row_activated (handle, a_path.handle, a_column.handle) 571 end 572 573 -- gtk_tree_view_get_path_at_pos () 574 575 -- gboolean gtk_tree_view_get_path_at_pos (GtkTreeView *tree_view, 576 -- gint x, 577 -- gint y, 578 -- GtkTreePath **path, 579 -- GtkTreeViewColumn **column, 580 -- gint *cell_x, 581 -- gint *cell_y); 582 583 -- Finds the path at the point (x, y), relative to widget coordinates. That is, x and y are relative to an events coordinates. x and y must come from an event on the tree_view only where event->window == gtk_tree_view_get_bin (). It is primarily for things like popup menus. If path is non-NULL, then it will be filled with the GtkTreePath at that point. This path should be freed with gtk_tree_path_free(). If column is non-NULL, then it will be filled with the column at that point. cell_x and cell_y return the coordinates relative to the cell background (i.e. the background_area passed to gtk_cell_renderer_render()). This function is only meaningful if tree_view is realized. 584 585 -- tree_view : A GtkTreeView. 586 -- x : The x position to be identified. 587 -- y : The y position to be identified. 588 -- path : A pointer to a GtkTreePath pointer to be filled in, or NULL 589 -- column : A pointer to a GtkTreeViewColumn pointer to be filled in, or NULL 590 -- cell_x : A pointer where the X coordinate relative to the cell can be placed, or NULL 591 -- cell_y : A pointer where the Y coordinate relative to the cell can be placed, or NULL 592 -- Returns : TRUE if a row exists at that coordinate. 593 -- gtk_tree_view_get_cell_area () 594 595 -- void gtk_tree_view_get_cell_area (GtkTreeView *tree_view, 596 -- GtkTreePath *path, 597 -- GtkTreeViewColumn *column, 598 -- GdkRectangle *rect); 599 600 -- Fills the bounding rectangle in tree window coordinates for the cell at the row specified by path and the column specified by column. If path is NULL, or points to a path not currently displayed, the y and height fields of the rectangle will be filled with 0. If column is NULL, the x and width fields will be filled with 0. The sum of all cell rects does not cover the entire tree; there are extra pixels in between rows, for example. The returned rectangle is equivalent to the cell_area passed to gtk_cell_renderer_render(). This function is only valid if tree_view is realized. 601 602 -- tree_view : a GtkTreeView 603 -- path : a GtkTreePath for the row, or NULL to get only horizontal coordinates 604 -- column : a GtkTreeViewColumn for the column, or NULL to get only vertical coordinates 605 -- rect : rectangle to fill with cell rect 606 -- gtk_tree_view_get_background_area () 607 608 -- void gtk_tree_view_get_background_area 609 -- (GtkTreeView *tree_view, 610 -- GtkTreePath *path, 611 -- GtkTreeViewColumn *column, 612 -- GdkRectangle *rect); 613 614 -- Fills the bounding rectangle in tree window coordinates for the cell at the row specified by path and the column specified by column. If path is NULL, or points to a node not found in the tree, the y and height fields of the rectangle will be filled with 0. If column is NULL, the x and width fields will be filled with 0. The returned rectangle is equivalent to the background_area passed to gtk_cell_renderer_render(). These background areas tile to cover the entire tree window (except for the area used for header buttons). Contrast with the cell_area, returned by gtk_tree_view_get_cell_area(), which returns only the cell itself, excluding surrounding borders and the tree expander area. 615 616 -- tree_view : a GtkTreeView 617 -- path : a GtkTreePath for the row, or NULL to get only horizontal coordinates 618 -- column : a GtkTreeViewColumn for the column, or NULL to get only vertical coordiantes 619 -- rect : rectangle to fill with cell background rect 620 -- gtk_tree_view_get_visible_rect () 621 622 -- void gtk_tree_view_get_visible_rect (GtkTreeView *tree_view, 623 -- GdkRectangle *visible_rect); 624 625 -- Fills visible_rect with the currently-visible region of the buffer, in tree coordinates. Convert to widget coordinates with gtk_tree_view_tree_to_widget_coords(). Tree coordinates start at 0,0 for row 0 of the tree, and cover the entire scrollable area of the tree. 626 627 -- tree_view : a GtkTreeView 628 -- visible_rect : rectangle to fill 629 -- gtk_tree_view_get_visible_range () 630 631 -- gboolean gtk_tree_view_get_visible_range (GtkTreeView *tree_view, 632 -- GtkTreePath **start_path, 633 -- GtkTreePath **end_path); 634 635 -- Sets start_path and end_path to be the first and last visible path. Note that there may be invisible paths in between. 636 637 -- The paths should be freed with gtk_tree_path_free() after use. 638 639 -- tree_view : A GtkTreeView 640 -- start_path : Return location for start of region, or NULL. 641 -- end_path : Return location for end of region, or NULL. 642 -- Returns : TRUE, if valid paths were placed in start_path and end_path. 643 644 -- Since 2.8 645 -- gtk_tree_view_get_bin_window () 646 647 -- GdkWindow* gtk_tree_view_get_bin_window (GtkTreeView *tree_view); 648 649 -- Returns the window that tree_view renders to. This is used primarily to compare to event->window to confirm that the event on tree_view is on the right window. 650 651 -- tree_view : A GtkTreeView 652 -- Returns : A GdkWindow, or NULL when tree_view hasn't been realized yet 653 -- gtk_tree_view_widget_to_tree_coords () 654 655 -- void gtk_tree_view_widget_to_tree_coords 656 -- (GtkTreeView *tree_view, 657 -- gint wx, 658 -- gint wy, 659 -- gint *tx, 660 -- gint *ty); 661 662 -- Converts widget coordinates to coordinates for the tree window (the full scrollable area of the tree). 663 664 -- tree_view : a GtkTreeView 665 -- wx : widget X coordinate 666 -- wy : widget Y coordinate 667 -- tx : return location for tree X coordinate 668 -- ty : return location for tree Y coordinate 669 -- gtk_tree_view_tree_to_widget_coords () 670 671 -- void gtk_tree_view_tree_to_widget_coords 672 -- (GtkTreeView *tree_view, 673 -- gint tx, 674 -- gint ty, 675 -- gint *wx, 676 -- gint *wy); 677 678 -- Converts tree coordinates (coordinates in full scrollable area of the tree) to widget coordinates. 679 680 -- tree_view : a GtkTreeView 681 -- tx : tree X coordinate 682 -- ty : tree Y coordinate 683 -- wx : return location for widget X coordinate 684 -- wy : return location for widget Y coordinate 685 -- gtk_tree_view_enable_model_drag_dest () 686 687feature -- Drag n' Drop 688 689 enable_model_drag_dest (a_target: GTK_TARGET_ENTRY; some_actions: INTEGER) is 690 -- Turns Current into a drop destination for automatic DND. 691 -- some_targets : the table of targets that the drag will support 692 -- n_targets : the number of items in targets 693 -- some_actions : the bitmask of possible actions for a drag from this widget 694 require 695 a_target /= Void 696 is_valid_gdk_drag_action (some_actions) 697 do 698 -- XXX: WATCH OUT! thsi implemetation allows the setting of only ONE target. 699 -- In order to allow a list of them, we'd need to develop some C code so we can transform 700 -- a NATIVE_ARRAY [POINTER] with the handle's of the different GTK_TARGET_ENTRY 701 -- into a GtkTargetEntry *. 702 -- nessa, 2006-10-30 703 gtk_tree_view_enable_model_drag_dest (handle, a_target.handle, 1, some_actions) 704 end 705 706 enable_model_drag_source (a_start_button_mask: INTEGER; 707 a_target: GTK_TARGET_ENTRY; 708 some_actions: INTEGER) is 709 -- Turns Current into a drag source for automatic DND. 710 -- a_start_button_mask : Mask of allowed buttons to start drag 711 -- some_targets : the table of targets that the drag will support 712 -- n_targets : the number of items in targets 713 -- some_actions : the bitmask of possible actions for a drag from this widget 714 require 715 is_valid_gdk_modifier_type (a_start_button_mask) 716 a_target /= Void 717 is_valid_gdk_drag_action (some_actions) 718 do 719 -- XXX: WATCH OUT! thsi implemetation allows the setting of only ONE target. 720 -- In order to allow a list of them, we'd need to develop some C code so we can transform 721 -- a NATIVE_ARRAY [POINTER] with the handle's of the different GTK_TARGET_ENTRY 722 -- into a GtkTargetEntry *. 723 -- nessa, 2006-10-30 724 gtk_tree_view_enable_model_drag_source (handle, a_start_button_mask, 725 a_target.handle, 1, some_actions) 726 end 727 728 unset_rows_drag_source is 729 -- Undoes the effect of `enable_model_drag_source'. 730 do 731 gtk_tree_view_unset_rows_drag_source (handle) 732 end 733 734 unset_rows_drag_dest is 735 -- Undoes the effect of `enable_model_drag_dest'. 736 do 737 gtk_tree_view_unset_rows_drag_dest (handle) 738 end 739 740 set_drag_dest_row (a_path: GTK_TREE_PATH; a_position: INTEGER) is 741 -- Sets the row that is highlighted for feedback. 742 -- a_path : The path of the row to highlight, or NULL. 743 -- a_position : Specifies whether to drop before, after or into the row 744 require 745 a_path /= Void 746 is_valid_gtk_tree_view_drop_position (a_position) 747 do 748 gtk_tree_view_set_drag_dest_row (handle, a_path.handle, a_position) 749 end 750 751 drag_dest_row: TUPLE [GTK_TREE_PATH, INTEGER] is 752 -- Gets information about the row that is highlighted for feedback. 753 -- Returns a tuple with the location for the path of the highlighted row, or NULL; 754 -- and the location for the drop position, or NULL. 755 local 756 a_path: GTK_TREE_PATH 757 a_path_ptr: POINTER 758 a_position: INTEGER 759 do 760 gtk_tree_view_get_drag_dest_row (handle, $a_path_ptr, $a_position); 761 if a_path_ptr.is_not_null then create a_path.from_external_pointer (a_path_ptr) end 762 Result := [a_path, a_position] 763 ensure 764 Result /= Void 765 Result.first /= Void implies is_valid_gtk_tree_view_drop_position (Result.second) 766 end 767 768 dest_row_at_pos (drag_x, drag_y: INTEGER): TUPLE [GTK_TREE_PATH, INTEGER] is 769 -- Determines the destination row for a given position. 770 -- drag_x : the position to determine the destination row for 771 -- drag_y : the position to determine the destination row for 772 -- a_path : Return location for the path of the highlighted row, or NULL. 773 -- a_position : Return location for the drop position, or NULL 774 -- Returns : whether there is a row at the given position. 775 local 776 a_path: GTK_TREE_PATH 777 a_path_ptr: POINTER 778 a_position: INTEGER 779 row_exists: BOOLEAN 780 do 781 row_exists := gtk_tree_view_get_dest_row_at_pos (handle, drag_x, drag_y, $a_path_ptr, $a_position).to_boolean 782 if row_exists then create a_path.from_external_pointer (a_path_ptr) end 783 Result := [a_path, a_position] 784 ensure 785 Result /= Void 786 Result.first /= Void implies is_valid_gtk_tree_view_drop_position (Result.second) 787 end 788 789 row_drag_icon (a_path: GTK_TREE_PATH): GDK_PIXMAP is 790 -- Creates a GdkPixmap representation of the row at path. 791 -- This image is used for a drag icon. 792 -- a_path : a GtkTreePath in Current 793 -- Returns : a newly-allocated pixmap of the drag icon. 794 require 795 a_path /= Void 796 local 797 c_ptr: POINTER 798 do 799 c_ptr := gtk_tree_view_create_row_drag_icon (handle, a_path.handle) 800 create Result.from_external_pointer (c_ptr) 801 end 802 803feature -- Search 804 805 -- gtk_tree_view_set_enable_search () 806 807 -- void gtk_tree_view_set_enable_search (GtkTreeView *tree_view, 808 -- gboolean enable_search); 809 810 -- If enable_search is set, then the user can type in text to search through the tree interactively (this is sometimes called "typeahead find"). 811 812 -- Note that even if this is FALSE, the user can still initiate a search using the "start-interactive-search" key binding. 813 814 -- tree_view : A GtkTreeView 815 -- enable_search : TRUE, if the user can search interactively 816 -- gtk_tree_view_get_enable_search () 817 818 -- gboolean gtk_tree_view_get_enable_search (GtkTreeView *tree_view); 819 820 -- Returns whether or not the tree allows to start interactive searching by typing in text. 821 822 -- tree_view : A GtkTreeView 823 -- Returns : whether or not to let the user search interactively 824 -- gtk_tree_view_get_search_column () 825 826 -- gint gtk_tree_view_get_search_column (GtkTreeView *tree_view); 827 828 -- Gets the column searched on by the interactive search code. 829 830 -- tree_view : A GtkTreeView 831 -- Returns : the column the interactive search code searches in. 832 -- gtk_tree_view_set_search_column () 833 834 -- void gtk_tree_view_set_search_column (GtkTreeView *tree_view, 835 -- gint column); 836 837 -- Sets column as the column where the interactive search code should search in. 838 839 -- If the sort column is set, users can use the "start-interactive-search" key binding to bring up search popup. The enable-search property controls whether simply typing text will also start an interactive search. 840 841 -- Note that column refers to a column of the model. 842 843 -- tree_view : A GtkTreeView 844 -- column : the column of the model to search in, or -1 to disable searching 845 -- gtk_tree_view_get_search_equal_func () 846 847 -- GtkTreeViewSearchEqualFunc gtk_tree_view_get_search_equal_func 848 -- (GtkTreeView *tree_view); 849 850 -- Returns the compare function currently in use. 851 852 -- tree_view : A GtkTreeView 853 -- Returns : the currently used compare function for the search code. 854 -- gtk_tree_view_set_search_equal_func () 855 856 -- void gtk_tree_view_set_search_equal_func 857 -- (GtkTreeView *tree_view, 858 -- GtkTreeViewSearchEqualFunc search_equal_func, 859 -- gpointer search_user_data, 860 -- GtkDestroyNotify search_destroy); 861 862 -- Sets the compare function for the interactive search capabilities; note that somewhat like strcmp() returning 0 for equality GtkTreeViewSearchEqualFunc returns FALSE on matches. 863 864 -- tree_view : A GtkTreeView 865 -- search_equal_func : the compare function to use during the search 866 -- search_user_data : user data to pass to search_equal_func, or NULL 867 -- search_destroy : Destroy notifier for search_user_data, or NULL 868 -- gtk_tree_view_get_fixed_height_mode () 869 870 -- gboolean gtk_tree_view_get_fixed_height_mode 871 -- (GtkTreeView *tree_view); 872 873 -- Returns whether fixed height mode is turned on for tree_view. 874 875 -- tree_view : a GtkTreeView 876 -- Returns : TRUE if tree_view is in fixed height mode 877 878 -- Since 2.6 879 -- gtk_tree_view_set_fixed_height_mode () 880 881 -- void gtk_tree_view_set_fixed_height_mode 882 -- (GtkTreeView *tree_view, 883 -- gboolean enable); 884 885 -- Enables or disables the fixed height mode of tree_view. Fixed height mode speeds up GtkTreeView by assuming that all rows have the same height. Only enable this option if all rows are the same height and all columns are of type GTK_TREE_VIEW_COLUMN_FIXED. 886 887 -- tree_view : a GtkTreeView 888 -- enable : TRUE to enable fixed height mode 889 890 -- Since 2.6 891 -- gtk_tree_view_get_hover_selection () 892 893 -- gboolean gtk_tree_view_get_hover_selection 894 -- (GtkTreeView *tree_view); 895 896 -- Returns whether hover selection mode is turned on for tree_view. 897 898 -- tree_view : a GtkTreeView 899 -- Returns : TRUE if tree_view is in hover selection mode 900 901 -- Since 2.6 902 -- gtk_tree_view_set_hover_selection () 903 904 -- void gtk_tree_view_set_hover_selection 905 -- (GtkTreeView *tree_view, 906 -- gboolean hover); 907 908 -- Enables of disables the hover selection mode of tree_view. Hover selection makes the selected row follow the pointer. Currently, this works only for the selection modes GTK_SELECTION_SINGLE and GTK_SELECTION_BROWSE. 909 910 -- tree_view : a GtkTreeView 911 -- hover : TRUE to enable hover selection mode 912 913 -- Since 2.6 914 -- gtk_tree_view_get_hover_expand () 915 916 -- gboolean gtk_tree_view_get_hover_expand (GtkTreeView *tree_view); 917 918 -- Returns whether hover expansion mode is turned on for tree_view. 919 920 -- tree_view : a GtkTreeView 921 -- Returns : TRUE if tree_view is in hover expansion mode 922 923 -- Since 2.6 924 -- gtk_tree_view_set_hover_expand () 925 926 -- void gtk_tree_view_set_hover_expand (GtkTreeView *tree_view, 927 -- gboolean expand); 928 929 -- Enables of disables the hover expansion mode of tree_view. Hover expansion makes rows expand or collaps if the pointer moves over them. 930 931 -- tree_view : a GtkTreeView 932 -- expand : TRUE to enable hover selection mode 933 934 -- Since 2.6 935 -- GtkTreeDestroyCountFunc () 936 937 -- void (*GtkTreeDestroyCountFunc) (GtkTreeView *tree_view, 938 -- GtkTreePath *path, 939 -- gint children, 940 -- gpointer user_data); 941 942 -- tree_view : 943 -- path : 944 -- children : 945 -- user_data : 946 -- gtk_tree_view_set_destroy_count_func () 947 948 -- void gtk_tree_view_set_destroy_count_func 949 -- (GtkTreeView *tree_view, 950 -- GtkTreeDestroyCountFunc func, 951 -- gpointer data, 952 -- GtkDestroyNotify destroy); 953 954 -- This function should almost never be used. It is meant for private use by ATK for determining the number of visible children that are removed when the user collapses a row, or a row is deleted. 955 956 -- tree_view : A GtkTreeView 957 -- func : Function to be called when a view row is destroyed, or NULL 958 -- data : User data to be passed to func, or NULL 959 -- destroy : Destroy notifier for data, or NULL 960 -- GtkTreeViewRowSeparatorFunc () 961 962 -- gboolean (*GtkTreeViewRowSeparatorFunc) (GtkTreeModel *model, 963 -- GtkTreeIter *iter, 964 -- gpointer data); 965 966 -- Function type for determining whether the row pointed to by iter should be rendered as a separator. A common way to implement this is to have a boolean column in the model, whose values the GtkTreeViewRowSeparatorFunc returns. 967 -- model : the GtkTreeModel 968 -- iter : a GtkTreeIter pointing at a row in model 969 -- data : user data 970 -- Returns : TRUE if the row is a separator 971 -- gtk_tree_view_get_row_separator_func () 972 973 -- GtkTreeViewRowSeparatorFunc gtk_tree_view_get_row_separator_func 974 -- (GtkTreeView *tree_view); 975 976 -- Returns the current row separator function. 977 978 -- tree_view : a GtkTreeView 979 -- Returns : the current row separator function. 980 981 -- Since 2.6 982 -- gtk_tree_view_set_row_separator_func () 983 984 -- void gtk_tree_view_set_row_separator_func 985 -- (GtkTreeView *tree_view, 986 -- GtkTreeViewRowSeparatorFunc func, 987 -- gpointer data, 988 -- GtkDestroyNotify destroy); 989 990 -- Sets the row separator function, which is used to determine whether a row should be drawn as a separator. If the row separator function is NULL, no separators are drawn. This is the default value. 991 992 -- tree_view : a GtkTreeView 993 -- func : a GtkTreeViewRowSeparatorFunc 994 -- data : user data to pass to func, or NULL 995 -- destroy : destroy notifier for data, or NULL 996 997 -- Since 2.6 998 -- Property Details 999 -- The "enable-search" property 1000 1001 -- "enable-search" gboolean : Read / Write 1002 1003 -- View allows user to search through columns interactively. 1004 1005 -- Default value: TRUE 1006 -- The "expander-column" property 1007 1008 -- "expander-column" GtkTreeViewColumn : Read / Write 1009 1010 -- Set the column for the expander column. 1011 -- The "fixed-height-mode" property 1012 1013 -- "fixed-height-mode" gboolean : Read / Write 1014 1015 -- Setting the ::fixed-height-mode property to TRUE speeds up GtkTreeView by assuming that all rows have the same height. Only enable this option if all rows are the same height. Please see gtk_tree_view_set_fixed_height_mode() for more information on this option. 1016 1017 -- Default value: FALSE 1018 1019 -- Since 2.4 1020 -- The "hadjustment" property 1021 1022 -- "hadjustment" GtkAdjustment : Read / Write 1023 1024 -- Horizontal Adjustment for the widget. 1025 -- The "headers-clickable" property 1026 1027 -- "headers-clickable" gboolean : Read / Write 1028 1029 -- Column headers respond to click events. 1030 1031 -- Default value: FALSE 1032 -- The "headers-visible" property 1033 1034 -- "headers-visible" gboolean : Read / Write 1035 1036 -- Show the column header buttons. 1037 1038 -- Default value: TRUE 1039 -- The "hover-expand" property 1040 1041 -- "hover-expand" gboolean : Read / Write 1042 1043 -- Enables of disables the hover expansion mode of tree_view. Hover expansion makes rows expand or collaps if the pointer moves over them. 1044 1045 -- This mode is primarily indended for treeviews in popups, e.g. in GtkComboBox or GtkEntryCompletion. 1046 1047 -- Default value: FALSE 1048 1049 -- Since 2.6 1050 -- The "hover-selection" property 1051 1052 -- "hover-selection" gboolean : Read / Write 1053 1054 -- Enables of disables the hover selection mode of tree_view. Hover selection makes the selected row follow the pointer. Currently, this works only for the selection modes GTK_SELECTION_SINGLE and GTK_SELECTION_BROWSE. 1055 1056 -- This mode is primarily indended for treeviews in popups, e.g. in GtkComboBox or GtkEntryCompletion. 1057 1058 -- Default value: FALSE 1059 1060 -- Since 2.6 1061 -- The "model" property 1062 1063 -- "model" GtkTreeModel : Read / Write 1064 1065 -- The model for the tree view. 1066 -- The "reorderable" property 1067 1068 -- "reorderable" gboolean : Read / Write 1069 1070 -- View is reorderable. 1071 1072 -- Default value: FALSE 1073 -- The "rules-hint" property 1074 1075 -- "rules-hint" gboolean : Read / Write 1076 1077 -- Set a hint to the theme engine to draw rows in alternating colors. 1078 1079 -- Default value: FALSE 1080 -- The "search-column" property 1081 1082 -- "search-column" gint : Read / Write 1083 1084 -- Model column to search through when searching through code. 1085 1086 -- Allowed values: >= -1 1087 1088 -- Default value: -1 1089 -- The "vadjustment" property 1090 1091 -- "vadjustment" GtkAdjustment : Read / Write 1092 1093 -- Vertical Adjustment for the widget. 1094 -- Style Property Details 1095 -- The "allow-rules" style property 1096 1097 -- "allow-rules" gboolean : Read 1098 1099 -- Allow drawing of alternating color rows. 1100 1101 -- Default value: TRUE 1102 -- The "even-row-color" style property 1103 1104 -- "even-row-color" GdkColor : Read 1105 1106 -- Color to use for even rows. 1107 -- The "expander-size" style property 1108 1109 -- "expander-size" gint : Read 1110 1111 -- Size of the expander arrow. 1112 1113 -- Allowed values: >= 0 1114 1115 -- Default value: 12 1116 -- The "horizontal-separator" style property 1117 1118 -- "horizontal-separator" gint : Read 1119 1120 -- Horizontal space between cells. Must be an even number. 1121 1122 -- Allowed values: >= 0 1123 1124 -- Default value: 2 1125 -- The "indent-expanders" style property 1126 1127 -- "indent-expanders" gboolean : Read 1128 1129 -- Make the expanders indented. 1130 1131 -- Default value: TRUE 1132 -- The "odd-row-color" style property 1133 1134 -- "odd-row-color" GdkColor : Read 1135 1136 -- Color to use for odd rows. 1137 -- The "vertical-separator" style property 1138 1139 -- "vertical-separator" gint : Read 1140 1141 -- Vertical space between cells. Must be an even number. 1142 1143 -- Allowed values: >= 0 1144 1145 -- Default value: 2 1146 -- Signal Details 1147 -- The "columns-changed" signal 1148 1149 -- void user_function (GtkTreeView *treeview, 1150 -- gpointer user_data); 1151 1152 -- treeview : the object which received the signal. 1153 -- user_data : user data set when the signal handler was connected. 1154 -- The "cursor-changed" signal 1155 1156 -- void user_function (GtkTreeView *treeview, 1157 -- gpointer user_data); 1158 1159 -- treeview : the object which received the signal. 1160 -- user_data : user data set when the signal handler was connected. 1161 1162 -- The "move-cursor" signal 1163 1164 -- gboolean user_function (GtkTreeView *treeview, 1165 -- GtkMovementStep arg1, 1166 -- gint arg2, 1167 -- gpointer user_data); 1168 1169 -- treeview : the object which received the signal. 1170 -- arg1 : 1171 -- arg2 : 1172 -- user_data : user data set when the signal handler was connected. 1173 -- Returns : 1174 1175 -- The "select-all" signal 1176 1177 -- gboolean user_function (GtkTreeView *treeview, 1178 -- gpointer user_data); 1179 1180 -- treeview : the object which received the signal. 1181 -- user_data : user data set when the signal handler was connected. 1182 -- Returns : 1183 -- The "select-cursor-parent" signal 1184 1185 -- gboolean user_function (GtkTreeView *treeview, 1186 -- gpointer user_data); 1187 1188 -- treeview : the object which received the signal. 1189 -- user_data : user data set when the signal handler was connected. 1190 -- Returns : 1191 -- The "select-cursor-row" signal 1192 1193 -- gboolean user_function (GtkTreeView *treeview, 1194 -- gboolean arg1, 1195 -- gpointer user_data); 1196 1197 -- treeview : the object which received the signal. 1198 -- arg1 : 1199 -- user_data : user data set when the signal handler was connected. 1200 -- Returns : 1201 -- The "set-scroll-adjustments" signal 1202 1203 -- void user_function (GtkTreeView *treeview, 1204 -- GtkAdjustment *arg1, 1205 -- GtkAdjustment *arg2, 1206 -- gpointer user_data); 1207 1208 -- treeview : the object which received the signal. 1209 -- arg1 : 1210 -- arg2 : 1211 -- user_data : user data set when the signal handler was connected. 1212 -- The "start-interactive-search" signal 1213 1214 -- gboolean user_function (GtkTreeView *treeview, 1215 -- gpointer user_data); 1216 1217 -- treeview : the object which received the signal. 1218 -- user_data : user data set when the signal handler was connected. 1219 -- Returns : 1220 -- The "test-collapse-row" signal 1221 1222 -- gboolean user_function (GtkTreeView *treeview, 1223 -- GtkTreeIter *arg1, 1224 -- GtkTreePath *arg2, 1225 -- gpointer user_data); 1226 1227 -- treeview : the object which received the signal. 1228 -- arg1 : 1229 -- arg2 : 1230 -- user_data : user data set when the signal handler was connected. 1231 -- Returns : 1232 -- The "test-expand-row" signal 1233 1234 -- gboolean user_function (GtkTreeView *treeview, 1235 -- GtkTreeIter *arg1, 1236 -- GtkTreePath *arg2, 1237 -- gpointer user_data); 1238 1239 -- treeview : …
Large files files are truncated, but you can click here to view the full file