summaryrefslogtreecommitdiff
path: root/docs/reference/gtk/tmpl/gtkclist.sgml
blob: 3442e46275677af4cf17624941b84ed327f4ff7f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
<!-- ##### SECTION Title ##### -->
GtkCList

<!-- ##### SECTION Short_Description ##### -->
A multi-columned scrolling list widget

<!-- ##### SECTION Long_Description ##### -->
<para>
The #GtkCList widget is a very useful multi-columned scrolling list.  
It can display data in nicely aligned vertical columns, with titles 
at the top of the list.
</para>
<para>
GtkCList has been deprecated since GTK+ 2.0 and should not be used
in newly written code. Use #GtkTreeView instead.
</para>

<!-- ##### SECTION See_Also ##### -->
<para>

</para>

<!-- ##### STRUCT GtkCList ##### -->
<para>
This is the embodiment of the #GtkCList widget.  This structure contains
only private data, and should be accessed only via the CList API.
</para>


<!-- ##### SIGNAL GtkCList::abort-column-resize ##### -->
<para>
This signal is emitted when a column resize is aborted.
</para>

@clist: the object which received the signal.

<!-- ##### SIGNAL GtkCList::click-column ##### -->
<para>
This signal is emitted when a column title is clicked.
</para>

@clist: The object which received the signal.
@column: The number of the column.

<!-- ##### SIGNAL GtkCList::end-selection ##### -->
<para>
This signal is emitted when a selection ends in a 
multiple selection CList.
</para>

@clist: the object which received the signal.

<!-- ##### SIGNAL GtkCList::extend-selection ##### -->
<para>
This signal is emitted when the selection is extended.
</para>

@clist: the object which received the signal.
@scroll_type: A #GtkScrollType value of any scrolling operation the
occured during the selection.
@position: A value between 0.0 and 1.0.
@auto_start_selection: %TRUE or %FALSE.

<!-- ##### SIGNAL GtkCList::resize-column ##### -->
<para>
This signal is emitted when a column is resized.
</para>

@clist: The object which received the signal.
@column: The number of the column
@width: The new width of the column.

<!-- ##### SIGNAL GtkCList::row-move ##### -->
<para>
This signal is emitted when a row is moved.
</para>

@clist: The object which received the signal.
@arg1: The source position of the row.
@arg2: The destination position of the row.

<!-- ##### SIGNAL GtkCList::scroll-horizontal ##### -->
<para>
This signal is emitted when the CList is scrolled horizontally.
</para>

@clist: the object which received the signal.
@scroll_type: A #GtkScrollType value of how the scroll operation occured.
@position: a value between 0.0 and 1.0.

<!-- ##### SIGNAL GtkCList::scroll-vertical ##### -->
<para>
This signal is emitted when the CList is scrolled vertically.
</para>

@clist: the object which received the signal.
@scroll_type: A #GtkScrollType value of how the scroll operation occured.
@position: A value between 0.0 and 1.0.

<!-- ##### SIGNAL GtkCList::select-all ##### -->
<para>
This signal is emitted when all the rows are selected in a CList.
</para>

@clist: the object which received the signal.

<!-- ##### SIGNAL GtkCList::select-row ##### -->
<para>
This signal is emitted when the user selects a row in the list.  
It is emitted for every row that is selected in a multi-selection or
by calling gtk_clist_select_all().
</para>

@clist: The object which received the signal.
@row: The row selected.
@column: The column where the selection occured.
@event: A #GdkEvent structure for the selection.

<!-- ##### SIGNAL GtkCList::set-scroll-adjustments ##### -->
<para>

</para>

@clist: the object which received the signal.
@arg1: 
@arg2: 

<!-- ##### SIGNAL GtkCList::start-selection ##### -->
<para>
This signal is emitted when a drag-selection is started in 
a multiple-selection CList.
</para>

@clist: the object which received the signal.

<!-- ##### SIGNAL GtkCList::toggle-add-mode ##### -->
<para>
This signal is emitted when "add mode" is toggled.
</para>

@clist: the object which received the signal.

<!-- ##### SIGNAL GtkCList::toggle-focus-row ##### -->
<para>

</para>

@clist: The object which received the signal.

<!-- ##### SIGNAL GtkCList::undo-selection ##### -->
<para>
This signal is emitted when an undo selection occurs in the CList,
probably via calling gtk_clist_undo_selection().
</para>

@clist: the object which received the signal.

<!-- ##### SIGNAL GtkCList::unselect-all ##### -->
<para>
This signal is emitted when all rows are unselected in a CList.
</para>

@clist: the object which received the signal.

<!-- ##### SIGNAL GtkCList::unselect-row ##### -->
<para>
This signal is emitted when the user unselects a row in the list.  
It is emitted for every row that is unselected in a multi-selection or
by calling gtk_clist_unselect_all().  It is also emitted for the
previously selected row in a "single" or "browse" mode CList.
</para>

@clist: The object which received the signal.
@row: The selected row
@column: The column where the selection occured.
@event: 

<!-- ##### ARG GtkCList:n-columns ##### -->
<para>
An integer value for a column.
</para>

<!-- ##### ARG GtkCList:reorderable ##### -->
<para>
A boolean value for determining if the user can re-order the CList's
columns.
</para>

<!-- ##### ARG GtkCList:row-height ##### -->
<para>
An integer value representing the height of a row in pixels.
</para>

<!-- ##### ARG GtkCList:selection-mode ##### -->
<para>
Sets the type of selection mode for the CList.
</para>

<!-- ##### ARG GtkCList:shadow-type ##### -->
<para>
Sets the shadowing for the CList.
</para>

<!-- ##### ARG GtkCList:sort-type ##### -->
<para>

</para>

<!-- ##### ARG GtkCList:titles-active ##### -->
<para>
A boolean value for setting whether the column titles can be
clicked.
</para>

<!-- ##### ARG GtkCList:use-drag-icons ##### -->
<para>
A boolean value for setting whether to use icons during drag
operations.
</para>

<!-- ##### ENUM GtkCellType ##### -->
<para>
Identifies the type of element in the current cell of the CList.  Cells can
contain text, pixmaps, or both. Unfortunately support for %GTK_CELL_WIDGET
was never completed.
</para>

@GTK_CELL_EMPTY: 
@GTK_CELL_TEXT: 
@GTK_CELL_PIXMAP: 
@GTK_CELL_PIXTEXT: 
@GTK_CELL_WIDGET: 

<!-- ##### ENUM GtkButtonAction ##### -->
<para>
Values for specifying what mouse button events a CList will
react to.
</para>

@GTK_BUTTON_IGNORED: 
@GTK_BUTTON_SELECTS: 
@GTK_BUTTON_DRAGS: 
@GTK_BUTTON_EXPANDS: 

<!-- ##### MACRO GTK_CLIST_FLAGS ##### -->
<para>
Reads the current flags of the specified CList.
</para>

@clist: The #GtkCList widget from which to get the flags


<!-- ##### MACRO GTK_CLIST_SET_FLAG ##### -->
<para>
A macro to set a particular flag for the specified CList.
</para>

@clist: The #GtkCList widget to affect.
@flag: A single #GtkCList flag to set.  NOTE: Do not add the GTK_ prefix.


<!-- ##### MACRO GTK_CLIST_UNSET_FLAG ##### -->
<para>
A macro to clear a particular flag for the specified CList.
</para>

@clist: The #GtkCList widget to affect.
@flag: A single #GtkCList flag to clear.  NOTE: Do not add the GTK_ prefix.


<!-- ##### MACRO GTK_CLIST_IN_DRAG ##### -->
<para>
A macro to check whether the #GtkCList is in "drag mode."
</para>

@clist: The #GtkCList to check.


<!-- ##### MACRO GTK_CLIST_ROW_HEIGHT_SET ##### -->
<para>
A macro to check whether the #GtkCList's row height is set.
</para>

@clist: The #GtkCList to check.


<!-- ##### MACRO GTK_CLIST_SHOW_TITLES ##### -->
<para>
A macro to check whether the flag for showing the 
widget's column titles is set.
</para>

@clist: The #GtkCList widget to check.


<!-- ##### MACRO GTK_CLIST_ADD_MODE ##### -->
<para>
A macro to test whether the CList is in "add mode."
</para>

@clist: The #GtkCList widget to check.


<!-- ##### MACRO GTK_CLIST_AUTO_SORT ##### -->
<para>
A macro to test whether the CList has automatic sorting
switched on.
</para>

@clist: The #GtkCList widget to check.


<!-- ##### MACRO GTK_CLIST_AUTO_RESIZE_BLOCKED ##### -->
<para>
A macro to check if automatic resizing of columns is blocked.
</para>

@clist: The #GtkCList widget to check.


<!-- ##### MACRO GTK_CLIST_REORDERABLE ##### -->
<para>
A macro to test if the CList's columns are re-orderable
</para>

@clist: The #GtkCList widget to check.


<!-- ##### MACRO GTK_CLIST_USE_DRAG_ICONS ##### -->
<para>
A macro to check if the USE_DRAG_ICONS property is enabled.
</para>

@clist: The #GtkCList widget to check.


<!-- ##### MACRO GTK_CLIST_DRAW_DRAG_LINE ##### -->
<para>
A macro to check if the DRAW_DRAG_LINE property is enabled.
</para>

@clist: The #GtkCList widget to check.


<!-- ##### MACRO GTK_CLIST_DRAW_DRAG_RECT ##### -->
<para>
A macro to check if the DRAW_DRAG_RECT property is enabled.
</para>

@clist: The #GtkCList widget to check.


<!-- ##### MACRO GTK_CLIST_ROW ##### -->
<para>
A macro to cast a GList element to a CListRow pointer.
</para>

@_glist_: The GList element to convert.


<!-- ##### MACRO GTK_CELL_TEXT ##### -->
<para>
A macro to cast a generic #GtkCList cell item to a GtkCellText pointer.
</para>

@cell: The #GtkCList cell item to convert.


<!-- ##### MACRO GTK_CELL_PIXMAP ##### -->
<para>
A macro to cast a generic #GtkCList cell item to a GtkCellPixmap pointer.
</para>

@cell: The #GtkCList cell item to convert.


<!-- ##### MACRO GTK_CELL_PIXTEXT ##### -->
<para>
A macro to cast a generic #GtkCList cell item to a GtkCellPixText pointer.
</para>

@cell: The #GtkCList cell item to convert.


<!-- ##### MACRO GTK_CELL_WIDGET ##### -->
<para>
A macro to cast a generic #GtkCList cell item to a GtkCellWidget pointer.
</para>

@cell: The #GtkCList cell item to convert.


<!-- ##### USER_FUNCTION GtkCListCompareFunc ##### -->
<para>
Function prototype for the compare function callback.
</para>

@clist: The #GtkCList that is affected.
@ptr1: A #gconstpointer to the first node to compare.
@ptr2: A #gconstpointer to the second node to compare.
@Returns: 0 if the nodes are equal, less than 0 if the first node should
come before the second, and greater than 1 if the second come before the
first.


<!-- ##### STRUCT GtkCListColumn ##### -->
<para>
A structure that the #GtkCList widget uses to keep track of information
about its columns.
</para>

@title: 
@area: 
@button: 
@window: 
@width: 
@min_width: 
@max_width: 
@justification: 
@visible: 
@width_set: 
@resizeable: 
@auto_resize: 
@button_passive: 

<!-- ##### STRUCT GtkCListRow ##### -->
<para>
A structure that the #GtkCList widget uses to keep track of information
about its rows.
</para>

@cell: 
@state: 
@foreground: 
@background: 
@style: 
@data: 
@destroy: 
@fg_set: 
@bg_set: 
@selectable: 

<!-- ##### STRUCT GtkCellText ##### -->
<para>
A structure that the #GtkCList widget uses to keep track of #GtkCList cells
that contain text.
</para>

@type: 
@vertical: 
@horizontal: 
@style: 
@text: 

<!-- ##### STRUCT GtkCellPixmap ##### -->
<para>
A structure that the #GtkCList widget uses to keep track of #GtkCList cells
that contain a GdkPixmap.
</para>

@type: 
@vertical: 
@horizontal: 
@style: 
@pixmap: 
@mask: 

<!-- ##### STRUCT GtkCellPixText ##### -->
<para>
A structure that the #GtkCList widget uses to keep track of #GtkCList cells
that contain a combination of text and a GdkPixmap.
</para>

@type: 
@vertical: 
@horizontal: 
@style: 
@text: 
@spacing: 
@pixmap: 
@mask: 

<!-- ##### STRUCT GtkCellWidget ##### -->
<para>
A structure that the #GtkCList widget uses to keep track of #GtkCList cells
that contain another widget.
</para>

@type: 
@vertical: 
@horizontal: 
@style: 
@widget: 

<!-- ##### STRUCT GtkCell ##### -->
<para>
A generic structure that the #GtkCList widget uses to keep track of the
contents of each of its cells.
</para>

@type: 
@vertical: 
@horizontal: 
@style: 
@widget: 

<!-- ##### STRUCT GtkCListCellInfo ##### -->
<para>
A simple structure that the #GtkCList widget uses to keep track
of the location of a cell.
</para>

@row: 
@column: 

<!-- ##### STRUCT GtkCListDestInfo ##### -->
<para>
A simple structure that the #GtkCList widget uses to track 
a cell for a drag operation.
</para>

@cell: 
@insert_pos: 

<!-- ##### ENUM GtkCListDragPos ##### -->
<para>
An enumeration for drag operations.
</para>

@GTK_CLIST_DRAG_NONE: 
@GTK_CLIST_DRAG_BEFORE: 
@GTK_CLIST_DRAG_INTO: 
@GTK_CLIST_DRAG_AFTER: 

<!-- ##### FUNCTION gtk_clist_new ##### -->
<para>
Creates a new #GtkCList widget for use.
</para>

@columns: The number of columns the #GtkCList should have.
@Returns: A pointer to a new GtkCList object.


<!-- ##### FUNCTION gtk_clist_new_with_titles ##### -->
<para>
Creates a new #GtkCList widget with column titles for use.
</para>

@columns: The number of columns the #GtkCList should have.
@titles: A string array of titles for the widget.  There should be
enough strings in the array for the specified number of columns.
@Returns: A pointer to a new GtkCList object.


<!-- ##### FUNCTION gtk_clist_set_shadow_type ##### -->
<para>
Sets the shadow type for the specified CList.  Changing this value
will cause the #GtkCList to update its visuals.
</para>

@clist: The #GtkCList to affect.
@type: The GtkShadowType desired.


<!-- ##### FUNCTION gtk_clist_set_selection_mode ##### -->
<para>
Sets the selection mode for the specified CList.  This allows you to
set whether only one or more than one item can be selected at a time
in the widget.  Note that setting the widget's selection mode to one
of GTK_SELECTION_BROWSE or GTK_SELECTION_SINGLE will cause all the
items in the #GtkCList to become deselected.
</para>

@clist: The #GtkCList to affect.
@mode: The GtkSelectionMode type to set for this CList.


<!-- ##### FUNCTION gtk_clist_freeze ##### -->
<para>
Causes the #GtkCList to stop updating its visuals until a matching call to
gtk_clist_thaw() is made.  This function is useful if a lot of changes
will be made to the widget that may cause a lot of visual updating to
occur.  Note that calls to gtk_clist_freeze() can be nested.  
</para>

@clist: The #GtkCList to freeze.


<!-- ##### FUNCTION gtk_clist_thaw ##### -->
<para>
Causes the specified #GtkCList to allow visual updates.
</para>

@clist: The #GtkCList to thaw.


<!-- ##### FUNCTION gtk_clist_column_titles_show ##### -->
<para>
This function causes the #GtkCList to show its column titles, if
they are not already showing.
</para>

@clist: The #GtkCList to affect.


<!-- ##### FUNCTION gtk_clist_column_titles_hide ##### -->
<para>
Causes the #GtkCList to hide its column titles, if they are currently
showing.
</para>

@clist: The #GtkCList to affect.


<!-- ##### FUNCTION gtk_clist_column_title_active ##### -->
<para>
Sets the specified column in the #GtkCList to become selectable.  You can
then respond to events from the user clicking on a title button, and take
appropriate action.
</para>

@clist: The #GtkCList to affect.
@column: The column to make active, counting from 0.


<!-- ##### FUNCTION gtk_clist_column_title_passive ##### -->
<para>
Causes the specified column title button to become passive, i.e., does
not respond to events, such as the user clicking on it.
</para>

@clist: The #GtkCList to affect.
@column: The column to make passive, counting from 0.


<!-- ##### FUNCTION gtk_clist_column_titles_active ##### -->
<para>
Causes all column title buttons to become active.  This is the same
as calling gtk_clist_column_title_active() for each column.
</para>

@clist: The #GtkCList to affect.


<!-- ##### FUNCTION gtk_clist_column_titles_passive ##### -->
<para>
Causes all column title buttons to become passive.  This is the same
as calling gtk_clist_column_title_passive() for each column.
</para>

@clist: The #GtkCList to affect.


<!-- ##### FUNCTION gtk_clist_set_column_title ##### -->
<para>
Sets the title for the specified column.
</para>

@clist: The #GtkCList to affect.
@column: The column whose title should be changed.
@title: A string to be the column's title.


<!-- ##### FUNCTION gtk_clist_set_column_widget ##### -->
<para>
Sets a widget to be used as the specified column's title.  This
can be used to place a pixmap or something else as the column
title, instead of the standard text.
</para>

@clist: The #GtkCList to affect.
@column: The column whose title should be a widget.
@widget: A pointer to a previously create widget.


<!-- ##### FUNCTION gtk_clist_set_column_justification ##### -->
<para>
Sets the justification to be used for all text in the specified
column.
</para>

@clist: The #GtkCList to affect.
@column: The column which should be affected.
@justification: A GtkJustification value for the column.


<!-- ##### FUNCTION gtk_clist_set_column_visibility ##### -->
<para>
Allows you to set whether a specified column in the #GtkCList should
be hidden or shown.  Note that at least one column must always be
showing, so attempting to hide the last visible column will be
ignored.
</para>

@clist: The #GtkCList to affect.
@column: The column to set visibility.
@visible: %TRUE or %FALSE.


<!-- ##### FUNCTION gtk_clist_set_column_resizeable ##### -->
<para>
Lets you specify whether a specified column should be resizeable
by the user.  Note that turning on resizeability for the column will
automatically shut off auto-resizing, but turning off resizeability
will NOT turn on auto-resizing.  This must be done manually via a
call to gtk_clist_set_column_auto_resize().
</para>

@clist: The #GtkCList to affect.
@column: The column on which to set resizeability.
@resizeable: %TRUE or %FALSE.


<!-- ##### FUNCTION gtk_clist_set_column_auto_resize ##### -->
<para>
Lets you specify whether a column should be automatically resized
by the widget when data is added or removed.  Enabling auto-resize
on a column explicity disallows user-resizing of the column.
</para>

@clist: The #GtkCList to affect.
@column: The column on which to set auto-resizing.
@auto_resize: %TRUE or %FALSE.


<!-- ##### FUNCTION gtk_clist_optimal_column_width ##### -->
<para>
Gets the required width in pixels that is needed to show
everything in the specified column.
</para>

@clist: The #GtkCList to check.
@column: The column to check.
@Returns: The required width in pixels for the column.


<!-- ##### FUNCTION gtk_clist_set_column_width ##### -->
<para>
Causes the column specified for the #GtkCList to be set to
a specified width.
</para>

@clist: The #GtkCList to affect.
@column: The column to set the width.
@width: The width, in pixels.


<!-- ##### FUNCTION gtk_clist_set_column_min_width ##### -->
<para>
Causes the column specified to have a minimum width, preventing
the user from resizing it smaller than that specified.
</para>

@clist: The #GtkCList to affect.
@column: The column to set the minimum width.
@min_width: The width, in pixels.


<!-- ##### FUNCTION gtk_clist_set_column_max_width ##### -->
<para>
Causes the column specified to have a maximum width, preventing
the user from resizing it larger than that specified.
</para>

@clist: The #GtkCList to affect.
@column: The column to set the maximum width.
@max_width: The width, in pixels.


<!-- ##### FUNCTION gtk_clist_set_row_height ##### -->
<para>
Causes the #GtkCList to have a specified height for its 
rows.  Setting the row height to 0 allows the #GtkCList to adjust
automatically to data in the row.
</para>

@clist: The #GtkCList to affect.
@height: The height, in pixels.


<!-- ##### FUNCTION gtk_clist_moveto ##### -->
<para>
Tells the CList widget to visually move to the specified 
row and column.
</para>

@clist: The #GtkCList to affect.
@row: The row to which to move.
@column: The column to which to move.
@row_align: A value between 0 and 1 that describes the positioning of 
the row in relation to the viewable area of the CList's contents.
@col_align: A value between 0 and 1 that describes the positioning of 
the column in relation to the viewable area of the CList's contents.


<!-- ##### FUNCTION gtk_clist_row_is_visible ##### -->
<para>
Checks how the specified row is visible.
</para>

@clist: The #GtkCList to affect.
@row: The row to query.
@Returns: A #GtkVisibility value that tells you how the row is visible.


<!-- ##### FUNCTION gtk_clist_get_cell_type ##### -->
<para>
Checks the type of cell at the location specified.
</para>

@clist: The #GtkCList to affect.
@row: The row of the cell.
@column: The column of the cell.
@Returns: A #GtkCellType value describing the cell.


<!-- ##### FUNCTION gtk_clist_set_text ##### -->
<para>
Sets the displayed text in the specified cell.
</para>

@clist: The #GtkCList to affect.
@row: The row of the cell.
@column: The column of the cell.
@text: The text to set in the cell.


<!-- ##### FUNCTION gtk_clist_get_text ##### -->
<para>
Gets the text for the specified cell.
</para>

@clist: The #GtkCList to affect.
@row: The row to query.
@column: The column to query.
@text: A pointer to a pointer to store the text.
@Returns: 1 if the cell's text could be retrieved, 0 otherwise.


<!-- ##### FUNCTION gtk_clist_set_pixmap ##### -->
<para>
Sets a pixmap for the specified cell.
</para>

@clist: The #GtkCList to affect.
@row: The row of the cell.
@column: The column of the cell.
@pixmap: A pointer to a #GdkPixmap to place in the cell.
@mask: A pointer to a #GdkBitmap mask for the cell.


<!-- ##### FUNCTION gtk_clist_get_pixmap ##### -->
<para>
Gets the pixmap and bitmap mask of the specified cell.  The returned mask value can be NULL.
</para>

@clist: The #GtkCList to affect.
@row: The row of the cell.
@column: The column of the cell.
@pixmap: A pointer to a pointer to store the cell's #GdkPixmap.
@mask: A pointer to a pointer to store the cell's #GdkBitmap mask.
@Returns: 1 if the cell's pixmap could be retrieved, 0 otherwise.


<!-- ##### FUNCTION gtk_clist_set_pixtext ##### -->
<para>
Sets text and a pixmap/bitmap on the specified cell.
</para>

@clist: The #GtkCList to affect.
@row: The row of the cell.
@column: The column of the cell.
@text: The text to set in the cell.
@spacing: The spacing between the cell's text and pixmap.
@pixmap: A pointer to a #GdkPixmap for the cell.
@mask: A pointer to a #GdkBitmap mask for the cell.


<!-- ##### FUNCTION gtk_clist_get_pixtext ##### -->
<para>
Gets the text, pixmap and bitmap mask for the specified cell.
</para>

@clist: The #GtkCList to affect.
@row: The row to query.
@column: The column to query.
@text: A pointer to a pointer to store the text.
@spacing: A pointer to a #guint8 to store the spacing.
@pixmap: A pointer to a #GdkPixmap pointer to store the cell's pixmap.
@mask: A pointer to a #GdkBitmap pointer to store the cell's bitmap mask.
@Returns: 1 if the retrieval was successful, 0 otherwise.


<!-- ##### FUNCTION gtk_clist_set_foreground ##### -->
<para>
Sets the foreground color for the specified row.
</para>

@clist: The #GtkCList to affect.
@row: The row to affect.
@color: A pointer to a #GdkColor structure.


<!-- ##### FUNCTION gtk_clist_set_background ##### -->
<para>
Sets the background color for the specified row.
</para>

@clist: The #GtkCList to affect.
@row: The row to affect.
@color: A pointer to a #GdkColor structure.


<!-- ##### FUNCTION gtk_clist_set_cell_style ##### -->
<para>
Sets the style for the specified cell.
</para>

@clist: The #GtkCList to affect.
@row: The row of the cell.
@column: The column of the cell.
@style: A pointer to a #GtkStyle structure.


<!-- ##### FUNCTION gtk_clist_get_cell_style ##### -->
<para>
Gets the current style of the specified cell.
</para>

@clist: The #GtkCList to affect.
@row: The row of the cell.
@column: The column of the cell.
@Returns: A #GtkStyle object.


<!-- ##### FUNCTION gtk_clist_set_row_style ##### -->
<para>
Sets the style for all cells in the specified row.
</para>

@clist: The #GtkCList to affect.
@row: The row to affect.
@style: A pointer to a #GtkStyle to set.


<!-- ##### FUNCTION gtk_clist_get_row_style ##### -->
<para>
Gets the style set for the specified row.
</para>

@clist: The #GtkCList to affect.
@row: The row to query.
@Returns: The #GtkStyle of the row.


<!-- ##### FUNCTION gtk_clist_set_shift ##### -->
<para>
Sets the vertical and horizontal shift of the specified cell.
</para>

@clist: The #GtkCList to affect.
@row: The row of the cell.
@column: The column of the cell.
@vertical: The value to set for the vertical shift.
@horizontal: The value to set for the vertical shift.


<!-- ##### FUNCTION gtk_clist_set_selectable ##### -->
<para>
Sets whether the specified row is selectable or not.
</para>

@clist: The #GtkCList to affect.
@row: The row to affect.
@selectable: %TRUE or %FALSE.


<!-- ##### FUNCTION gtk_clist_get_selectable ##### -->
<para>
Gets whether the specified row is selectable or not.
</para>

@clist: The #GtkCList to affect.
@row: The row to query.
@Returns: A #gboolean value.


<!-- ##### FUNCTION gtk_clist_prepend ##### -->
<para>
Adds a row to the CList at the top.
</para>

@clist: The #GtkCList to affect.
@text: An array of strings to add.
@Returns: The number of the row added.


<!-- ##### FUNCTION gtk_clist_append ##### -->
<para>
Adds a row to the CList at the bottom.
</para>

@clist: The #GtkCList to affect.
@text: An array of strings to add.
@Returns: The number of the row added.


<!-- ##### FUNCTION gtk_clist_insert ##### -->
<para>
Adds a row of text to the CList at the specified position.
</para>

@clist: The #GtkCList to affect.
@row: The row where the text should be inserted.
@text: An array of string to add.
@Returns: The number of the row added.


<!-- ##### FUNCTION gtk_clist_remove ##### -->
<para>
Removes the specified row from the CList.
</para>

@clist: The #GtkCList to affect.
@row: The row to remove.


<!-- ##### FUNCTION gtk_clist_set_row_data ##### -->
<para>
Sets data for the specified row.  This is the same as calling gtk_clist_set_row_data_full(clist, row, data, NULL).
</para>

@clist: The #GtkCList to affect.
@row: The row to affect.
@data: The data to set for the row.


<!-- ##### FUNCTION gtk_clist_set_row_data_full ##### -->
<para>
Sets the data for specified row, with a callback when the row is destroyed.
</para>

@clist: The #GtkCList to affect.
@row: The row to affect.
@data: The data to set for the row.
@destroy: A #GtkDestroyNotify function to be called when the row is destroyed.


<!-- ##### FUNCTION gtk_clist_get_row_data ##### -->
<para>
Gets the currently set data for the specified row.
</para>

@clist: The #GtkCList to affect.
@row: The row to query.
@Returns: The data set for the row.


<!-- ##### FUNCTION gtk_clist_find_row_from_data ##### -->
<para>
Searches the CList for the row with the specified data.
</para>

@clist: The #GtkCList to search.
@data: The data to search for a match.
@Returns: The number of the matching row, or -1 if no match could be found.


<!-- ##### FUNCTION gtk_clist_select_row ##### -->
<para>
Selects the specified row.  Causes the "select-row" signal to be emitted for the specified row and column.
</para>

@clist: The #GtkCList to affect.
@row: The row to select.
@column: The column to select.


<!-- ##### FUNCTION gtk_clist_unselect_row ##### -->
<para>
Unselects the specified row.  Causes the "unselect-row" signal to be emitted for the specified row and column.
</para>

@clist: The #GtkCList to affect.
@row: The row to select.
@column: The column to select.


<!-- ##### FUNCTION gtk_clist_undo_selection ##### -->
<para>
Undoes the last selection for an "extended selection mode" CList.
</para>

@clist: The #GtkCList to affect.


<!-- ##### FUNCTION gtk_clist_clear ##### -->
<para>
Removes all the CList's rows.
</para>

@clist: The #GtkCList to affect.


<!-- ##### FUNCTION gtk_clist_get_selection_info ##### -->
<para>
Gets the row and column at the specified pixel position in the CList.
</para>

@clist: The #GtkCList to affect.
@x: The horizontal pixel position to check.
@y: The vertical pixel position to check..
@row: Pointer to a #gint to store the row value.
@column: Pointer to a #gint to store the column value.
@Returns: 1 if row/column is returned and in range, 0 otherwise.


<!-- ##### FUNCTION gtk_clist_select_all ##### -->
<para>
Selects all rows in the CList.  This function has no affect for a
CList in "single" or "browse" selection mode.
</para>

@clist: The #GtkCList to affect.


<!-- ##### FUNCTION gtk_clist_unselect_all ##### -->
<para>
Unselects all rows in the CList.
</para>

@clist: The #GtkCList to affect.


<!-- ##### FUNCTION gtk_clist_swap_rows ##### -->
<para>
Swaps the two specified rows with each other.
</para>

@clist: The #GtkCList to affect.
@row1: Number of the first row.
@row2: Number of the second row.


<!-- ##### FUNCTION gtk_clist_set_compare_func ##### -->
<para>
Sets the compare function of the #GtkClist to @cmp_func. If @cmp_func is NULL,
then the default compare function is used. The default compare function sorts
ascending or with the type set by gtk_clist_set_sort_type() by the column set
by gtk_clist_set_sort_column().
</para>

@clist: The #GtkCList to affect.
@cmp_func: The #GtkCompareFunction to use.


<!-- ##### FUNCTION gtk_clist_set_sort_column ##### -->
<para>
Sets the sort column of the clist. The sort column is used by the
default compare function to determine which column to sort by. 
</para>

@clist: The #GtkCList to affect.
@column: The column to sort by


<!-- ##### FUNCTION gtk_clist_set_sort_type ##### -->
<para>
Sets the sort type of the #GtkClist. This is either GTK_SORT_ASCENDING for
ascening sort or GTK_SORT_DESCENDING for descending sort.
</para>

@clist: The #GtkCList to affect.
@sort_type: the #GtkSortType to use


<!-- ##### FUNCTION gtk_clist_sort ##### -->
<para>
Sorts the #GtkClist according to the current compare function, which
can be set with the gtk_clist_set_compare_func() function.
</para>

@clist: The #GtkCList to sort.


<!-- ##### FUNCTION gtk_clist_set_auto_sort ##### -->
<para>
Turns on or off auto sort of the #GtkCList. If auto sort is on, then the CList will be resorted when a row is inserted into the CList.
</para>

@clist: The #GtkCList to affect.
@auto_sort: whether auto sort should be on or off


<!-- ##### FUNCTION gtk_clist_columns_autosize ##### -->
<para>
Auto-sizes all columns in the CList and returns the total width of the CList.
</para>

@clist: The #GtkCList to affect.
@Returns: The total width of the CList.


<!-- ##### FUNCTION gtk_clist_get_column_title ##### -->
<para>
Gets the current title of the specified column
</para>

@clist: The #GtkCList to affect.
@column: The column to query.
@Returns: The title of the column.


<!-- ##### FUNCTION gtk_clist_get_column_widget ##### -->
<para>
Gets the widget in the column header for the specified column.
</para>

@clist: The #GtkCList to affect.
@column: The column to query.
@Returns: Pointer to a #GtkWidget for the column header.


<!-- ##### FUNCTION gtk_clist_get_hadjustment ##### -->
<para>
Gets the #GtkAdjustment currently being used for the horizontal
aspect.
</para>

@clist: The #GtkCList to check.
@Returns: A #GtkAdjustment object, or NULL if none is currently
being used.


<!-- ##### FUNCTION gtk_clist_get_vadjustment ##### -->
<para>
Gets the #GtkAdjustment currently being used for the vertical
aspect.
</para>

@clist: The #GtkCList to check.
@Returns: A #GtkAdjustment object, or NULL if none is currently
being used.


<!-- ##### FUNCTION gtk_clist_row_move ##### -->
<para>
Allows you to move a row from one position to another in the
list.
</para>

@clist: The #GtkCList to affect.
@source_row: The original position of the row to move.
@dest_row: The position to which the row should be moved.


<!-- ##### FUNCTION gtk_clist_set_button_actions ##### -->
<para>
Sets the action(s) that the specified mouse button will have
on the CList.
</para>

@clist: The #GtkCList to affect.
@button: The mouse button to set. The values here, unlike in the
         rest of GTK+ start from 0. For instance, the right mouse
         button, which is 3 elsewhere, should be given as 2 here.
@button_actions: A logically OR'd value of #GtkButtonAction values 
for the button.


<!-- ##### FUNCTION gtk_clist_set_hadjustment ##### -->
<para>
Allows you to set the #GtkAdjustment to be used for the horizontal
aspect of the #GtkCList widget.
</para>

@clist: The #GtkCList to affect.
@adjustment: A pointer to a #GtkAdjustment widget, or NULL.


<!-- ##### FUNCTION gtk_clist_set_reorderable ##### -->
<para>
Sets whether the CList's rows are re-orderable using drag-and-drop.
</para>

@clist: The #GtkCList to affect.
@reorderable: %TRUE or %FALSE.


<!-- ##### FUNCTION gtk_clist_set_use_drag_icons ##### -->
<para>
Determines whether the #GtkClist should use icons when
doing drag-and-drop operations.
</para>

@clist: The #GtkCList to affect.
@use_icons: %TRUE or %FALSE.


<!-- ##### FUNCTION gtk_clist_set_vadjustment ##### -->
<para>
Allows you to set the #GtkAdjustment to be used for the vertical
aspect of the #GtkCList widget.
</para>

@clist: The #GtkCList to affect.
@adjustment: A pointer to a #GtkAdjustment widget, or NULL.