\hypertarget{struct__Elm__Layout__Smart__Data}{}\section{\+\_\+\+Elm\+\_\+\+Layout\+\_\+\+Smart\+\_\+\+Data Struct Reference}
\label{struct__Elm__Layout__Smart__Data}\index{\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}}


Base widget smart data extended with layout instance data.  


\subsection*{Data Fields}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{struct__Elm__Layout__Smart__Data_acbb86c7ccc995e377f5202b961997ee3}\label{struct__Elm__Layout__Smart__Data_acbb86c7ccc995e377f5202b961997ee3}} 
\mbox{\hyperlink{group__Evas__Object__Group_ga9e19e6dd1f517a0ba437c0114d3e7c97}{Evas\+\_\+\+Object}} $\ast$ \mbox{\hyperlink{struct__Elm__Layout__Smart__Data_acbb86c7ccc995e377f5202b961997ee3}{obj}}
\begin{DoxyCompactList}\small\item\em The object itself. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__List__Group_ga3295e1210efea1fb0fd6acbf3cbc1f29}{Eina\+\_\+\+List}} $\ast$ \mbox{\hyperlink{struct__Elm__Layout__Smart__Data_a0bc6515cb6ccc7ac4a2dfb7918291937}{subs}}
\begin{DoxyCompactList}\small\item\em List of Elm\+\_\+\+Layout\+\_\+\+Sub\+\_\+\+Object\+\_\+\+Data structs, to hold the actual sub objects such as text, content and the children of box and table. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__List__Group_ga3295e1210efea1fb0fd6acbf3cbc1f29}{Eina\+\_\+\+List}} $\ast$ \mbox{\hyperlink{struct__Elm__Layout__Smart__Data_a76b1731ec4829adb00a0ffb08b2a9c3a}{edje\+\_\+signals}}
\begin{DoxyCompactList}\small\item\em The list of edje signal callbacks. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__List__Group_ga3295e1210efea1fb0fd6acbf3cbc1f29}{Eina\+\_\+\+List}} $\ast$ \mbox{\hyperlink{struct__Elm__Layout__Smart__Data_a58f847ab9be7b013e39a15849ff3f50b}{parts\+\_\+cursors}}
\begin{DoxyCompactList}\small\item\em The list of cursor names of layout parts. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{struct__Elm__Layout__Smart__Data_a23208142eb87bf8ecc4b1def2384990b}\label{struct__Elm__Layout__Smart__Data_a23208142eb87bf8ecc4b1def2384990b}} 
\begin{tabbing}
xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=\kill
struct \{\\
\>\mbox{\hyperlink{group__Eina__Hash__Group_ga9a89d7d3ee260d3a60572ebf651b07e0}{Eina\_Hash}} $\ast$ \mbox{\hyperlink{struct__Elm__Layout__Smart__Data_a3a1472ffc00360bcda761171adc1a1f8}{properties}}\\
\>\>{\em The list of properties connected to layout parts. }\\
\>\mbox{\hyperlink{group__Eina__Hash__Group_ga9a89d7d3ee260d3a60572ebf651b07e0}{Eina\_Hash}} $\ast$ \mbox{\hyperlink{struct__Elm__Layout__Smart__Data_ab5151360ab0c80313ada90f201a92e09}{signals}}\\
\>\>{\em The list of signals connected. }\\
\>\mbox{\hyperlink{group__Eina__Hash__Group_ga9a89d7d3ee260d3a60572ebf651b07e0}{Eina\_Hash}} $\ast$ \mbox{\hyperlink{struct__Elm__Layout__Smart__Data_a543a72f92c64585fbeca7495d049f160}{factories}}\\
\>\>{\em The hash with parts connected to factories. }\\
\>\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\_Bool}} {\bfseries updating}: 1\\
\} {\bfseries connect}\\

\end{tabbing}\item 
\mbox{\Hypertarget{struct__Elm__Layout__Smart__Data_a8fde24358eba08707c1ef1dec33db7ea}\label{struct__Elm__Layout__Smart__Data_a8fde24358eba08707c1ef1dec33db7ea}} 
int \mbox{\hyperlink{struct__Elm__Layout__Smart__Data_a8fde24358eba08707c1ef1dec33db7ea}{frozen}}
\begin{DoxyCompactList}\small\item\em Layout freeze counter. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{struct__Elm__Layout__Smart__Data_a09347544d2c6d4b38c3723ddbd8e13c9}{needs\+\_\+size\+\_\+calc}}\+: 1
\begin{DoxyCompactList}\small\item\em This flag is set true when the layout sizing eval is already requested. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{struct__Elm__Layout__Smart__Data_a1ee5f6a65db482d357cba5a6a6b355b1}{restricted\+\_\+calc\+\_\+w}}\+: 1
\begin{DoxyCompactList}\small\item\em This is a flag to support edje restricted\+\_\+calc in w axis. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{struct__Elm__Layout__Smart__Data_a795e136ebb7f39d6564033c7ac594152}{restricted\+\_\+calc\+\_\+h}}\+: 1
\begin{DoxyCompactList}\small\item\em This is a flag to support edje restricted\+\_\+calc in y axis. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{struct__Elm__Layout__Smart__Data_ae76082aeae1d723c68642be6eb911e59}{can\+\_\+access}}\+: 1
\begin{DoxyCompactList}\small\item\em This is true when all text(including textblock) parts can be accessible by accessibility. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{struct__Elm__Layout__Smart__Data_ae6ca2e91974def2e30b0ac55410f3aa3}{destructed\+\_\+is}}\+: 1
\begin{DoxyCompactList}\small\item\em This flag indicates if Efl.\+Ui.\+Layout destructor was called. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{struct__Elm__Layout__Smart__Data_a1271b1b1587abbef8abe5cbef7c448b9}\label{struct__Elm__Layout__Smart__Data_a1271b1b1587abbef8abe5cbef7c448b9}} 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{struct__Elm__Layout__Smart__Data_a1271b1b1587abbef8abe5cbef7c448b9}{file\+\_\+set}}\+: 1
\begin{DoxyCompactList}\small\item\em This flag indicates if Efl.\+Ui.\+Layout source is set from a file. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{struct__Elm__Layout__Smart__Data_a84ec95b564c316e55d2340b92a5c71ff}\label{struct__Elm__Layout__Smart__Data_a84ec95b564c316e55d2340b92a5c71ff}} 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} {\bfseries automatic\+\_\+orientation\+\_\+apply}\+: 1
\end{DoxyCompactItemize}


\subsection{Detailed Description}
Base widget smart data extended with layout instance data. 

\subsection{Field Documentation}
\mbox{\Hypertarget{struct__Elm__Layout__Smart__Data_a0bc6515cb6ccc7ac4a2dfb7918291937}\label{struct__Elm__Layout__Smart__Data_a0bc6515cb6ccc7ac4a2dfb7918291937}} 
\index{\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}!subs@{subs}}
\index{subs@{subs}!\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}}
\subsubsection{\texorpdfstring{subs}{subs}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__List__Group_ga3295e1210efea1fb0fd6acbf3cbc1f29}{Eina\+\_\+\+List}}$\ast$ \+\_\+\+Elm\+\_\+\+Layout\+\_\+\+Smart\+\_\+\+Data\+::subs}



List of Elm\+\_\+\+Layout\+\_\+\+Sub\+\_\+\+Object\+\_\+\+Data structs, to hold the actual sub objects such as text, content and the children of box and table. 



Referenced by elm\+\_\+layout\+\_\+content\+\_\+swallow\+\_\+list\+\_\+get().

\mbox{\Hypertarget{struct__Elm__Layout__Smart__Data_a76b1731ec4829adb00a0ffb08b2a9c3a}\label{struct__Elm__Layout__Smart__Data_a76b1731ec4829adb00a0ffb08b2a9c3a}} 
\index{\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}!edje\_signals@{edje\_signals}}
\index{edje\_signals@{edje\_signals}!\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}}
\subsubsection{\texorpdfstring{edje\_signals}{edje\_signals}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__List__Group_ga3295e1210efea1fb0fd6acbf3cbc1f29}{Eina\+\_\+\+List}}$\ast$ \+\_\+\+Elm\+\_\+\+Layout\+\_\+\+Smart\+\_\+\+Data\+::edje\+\_\+signals}



The list of edje signal callbacks. 



Referenced by elm\+\_\+layout\+\_\+signal\+\_\+callback\+\_\+add(), and elm\+\_\+layout\+\_\+signal\+\_\+callback\+\_\+del().

\mbox{\Hypertarget{struct__Elm__Layout__Smart__Data_a58f847ab9be7b013e39a15849ff3f50b}\label{struct__Elm__Layout__Smart__Data_a58f847ab9be7b013e39a15849ff3f50b}} 
\index{\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}!parts\_cursors@{parts\_cursors}}
\index{parts\_cursors@{parts\_cursors}!\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}}
\subsubsection{\texorpdfstring{parts\_cursors}{parts\_cursors}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__List__Group_ga3295e1210efea1fb0fd6acbf3cbc1f29}{Eina\+\_\+\+List}}$\ast$ \+\_\+\+Elm\+\_\+\+Layout\+\_\+\+Smart\+\_\+\+Data\+::parts\+\_\+cursors}



The list of cursor names of layout parts. 

This is a list of Elm\+\_\+\+Layout\+\_\+\+Sub\+\_\+\+Object\+\_\+\+Cursor struct. \mbox{\Hypertarget{struct__Elm__Layout__Smart__Data_a3a1472ffc00360bcda761171adc1a1f8}\label{struct__Elm__Layout__Smart__Data_a3a1472ffc00360bcda761171adc1a1f8}} 
\index{\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}!properties@{properties}}
\index{properties@{properties}!\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}}
\subsubsection{\texorpdfstring{properties}{properties}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Hash__Group_ga9a89d7d3ee260d3a60572ebf651b07e0}{Eina\+\_\+\+Hash}}$\ast$ \+\_\+\+Elm\+\_\+\+Layout\+\_\+\+Smart\+\_\+\+Data\+::properties}



The list of properties connected to layout parts. 

\mbox{\Hypertarget{struct__Elm__Layout__Smart__Data_ab5151360ab0c80313ada90f201a92e09}\label{struct__Elm__Layout__Smart__Data_ab5151360ab0c80313ada90f201a92e09}} 
\index{\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}!signals@{signals}}
\index{signals@{signals}!\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}}
\subsubsection{\texorpdfstring{signals}{signals}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Hash__Group_ga9a89d7d3ee260d3a60572ebf651b07e0}{Eina\+\_\+\+Hash}}$\ast$ \+\_\+\+Elm\+\_\+\+Layout\+\_\+\+Smart\+\_\+\+Data\+::signals}



The list of signals connected. 

\mbox{\Hypertarget{struct__Elm__Layout__Smart__Data_a543a72f92c64585fbeca7495d049f160}\label{struct__Elm__Layout__Smart__Data_a543a72f92c64585fbeca7495d049f160}} 
\index{\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}!factories@{factories}}
\index{factories@{factories}!\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}}
\subsubsection{\texorpdfstring{factories}{factories}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Hash__Group_ga9a89d7d3ee260d3a60572ebf651b07e0}{Eina\+\_\+\+Hash}}$\ast$ \+\_\+\+Elm\+\_\+\+Layout\+\_\+\+Smart\+\_\+\+Data\+::factories}



The hash with parts connected to factories. 

\mbox{\Hypertarget{struct__Elm__Layout__Smart__Data_a09347544d2c6d4b38c3723ddbd8e13c9}\label{struct__Elm__Layout__Smart__Data_a09347544d2c6d4b38c3723ddbd8e13c9}} 
\index{\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}!needs\_size\_calc@{needs\_size\_calc}}
\index{needs\_size\_calc@{needs\_size\_calc}!\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}}
\subsubsection{\texorpdfstring{needs\_size\_calc}{needs\_size\_calc}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \+\_\+\+Elm\+\_\+\+Layout\+\_\+\+Smart\+\_\+\+Data\+::needs\+\_\+size\+\_\+calc}



This flag is set true when the layout sizing eval is already requested. 

This defers sizing evaluation until smart calculation to avoid unnecessary calculation. \mbox{\Hypertarget{struct__Elm__Layout__Smart__Data_a1ee5f6a65db482d357cba5a6a6b355b1}\label{struct__Elm__Layout__Smart__Data_a1ee5f6a65db482d357cba5a6a6b355b1}} 
\index{\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}!restricted\_calc\_w@{restricted\_calc\_w}}
\index{restricted\_calc\_w@{restricted\_calc\_w}!\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}}
\subsubsection{\texorpdfstring{restricted\_calc\_w}{restricted\_calc\_w}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \+\_\+\+Elm\+\_\+\+Layout\+\_\+\+Smart\+\_\+\+Data\+::restricted\+\_\+calc\+\_\+w}



This is a flag to support edje restricted\+\_\+calc in w axis. 



Referenced by elm\+\_\+layout\+\_\+sizing\+\_\+restricted\+\_\+eval().

\mbox{\Hypertarget{struct__Elm__Layout__Smart__Data_a795e136ebb7f39d6564033c7ac594152}\label{struct__Elm__Layout__Smart__Data_a795e136ebb7f39d6564033c7ac594152}} 
\index{\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}!restricted\_calc\_h@{restricted\_calc\_h}}
\index{restricted\_calc\_h@{restricted\_calc\_h}!\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}}
\subsubsection{\texorpdfstring{restricted\_calc\_h}{restricted\_calc\_h}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \+\_\+\+Elm\+\_\+\+Layout\+\_\+\+Smart\+\_\+\+Data\+::restricted\+\_\+calc\+\_\+h}



This is a flag to support edje restricted\+\_\+calc in y axis. 



Referenced by elm\+\_\+layout\+\_\+sizing\+\_\+restricted\+\_\+eval().

\mbox{\Hypertarget{struct__Elm__Layout__Smart__Data_ae76082aeae1d723c68642be6eb911e59}\label{struct__Elm__Layout__Smart__Data_ae76082aeae1d723c68642be6eb911e59}} 
\index{\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}!can\_access@{can\_access}}
\index{can\_access@{can\_access}!\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}}
\subsubsection{\texorpdfstring{can\_access}{can\_access}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \+\_\+\+Elm\+\_\+\+Layout\+\_\+\+Smart\+\_\+\+Data\+::can\+\_\+access}



This is true when all text(including textblock) parts can be accessible by accessibility. 

\mbox{\Hypertarget{struct__Elm__Layout__Smart__Data_ae6ca2e91974def2e30b0ac55410f3aa3}\label{struct__Elm__Layout__Smart__Data_ae6ca2e91974def2e30b0ac55410f3aa3}} 
\index{\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}!destructed\_is@{destructed\_is}}
\index{destructed\_is@{destructed\_is}!\_Elm\_Layout\_Smart\_Data@{\_Elm\_Layout\_Smart\_Data}}
\subsubsection{\texorpdfstring{destructed\_is}{destructed\_is}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \+\_\+\+Elm\+\_\+\+Layout\+\_\+\+Smart\+\_\+\+Data\+::destructed\+\_\+is}



This flag indicates if Efl.\+Ui.\+Layout destructor was called. 

This is needed to avoid unnecessary calculation of subobject deletion during layout object\textquotesingle{}s deletion. 