diff options
author | Björn Stenberg <bjorn@haxx.se> | 2005-01-17 11:39:46 +0000 |
---|---|---|
committer | Björn Stenberg <bjorn@haxx.se> | 2005-01-17 11:39:46 +0000 |
commit | 8a5de5fec96171e739442b0601047d93079e3179 (patch) | |
tree | 5d0a66bea94f7296aaaacc6d42ceecb84e736242 /apps/tree.h | |
parent | fc53fd708fc12e1a67217c102ea8180b2bde6a6f (diff) | |
download | rockbox-8a5de5fec96171e739442b0601047d93079e3179.tar.gz rockbox-8a5de5fec96171e739442b0601047d93079e3179.zip |
Added ID3 database support. Still very early.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5575 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/tree.h')
-rw-r--r-- | apps/tree.h | 33 |
1 files changed, 31 insertions, 2 deletions
diff --git a/apps/tree.h b/apps/tree.h index f76df90463..87e0361e50 100644 --- a/apps/tree.h +++ b/apps/tree.h @@ -20,6 +20,8 @@ #define _TREE_H_ #include <stdbool.h> +#include <applimits.h> +#include <file.h> #if CONFIG_KEYPAD == IRIVER_H100_PAD #define TREE_NEXT BUTTON_DOWN @@ -95,6 +97,12 @@ #endif +#ifdef HAVE_LCD_BITMAP +#define BOOTFILE "ajbrec.ajz" +#else +#define BOOTFILE "archos.mod" +#endif + struct entry { short attr; /* FAT attributes + file type flags */ unsigned long time_write; /* Last write time */ @@ -108,6 +116,28 @@ struct filetype { int voiceclip; }; +/* browser context for file or db */ +struct tree_context { + int dirlevel; + int dircursor; + int dirstart; + int dirpos[MAX_DIR_LEVELS]; + int cursorpos[MAX_DIR_LEVELS]; + char currdir[MAX_PATH]; /* file use */ + int *dirfilter; /* file use */ + int filesindir; + int dirsindir; /* file use */ + int table_history[MAX_DIR_LEVELS]; /* db use */ + int extra_history[MAX_DIR_LEVELS]; /* db use */ + int currtable; /* db use */ + int currextra; /* db use */ + + void* dircache; + int dircache_size; + char* name_buffer; + int name_buffer_size; + int dentry_size; +}; /* using attribute bits not used by FAT (FAT uses lower 7) */ @@ -134,8 +164,7 @@ bool create_playlist(void); void resume_directory(const char *dir); char *getcwd(char *buf, int size); void reload_directory(void); -struct entry* load_and_sort_directory(const char *dirname, const int *dirfilter, - int *num_files, bool *buffer_full); bool check_rockboxdir(void); +struct tree_context* tree_get_context(void); #endif |