Revert "[Tizen] some APIs are changed for preview#4"
[platform/core/csapi/tizenfx.git] / src / Tizen.NUI / src / public / TableView.cs
1 /** Copyright (c) 2017 Samsung Electronics Co., Ltd.
2 *
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 *
15 */
16 // This File has been auto-generated by SWIG and then modified using DALi Ruby Scripts
17 //------------------------------------------------------------------------------
18 // <auto-generated />
19 //
20 // This file was automatically generated by SWIG (http://www.swig.org).
21 // Version 3.0.9
22 //
23 // Do not make changes to this file unless you know what you are doing--modify
24 // the SWIG interface file instead.
25 //------------------------------------------------------------------------------
26
27 using Tizen.NUI.BaseComponents;
28
29 namespace Tizen.NUI
30 {
31     using Tizen.NUI.BaseComponents;
32     /// <summary>
33     /// TableView is a layout container for aligning child actors in a grid like layout.<br>
34     /// TableView constrains the x and y position and width and height of the child actors.<br>
35     /// z position and depth are left intact so that 3D model actors can also be laid out
36     /// in a grid without loosing their depth scaling.<br>
37     /// </summary>
38     public class TableView : View
39     {
40         private global::System.Runtime.InteropServices.HandleRef swigCPtr;
41
42         internal TableView(global::System.IntPtr cPtr, bool cMemoryOwn) : base(NDalicPINVOKE.TableView_SWIGUpcast(cPtr), cMemoryOwn)
43         {
44             swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
45             // By default, we do not want the position to use the anchor point
46             PositionUsesAnchorPoint = false;
47         }
48
49         internal static global::System.Runtime.InteropServices.HandleRef getCPtr(TableView obj)
50         {
51             return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
52         }
53
54         protected override void Dispose(DisposeTypes type)
55         {
56             if(disposed)
57             {
58                 return;
59             }
60
61             if(type == DisposeTypes.Explicit)
62             {
63                 //Called by User
64                 //Release your own managed resources here.
65                 //You should release all of your own disposable objects here.
66             }
67
68             //Release your own unmanaged resources here.
69             //You should not access any managed member here except static instance.
70             //because the execution order of Finalizes is non-deterministic.
71
72             if (swigCPtr.Handle != global::System.IntPtr.Zero)
73             {
74                 if (swigCMemOwn)
75                 {
76                     swigCMemOwn = false;
77                     NDalicPINVOKE.delete_TableView(swigCPtr);
78                 }
79                 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
80             }
81
82             base.Dispose(type);
83         }
84
85
86         internal class Property
87         {
88             internal static readonly int ROWS = NDalicPINVOKE.TableView_Property_ROWS_get();
89             internal static readonly int COLUMNS = NDalicPINVOKE.TableView_Property_COLUMNS_get();
90             internal static readonly int CELL_PADDING = NDalicPINVOKE.TableView_Property_CELL_PADDING_get();
91             internal static readonly int LAYOUT_ROWS = NDalicPINVOKE.TableView_Property_LAYOUT_ROWS_get();
92             internal static readonly int LAYOUT_COLUMNS = NDalicPINVOKE.TableView_Property_LAYOUT_COLUMNS_get();
93         }
94
95         internal class ChildProperty
96         {
97             internal static readonly int CELL_INDEX = NDalicPINVOKE.TableView_ChildProperty_CELL_INDEX_get();
98             internal static readonly int ROW_SPAN = NDalicPINVOKE.TableView_ChildProperty_ROW_SPAN_get();
99             internal static readonly int COLUMN_SPAN = NDalicPINVOKE.TableView_ChildProperty_COLUMN_SPAN_get();
100             internal static readonly int CELL_HORIZONTAL_ALIGNMENT = NDalicPINVOKE.TableView_ChildProperty_CELL_HORIZONTAL_ALIGNMENT_get();
101             internal static readonly int CELL_VERTICAL_ALIGNMENT = NDalicPINVOKE.TableView_ChildProperty_CELL_VERTICAL_ALIGNMENT_get();
102         }
103
104         /// <summary>
105         /// Class to specify layout position for child view.
106         /// </summary>
107         public class CellPosition : global::System.IDisposable
108         {
109             private global::System.Runtime.InteropServices.HandleRef swigCPtr;
110             protected bool swigCMemOwn;
111
112             internal CellPosition(global::System.IntPtr cPtr, bool cMemoryOwn)
113             {
114                 swigCMemOwn = cMemoryOwn;
115                 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
116             }
117
118             internal static global::System.Runtime.InteropServices.HandleRef getCPtr(CellPosition obj)
119             {
120                 return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
121             }
122
123             //NUI Dispose Pattern written by Jinwoo Nam(jjw.nam) 
124
125             //A Flag to check who called Dispose(). (By User or DisposeQueue)
126             private bool isDisposeQueued = false;
127             //A Flat to check if it is already disposed.
128             protected bool disposed = false;
129
130             ~CellPosition()
131             {
132                 if(!isDisposeQueued)
133                 {
134                     isDisposeQueued = true;
135                     DisposeQueue.Instance.Add(this);
136                 }
137             }
138
139             public void Dispose()
140             {
141                 //Throw excpetion if Dispose() is called in separate thread.
142                 if (!Window.IsInstalled())
143                 {
144                     throw new System.InvalidOperationException("This API called from separate thread. This API must be called from MainThread.");
145                 }
146
147                 if (isDisposeQueued)
148                 {
149                     Dispose(DisposeTypes.Implicit);
150                 }
151                 else
152                 {
153                     Dispose(DisposeTypes.Explicit);
154                     System.GC.SuppressFinalize(this);
155                 }
156             }
157
158             protected virtual void Dispose(DisposeTypes type)
159             {
160                 if (disposed)
161                 {
162                     return;
163                 }
164
165                 if(type == DisposeTypes.Explicit)
166                 {
167                     //Called by User
168                     //Release your own managed resources here.
169                     //You should release all of your own disposable objects here.
170                 }
171
172                 //Release your own unmanaged resources here.
173                 //You should not access any managed member here except static instance.
174                 //because the execution order of Finalizes is non-deterministic.
175
176                 if (swigCPtr.Handle != global::System.IntPtr.Zero)
177                 {
178                     if (swigCMemOwn)
179                     {
180                         swigCMemOwn = false;
181                         NDalicPINVOKE.delete_TableView_CellPosition(swigCPtr);
182                     }
183                     swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
184                 }
185                 disposed = true;
186             }
187
188             /// <summary>
189             /// Constructor.
190             /// </summary>
191             /// <param name="rowIndex">The row index initialized</param>
192             /// <param name="columnIndex">The column index initialized</param>
193             /// <param name="rowSpan">The row span initialized</param>
194             /// <param name="columnSpan">The column span initialized</param>
195             public CellPosition(uint rowIndex, uint columnIndex, uint rowSpan, uint columnSpan) : this(NDalicPINVOKE.new_TableView_CellPosition__SWIG_0(rowIndex, columnIndex, rowSpan, columnSpan), true)
196             {
197                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
198             }
199
200             /// <summary>
201             /// Constructor to initialise values to defaults for convenience.
202             /// </summary>
203             /// <param name="rowIndex">The row index initialized</param>
204             /// <param name="columnIndex">The column index initialized</param>
205             /// <param name="rowSpan">The row span initialized</param>
206             public CellPosition(uint rowIndex, uint columnIndex, uint rowSpan) : this(NDalicPINVOKE.new_TableView_CellPosition__SWIG_1(rowIndex, columnIndex, rowSpan), true)
207             {
208                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
209             }
210
211             /// <summary>
212             /// Constructor to initialise values to defaults for convenience.
213             /// </summary>
214             /// <param name="rowIndex">The row index initialized</param>
215             /// <param name="columnIndex">The column index initialized</param>
216             public CellPosition(uint rowIndex, uint columnIndex) : this(NDalicPINVOKE.new_TableView_CellPosition__SWIG_2(rowIndex, columnIndex), true)
217             {
218                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
219             }
220
221             /// <summary>
222             /// Constructor to initialise values to defaults for convenience.
223             /// </summary>
224             /// <param name="rowIndex">The row index initialized</param>
225             public CellPosition(uint rowIndex) : this(NDalicPINVOKE.new_TableView_CellPosition__SWIG_3(rowIndex), true)
226             {
227                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
228             }
229
230             /// <summary>
231             /// Default constructor
232             /// </summary>
233             public CellPosition() : this(NDalicPINVOKE.new_TableView_CellPosition__SWIG_4(), true)
234             {
235                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
236             }
237
238             /// <summary>
239             /// Index of row
240             /// </summary>
241             public uint rowIndex
242             {
243                 set
244                 {
245                     NDalicPINVOKE.TableView_CellPosition_rowIndex_set(swigCPtr, value);
246                     if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
247                 }
248                 get
249                 {
250                     uint ret = NDalicPINVOKE.TableView_CellPosition_rowIndex_get(swigCPtr);
251                     if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
252                     return ret;
253                 }
254             }
255
256             /// <summary>
257             /// Index of column
258             /// </summary>
259             public uint columnIndex
260             {
261                 set
262                 {
263                     NDalicPINVOKE.TableView_CellPosition_columnIndex_set(swigCPtr, value);
264                     if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
265                 }
266                 get
267                 {
268                     uint ret = NDalicPINVOKE.TableView_CellPosition_columnIndex_get(swigCPtr);
269                     if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
270                     return ret;
271                 }
272             }
273
274             /// <summary>
275             /// Span of row
276             /// </summary>
277             public uint rowSpan
278             {
279                 set
280                 {
281                     NDalicPINVOKE.TableView_CellPosition_rowSpan_set(swigCPtr, value);
282                     if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
283                 }
284                 get
285                 {
286                     uint ret = NDalicPINVOKE.TableView_CellPosition_rowSpan_get(swigCPtr);
287                     if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
288                     return ret;
289                 }
290             }
291
292             /// <summary>
293             /// Span of column
294             /// </summary>
295             public uint columnSpan
296             {
297                 set
298                 {
299                     NDalicPINVOKE.TableView_CellPosition_columnSpan_set(swigCPtr, value);
300                     if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
301                 }
302                 get
303                 {
304                     uint ret = NDalicPINVOKE.TableView_CellPosition_columnSpan_get(swigCPtr);
305                     if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
306                     return ret;
307                 }
308             }
309
310         }
311
312         /// <summary>
313         /// Creates the TableView view.
314         /// </summary>
315         /// <param name="initialRows">initialRows for the table</param>
316         /// <param name="initialColumns">initialColumns for the table</param>
317         public TableView(uint initialRows, uint initialColumns) : this(NDalicPINVOKE.TableView_New(initialRows, initialColumns), true)
318         {
319             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
320
321         }
322
323         /// <summary>
324         /// Copy constructor. Creates another handle that points to the same real object.
325         /// </summary>
326         /// <param name="handle">Handle to copy from</param>
327         public TableView(TableView handle) : this(NDalicPINVOKE.new_TableView__SWIG_1(TableView.getCPtr(handle)), true)
328         {
329             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
330         }
331
332         /// <summary>
333         /// Downcasts a handle to TableView handle.<br>
334         /// If handle points to a TableView, the downcast produces valid handle.<br>
335         /// If not, the returned handle is left uninitialized.<br>
336         /// </summary>
337         /// <param name="handle">Handle to an object</param>
338         /// <returns>Handle to a TableView or an uninitialized handle</returns>
339         internal new static TableView DownCast(BaseHandle handle)
340         {
341             TableView ret = new TableView(NDalicPINVOKE.TableView_DownCast(BaseHandle.getCPtr(handle)), true);
342             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
343             return ret;
344         }
345
346         /// <summary>
347         /// Adds a child to the table.<br>
348         /// If the row or column index is outside the table, the table gets resized bigger.<br>
349         /// </summary>
350         /// <param name="child">The child to add</param>
351         /// <param name="position">The position for the child</param>
352         /// <returns>Tue if the addition succeeded and false if the cell is already occupied</returns>
353         public bool AddChild(View child, TableView.CellPosition position)
354         {
355             bool ret = NDalicPINVOKE.TableView_AddChild(swigCPtr, View.getCPtr(child), TableView.CellPosition.getCPtr(position));
356             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
357             return ret;
358         }
359
360         /// <summary>
361         /// Returns a child from the given layout position.
362         /// </summary>
363         /// <param name="position">The position in the table</param>
364         /// <returns>Child that was in the cell or an uninitialized handle</returns>
365         public View GetChildAt(TableView.CellPosition position)
366         {
367             View ret = new View(NDalicPINVOKE.TableView_GetChildAt(swigCPtr, TableView.CellPosition.getCPtr(position)), true);
368             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
369             return ret;
370         }
371
372         /// <summary>
373         /// Removes a child from the given layout position.
374         /// </summary>
375         /// <param name="position">The position for the child to remove</param>
376         /// <returns>Child that was removed or an uninitialized handle</returns>
377         public View RemoveChildAt(TableView.CellPosition position)
378         {
379             View ret = new View(NDalicPINVOKE.TableView_RemoveChildAt(swigCPtr, TableView.CellPosition.getCPtr(position)), true);
380             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
381             return ret;
382         }
383
384         /// <summary>
385         /// Finds the child's layout position.
386         /// </summary>
387         /// <param name="child">The child to search for</param>
388         /// <param name="position">The position for the child</param>
389         /// <returns>true if the child was included in this TableView</returns>
390         public bool FindChildPosition(View child, TableView.CellPosition position)
391         {
392             bool ret = NDalicPINVOKE.TableView_FindChildPosition(swigCPtr, View.getCPtr(child), TableView.CellPosition.getCPtr(position));
393             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
394             return ret;
395         }
396
397         /// <summary>
398         /// Inserts a new row to given index.
399         /// </summary>
400         /// <param name="rowIndex">The rowIndex of the new row</param>
401         public void InsertRow(uint rowIndex)
402         {
403             NDalicPINVOKE.TableView_InsertRow(swigCPtr, rowIndex);
404             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
405         }
406
407         /// <summary>
408         /// Deletes a row from the given index.<br>
409         /// Removed elements are deleted.<br>
410         /// </summary>
411         /// <param name="rowIndex">The rowIndex of the row to delete</param>
412         public void DeleteRow(uint rowIndex)
413         {
414             NDalicPINVOKE.TableView_DeleteRow__SWIG_0(swigCPtr, rowIndex);
415             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
416         }
417
418         /// <summary>
419         /// Inserts a new column to the given index.
420         /// </summary>
421         /// <param name="columnIndex">The columnIndex of the new column</param>
422         public void InsertColumn(uint columnIndex)
423         {
424             NDalicPINVOKE.TableView_InsertColumn(swigCPtr, columnIndex);
425             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
426         }
427
428         /// <summary>
429         /// Deletes a column from the given index.<br>
430         /// Removed elements are deleted.<br>
431         /// </summary>
432         /// <param name="columnIndex">The columnIndex of the column to delete</param>
433         public void DeleteColumn(uint columnIndex)
434         {
435             NDalicPINVOKE.TableView_DeleteColumn__SWIG_0(swigCPtr, columnIndex);
436             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
437         }
438
439         /// <summary>
440         /// Resizes the TableView.
441         /// </summary>
442         /// <param name="rows">The rows for the table</param>
443         /// <param name="columns">The columns for the table</param>
444         public void Resize(uint rows, uint columns)
445         {
446             NDalicPINVOKE.TableView_Resize__SWIG_0(swigCPtr, rows, columns);
447             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
448         }
449
450         /// <summary>
451         /// Sets horizontal and vertical padding between cells.
452         /// </summary>
453         /// <param name="padding">Width and height</param>
454         public void SetCellPadding(Size2D padding)
455         {
456             NDalicPINVOKE.TableView_SetCellPadding(swigCPtr, Size2D.getCPtr(padding));
457             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
458         }
459
460         /// <summary>
461         /// Gets the current padding as width and height.
462         /// </summary>
463         /// <returns>The current padding as width and height</returns>
464         public Vector2 GetCellPadding()
465         {
466             Vector2 ret = new Vector2(NDalicPINVOKE.TableView_GetCellPadding(swigCPtr), true);
467             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
468             return ret;
469         }
470
471         /// <summary>
472         /// Specifies this row as fitting its height to its children.
473         /// </summary>
474         /// <param name="rowIndex">The row to set</param>
475         public void SetFitHeight(uint rowIndex)
476         {
477             NDalicPINVOKE.TableView_SetFitHeight(swigCPtr, rowIndex);
478             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
479         }
480
481         /// <summary>
482         /// Checks if the row is a fit row.
483         /// </summary>
484         /// <param name="rowIndex">The row to check</param>
485         /// <returns>true if the row is fit</returns>
486         public bool IsFitHeight(uint rowIndex)
487         {
488             bool ret = NDalicPINVOKE.TableView_IsFitHeight(swigCPtr, rowIndex);
489             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
490             return ret;
491         }
492
493         /// <summary>
494         /// Specifies this column as fitting its width to its children.
495         /// </summary>
496         /// <param name="columnIndex">The column to set</param>
497         public void SetFitWidth(uint columnIndex)
498         {
499             NDalicPINVOKE.TableView_SetFitWidth(swigCPtr, columnIndex);
500             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
501         }
502
503         /// <summary>
504         /// Checks if the column is a fit column.
505         /// </summary>
506         /// <param name="columnIndex">The column to check</param>
507         /// <returns>true if the column is fit</returns>
508         public bool IsFitWidth(uint columnIndex)
509         {
510             bool ret = NDalicPINVOKE.TableView_IsFitWidth(swigCPtr, columnIndex);
511             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
512             return ret;
513         }
514
515         /// <summary>
516         /// Sets a row to have fixed height.<br>
517         /// Setting a fixed height of 0 has no effect.<br>
518         /// </summary>
519         /// <param name="rowIndex">The rowIndex for row with fixed height</param>
520         /// <param name="height">The height in world coordinate units</param>
521         public void SetFixedHeight(uint rowIndex, float height)
522         {
523             NDalicPINVOKE.TableView_SetFixedHeight(swigCPtr, rowIndex, height);
524             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
525         }
526
527         /// <summary>
528         /// Gets a row's fixed height.
529         /// </summary>
530         /// <param name="rowIndex">The row index with fixed height</param>
531         /// <returns>height The height in world coordinate units</returns>
532         public float GetFixedHeight(uint rowIndex)
533         {
534             float ret = NDalicPINVOKE.TableView_GetFixedHeight(swigCPtr, rowIndex);
535             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
536             return ret;
537         }
538
539         /// <summary>
540         /// Sets a row to have relative height. Relative height means percentage of
541         /// the remainder of the table height after subtracting Padding and Fixed height rows.<br>
542         /// Setting a relative height of 0 has no effect.<br>
543         /// </summary>
544         /// <param name="rowIndex">The rowIndex for row with relative height</param>
545         /// <param name="heightPercentage">The height percentage between 0.0f and 1.0f</param>
546         public void SetRelativeHeight(uint rowIndex, float heightPercentage)
547         {
548             NDalicPINVOKE.TableView_SetRelativeHeight(swigCPtr, rowIndex, heightPercentage);
549             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
550         }
551
552         /// <summary>
553         /// Gets a row's relative height.
554         /// </summary>
555         /// <param name="rowIndex">The row index with relative height</param>
556         /// <returns>Height in percentage units, between 0.0f and 1.0f</returns>
557         public float GetRelativeHeight(uint rowIndex)
558         {
559             float ret = NDalicPINVOKE.TableView_GetRelativeHeight(swigCPtr, rowIndex);
560             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
561             return ret;
562         }
563
564         /// <summary>
565         /// Sets a column to have fixed width.<br>
566         /// Setting a fixed width of 0 has no effect.<br>
567         /// </summary>
568         /// <param name="columnIndex">The columnIndex for column with fixed width</param>
569         /// <param name="width">The width in world coordinate units</param>
570         public void SetFixedWidth(uint columnIndex, float width)
571         {
572             NDalicPINVOKE.TableView_SetFixedWidth(swigCPtr, columnIndex, width);
573             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
574         }
575
576         /// <summary>
577         /// Gets a column's fixed width.
578         /// </summary>
579         /// <param name="columnIndex">The column index with fixed width</param>
580         /// <returns>Width in world coordinate units</returns>
581         public float GetFixedWidth(uint columnIndex)
582         {
583             float ret = NDalicPINVOKE.TableView_GetFixedWidth(swigCPtr, columnIndex);
584             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
585             return ret;
586         }
587
588         /// <summary>
589         /// Sets a column to have relative width. Relative width means percentage of
590         /// the remainder of table width after subtracting Padding and Fixed width columns.<br>
591         /// Setting a relative width of 0 has no effect.<br>
592         /// </summary>
593         /// <param name="columnIndex">The columnIndex for column with fixed width</param>
594         /// <param name="widthPercentage">The widthPercentage between 0.0f and 1.0f</param>
595         public void SetRelativeWidth(uint columnIndex, float widthPercentage)
596         {
597             NDalicPINVOKE.TableView_SetRelativeWidth(swigCPtr, columnIndex, widthPercentage);
598             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
599         }
600
601         /// <summary>
602         /// Gets a column's relative width.
603         /// </summary>
604         /// <param name="columnIndex">The column index with relative width</param>
605         /// <returns>Width in percentage units, between 0.0f and 1.0f</returns>
606         public float GetRelativeWidth(uint columnIndex)
607         {
608             float ret = NDalicPINVOKE.TableView_GetRelativeWidth(swigCPtr, columnIndex);
609             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
610             return ret;
611         }
612
613         /// <summary>
614         /// Sets the alignment on a cell.<br>
615         /// Cells without calling this function have the default values of LEFT and TOP respectively.<br>
616         /// </summary>
617         /// <param name="position">The cell to set alignment on</param>
618         /// <param name="horizontal">The horizontal alignment</param>
619         /// <param name="vertical">The vertical alignment</param>
620         public void SetCellAlignment(TableView.CellPosition position, HorizontalAlignmentType horizontal, VerticalAlignmentType vertical)
621         {
622             NDalicPINVOKE.TableView_SetCellAlignment(swigCPtr, TableView.CellPosition.getCPtr(position), (int)horizontal, (int)vertical);
623             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
624         }
625
626         /// <summary>
627         /// Enumeration for describing how the size of a row / column has been set.
628         /// </summary>
629         public enum LayoutPolicy
630         {
631             Fixed,
632             Relative,
633             Fill,
634             Fit
635         }
636
637         /// <summary>
638         /// the amount of rows in the table.
639         /// </summary>
640         public int Rows
641         {
642             get
643             {
644                 int temp = 0;
645                 GetProperty(TableView.Property.ROWS).Get(out temp);
646                 return temp;
647             }
648             set
649             {
650                 SetProperty(TableView.Property.ROWS, new Tizen.NUI.PropertyValue(value));
651             }
652         }
653         /// <summary>
654         /// the amount of columns in the table.
655         /// </summary>
656         public int Columns
657         {
658             get
659             {
660                 int temp = 0;
661                 GetProperty(TableView.Property.COLUMNS).Get(out temp);
662                 return temp;
663             }
664             set
665             {
666                 SetProperty(TableView.Property.COLUMNS, new Tizen.NUI.PropertyValue(value));
667             }
668         }
669         /// <summary>
670         /// padding between cells.
671         /// </summary>
672         public Vector2 CellPadding
673         {
674             get
675             {
676                 Vector2 temp = new Vector2(0.0f, 0.0f);
677                 GetProperty(TableView.Property.CELL_PADDING).Get(temp);
678                 return temp;
679             }
680             set
681             {
682                 SetProperty(TableView.Property.CELL_PADDING, new Tizen.NUI.PropertyValue(value));
683             }
684         }
685
686         /// <summary>
687         /// The number of layout rows
688         /// </summary>
689         public PropertyMap LayoutRows
690         {
691             get
692             {
693                 PropertyMap temp = new PropertyMap();
694                 GetProperty(TableView.Property.LAYOUT_ROWS).Get(temp);
695                 return temp;
696             }
697             set
698             {
699                 SetProperty(TableView.Property.LAYOUT_ROWS, new Tizen.NUI.PropertyValue(value));
700             }
701         }
702
703         /// <summary>
704         /// The number of layout columns
705         /// </summary>
706         public PropertyMap LayoutColumns
707         {
708             get
709             {
710                 PropertyMap temp = new PropertyMap();
711                 GetProperty(TableView.Property.LAYOUT_COLUMNS).Get(temp);
712                 return temp;
713             }
714             set
715             {
716                 SetProperty(TableView.Property.LAYOUT_COLUMNS, new Tizen.NUI.PropertyValue(value));
717             }
718         }
719
720     }
721 }