mmenu: introduced artificial delay after SD event (ins/eject); mmenu is racing agains...
[pandora-libraries.git] / minimenu / mmcat.h
index c886f2d..612b670 100644 (file)
@@ -17,6 +17,7 @@ typedef struct _mm_appref_t {
 // an actual category reference; points to a list of appref's and supplies a tabname, a filesystem mountpoint, etc.
 typedef struct _mm_category_t {
   char *catname;          // name of the category
+  char *parent_catname;   // if known, parent cat name
   unsigned int catflags;  // flags
 
   // current applications
@@ -42,7 +43,7 @@ typedef struct _mm_category_t {
 
 // try to populate as many cats as necessary
 void category_init ( void ); // set up; call first!
-unsigned char category_push ( char *catname, pnd_disco_t *app, pnd_conf_handle ovrh, char *fspath, unsigned char visiblep ); // catname is not pulled from app, so we can make them up on the fly (ie: "All");
+unsigned char category_push ( char *catname, char *parentcatname, pnd_disco_t *app, pnd_conf_handle ovrh, char *fspath, unsigned char visiblep ); // catname is not pulled from app, so we can make them up on the fly (ie: "All");
 void category_dump ( void ); // sort the apprefs
 void category_freeall ( void );
 int cat_sort_score ( mm_category_t *cat, mm_appref_t *s1, mm_appref_t *s2 ); // like strcmp, but used to sort apps by title
@@ -56,11 +57,14 @@ typedef struct {
 
 unsigned char category_map_setup ( void ); // set up the mappings
 mm_category_t *category_map_query ( char *cat );
-unsigned char category_meta_push ( char *catname, char *parentcatname, pnd_disco_t *app, pnd_conf_handle ovrh, unsigned char visiblep );
+unsigned char category_meta_push ( char *catname, char *parentcatname, pnd_disco_t *app, pnd_conf_handle ovrh, unsigned char visiblep, unsigned char parentp ); // parentp is 0 for child, 1 for parent - main, 2 for parent - alt
 
 // filesystem browser
 unsigned char category_fs_restock ( mm_category_t *cat );
 
+// apps within cats
+unsigned char category_contains_app ( char *catname, char *parentcatname, char *unique_id );
+
 // advertising to rest of the system
 //
 extern mm_category_t *g_categories [ MAX_CATS ];