- * the width of the column title, which will never be right */
-void gtk_clist_set_column_width (GtkCList * clist,
- gint column,
- gint width);
-
-/* change the height of the rows, the default is the hight of the current
- * font */
-void gtk_clist_set_row_height (GtkCList * clist,
- gint height);
-
-/* 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 */
-void gtk_clist_moveto (GtkCList * clist,
- gint row,
- gint column,
- gfloat row_align,
- gfloat col_align);
-
-/* sets a given cell's text, replacing it's current contents */
-void gtk_clist_set_text (GtkCList * clist,
- gint row,
- gint column,
- gchar * text);
-
-/* sets a given cell's pixmap, replacing it's current contents */
-void gtk_clist_set_pixmap (GtkCList * clist,
- gint row,
- gint column,
- GdkPixmap * pixmap,
- GdkBitmap * mask);
-
-/* sets a given cell's pixmap and text, replacing it's current contents */
-void gtk_clist_set_pixtext (GtkCList * clist,
- gint row,
- gint column,
- gchar * text,
- guint8 spacing,
- GdkPixmap * pixmap,
- GdkBitmap * mask);
-
-/* sets the foreground color of a row, the colar must already
- * be allocated */
-void gtk_clist_set_foreground (GtkCList * clist,
- gint row,
- GdkColor * color);
-
-/* sets the background color of a row, the colar must already
- * be allocated */
-void gtk_clist_set_background (GtkCList * clist,
- gint row,
- GdkColor * color);
-
-/* this sets a horizontal and verticle shift for drawing
- * the contents of a cell; it can be positive or negitive; this is
- * partuculary useful for indenting items in a column */
-void gtk_clist_set_shift (GtkCList * clist,
- gint row,
- gint column,
- gint verticle,
- gint horizontal);
-
-/* append returns the index of the row you just added, making
- * it easier to append and modify a row */
-gint gtk_clist_append (GtkCList * clist,
- gchar * text[]);
-
-/* inserts a row at index row */
-void gtk_clist_insert (GtkCList * clist,
- gint row,
- gchar * text[]);
+ * the width of the column title, which will never be right
+ */
+void gtk_clist_set_column_width (GtkCList *clist,
+ gint column,
+ gint width);
+
+/* set column minimum/maximum width. min/max_width < 0 => no restriction */
+void gtk_clist_set_column_min_width (GtkCList *clist,
+ gint column,
+ gint min_width);
+void gtk_clist_set_column_max_width (GtkCList *clist,
+ gint column,
+ gint max_width);
+
+/* change the height of the rows, the default (height=0) is
+ * the hight of the current font.
+ */
+void gtk_clist_set_row_height (GtkCList *clist,
+ guint height);
+
+/* 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
+ */
+void gtk_clist_moveto (GtkCList *clist,
+ gint row,
+ gint column,
+ gfloat row_align,
+ gfloat col_align);
+
+/* returns whether the row is visible */
+GtkVisibility gtk_clist_row_is_visible (GtkCList *clist,
+ gint row);
+
+/* returns the cell type */
+GtkCellType gtk_clist_get_cell_type (GtkCList *clist,
+ gint row,
+ gint column);
+
+/* sets a given cell's text, replacing its current contents */
+void gtk_clist_set_text (GtkCList *clist,
+ gint row,
+ gint column,
+ const gchar *text);
+
+/* for the "get" functions, any of the return pointer can be
+ * NULL if you are not interested
+ */
+gint gtk_clist_get_text (GtkCList *clist,
+ gint row,
+ gint column,
+ gchar **text);
+
+/* sets a given cell's pixmap, replacing its current contents */
+void gtk_clist_set_pixmap (GtkCList *clist,
+ gint row,
+ gint column,
+ GdkPixmap *pixmap,
+ GdkBitmap *mask);
+
+gint gtk_clist_get_pixmap (GtkCList *clist,
+ gint row,
+ gint column,
+ GdkPixmap **pixmap,
+ GdkBitmap **mask);
+
+/* sets a given cell's pixmap and text, replacing its current contents */
+void gtk_clist_set_pixtext (GtkCList *clist,
+ gint row,
+ gint column,
+ const gchar *text,
+ guint8 spacing,
+ GdkPixmap *pixmap,
+ GdkBitmap *mask);
+
+gint gtk_clist_get_pixtext (GtkCList *clist,
+ gint row,
+ gint column,
+ gchar **text,
+ guint8 *spacing,
+ GdkPixmap **pixmap,
+ GdkBitmap **mask);
+
+/* sets the foreground color of a row, the color must already
+ * be allocated
+ */
+void gtk_clist_set_foreground (GtkCList *clist,
+ gint row,
+ const GdkColor *color);
+
+/* sets the background color of a row, the color must already
+ * be allocated
+ */
+void gtk_clist_set_background (GtkCList *clist,
+ gint row,
+ const GdkColor *color);
+
+/* set / get cell styles */
+void gtk_clist_set_cell_style (GtkCList *clist,
+ gint row,
+ gint column,
+ GtkStyle *style);
+
+GtkStyle *gtk_clist_get_cell_style (GtkCList *clist,
+ gint row,
+ gint column);
+
+void gtk_clist_set_row_style (GtkCList *clist,
+ gint row,
+ GtkStyle *style);
+
+GtkStyle *gtk_clist_get_row_style (GtkCList *clist,
+ gint row);
+
+/* 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
+ */
+void gtk_clist_set_shift (GtkCList *clist,
+ gint row,
+ gint column,
+ gint vertical,
+ gint horizontal);
+
+/* set/get selectable flag of a single row */
+void gtk_clist_set_selectable (GtkCList *clist,
+ gint row,
+ gboolean selectable);
+gboolean gtk_clist_get_selectable (GtkCList *clist,
+ gint row);
+
+/* prepend/append returns the index of the row you just added,
+ * making it easier to append and modify a row
+ */
+gint gtk_clist_prepend (GtkCList *clist,
+ gchar *text[]);
+gint gtk_clist_append (GtkCList *clist,
+ gchar *text[]);
+
+/* inserts a row at index row and returns the row where it was
+ * actually inserted (may be different from "row" in auto_sort mode)
+ */
+gint gtk_clist_insert (GtkCList *clist,
+ gint row,
+ gchar *text[]);