\hypertarget{group__Evas__Object__Table__Group}{}\doxysection{Table Smart Object.}
\label{group__Evas__Object__Table__Group}\index{Table Smart Object.@{Table Smart Object.}}


Convenience smart object that packs children using a tabular layout using children size hints to define their size and alignment inside their cell space.  


\doxysubsection*{Enumerations}
\begin{DoxyCompactItemize}
\item 
enum \mbox{\hyperlink{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132b}{Evas\+\_\+\+Object\+\_\+\+Table\+\_\+\+Homogeneous\+\_\+\+Mode}} \{ \newline
\mbox{\hyperlink{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132ba0ac96c45579c6e26360b015c179c6ea3}{EVAS\+\_\+\+OBJECT\+\_\+\+TABLE\+\_\+\+HOMOGENEOUS\+\_\+\+NONE}} = 0
, \newline
\mbox{\hyperlink{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132ba950cae2944e39bbcdf6c42b23276dd46}{EVAS\+\_\+\+OBJECT\+\_\+\+TABLE\+\_\+\+HOMOGENEOUS\+\_\+\+TABLE}} = 1
, \newline
\mbox{\hyperlink{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132bab43a89db07286f713e3fef764146dc21}{EVAS\+\_\+\+OBJECT\+\_\+\+TABLE\+\_\+\+HOMOGENEOUS\+\_\+\+ITEM}} = 2
, \newline
\mbox{\hyperlink{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132ba0ac96c45579c6e26360b015c179c6ea3}{EVAS\+\_\+\+OBJECT\+\_\+\+TABLE\+\_\+\+HOMOGENEOUS\+\_\+\+NONE}} = 0
, \newline
\mbox{\hyperlink{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132ba950cae2944e39bbcdf6c42b23276dd46}{EVAS\+\_\+\+OBJECT\+\_\+\+TABLE\+\_\+\+HOMOGENEOUS\+\_\+\+TABLE}} = 1
, \newline
\mbox{\hyperlink{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132bab43a89db07286f713e3fef764146dc21}{EVAS\+\_\+\+OBJECT\+\_\+\+TABLE\+\_\+\+HOMOGENEOUS\+\_\+\+ITEM}} = 2
 \}
\begin{DoxyCompactList}\small\item\em How to pack items into cells in a table. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
EVAS\+\_\+\+API void \mbox{\hyperlink{group__Evas__Object__Table__Group_ga2953f96774c5d23b2f633a125e862923}{evas\+\_\+object\+\_\+table\+\_\+homogeneous\+\_\+set}} (Evas\+\_\+\+Table $\ast$obj, \mbox{\hyperlink{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132b}{Evas\+\_\+\+Object\+\_\+\+Table\+\_\+\+Homogeneous\+\_\+\+Mode}} homogeneous)
\begin{DoxyCompactList}\small\item\em Set how this table should layout children. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API \mbox{\hyperlink{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132b}{Evas\+\_\+\+Object\+\_\+\+Table\+\_\+\+Homogeneous\+\_\+\+Mode}} \mbox{\hyperlink{group__Evas__Object__Table__Group_gaa87143c709fe321a1f358adef87e8678}{evas\+\_\+object\+\_\+table\+\_\+homogeneous\+\_\+get}} (const Evas\+\_\+\+Table $\ast$obj)
\begin{DoxyCompactList}\small\item\em Set how this table should layout children. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API void \mbox{\hyperlink{group__Evas__Object__Table__Group_ga5303dbbcfaa208d8ac344bfd37912b23}{evas\+\_\+object\+\_\+table\+\_\+align\+\_\+set}} (Evas\+\_\+\+Table $\ast$obj, double horizontal, double vertical)
\begin{DoxyCompactList}\small\item\em Control the alignment of the whole bounding box of contents. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API void \mbox{\hyperlink{group__Evas__Object__Table__Group_ga5c8eaef20039baa925aefac152155fe4}{evas\+\_\+object\+\_\+table\+\_\+align\+\_\+get}} (const Evas\+\_\+\+Table $\ast$obj, double $\ast$horizontal, double $\ast$vertical)
\begin{DoxyCompactList}\small\item\em Control the alignment of the whole bounding box of contents. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API void \mbox{\hyperlink{group__Evas__Object__Table__Group_gab2356f99a4c3806c590de4ba612ece98}{evas\+\_\+object\+\_\+table\+\_\+padding\+\_\+set}} (Evas\+\_\+\+Table $\ast$obj, int horizontal, int vertical)
\begin{DoxyCompactList}\small\item\em Control the padding between cells. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API void \mbox{\hyperlink{group__Evas__Object__Table__Group_ga0935e206417760ef16448c26b3616606}{evas\+\_\+object\+\_\+table\+\_\+padding\+\_\+get}} (const Evas\+\_\+\+Table $\ast$obj, int $\ast$horizontal, int $\ast$vertical)
\begin{DoxyCompactList}\small\item\em Control the padding between cells. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API void \mbox{\hyperlink{group__Evas__Object__Table__Group_ga4a01aea05f5d481f2f9f1442a1a3d98f}{evas\+\_\+object\+\_\+table\+\_\+col\+\_\+row\+\_\+size\+\_\+get}} (const Evas\+\_\+\+Table $\ast$obj, int $\ast$cols, int $\ast$rows)
\begin{DoxyCompactList}\small\item\em Get the number of columns and rows this table takes. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API \mbox{\hyperlink{group__Eina__List__Group_ga3295e1210efea1fb0fd6acbf3cbc1f29}{Eina\+\_\+\+List}} $\ast$ \mbox{\hyperlink{group__Evas__Object__Table__Group_ga1ccfe0d344d24dcbccc447840cf6be23}{evas\+\_\+object\+\_\+table\+\_\+children\+\_\+get}} (const Evas\+\_\+\+Table $\ast$obj)
\begin{DoxyCompactList}\small\item\em Get the list of children for the table. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API \mbox{\hyperlink{group__Evas__Object__Group_gaa5c3ea447e776040a102c696cd715574}{Efl\+\_\+\+Canvas\+\_\+\+Object}} $\ast$ \mbox{\hyperlink{group__Evas__Object__Table__Group_ga4246db822ad401f18f98790cad5790a2}{evas\+\_\+object\+\_\+table\+\_\+child\+\_\+get}} (const Evas\+\_\+\+Table $\ast$obj, unsigned short col, unsigned short row)
\begin{DoxyCompactList}\small\item\em Get the child of the table at the given coordinates. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API void \mbox{\hyperlink{group__Evas__Object__Table__Group_ga0eaeb76b0f07daf673f8596e677522c8}{evas\+\_\+object\+\_\+table\+\_\+clear}} (Evas\+\_\+\+Table $\ast$obj, \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} clear)
\begin{DoxyCompactList}\small\item\em Faster way to remove all child objects from a table object. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API \mbox{\hyperlink{group__Eina__Accessor__Group_ga65199ea5201a1867471028477dc26744}{Eina\+\_\+\+Accessor}} $\ast$ \mbox{\hyperlink{group__Evas__Object__Table__Group_ga2af65fd99478de14d115bd039ffc28bc}{evas\+\_\+object\+\_\+table\+\_\+accessor\+\_\+new}} (const Evas\+\_\+\+Table $\ast$obj)
\begin{DoxyCompactList}\small\item\em Get an accessor to get random access to the list of children for the table. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API \mbox{\hyperlink{group__Eina__Iterator__Group_ga15b975bb881d955249ce13d4ebc96948}{Eina\+\_\+\+Iterator}} $\ast$ \mbox{\hyperlink{group__Evas__Object__Table__Group_ga966ad4aae06dad9bc8d79adbea11258c}{evas\+\_\+object\+\_\+table\+\_\+iterator\+\_\+new}} (const Evas\+\_\+\+Table $\ast$obj)
\begin{DoxyCompactList}\small\item\em Get an iterator to walk the list of children for the table. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API \mbox{\hyperlink{group__Evas__Object__Group_gaa5c3ea447e776040a102c696cd715574}{Efl\+\_\+\+Canvas\+\_\+\+Object}} $\ast$ \mbox{\hyperlink{group__Evas__Object__Table__Group_ga2d71adf18ce9aface700fcc236e7546a}{evas\+\_\+object\+\_\+table\+\_\+add\+\_\+to}} (Evas\+\_\+\+Table $\ast$obj)
\begin{DoxyCompactList}\small\item\em Create a table that is child of a given element {\ttfamily parent}. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Evas__Object__Table__Group_ga9156675469d2ea53ab52ce8808bc0e96}{evas\+\_\+object\+\_\+table\+\_\+pack\+\_\+get}} (const Evas\+\_\+\+Table $\ast$obj, \mbox{\hyperlink{group__Evas__Object__Group_gaa5c3ea447e776040a102c696cd715574}{Efl\+\_\+\+Canvas\+\_\+\+Object}} $\ast$child, unsigned short $\ast$col, unsigned short $\ast$row, unsigned short $\ast$colspan, unsigned short $\ast$rowspan)
\begin{DoxyCompactList}\small\item\em Get packing location of a child of table. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Evas__Object__Table__Group_ga089d80b518787cde7d2956c756bd6d1f}{evas\+\_\+object\+\_\+table\+\_\+pack}} (Evas\+\_\+\+Table $\ast$obj, \mbox{\hyperlink{group__Evas__Object__Group_gaa5c3ea447e776040a102c696cd715574}{Efl\+\_\+\+Canvas\+\_\+\+Object}} $\ast$child, unsigned short col, unsigned short row, unsigned short colspan, unsigned short rowspan)
\begin{DoxyCompactList}\small\item\em Add a new child to a table object or set its current packing. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Evas__Object__Table__Group_ga9a35d76ea65b7ea2dc69db2d01f55a9b}{evas\+\_\+object\+\_\+table\+\_\+unpack}} (Evas\+\_\+\+Table $\ast$obj, \mbox{\hyperlink{group__Evas__Object__Group_gaa5c3ea447e776040a102c696cd715574}{Efl\+\_\+\+Canvas\+\_\+\+Object}} $\ast$child)
\begin{DoxyCompactList}\small\item\em Remove child from table. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$ \mbox{\hyperlink{group__Evas__Object__Table__Group_ga194b746496203728678ff3bb4ca7455f}{evas\+\_\+object\+\_\+table\+\_\+add}} (\mbox{\hyperlink{group__Evas__Canvas_ga5ff87cc4ce6bc43e3b640a6d37f73043}{Evas}} $\ast$evas)
\begin{DoxyCompactList}\small\item\em Create a new table. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API void \mbox{\hyperlink{group__Evas__Object__Table__Group_ga3d56f9764362ed5266cf46a386c459ea}{evas\+\_\+object\+\_\+table\+\_\+mirrored\+\_\+set}} (Eo $\ast$obj, \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} mirrored)
\begin{DoxyCompactList}\small\item\em Control the mirrored mode of the table. \end{DoxyCompactList}\item 
EVAS\+\_\+\+API \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Evas__Object__Table__Group_ga14e9afead15401321405c54db718f0c3}{evas\+\_\+object\+\_\+table\+\_\+mirrored\+\_\+get}} (const Eo $\ast$obj)
\begin{DoxyCompactList}\small\item\em Control the mirrored mode of the table. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Convenience smart object that packs children using a tabular layout using children size hints to define their size and alignment inside their cell space. 

\mbox{\hyperlink{tutorial_table}{Table Smart Object example}} shows how to use this Evas\+\_\+\+Object.

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Evas__Object__Group__Size__Hints}{Size Hints}} 
\end{DoxySeeAlso}


\doxysubsection{Enumeration Type Documentation}
\mbox{\Hypertarget{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132b}\label{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132b}} 
\index{Table Smart Object.@{Table Smart Object.}!Evas\_Object\_Table\_Homogeneous\_Mode@{Evas\_Object\_Table\_Homogeneous\_Mode}}
\index{Evas\_Object\_Table\_Homogeneous\_Mode@{Evas\_Object\_Table\_Homogeneous\_Mode}!Table Smart Object.@{Table Smart Object.}}
\doxysubsubsection{\texorpdfstring{Evas\_Object\_Table\_Homogeneous\_Mode}{Evas\_Object\_Table\_Homogeneous\_Mode}}
{\footnotesize\ttfamily enum \mbox{\hyperlink{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132b}{Evas\+\_\+\+Object\+\_\+\+Table\+\_\+\+Homogeneous\+\_\+\+Mode}}}



How to pack items into cells in a table. 

See evas\+\_\+obj\+\_\+table\+\_\+homogeneous\+\_\+get for an explanation of the function of each one. \begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_NONE@{EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_NONE}!Table Smart Object.@{Table Smart Object.}}\index{Table Smart Object.@{Table Smart Object.}!EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_NONE@{EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_NONE}}}\mbox{\Hypertarget{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132ba0ac96c45579c6e26360b015c179c6ea3}\label{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132ba0ac96c45579c6e26360b015c179c6ea3}} 
EVAS\+\_\+\+OBJECT\+\_\+\+TABLE\+\_\+\+HOMOGENEOUS\+\_\+\+NONE&No mode specified. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_TABLE@{EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_TABLE}!Table Smart Object.@{Table Smart Object.}}\index{Table Smart Object.@{Table Smart Object.}!EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_TABLE@{EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_TABLE}}}\mbox{\Hypertarget{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132ba950cae2944e39bbcdf6c42b23276dd46}\label{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132ba950cae2944e39bbcdf6c42b23276dd46}} 
EVAS\+\_\+\+OBJECT\+\_\+\+TABLE\+\_\+\+HOMOGENEOUS\+\_\+\+TABLE&Table mode. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_ITEM@{EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_ITEM}!Table Smart Object.@{Table Smart Object.}}\index{Table Smart Object.@{Table Smart Object.}!EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_ITEM@{EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_ITEM}}}\mbox{\Hypertarget{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132bab43a89db07286f713e3fef764146dc21}\label{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132bab43a89db07286f713e3fef764146dc21}} 
EVAS\+\_\+\+OBJECT\+\_\+\+TABLE\+\_\+\+HOMOGENEOUS\+\_\+\+ITEM&Item mode. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_NONE@{EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_NONE}!Table Smart Object.@{Table Smart Object.}}\index{Table Smart Object.@{Table Smart Object.}!EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_NONE@{EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_NONE}}}\mbox{\Hypertarget{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132ba0ac96c45579c6e26360b015c179c6ea3}\label{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132ba0ac96c45579c6e26360b015c179c6ea3}} 
EVAS\+\_\+\+OBJECT\+\_\+\+TABLE\+\_\+\+HOMOGENEOUS\+\_\+\+NONE&No mode specified. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_TABLE@{EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_TABLE}!Table Smart Object.@{Table Smart Object.}}\index{Table Smart Object.@{Table Smart Object.}!EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_TABLE@{EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_TABLE}}}\mbox{\Hypertarget{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132ba950cae2944e39bbcdf6c42b23276dd46}\label{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132ba950cae2944e39bbcdf6c42b23276dd46}} 
EVAS\+\_\+\+OBJECT\+\_\+\+TABLE\+\_\+\+HOMOGENEOUS\+\_\+\+TABLE&Table mode. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_ITEM@{EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_ITEM}!Table Smart Object.@{Table Smart Object.}}\index{Table Smart Object.@{Table Smart Object.}!EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_ITEM@{EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_ITEM}}}\mbox{\Hypertarget{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132bab43a89db07286f713e3fef764146dc21}\label{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132bab43a89db07286f713e3fef764146dc21}} 
EVAS\+\_\+\+OBJECT\+\_\+\+TABLE\+\_\+\+HOMOGENEOUS\+\_\+\+ITEM&Item mode. \\
\hline

\end{DoxyEnumFields}


\doxysubsection{Function Documentation}
\mbox{\Hypertarget{group__Evas__Object__Table__Group_ga2953f96774c5d23b2f633a125e862923}\label{group__Evas__Object__Table__Group_ga2953f96774c5d23b2f633a125e862923}} 
\index{Table Smart Object.@{Table Smart Object.}!evas\_object\_table\_homogeneous\_set@{evas\_object\_table\_homogeneous\_set}}
\index{evas\_object\_table\_homogeneous\_set@{evas\_object\_table\_homogeneous\_set}!Table Smart Object.@{Table Smart Object.}}
\doxysubsubsection{\texorpdfstring{evas\_object\_table\_homogeneous\_set()}{evas\_object\_table\_homogeneous\_set()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API void evas\+\_\+object\+\_\+table\+\_\+homogeneous\+\_\+set (\begin{DoxyParamCaption}\item[{Evas\+\_\+\+Table $\ast$}]{obj,  }\item[{\mbox{\hyperlink{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132b}{Evas\+\_\+\+Object\+\_\+\+Table\+\_\+\+Homogeneous\+\_\+\+Mode}}}]{homogeneous }\end{DoxyParamCaption})}



Set how this table should layout children. 

Todo\+: consider aspect hint and respect it.

\mbox{\hyperlink{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132ba0ac96c45579c6e26360b015c179c6ea3}{EVAS\+\_\+\+OBJECT\+\_\+\+TABLE\+\_\+\+HOMOGENEOUS\+\_\+\+NONE}} If table does not use homogeneous mode then columns and rows will be calculated based on hints of individual cells. This operation mode is more flexible, but more complex and heavy to calculate as well. Weight properties are handled as a boolean expand. Negative alignment will be considered as 0.\+5. This is the default.

Todo\+: \mbox{\hyperlink{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132ba0ac96c45579c6e26360b015c179c6ea3}{EVAS\+\_\+\+OBJECT\+\_\+\+TABLE\+\_\+\+HOMOGENEOUS\+\_\+\+NONE}} should balance weight.

\mbox{\hyperlink{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132ba950cae2944e39bbcdf6c42b23276dd46}{EVAS\+\_\+\+OBJECT\+\_\+\+TABLE\+\_\+\+HOMOGENEOUS\+\_\+\+TABLE}} When homogeneous is relative to table the own table size is divided equally among children, filling the whole table area. That is, if table has {\ttfamily WIDTH} and {\ttfamily COLUMNS}, each cell will get {\itshape WIDTH / COLUMNS} pixels. If children have minimum size that is larger than this amount (including padding), then it will overflow and be aligned respecting the alignment hint, possible overlapping sibling cells. Weight hint is used as a boolean, if greater than zero it will make the child expand in that axis, taking as much space as possible (bounded to maximum size hint). Negative alignment will be considered as 0.\+5.

\mbox{\hyperlink{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132bab43a89db07286f713e3fef764146dc21}{EVAS\+\_\+\+OBJECT\+\_\+\+TABLE\+\_\+\+HOMOGENEOUS\+\_\+\+ITEM}} When homogeneous is relative to item it means the greatest minimum cell size will be used. That is, if no element is set to expand, the table will have its contents to a minimum size, the bounding box of all these children will be aligned relatively to the table object using \mbox{\hyperlink{group__Evas__Object__Table__Group_ga5c8eaef20039baa925aefac152155fe4}{evas\+\_\+object\+\_\+table\+\_\+align\+\_\+get()}}. If the table area is too small to hold this minimum bounding box, then the objects will keep their size and the bounding box will overflow the box area, still respecting the alignment. Weight hint is used as a boolean, if greater than zero it will make that cell expand in that axis, toggling the {\itshape expand mode}, which makes the table behave much like \mbox{\hyperlink{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132ba950cae2944e39bbcdf6c42b23276dd46}{EVAS\+\_\+\+OBJECT\+\_\+\+TABLE\+\_\+\+HOMOGENEOUS\+\_\+\+TABLE}}, except that the bounding box will overflow and items will not overlap siblings. If no minimum size is provided at all then the table will fallback to expand mode as well.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em homogeneous} & Table homogeneous mode \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{group__Evas__Object__Table__Group_gaa87143c709fe321a1f358adef87e8678}\label{group__Evas__Object__Table__Group_gaa87143c709fe321a1f358adef87e8678}} 
\index{Table Smart Object.@{Table Smart Object.}!evas\_object\_table\_homogeneous\_get@{evas\_object\_table\_homogeneous\_get}}
\index{evas\_object\_table\_homogeneous\_get@{evas\_object\_table\_homogeneous\_get}!Table Smart Object.@{Table Smart Object.}}
\doxysubsubsection{\texorpdfstring{evas\_object\_table\_homogeneous\_get()}{evas\_object\_table\_homogeneous\_get()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API \mbox{\hyperlink{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132b}{Evas\+\_\+\+Object\+\_\+\+Table\+\_\+\+Homogeneous\+\_\+\+Mode}} evas\+\_\+object\+\_\+table\+\_\+homogeneous\+\_\+get (\begin{DoxyParamCaption}\item[{const Evas\+\_\+\+Table $\ast$}]{obj }\end{DoxyParamCaption})}



Set how this table should layout children. 

Todo\+: consider aspect hint and respect it.

\mbox{\hyperlink{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132ba0ac96c45579c6e26360b015c179c6ea3}{EVAS\+\_\+\+OBJECT\+\_\+\+TABLE\+\_\+\+HOMOGENEOUS\+\_\+\+NONE}} If table does not use homogeneous mode then columns and rows will be calculated based on hints of individual cells. This operation mode is more flexible, but more complex and heavy to calculate as well. Weight properties are handled as a boolean expand. Negative alignment will be considered as 0.\+5. This is the default.

Todo\+: \mbox{\hyperlink{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132ba0ac96c45579c6e26360b015c179c6ea3}{EVAS\+\_\+\+OBJECT\+\_\+\+TABLE\+\_\+\+HOMOGENEOUS\+\_\+\+NONE}} should balance weight.

\mbox{\hyperlink{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132ba950cae2944e39bbcdf6c42b23276dd46}{EVAS\+\_\+\+OBJECT\+\_\+\+TABLE\+\_\+\+HOMOGENEOUS\+\_\+\+TABLE}} When homogeneous is relative to table the own table size is divided equally among children, filling the whole table area. That is, if table has {\ttfamily WIDTH} and {\ttfamily COLUMNS}, each cell will get {\itshape WIDTH / COLUMNS} pixels. If children have minimum size that is larger than this amount (including padding), then it will overflow and be aligned respecting the alignment hint, possible overlapping sibling cells. Weight hint is used as a boolean, if greater than zero it will make the child expand in that axis, taking as much space as possible (bounded to maximum size hint). Negative alignment will be considered as 0.\+5.

\mbox{\hyperlink{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132bab43a89db07286f713e3fef764146dc21}{EVAS\+\_\+\+OBJECT\+\_\+\+TABLE\+\_\+\+HOMOGENEOUS\+\_\+\+ITEM}} When homogeneous is relative to item it means the greatest minimum cell size will be used. That is, if no element is set to expand, the table will have its contents to a minimum size, the bounding box of all these children will be aligned relatively to the table object using \mbox{\hyperlink{group__Evas__Object__Table__Group_ga5c8eaef20039baa925aefac152155fe4}{evas\+\_\+object\+\_\+table\+\_\+align\+\_\+get()}}. If the table area is too small to hold this minimum bounding box, then the objects will keep their size and the bounding box will overflow the box area, still respecting the alignment. Weight hint is used as a boolean, if greater than zero it will make that cell expand in that axis, toggling the {\itshape expand mode}, which makes the table behave much like \mbox{\hyperlink{group__Evas__Object__Table__Group_gae2a3aabdd694d590b2fcd2c05ba3132ba950cae2944e39bbcdf6c42b23276dd46}{EVAS\+\_\+\+OBJECT\+\_\+\+TABLE\+\_\+\+HOMOGENEOUS\+\_\+\+TABLE}}, except that the bounding box will overflow and items will not overlap siblings. If no minimum size is provided at all then the table will fallback to expand mode as well.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Table homogeneous mode 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Evas__Object__Table__Group_ga5303dbbcfaa208d8ac344bfd37912b23}\label{group__Evas__Object__Table__Group_ga5303dbbcfaa208d8ac344bfd37912b23}} 
\index{Table Smart Object.@{Table Smart Object.}!evas\_object\_table\_align\_set@{evas\_object\_table\_align\_set}}
\index{evas\_object\_table\_align\_set@{evas\_object\_table\_align\_set}!Table Smart Object.@{Table Smart Object.}}
\doxysubsubsection{\texorpdfstring{evas\_object\_table\_align\_set()}{evas\_object\_table\_align\_set()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API void evas\+\_\+object\+\_\+table\+\_\+align\+\_\+set (\begin{DoxyParamCaption}\item[{Evas\+\_\+\+Table $\ast$}]{obj,  }\item[{double}]{horizontal,  }\item[{double}]{vertical }\end{DoxyParamCaption})}



Control the alignment of the whole bounding box of contents. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em horizontal} & Horizontal alignment \\
\hline
\mbox{\texttt{ in}}  & {\em vertical} & Vertical alignment \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{group__Evas__Object__Table__Group_ga5c8eaef20039baa925aefac152155fe4}\label{group__Evas__Object__Table__Group_ga5c8eaef20039baa925aefac152155fe4}} 
\index{Table Smart Object.@{Table Smart Object.}!evas\_object\_table\_align\_get@{evas\_object\_table\_align\_get}}
\index{evas\_object\_table\_align\_get@{evas\_object\_table\_align\_get}!Table Smart Object.@{Table Smart Object.}}
\doxysubsubsection{\texorpdfstring{evas\_object\_table\_align\_get()}{evas\_object\_table\_align\_get()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API void evas\+\_\+object\+\_\+table\+\_\+align\+\_\+get (\begin{DoxyParamCaption}\item[{const Evas\+\_\+\+Table $\ast$}]{obj,  }\item[{double $\ast$}]{horizontal,  }\item[{double $\ast$}]{vertical }\end{DoxyParamCaption})}



Control the alignment of the whole bounding box of contents. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ out}}  & {\em horizontal} & Horizontal alignment \\
\hline
\mbox{\texttt{ out}}  & {\em vertical} & Vertical alignment \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{group__Evas__Object__Table__Group_gab2356f99a4c3806c590de4ba612ece98}\label{group__Evas__Object__Table__Group_gab2356f99a4c3806c590de4ba612ece98}} 
\index{Table Smart Object.@{Table Smart Object.}!evas\_object\_table\_padding\_set@{evas\_object\_table\_padding\_set}}
\index{evas\_object\_table\_padding\_set@{evas\_object\_table\_padding\_set}!Table Smart Object.@{Table Smart Object.}}
\doxysubsubsection{\texorpdfstring{evas\_object\_table\_padding\_set()}{evas\_object\_table\_padding\_set()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API void evas\+\_\+object\+\_\+table\+\_\+padding\+\_\+set (\begin{DoxyParamCaption}\item[{Evas\+\_\+\+Table $\ast$}]{obj,  }\item[{int}]{horizontal,  }\item[{int}]{vertical }\end{DoxyParamCaption})}



Control the padding between cells. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em horizontal} & Horizontal padding \\
\hline
\mbox{\texttt{ in}}  & {\em vertical} & Vertical padding \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{group__Evas__Object__Table__Group_ga0935e206417760ef16448c26b3616606}\label{group__Evas__Object__Table__Group_ga0935e206417760ef16448c26b3616606}} 
\index{Table Smart Object.@{Table Smart Object.}!evas\_object\_table\_padding\_get@{evas\_object\_table\_padding\_get}}
\index{evas\_object\_table\_padding\_get@{evas\_object\_table\_padding\_get}!Table Smart Object.@{Table Smart Object.}}
\doxysubsubsection{\texorpdfstring{evas\_object\_table\_padding\_get()}{evas\_object\_table\_padding\_get()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API void evas\+\_\+object\+\_\+table\+\_\+padding\+\_\+get (\begin{DoxyParamCaption}\item[{const Evas\+\_\+\+Table $\ast$}]{obj,  }\item[{int $\ast$}]{horizontal,  }\item[{int $\ast$}]{vertical }\end{DoxyParamCaption})}



Control the padding between cells. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ out}}  & {\em horizontal} & Horizontal padding \\
\hline
\mbox{\texttt{ out}}  & {\em vertical} & Vertical padding \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{group__Evas__Object__Table__Group_ga4a01aea05f5d481f2f9f1442a1a3d98f}\label{group__Evas__Object__Table__Group_ga4a01aea05f5d481f2f9f1442a1a3d98f}} 
\index{Table Smart Object.@{Table Smart Object.}!evas\_object\_table\_col\_row\_size\_get@{evas\_object\_table\_col\_row\_size\_get}}
\index{evas\_object\_table\_col\_row\_size\_get@{evas\_object\_table\_col\_row\_size\_get}!Table Smart Object.@{Table Smart Object.}}
\doxysubsubsection{\texorpdfstring{evas\_object\_table\_col\_row\_size\_get()}{evas\_object\_table\_col\_row\_size\_get()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API void evas\+\_\+object\+\_\+table\+\_\+col\+\_\+row\+\_\+size\+\_\+get (\begin{DoxyParamCaption}\item[{const Evas\+\_\+\+Table $\ast$}]{obj,  }\item[{int $\ast$}]{cols,  }\item[{int $\ast$}]{rows }\end{DoxyParamCaption})}



Get the number of columns and rows this table takes. 

\begin{DoxyNote}{Note}
columns and rows are virtual entities, one can specify a table with a single object that takes 4 columns and 5 rows. The only difference for a single cell table is that paddings will be accounted proportionally.
\end{DoxyNote}

\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ out}}  & {\em cols} & Columns in table \\
\hline
\mbox{\texttt{ out}}  & {\em rows} & Rows in table \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{group__Evas__Object__Table__Group_ga1ccfe0d344d24dcbccc447840cf6be23}\label{group__Evas__Object__Table__Group_ga1ccfe0d344d24dcbccc447840cf6be23}} 
\index{Table Smart Object.@{Table Smart Object.}!evas\_object\_table\_children\_get@{evas\_object\_table\_children\_get}}
\index{evas\_object\_table\_children\_get@{evas\_object\_table\_children\_get}!Table Smart Object.@{Table Smart Object.}}
\doxysubsubsection{\texorpdfstring{evas\_object\_table\_children\_get()}{evas\_object\_table\_children\_get()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API \mbox{\hyperlink{group__Eina__List__Group_ga3295e1210efea1fb0fd6acbf3cbc1f29}{Eina\+\_\+\+List}} $\ast$ evas\+\_\+object\+\_\+table\+\_\+children\+\_\+get (\begin{DoxyParamCaption}\item[{const Evas\+\_\+\+Table $\ast$}]{obj }\end{DoxyParamCaption})}



Get the list of children for the table. 

\begin{DoxyNote}{Note}
This is a duplicate of the list kept by the table internally. It\textquotesingle{}s up to the user to destroy it when it no longer needs it. It\textquotesingle{}s possible to remove objects from the table when walking this list, but these removals won\textquotesingle{}t be reflected on it.
\end{DoxyNote}

\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Children list 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Evas__Object__Table__Group_ga4246db822ad401f18f98790cad5790a2}\label{group__Evas__Object__Table__Group_ga4246db822ad401f18f98790cad5790a2}} 
\index{Table Smart Object.@{Table Smart Object.}!evas\_object\_table\_child\_get@{evas\_object\_table\_child\_get}}
\index{evas\_object\_table\_child\_get@{evas\_object\_table\_child\_get}!Table Smart Object.@{Table Smart Object.}}
\doxysubsubsection{\texorpdfstring{evas\_object\_table\_child\_get()}{evas\_object\_table\_child\_get()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API \mbox{\hyperlink{group__Evas__Object__Group_gaa5c3ea447e776040a102c696cd715574}{Efl\+\_\+\+Canvas\+\_\+\+Object}} $\ast$ evas\+\_\+object\+\_\+table\+\_\+child\+\_\+get (\begin{DoxyParamCaption}\item[{const Evas\+\_\+\+Table $\ast$}]{obj,  }\item[{unsigned short}]{col,  }\item[{unsigned short}]{row }\end{DoxyParamCaption})}



Get the child of the table at the given coordinates. 

\begin{DoxyNote}{Note}
This does not take into account col/row spanning
\end{DoxyNote}

\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em col} & Child column \\
\hline
\mbox{\texttt{ in}}  & {\em row} & Child row\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Child object 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Evas__Object__Table__Group_ga0eaeb76b0f07daf673f8596e677522c8}\label{group__Evas__Object__Table__Group_ga0eaeb76b0f07daf673f8596e677522c8}} 
\index{Table Smart Object.@{Table Smart Object.}!evas\_object\_table\_clear@{evas\_object\_table\_clear}}
\index{evas\_object\_table\_clear@{evas\_object\_table\_clear}!Table Smart Object.@{Table Smart Object.}}
\doxysubsubsection{\texorpdfstring{evas\_object\_table\_clear()}{evas\_object\_table\_clear()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API void evas\+\_\+object\+\_\+table\+\_\+clear (\begin{DoxyParamCaption}\item[{Evas\+\_\+\+Table $\ast$}]{obj,  }\item[{\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}}}]{clear }\end{DoxyParamCaption})}



Faster way to remove all child objects from a table object. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em clear} & If {\ttfamily true}, it will delete just removed children. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{group__Evas__Object__Table__Group_ga2af65fd99478de14d115bd039ffc28bc}\label{group__Evas__Object__Table__Group_ga2af65fd99478de14d115bd039ffc28bc}} 
\index{Table Smart Object.@{Table Smart Object.}!evas\_object\_table\_accessor\_new@{evas\_object\_table\_accessor\_new}}
\index{evas\_object\_table\_accessor\_new@{evas\_object\_table\_accessor\_new}!Table Smart Object.@{Table Smart Object.}}
\doxysubsubsection{\texorpdfstring{evas\_object\_table\_accessor\_new()}{evas\_object\_table\_accessor\_new()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API \mbox{\hyperlink{group__Eina__Accessor__Group_ga65199ea5201a1867471028477dc26744}{Eina\+\_\+\+Accessor}} $\ast$ evas\+\_\+object\+\_\+table\+\_\+accessor\+\_\+new (\begin{DoxyParamCaption}\item[{const Evas\+\_\+\+Table $\ast$}]{obj }\end{DoxyParamCaption})}



Get an accessor to get random access to the list of children for the table. 

\begin{DoxyNote}{Note}
Do not remove or delete objects while walking the list.
\end{DoxyNote}

\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Accessor to children list 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Evas__Object__Table__Group_ga966ad4aae06dad9bc8d79adbea11258c}\label{group__Evas__Object__Table__Group_ga966ad4aae06dad9bc8d79adbea11258c}} 
\index{Table Smart Object.@{Table Smart Object.}!evas\_object\_table\_iterator\_new@{evas\_object\_table\_iterator\_new}}
\index{evas\_object\_table\_iterator\_new@{evas\_object\_table\_iterator\_new}!Table Smart Object.@{Table Smart Object.}}
\doxysubsubsection{\texorpdfstring{evas\_object\_table\_iterator\_new()}{evas\_object\_table\_iterator\_new()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API \mbox{\hyperlink{group__Eina__Iterator__Group_ga15b975bb881d955249ce13d4ebc96948}{Eina\+\_\+\+Iterator}} $\ast$ evas\+\_\+object\+\_\+table\+\_\+iterator\+\_\+new (\begin{DoxyParamCaption}\item[{const Evas\+\_\+\+Table $\ast$}]{obj }\end{DoxyParamCaption})}



Get an iterator to walk the list of children for the table. 

\begin{DoxyNote}{Note}
Do not remove or delete objects while walking the list.
\end{DoxyNote}

\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Iterator to children 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Evas__Object__Table__Group_ga2d71adf18ce9aface700fcc236e7546a}\label{group__Evas__Object__Table__Group_ga2d71adf18ce9aface700fcc236e7546a}} 
\index{Table Smart Object.@{Table Smart Object.}!evas\_object\_table\_add\_to@{evas\_object\_table\_add\_to}}
\index{evas\_object\_table\_add\_to@{evas\_object\_table\_add\_to}!Table Smart Object.@{Table Smart Object.}}
\doxysubsubsection{\texorpdfstring{evas\_object\_table\_add\_to()}{evas\_object\_table\_add\_to()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API \mbox{\hyperlink{group__Evas__Object__Group_gaa5c3ea447e776040a102c696cd715574}{Efl\+\_\+\+Canvas\+\_\+\+Object}} $\ast$ evas\+\_\+object\+\_\+table\+\_\+add\+\_\+to (\begin{DoxyParamCaption}\item[{Evas\+\_\+\+Table $\ast$}]{obj }\end{DoxyParamCaption})}



Create a table that is child of a given element {\ttfamily parent}. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Children table 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Evas__Object__Table__Group_ga9156675469d2ea53ab52ce8808bc0e96}\label{group__Evas__Object__Table__Group_ga9156675469d2ea53ab52ce8808bc0e96}} 
\index{Table Smart Object.@{Table Smart Object.}!evas\_object\_table\_pack\_get@{evas\_object\_table\_pack\_get}}
\index{evas\_object\_table\_pack\_get@{evas\_object\_table\_pack\_get}!Table Smart Object.@{Table Smart Object.}}
\doxysubsubsection{\texorpdfstring{evas\_object\_table\_pack\_get()}{evas\_object\_table\_pack\_get()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} evas\+\_\+object\+\_\+table\+\_\+pack\+\_\+get (\begin{DoxyParamCaption}\item[{const Evas\+\_\+\+Table $\ast$}]{obj,  }\item[{\mbox{\hyperlink{group__Evas__Object__Group_gaa5c3ea447e776040a102c696cd715574}{Efl\+\_\+\+Canvas\+\_\+\+Object}} $\ast$}]{child,  }\item[{unsigned short $\ast$}]{col,  }\item[{unsigned short $\ast$}]{row,  }\item[{unsigned short $\ast$}]{colspan,  }\item[{unsigned short $\ast$}]{rowspan }\end{DoxyParamCaption})}



Get packing location of a child of table. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em child} & The child object to add. \\
\hline
\mbox{\texttt{ out}}  & {\em col} & Pointer to store relative-\/horizontal position to place child. \\
\hline
\mbox{\texttt{ out}}  & {\em row} & Pointer to store relative-\/vertical position to place child. \\
\hline
\mbox{\texttt{ out}}  & {\em colspan} & Pointer to store how many relative-\/horizontal positions to use for this child. \\
\hline
\mbox{\texttt{ out}}  & {\em rowspan} & Pointer to store how many relative-\/vertical positions to use for this child.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily true} on success, {\ttfamily false} on failure.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+1 
\end{DoxySince}
\mbox{\Hypertarget{group__Evas__Object__Table__Group_ga089d80b518787cde7d2956c756bd6d1f}\label{group__Evas__Object__Table__Group_ga089d80b518787cde7d2956c756bd6d1f}} 
\index{Table Smart Object.@{Table Smart Object.}!evas\_object\_table\_pack@{evas\_object\_table\_pack}}
\index{evas\_object\_table\_pack@{evas\_object\_table\_pack}!Table Smart Object.@{Table Smart Object.}}
\doxysubsubsection{\texorpdfstring{evas\_object\_table\_pack()}{evas\_object\_table\_pack()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} evas\+\_\+object\+\_\+table\+\_\+pack (\begin{DoxyParamCaption}\item[{Evas\+\_\+\+Table $\ast$}]{obj,  }\item[{\mbox{\hyperlink{group__Evas__Object__Group_gaa5c3ea447e776040a102c696cd715574}{Efl\+\_\+\+Canvas\+\_\+\+Object}} $\ast$}]{child,  }\item[{unsigned short}]{col,  }\item[{unsigned short}]{row,  }\item[{unsigned short}]{colspan,  }\item[{unsigned short}]{rowspan }\end{DoxyParamCaption})}



Add a new child to a table object or set its current packing. 

Note that columns and rows only guarantee 16bit unsigned values at best. That means that col + colspan AND row + rowspan must fit inside 16bit unsigned values cleanly. You will be warned once values exceed 15bit storage, and attempting to use values not able to fit in 16bits will result in failure.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em child} & The child object to add. \\
\hline
\mbox{\texttt{ in}}  & {\em col} & Relative-\/horizontal position to place child. \\
\hline
\mbox{\texttt{ in}}  & {\em row} & Relative-\/vertical position to place child. \\
\hline
\mbox{\texttt{ in}}  & {\em colspan} & How many relative-\/horizontal positions to use for this child. \\
\hline
\mbox{\texttt{ in}}  & {\em rowspan} & How many relative-\/vertical positions to use for this child.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily true} on success, {\ttfamily false} on failure. 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Evas__Object__Table__Group_ga9a35d76ea65b7ea2dc69db2d01f55a9b}\label{group__Evas__Object__Table__Group_ga9a35d76ea65b7ea2dc69db2d01f55a9b}} 
\index{Table Smart Object.@{Table Smart Object.}!evas\_object\_table\_unpack@{evas\_object\_table\_unpack}}
\index{evas\_object\_table\_unpack@{evas\_object\_table\_unpack}!Table Smart Object.@{Table Smart Object.}}
\doxysubsubsection{\texorpdfstring{evas\_object\_table\_unpack()}{evas\_object\_table\_unpack()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} evas\+\_\+object\+\_\+table\+\_\+unpack (\begin{DoxyParamCaption}\item[{Evas\+\_\+\+Table $\ast$}]{obj,  }\item[{\mbox{\hyperlink{group__Evas__Object__Group_gaa5c3ea447e776040a102c696cd715574}{Efl\+\_\+\+Canvas\+\_\+\+Object}} $\ast$}]{child }\end{DoxyParamCaption})}



Remove child from table. 

\begin{DoxyNote}{Note}
removing a child will immediately call a walk over children in order to recalculate numbers of columns and rows. If you plan to remove all children, use \mbox{\hyperlink{group__Evas__Object__Table__Group_ga0eaeb76b0f07daf673f8596e677522c8}{evas\+\_\+object\+\_\+table\+\_\+clear}} instead.
\end{DoxyNote}

\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em child} & Child to be removed\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily true} on success, {\ttfamily false} on failure. 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Evas__Object__Table__Group_ga194b746496203728678ff3bb4ca7455f}\label{group__Evas__Object__Table__Group_ga194b746496203728678ff3bb4ca7455f}} 
\index{Table Smart Object.@{Table Smart Object.}!evas\_object\_table\_add@{evas\_object\_table\_add}}
\index{evas\_object\_table\_add@{evas\_object\_table\_add}!Table Smart Object.@{Table Smart Object.}}
\doxysubsubsection{\texorpdfstring{evas\_object\_table\_add()}{evas\_object\_table\_add()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API \mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$ evas\+\_\+object\+\_\+table\+\_\+add (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Evas__Canvas_ga5ff87cc4ce6bc43e3b640a6d37f73043}{Evas}} $\ast$}]{evas }\end{DoxyParamCaption})}



Create a new table. 


\begin{DoxyParams}{Parameters}
{\em evas} & Canvas in which table will be added. \\
\hline
\end{DoxyParams}


References \mbox{\hyperlink{group__Eina__Safety__Checks__Group_gae7cf7b1d66fa9022242e09fd53c06bb2}{EINA\+\_\+\+SAFETY\+\_\+\+ON\+\_\+\+FALSE\+\_\+\+RETURN\+\_\+\+VAL}}, and \mbox{\hyperlink{group__Evas__Canvas_ga7987306d8b2c49352b9d2c41585d0ce9}{EVAS\+\_\+\+CANVAS\+\_\+\+CLASS}}.

\mbox{\Hypertarget{group__Evas__Object__Table__Group_ga3d56f9764362ed5266cf46a386c459ea}\label{group__Evas__Object__Table__Group_ga3d56f9764362ed5266cf46a386c459ea}} 
\index{Table Smart Object.@{Table Smart Object.}!evas\_object\_table\_mirrored\_set@{evas\_object\_table\_mirrored\_set}}
\index{evas\_object\_table\_mirrored\_set@{evas\_object\_table\_mirrored\_set}!Table Smart Object.@{Table Smart Object.}}
\doxysubsubsection{\texorpdfstring{evas\_object\_table\_mirrored\_set()}{evas\_object\_table\_mirrored\_set()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API void evas\+\_\+object\+\_\+table\+\_\+mirrored\+\_\+set (\begin{DoxyParamCaption}\item[{Eo $\ast$}]{obj,  }\item[{\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}}}]{mirrored }\end{DoxyParamCaption})}



Control the mirrored mode of the table. 

In mirrored mode, the table items go from right to left instead of left to right. That is, 1,1 is top right, not top left.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object. \\
\hline
\mbox{\texttt{ in}}  & {\em mirrored} & {\ttfamily true} if mirrored, {\ttfamily false} otherwise\\
\hline
\end{DoxyParams}
\begin{DoxySince}{Since}
1.\+1 
\end{DoxySince}
\mbox{\Hypertarget{group__Evas__Object__Table__Group_ga14e9afead15401321405c54db718f0c3}\label{group__Evas__Object__Table__Group_ga14e9afead15401321405c54db718f0c3}} 
\index{Table Smart Object.@{Table Smart Object.}!evas\_object\_table\_mirrored\_get@{evas\_object\_table\_mirrored\_get}}
\index{evas\_object\_table\_mirrored\_get@{evas\_object\_table\_mirrored\_get}!Table Smart Object.@{Table Smart Object.}}
\doxysubsubsection{\texorpdfstring{evas\_object\_table\_mirrored\_get()}{evas\_object\_table\_mirrored\_get()}}
{\footnotesize\ttfamily EVAS\+\_\+\+API \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} evas\+\_\+object\+\_\+table\+\_\+mirrored\+\_\+get (\begin{DoxyParamCaption}\item[{const Eo $\ast$}]{obj }\end{DoxyParamCaption})}



Control the mirrored mode of the table. 

In mirrored mode, the table items go from right to left instead of left to right. That is, 1,1 is top right, not top left.


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em obj} & The object.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily true} if mirrored, {\ttfamily false} otherwise
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+1 
\end{DoxySince}
