\hypertarget{efreet__menu_8h}{}\doxysection{efreet\+\_\+menu.\+h File Reference}
\label{efreet__menu_8h}\index{efreet\_menu.h@{efreet\_menu.h}}


Contains the structures and methods to support the Desktop Menu Specification.  


\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{structEfreet__Menu}{Efreet\+\_\+\+Menu}}
\begin{DoxyCompactList}\small\item\em \mbox{\hyperlink{structEfreet__Menu}{Efreet\+\_\+\+Menu}} Stores information on a entry in the menu. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
typedef enum \mbox{\hyperlink{group__Efreet__Menu_ga2991e288d08928c50a4da721f9845150}{Efreet\+\_\+\+Menu\+\_\+\+Entry\+\_\+\+Type}} {\bfseries Efreet\+\_\+\+Menu\+\_\+\+Entry\+\_\+\+Type}
\begin{DoxyCompactList}\small\item\em The type of entry. \end{DoxyCompactList}\item 
typedef struct \mbox{\hyperlink{structEfreet__Menu}{Efreet\+\_\+\+Menu}} {\bfseries Efreet\+\_\+\+Menu}
\begin{DoxyCompactList}\small\item\em \mbox{\hyperlink{structEfreet__Menu}{Efreet\+\_\+\+Menu}}. \end{DoxyCompactList}\item 
typedef void($\ast$ \mbox{\hyperlink{group__Efreet__Menu_gaab91b46110e8e15125a8ddfae0a3164f}{Efreet\+\_\+\+Menu\+\_\+\+Cb}}) (void $\ast$data, \mbox{\hyperlink{structEfreet__Menu}{Efreet\+\_\+\+Menu}} $\ast$menu)
\begin{DoxyCompactList}\small\item\em A callback used with \mbox{\hyperlink{group__Efreet__Menu_ga8576ba3d80be3b268aee283b13eba7ac}{efreet\+\_\+menu\+\_\+async\+\_\+get()}} and \mbox{\hyperlink{group__Efreet__Menu_gad309812a2041617dd855e3c40de84ebb}{efreet\+\_\+menu\+\_\+async\+\_\+parse()}} \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Enumerations}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Efreet__Menu_ga2991e288d08928c50a4da721f9845150}\label{group__Efreet__Menu_ga2991e288d08928c50a4da721f9845150}} 
enum \mbox{\hyperlink{group__Efreet__Menu_ga2991e288d08928c50a4da721f9845150}{Efreet\+\_\+\+Menu\+\_\+\+Entry\+\_\+\+Type}} \{ \newline
{\bfseries EFREET\+\_\+\+MENU\+\_\+\+ENTRY\+\_\+\+MENU}
, \newline
{\bfseries EFREET\+\_\+\+MENU\+\_\+\+ENTRY\+\_\+\+DESKTOP}
, \newline
{\bfseries EFREET\+\_\+\+MENU\+\_\+\+ENTRY\+\_\+\+SEPARATOR}
, \newline
{\bfseries EFREET\+\_\+\+MENU\+\_\+\+ENTRY\+\_\+\+HEADER}
 \}
\begin{DoxyCompactList}\small\item\em The type of entry. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
int \mbox{\hyperlink{group__Efreet__Menu_gafdc0116e02086b5698fcc7e400bcc15c}{efreet\+\_\+menu\+\_\+kde\+\_\+legacy\+\_\+init}} (void)
\begin{DoxyCompactList}\small\item\em Initialize legacy kde support. This function blocks while the kde-\/config script is run. \end{DoxyCompactList}\item 
\mbox{\hyperlink{structEfreet__Menu}{Efreet\+\_\+\+Menu}} $\ast$ \mbox{\hyperlink{group__Efreet__Menu_ga5a6d995d4f1e3c6f4bd660869f60dd2b}{efreet\+\_\+menu\+\_\+new}} (const char $\ast$name)
\begin{DoxyCompactList}\small\item\em Creates a new menu. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Efreet__Menu_gaf6de3882d42bccc068291bbcc1a0244a}{efreet\+\_\+menu\+\_\+file\+\_\+set}} (const char $\ast$file)
\begin{DoxyCompactList}\small\item\em Override which file is used for menu creation. \end{DoxyCompactList}\item 
EFREET\+\_\+\+DEPRECATED\+\_\+\+API void \mbox{\hyperlink{group__Efreet__Menu_ga8576ba3d80be3b268aee283b13eba7ac}{efreet\+\_\+menu\+\_\+async\+\_\+get}} (\mbox{\hyperlink{group__Efreet__Menu_gaab91b46110e8e15125a8ddfae0a3164f}{Efreet\+\_\+\+Menu\+\_\+\+Cb}} func, const void $\ast$data)
\begin{DoxyCompactList}\small\item\em Creates the \mbox{\hyperlink{structEfreet__Menu}{Efreet\+\_\+\+Menu}} representation of the default menu or NULL if none found and returns it in the callback. \end{DoxyCompactList}\item 
\mbox{\hyperlink{structEfreet__Menu}{Efreet\+\_\+\+Menu}} $\ast$ \mbox{\hyperlink{group__Efreet__Menu_ga7d3bd603d4956fbb6dc315e3af8275bf}{efreet\+\_\+menu\+\_\+get}} (void)
\begin{DoxyCompactList}\small\item\em Creates the default menu representation. \end{DoxyCompactList}\item 
EFREET\+\_\+\+DEPRECATED\+\_\+\+API void \mbox{\hyperlink{group__Efreet__Menu_gad309812a2041617dd855e3c40de84ebb}{efreet\+\_\+menu\+\_\+async\+\_\+parse}} (const char $\ast$path, \mbox{\hyperlink{group__Efreet__Menu_gaab91b46110e8e15125a8ddfae0a3164f}{Efreet\+\_\+\+Menu\+\_\+\+Cb}} func, const void $\ast$data)
\begin{DoxyCompactList}\small\item\em Parses the given .menu file and creates the menu representation, and returns it in the callback. \end{DoxyCompactList}\item 
\mbox{\hyperlink{structEfreet__Menu}{Efreet\+\_\+\+Menu}} $\ast$ \mbox{\hyperlink{group__Efreet__Menu_ga2d4b22d42c74714622d6df39e320ab36}{efreet\+\_\+menu\+\_\+parse}} (const char $\ast$path)
\begin{DoxyCompactList}\small\item\em Parses the given .menu file and creates the menu representation. \end{DoxyCompactList}\item 
int \mbox{\hyperlink{group__Efreet__Menu_ga11b1e15cbc386a7275930c8aa559e921}{efreet\+\_\+menu\+\_\+save}} (\mbox{\hyperlink{structEfreet__Menu}{Efreet\+\_\+\+Menu}} $\ast$menu, const char $\ast$path)
\begin{DoxyCompactList}\small\item\em Saves the menu to file. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Efreet__Menu_gaf6ce6f6ac0038217fe874cad8bd3ae6a}{efreet\+\_\+menu\+\_\+free}} (\mbox{\hyperlink{structEfreet__Menu}{Efreet\+\_\+\+Menu}} $\ast$menu)
\begin{DoxyCompactList}\small\item\em Frees the given structure (if refcount at 1 at the time of this call) \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Efreet__Menu_ga083aa9f37c0726db3b04ade41084a532}{efreet\+\_\+menu\+\_\+ref}} (\mbox{\hyperlink{structEfreet__Menu}{Efreet\+\_\+\+Menu}} $\ast$menu)
\begin{DoxyCompactList}\small\item\em Incriments refcount for the menu. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Efreet__Menu_gace014272006d6dcac614fdb34960c0ac}{efreet\+\_\+menu\+\_\+unref}} (\mbox{\hyperlink{structEfreet__Menu}{Efreet\+\_\+\+Menu}} $\ast$menu)
\begin{DoxyCompactList}\small\item\em Decrements refcount for the menu, and on 0 frees. \end{DoxyCompactList}\item 
int \mbox{\hyperlink{group__Efreet__Menu_gad623606893391e7c32ff4f39fae0aab1}{efreet\+\_\+menu\+\_\+desktop\+\_\+insert}} (\mbox{\hyperlink{structEfreet__Menu}{Efreet\+\_\+\+Menu}} $\ast$menu, \mbox{\hyperlink{group__Efreet__Desktop_gae7a86664465318833378738e118a2575}{Efreet\+\_\+\+Desktop}} $\ast$desktop, int pos)
\begin{DoxyCompactList}\small\item\em Insert a desktop element in a menu structure. Only accepts desktop files in default directories. \end{DoxyCompactList}\item 
int \mbox{\hyperlink{group__Efreet__Menu_ga1341ea90ebef422eb859f6fe69e81a1b}{efreet\+\_\+menu\+\_\+desktop\+\_\+remove}} (\mbox{\hyperlink{structEfreet__Menu}{Efreet\+\_\+\+Menu}} $\ast$menu, \mbox{\hyperlink{group__Efreet__Desktop_gae7a86664465318833378738e118a2575}{Efreet\+\_\+\+Desktop}} $\ast$desktop)
\begin{DoxyCompactList}\small\item\em Remove a desktop element in a menu structure. Only accepts desktop files in default directories. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Efreet__Menu_ga25b14b29531706b9b2ca0f1bd378b169}{efreet\+\_\+menu\+\_\+dump}} (\mbox{\hyperlink{structEfreet__Menu}{Efreet\+\_\+\+Menu}} $\ast$menu, const char $\ast$indent)
\begin{DoxyCompactList}\small\item\em Dumps the contents of the menu to the command line. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Contains the structures and methods to support the Desktop Menu Specification. 

