Method

GtkTreeViewget_path_at_pos

Declaration [src]

gboolean
gtk_tree_view_get_path_at_pos (
  GtkTreeView* tree_view,
  int x,
  int y,
  GtkTreePath** path,
  GtkTreeViewColumn** column,
  int* cell_x,
  int* cell_y
)

Description [src]

Finds the path at the point (x, y), relative to bin_window coordinates. That is, x and y are relative to an events coordinates. Widget-relative coordinates must be converted using gtk_tree_view_convert_widget_to_bin_window_coords(). 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. Therefore this function will always return FALSE if tree_view is not realized or does not have a model.

For converting widget coordinates (eg. the ones you get from GtkWidget::query-tooltip), please see gtk_tree_view_convert_widget_to_bin_window_coords().

Parameters

x int
 

The x position to be identified (relative to bin_window).

y int
 

The y position to be identified (relative to bin_window).

path GtkTreePath
 

A pointer to a GtkTreePath pointer to be filled in.

 The argument will be set by the function.
 The argument can be set to NULL.
 The argument can be NULL.
 The instance takes ownership of the data, and is responsible for freeing it.
column GtkTreeViewColumn
 

A pointer to a GtkTreeViewColumn pointer to be filled in.

 The argument will be set by the function.
 The argument can be set to NULL.
 The argument can be NULL.
 The data is owned by the caller of the function.
cell_x int*
 

A pointer where the X coordinate relative to the cell can be placed.

 The argument will be set by the function.
 The argument can be NULL.
 The instance takes ownership of the data, and is responsible for freeing it.
cell_y int*
 

A pointer where the Y coordinate relative to the cell can be placed.

 The argument will be set by the function.
 The argument can be NULL.
 The instance takes ownership of the data, and is responsible for freeing it.

Return value

Returns: gboolean
 

TRUE if a row exists at that coordinate.