1 /*
2  * This file is part of gtkD.
3  *
4  * gtkD is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU Lesser General Public License
6  * as published by the Free Software Foundation; either version 3
7  * of the License, or (at your option) any later version, with
8  * some exceptions, please read the COPYING file.
9  *
10  * gtkD is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU Lesser General Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public License
16  * along with gtkD; if not, write to the Free Software
17  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA
18  */
19  
20 // generated automatically - do not change
21 // find conversion definition on APILookup.txt
22 // implement new conversion functionalities on the wrap.utils pakage
23 
24 /*
25  * Conversion parameters:
26  * inFile  = AtkTable.html
27  * outPack = atk
28  * outFile = Table
29  * strct   = AtkTable
30  * realStrct=
31  * ctorStrct=
32  * clss    = Table
33  * interf  = 
34  * class Code: No
35  * interface Code: No
36  * template for:
37  * extend  = 
38  * implements:
39  * prefixes:
40  * 	- atk_table_
41  * omit structs:
42  * omit prefixes:
43  * omit code:
44  * omit signals:
45  * imports:
46  * 	- atk.ObjectAtk
47  * 	- glib.Str
48  * structWrap:
49  * 	- AtkObject* -> ObjectAtk
50  * module aliases:
51  * local aliases:
52  * overrides:
53  */
54 
55 module atk.Table;
56 
57 public  import gtkc.atktypes;
58 
59 private import gtkc.atk;
60 private import glib.ConstructionException;
61 private import gobject.ObjectG;
62 
63 private import gobject.Signals;
64 public  import gtkc.gdktypes;
65 
66 private import atk.ObjectAtk;
67 private import glib.Str;
68 
69 
70 
71 
72 /**
73  * AtkTable should be implemented by components which present
74  * elements ordered via rows and columns. It may also be used to
75  * present tree-structured information if the nodes of the trees can
76  * be said to contain multiple "columns". Individual elements of an
77  * AtkTable are typically referred to as "cells", and these cells are
78  * exposed by AtkTable as child AtkObjects of the AtkTable. Both
79  * row/column and child-index-based access to these children is
80  * provided.
81  *
82  * Children of AtkTable are frequently "lightweight" objects, that
83  * is, they may not have backing widgets in the host UI toolkit. They
84  * are therefore often transient.
85  * Since tables are often very complex, AtkTable includes provision
86  * for offering simplified summary information, as well as row and
87  * column headers and captions. Headers and captions are AtkObjects
88  * which may implement other interfaces (AtkText, AtkImage, etc.) as
89  * appropriate. AtkTable summaries may themselves be (simplified)
90  * AtkTables, etc.
91  */
92 public class Table
93 {
94 	
95 	/** the main Gtk struct */
96 	protected AtkTable* atkTable;
97 	
98 	
99 	public AtkTable* getTableStruct()
100 	{
101 		return atkTable;
102 	}
103 	
104 	
105 	/** the main Gtk struct as a void* */
106 	protected void* getStruct()
107 	{
108 		return cast(void*)atkTable;
109 	}
110 	
111 	/**
112 	 * Sets our main struct and passes it to the parent class
113 	 */
114 	public this (AtkTable* atkTable)
115 	{
116 		this.atkTable = atkTable;
117 	}
118 	
119 	/**
120 	 */
121 	int[string] connectedSignals;
122 	
123 	void delegate(gint, gint, Table)[] onColumnDeletedListeners;
124 	/**
125 	 * The "column-deleted" signal is emitted by an object which
126 	 * implements the AtkTable interface when a column is deleted.
127 	 */
128 	void addOnColumnDeleted(void delegate(gint, gint, Table) dlg, ConnectFlags connectFlags=cast(ConnectFlags)0)
129 	{
130 		if ( !("column-deleted" in connectedSignals) )
131 		{
132 			Signals.connectData(
133 			getStruct(),
134 			"column-deleted",
135 			cast(GCallback)&callBackColumnDeleted,
136 			cast(void*)this,
137 			null,
138 			connectFlags);
139 			connectedSignals["column-deleted"] = 1;
140 		}
141 		onColumnDeletedListeners ~= dlg;
142 	}
143 	extern(C) static void callBackColumnDeleted(AtkTable* atktableStruct, gint arg1, gint arg2, Table _table)
144 	{
145 		foreach ( void delegate(gint, gint, Table) dlg ; _table.onColumnDeletedListeners )
146 		{
147 			dlg(arg1, arg2, _table);
148 		}
149 	}
150 	
151 	void delegate(gint, gint, Table)[] onColumnInsertedListeners;
152 	/**
153 	 * The "column-inserted" signal is emitted by an object which
154 	 * implements the AtkTable interface when a column is inserted.
155 	 */
156 	void addOnColumnInserted(void delegate(gint, gint, Table) dlg, ConnectFlags connectFlags=cast(ConnectFlags)0)
157 	{
158 		if ( !("column-inserted" in connectedSignals) )
159 		{
160 			Signals.connectData(
161 			getStruct(),
162 			"column-inserted",
163 			cast(GCallback)&callBackColumnInserted,
164 			cast(void*)this,
165 			null,
166 			connectFlags);
167 			connectedSignals["column-inserted"] = 1;
168 		}
169 		onColumnInsertedListeners ~= dlg;
170 	}
171 	extern(C) static void callBackColumnInserted(AtkTable* atktableStruct, gint arg1, gint arg2, Table _table)
172 	{
173 		foreach ( void delegate(gint, gint, Table) dlg ; _table.onColumnInsertedListeners )
174 		{
175 			dlg(arg1, arg2, _table);
176 		}
177 	}
178 	
179 	void delegate(Table)[] onColumnReorderedListeners;
180 	/**
181 	 * The "column-reordered" signal is emitted by an object which
182 	 * implements the AtkTable interface when the columns are
183 	 * reordered.
184 	 */
185 	void addOnColumnReordered(void delegate(Table) dlg, ConnectFlags connectFlags=cast(ConnectFlags)0)
186 	{
187 		if ( !("column-reordered" in connectedSignals) )
188 		{
189 			Signals.connectData(
190 			getStruct(),
191 			"column-reordered",
192 			cast(GCallback)&callBackColumnReordered,
193 			cast(void*)this,
194 			null,
195 			connectFlags);
196 			connectedSignals["column-reordered"] = 1;
197 		}
198 		onColumnReorderedListeners ~= dlg;
199 	}
200 	extern(C) static void callBackColumnReordered(AtkTable* atktableStruct, Table _table)
201 	{
202 		foreach ( void delegate(Table) dlg ; _table.onColumnReorderedListeners )
203 		{
204 			dlg(_table);
205 		}
206 	}
207 	
208 	void delegate(Table)[] onModelChangedListeners;
209 	/**
210 	 * The "model-changed" signal is emitted by an object which
211 	 * implements the AtkTable interface when the model displayed by
212 	 * the table changes.
213 	 */
214 	void addOnModelChanged(void delegate(Table) dlg, ConnectFlags connectFlags=cast(ConnectFlags)0)
215 	{
216 		if ( !("model-changed" in connectedSignals) )
217 		{
218 			Signals.connectData(
219 			getStruct(),
220 			"model-changed",
221 			cast(GCallback)&callBackModelChanged,
222 			cast(void*)this,
223 			null,
224 			connectFlags);
225 			connectedSignals["model-changed"] = 1;
226 		}
227 		onModelChangedListeners ~= dlg;
228 	}
229 	extern(C) static void callBackModelChanged(AtkTable* atktableStruct, Table _table)
230 	{
231 		foreach ( void delegate(Table) dlg ; _table.onModelChangedListeners )
232 		{
233 			dlg(_table);
234 		}
235 	}
236 	
237 	void delegate(gint, gint, Table)[] onRowDeletedListeners;
238 	/**
239 	 * The "row-deleted" signal is emitted by an object which
240 	 * implements the AtkTable interface when a row is deleted.
241 	 */
242 	void addOnRowDeleted(void delegate(gint, gint, Table) dlg, ConnectFlags connectFlags=cast(ConnectFlags)0)
243 	{
244 		if ( !("row-deleted" in connectedSignals) )
245 		{
246 			Signals.connectData(
247 			getStruct(),
248 			"row-deleted",
249 			cast(GCallback)&callBackRowDeleted,
250 			cast(void*)this,
251 			null,
252 			connectFlags);
253 			connectedSignals["row-deleted"] = 1;
254 		}
255 		onRowDeletedListeners ~= dlg;
256 	}
257 	extern(C) static void callBackRowDeleted(AtkTable* atktableStruct, gint arg1, gint arg2, Table _table)
258 	{
259 		foreach ( void delegate(gint, gint, Table) dlg ; _table.onRowDeletedListeners )
260 		{
261 			dlg(arg1, arg2, _table);
262 		}
263 	}
264 	
265 	void delegate(gint, gint, Table)[] onRowInsertedListeners;
266 	/**
267 	 * The "row-inserted" signal is emitted by an object which
268 	 * implements the AtkTable interface when a row is inserted.
269 	 */
270 	void addOnRowInserted(void delegate(gint, gint, Table) dlg, ConnectFlags connectFlags=cast(ConnectFlags)0)
271 	{
272 		if ( !("row-inserted" in connectedSignals) )
273 		{
274 			Signals.connectData(
275 			getStruct(),
276 			"row-inserted",
277 			cast(GCallback)&callBackRowInserted,
278 			cast(void*)this,
279 			null,
280 			connectFlags);
281 			connectedSignals["row-inserted"] = 1;
282 		}
283 		onRowInsertedListeners ~= dlg;
284 	}
285 	extern(C) static void callBackRowInserted(AtkTable* atktableStruct, gint arg1, gint arg2, Table _table)
286 	{
287 		foreach ( void delegate(gint, gint, Table) dlg ; _table.onRowInsertedListeners )
288 		{
289 			dlg(arg1, arg2, _table);
290 		}
291 	}
292 	
293 	void delegate(Table)[] onRowReorderedListeners;
294 	/**
295 	 * The "row-reordered" signal is emitted by an object which
296 	 * implements the AtkTable interface when the rows are
297 	 * reordered.
298 	 */
299 	void addOnRowReordered(void delegate(Table) dlg, ConnectFlags connectFlags=cast(ConnectFlags)0)
300 	{
301 		if ( !("row-reordered" in connectedSignals) )
302 		{
303 			Signals.connectData(
304 			getStruct(),
305 			"row-reordered",
306 			cast(GCallback)&callBackRowReordered,
307 			cast(void*)this,
308 			null,
309 			connectFlags);
310 			connectedSignals["row-reordered"] = 1;
311 		}
312 		onRowReorderedListeners ~= dlg;
313 	}
314 	extern(C) static void callBackRowReordered(AtkTable* atktableStruct, Table _table)
315 	{
316 		foreach ( void delegate(Table) dlg ; _table.onRowReorderedListeners )
317 		{
318 			dlg(_table);
319 		}
320 	}
321 	
322 	
323 	/**
324 	 * Get a reference to the table cell at row, column.
325 	 * Params:
326 	 * row = a gint representing a row in table
327 	 * column = a gint representing a column in table
328 	 * Returns: a AtkObject* representing the referred to accessible. [transfer full]
329 	 */
330 	public ObjectAtk refAt(int row, int column)
331 	{
332 		// AtkObject * atk_table_ref_at (AtkTable *table,  gint row,  gint column);
333 		auto p = atk_table_ref_at(atkTable, row, column);
334 		
335 		if(p is null)
336 		{
337 			return null;
338 		}
339 		
340 		return ObjectG.getDObject!(ObjectAtk)(cast(AtkObject*) p);
341 	}
342 	
343 	/**
344 	 * Gets a gint representing the index at the specified row and column.
345 	 * Params:
346 	 * row = a gint representing a row in table
347 	 * column = a gint representing a column in table
348 	 * Returns: a gint representing the index at specified position. The value -1 is returned if the object at row,column is not a child of table or table does not implement this interface.
349 	 */
350 	public int getIndexAt(int row, int column)
351 	{
352 		// gint atk_table_get_index_at (AtkTable *table,  gint row,  gint column);
353 		return atk_table_get_index_at(atkTable, row, column);
354 	}
355 	
356 	/**
357 	 * Gets a gint representing the column at the specified index_.
358 	 * Params:
359 	 * index = a gint representing an index in table
360 	 * Returns: a gint representing the column at the specified index, or -1 if the table does not implement this interface
361 	 */
362 	public int getColumnAtIndex(int index)
363 	{
364 		// gint atk_table_get_column_at_index (AtkTable *table,  gint index_);
365 		return atk_table_get_column_at_index(atkTable, index);
366 	}
367 	
368 	/**
369 	 * Gets a gint representing the row at the specified index_.
370 	 * Params:
371 	 * index = a gint representing an index in table
372 	 * Returns: a gint representing the row at the specified index, or -1 if the table does not implement this interface
373 	 */
374 	public int getRowAtIndex(int index)
375 	{
376 		// gint atk_table_get_row_at_index (AtkTable *table,  gint index_);
377 		return atk_table_get_row_at_index(atkTable, index);
378 	}
379 	
380 	/**
381 	 * Gets the number of columns in the table.
382 	 * Returns: a gint representing the number of columns, or 0 if value does not implement this interface.
383 	 */
384 	public int getNColumns()
385 	{
386 		// gint atk_table_get_n_columns (AtkTable *table);
387 		return atk_table_get_n_columns(atkTable);
388 	}
389 	
390 	/**
391 	 * Gets the number of rows in the table.
392 	 * Returns: a gint representing the number of rows, or 0 if value does not implement this interface.
393 	 */
394 	public int getNRows()
395 	{
396 		// gint atk_table_get_n_rows (AtkTable *table);
397 		return atk_table_get_n_rows(atkTable);
398 	}
399 	
400 	/**
401 	 * Gets the number of columns occupied by the accessible object
402 	 * at the specified row and column in the table.
403 	 * Params:
404 	 * row = a gint representing a row in table
405 	 * column = a gint representing a column in table
406 	 * Returns: a gint representing the column extent at specified position, or 0 if value does not implement this interface.
407 	 */
408 	public int getColumnExtentAt(int row, int column)
409 	{
410 		// gint atk_table_get_column_extent_at (AtkTable *table,  gint row,  gint column);
411 		return atk_table_get_column_extent_at(atkTable, row, column);
412 	}
413 	
414 	/**
415 	 * Gets the number of rows occupied by the accessible object
416 	 * at a specified row and column in the table.
417 	 * Params:
418 	 * row = a gint representing a row in table
419 	 * column = a gint representing a column in table
420 	 * Returns: a gint representing the row extent at specified position, or 0 if value does not implement this interface.
421 	 */
422 	public int getRowExtentAt(int row, int column)
423 	{
424 		// gint atk_table_get_row_extent_at (AtkTable *table,  gint row,  gint column);
425 		return atk_table_get_row_extent_at(atkTable, row, column);
426 	}
427 	
428 	/**
429 	 * Gets the caption for the table.
430 	 * Returns: a AtkObject* representing the table caption, or NULL if value does not implement this interface. [transfer none]
431 	 */
432 	public ObjectAtk getCaption()
433 	{
434 		// AtkObject * atk_table_get_caption (AtkTable *table);
435 		auto p = atk_table_get_caption(atkTable);
436 		
437 		if(p is null)
438 		{
439 			return null;
440 		}
441 		
442 		return ObjectG.getDObject!(ObjectAtk)(cast(AtkObject*) p);
443 	}
444 	
445 	/**
446 	 * Gets the description text of the specified column in the table
447 	 * Params:
448 	 * column = a gint representing a column in table
449 	 * Returns: a gchar* representing the column description, or NULL if value does not implement this interface.
450 	 */
451 	public string getColumnDescription(int column)
452 	{
453 		// const gchar * atk_table_get_column_description (AtkTable *table,  gint column);
454 		return Str.toString(atk_table_get_column_description(atkTable, column));
455 	}
456 	
457 	/**
458 	 * Gets the description text of the specified row in the table
459 	 * Params:
460 	 * row = a gint representing a row in table
461 	 * Returns: a gchar* representing the row description, or NULL if value does not implement this interface.
462 	 */
463 	public string getRowDescription(int row)
464 	{
465 		// const gchar * atk_table_get_row_description (AtkTable *table,  gint row);
466 		return Str.toString(atk_table_get_row_description(atkTable, row));
467 	}
468 	
469 	/**
470 	 * Gets the column header of a specified column in an accessible table.
471 	 * Params:
472 	 * column = a gint representing a column in the table
473 	 * Returns: a AtkObject* representing the specified column header, or NULL if value does not implement this interface. [transfer none]
474 	 */
475 	public ObjectAtk getColumnHeader(int column)
476 	{
477 		// AtkObject * atk_table_get_column_header (AtkTable *table,  gint column);
478 		auto p = atk_table_get_column_header(atkTable, column);
479 		
480 		if(p is null)
481 		{
482 			return null;
483 		}
484 		
485 		return ObjectG.getDObject!(ObjectAtk)(cast(AtkObject*) p);
486 	}
487 	
488 	/**
489 	 * Gets the row header of a specified row in an accessible table.
490 	 * Params:
491 	 * row = a gint representing a row in the table
492 	 * Returns: a AtkObject* representing the specified row header, or NULL if value does not implement this interface. [transfer none]
493 	 */
494 	public ObjectAtk getRowHeader(int row)
495 	{
496 		// AtkObject * atk_table_get_row_header (AtkTable *table,  gint row);
497 		auto p = atk_table_get_row_header(atkTable, row);
498 		
499 		if(p is null)
500 		{
501 			return null;
502 		}
503 		
504 		return ObjectG.getDObject!(ObjectAtk)(cast(AtkObject*) p);
505 	}
506 	
507 	/**
508 	 * Gets the summary description of the table.
509 	 * Returns: a AtkObject* representing a summary description of the table, or zero if value does not implement this interface. [transfer full]
510 	 */
511 	public ObjectAtk getSummary()
512 	{
513 		// AtkObject * atk_table_get_summary (AtkTable *table);
514 		auto p = atk_table_get_summary(atkTable);
515 		
516 		if(p is null)
517 		{
518 			return null;
519 		}
520 		
521 		return ObjectG.getDObject!(ObjectAtk)(cast(AtkObject*) p);
522 	}
523 	
524 	/**
525 	 * Sets the caption for the table.
526 	 * Params:
527 	 * caption = a AtkObject representing the caption to set for table
528 	 */
529 	public void setCaption(ObjectAtk caption)
530 	{
531 		// void atk_table_set_caption (AtkTable *table,  AtkObject *caption);
532 		atk_table_set_caption(atkTable, (caption is null) ? null : caption.getObjectAtkStruct());
533 	}
534 	
535 	/**
536 	 * Sets the description text for the specified row of table.
537 	 * Params:
538 	 * row = a gint representing a row in table
539 	 * description = a gchar representing the description text
540 	 * to set for the specified row of table
541 	 */
542 	public void setRowDescription(int row, string description)
543 	{
544 		// void atk_table_set_row_description (AtkTable *table,  gint row,  const gchar *description);
545 		atk_table_set_row_description(atkTable, row, Str.toStringz(description));
546 	}
547 	
548 	/**
549 	 * Sets the description text for the specified column of the table.
550 	 * Params:
551 	 * column = a gint representing a column in table
552 	 * description = a gchar representing the description text
553 	 * to set for the specified column of the table
554 	 */
555 	public void setColumnDescription(int column, string description)
556 	{
557 		// void atk_table_set_column_description (AtkTable *table,  gint column,  const gchar *description);
558 		atk_table_set_column_description(atkTable, column, Str.toStringz(description));
559 	}
560 	
561 	/**
562 	 * Sets the specified row header to header.
563 	 * Params:
564 	 * row = a gint representing a row in table
565 	 * header = an AtkTable
566 	 */
567 	public void setRowHeader(int row, ObjectAtk header)
568 	{
569 		// void atk_table_set_row_header (AtkTable *table,  gint row,  AtkObject *header);
570 		atk_table_set_row_header(atkTable, row, (header is null) ? null : header.getObjectAtkStruct());
571 	}
572 	
573 	/**
574 	 * Sets the specified column header to header.
575 	 * Params:
576 	 * column = a gint representing a column in table
577 	 * header = an AtkTable
578 	 */
579 	public void setColumnHeader(int column, ObjectAtk header)
580 	{
581 		// void atk_table_set_column_header (AtkTable *table,  gint column,  AtkObject *header);
582 		atk_table_set_column_header(atkTable, column, (header is null) ? null : header.getObjectAtkStruct());
583 	}
584 	
585 	/**
586 	 * Sets the summary description of the table.
587 	 * Params:
588 	 * accessible = an AtkObject representing the summary description
589 	 * to set for table
590 	 */
591 	public void setSummary(ObjectAtk accessible)
592 	{
593 		// void atk_table_set_summary (AtkTable *table,  AtkObject *accessible);
594 		atk_table_set_summary(atkTable, (accessible is null) ? null : accessible.getObjectAtkStruct());
595 	}
596 	
597 	/**
598 	 * Gets the selected columns of the table by initializing **selected with
599 	 * the selected column numbers. This array should be freed by the caller.
600 	 * Params:
601 	 * selected = a gint** that is to contain the selected columns numbers
602 	 * Returns: a gint representing the number of selected columns, or 0 if value does not implement this interface.
603 	 */
604 	public int getSelectedColumns(out int[] selected)
605 	{
606 		// gint atk_table_get_selected_columns (AtkTable *table,  gint **selected);
607 		gint* outselected = null;
608 		
609 		auto p = atk_table_get_selected_columns(atkTable, &outselected);
610 		
611 		selected = outselected[0 .. p];
612 		return p;
613 	}
614 	
615 	/**
616 	 * Gets the selected rows of the table by initializing **selected with
617 	 * the selected row numbers. This array should be freed by the caller.
618 	 * Params:
619 	 * selected = a gint** that is to contain the selected row numbers
620 	 * Returns: a gint representing the number of selected rows, or zero if value does not implement this interface.
621 	 */
622 	public int getSelectedRows(out int[] selected)
623 	{
624 		// gint atk_table_get_selected_rows (AtkTable *table,  gint **selected);
625 		gint* outselected = null;
626 		
627 		auto p = atk_table_get_selected_rows(atkTable, &outselected);
628 		
629 		selected = outselected[0 .. p];
630 		return p;
631 	}
632 	
633 	/**
634 	 * Gets a boolean value indicating whether the specified column
635 	 * is selected
636 	 * Params:
637 	 * column = a gint representing a column in table
638 	 * Returns: a gboolean representing if the column is selected, or 0 if value does not implement this interface.
639 	 */
640 	public int isColumnSelected(int column)
641 	{
642 		// gboolean atk_table_is_column_selected (AtkTable *table,  gint column);
643 		return atk_table_is_column_selected(atkTable, column);
644 	}
645 	
646 	/**
647 	 * Gets a boolean value indicating whether the specified row
648 	 * is selected
649 	 * Params:
650 	 * row = a gint representing a row in table
651 	 * Returns: a gboolean representing if the row is selected, or 0 if value does not implement this interface.
652 	 */
653 	public int isRowSelected(int row)
654 	{
655 		// gboolean atk_table_is_row_selected (AtkTable *table,  gint row);
656 		return atk_table_is_row_selected(atkTable, row);
657 	}
658 	
659 	/**
660 	 * Gets a boolean value indicating whether the accessible object
661 	 * at the specified row and column is selected
662 	 * Params:
663 	 * row = a gint representing a row in table
664 	 * column = a gint representing a column in table
665 	 * Returns: a gboolean representing if the cell is selected, or 0 if value does not implement this interface.
666 	 */
667 	public int isSelected(int row, int column)
668 	{
669 		// gboolean atk_table_is_selected (AtkTable *table,  gint row,  gint column);
670 		return atk_table_is_selected(atkTable, row, column);
671 	}
672 	
673 	/**
674 	 * Adds the specified column to the selection.
675 	 * Params:
676 	 * column = a gint representing a column in table
677 	 * Returns: a gboolean representing if the column was successfully added to the selection, or 0 if value does not implement this interface.
678 	 */
679 	public int addColumnSelection(int column)
680 	{
681 		// gboolean atk_table_add_column_selection (AtkTable *table,  gint column);
682 		return atk_table_add_column_selection(atkTable, column);
683 	}
684 	
685 	/**
686 	 * Adds the specified row to the selection.
687 	 * Params:
688 	 * row = a gint representing a row in table
689 	 * Returns: a gboolean representing if row was successfully added to selection, or 0 if value does not implement this interface.
690 	 */
691 	public int addRowSelection(int row)
692 	{
693 		// gboolean atk_table_add_row_selection (AtkTable *table,  gint row);
694 		return atk_table_add_row_selection(atkTable, row);
695 	}
696 	
697 	/**
698 	 * Adds the specified column to the selection.
699 	 * Params:
700 	 * column = a gint representing a column in table
701 	 * Returns: a gboolean representing if the column was successfully removed from the selection, or 0 if value does not implement this interface.
702 	 */
703 	public int removeColumnSelection(int column)
704 	{
705 		// gboolean atk_table_remove_column_selection (AtkTable *table,  gint column);
706 		return atk_table_remove_column_selection(atkTable, column);
707 	}
708 	
709 	/**
710 	 * Removes the specified row from the selection.
711 	 * Params:
712 	 * row = a gint representing a row in table
713 	 * Returns: a gboolean representing if the row was successfully removed from the selection, or 0 if value does not implement this interface. Signal Details The "column-deleted" signal void user_function (AtkTable *atktable, gint arg1, gint arg2, gpointer user_data) : Run Last The "column-deleted" signal is emitted by an object which implements the AtkTable interface when a column is deleted.
714 	 */
715 	public int removeRowSelection(int row)
716 	{
717 		// gboolean atk_table_remove_row_selection (AtkTable *table,  gint row);
718 		return atk_table_remove_row_selection(atkTable, row);
719 	}
720 }