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 @@ | |||
20 | #define _TREE_H_ | 20 | #define _TREE_H_ |
21 | 21 | ||
22 | #include <stdbool.h> | 22 | #include <stdbool.h> |
23 | #include <applimits.h> | ||
24 | #include <file.h> | ||
23 | 25 | ||
24 | #if CONFIG_KEYPAD == IRIVER_H100_PAD | 26 | #if CONFIG_KEYPAD == IRIVER_H100_PAD |
25 | #define TREE_NEXT BUTTON_DOWN | 27 | #define TREE_NEXT BUTTON_DOWN |
@@ -95,6 +97,12 @@ | |||
95 | 97 | ||
96 | #endif | 98 | #endif |
97 | 99 | ||
100 | #ifdef HAVE_LCD_BITMAP | ||
101 | #define BOOTFILE "ajbrec.ajz" | ||
102 | #else | ||
103 | #define BOOTFILE "archos.mod" | ||
104 | #endif | ||
105 | |||
98 | struct entry { | 106 | struct entry { |
99 | short attr; /* FAT attributes + file type flags */ | 107 | short attr; /* FAT attributes + file type flags */ |
100 | unsigned long time_write; /* Last write time */ | 108 | unsigned long time_write; /* Last write time */ |
@@ -108,6 +116,28 @@ struct filetype { | |||
108 | int voiceclip; | 116 | int voiceclip; |
109 | }; | 117 | }; |
110 | 118 | ||
119 | /* browser context for file or db */ | ||
120 | struct tree_context { | ||
121 | int dirlevel; | ||
122 | int dircursor; | ||
123 | int dirstart; | ||
124 | int dirpos[MAX_DIR_LEVELS]; | ||
125 | int cursorpos[MAX_DIR_LEVELS]; | ||
126 | char currdir[MAX_PATH]; /* file use */ | ||
127 | int *dirfilter; /* file use */ | ||
128 | int filesindir; | ||
129 | int dirsindir; /* file use */ | ||
130 | int table_history[MAX_DIR_LEVELS]; /* db use */ | ||
131 | int extra_history[MAX_DIR_LEVELS]; /* db use */ | ||
132 | int currtable; /* db use */ | ||
133 | int currextra; /* db use */ | ||
134 | |||
135 | void* dircache; | ||
136 | int dircache_size; | ||
137 | char* name_buffer; | ||
138 | int name_buffer_size; | ||
139 | int dentry_size; | ||
140 | }; | ||
111 | 141 | ||
112 | /* using attribute bits not used by FAT (FAT uses lower 7) */ | 142 | /* using attribute bits not used by FAT (FAT uses lower 7) */ |
113 | 143 | ||
@@ -134,8 +164,7 @@ bool create_playlist(void); | |||
134 | void resume_directory(const char *dir); | 164 | void resume_directory(const char *dir); |
135 | char *getcwd(char *buf, int size); | 165 | char *getcwd(char *buf, int size); |
136 | void reload_directory(void); | 166 | void reload_directory(void); |
137 | struct entry* load_and_sort_directory(const char *dirname, const int *dirfilter, | ||
138 | int *num_files, bool *buffer_full); | ||
139 | bool check_rockboxdir(void); | 167 | bool check_rockboxdir(void); |
168 | struct tree_context* tree_get_context(void); | ||
140 | 169 | ||
141 | #endif | 170 | #endif |