#define BROWSER_DECL          true

class browser
{
  private:
    // Variables
    char   menu_text[600][250];     // Menu items
    char   menu_title[20][250];     // Directory names in the hierarchy
    int    intLine;                 // Current line in the menu
    int    intLevel;                // Level in the hierarchy
    int    intLineCount;            // Number of lines in the menu
    // Functions
    int    build_menu(char*);       // Scan the directories and files and build the menu

  public:
    // Variables
    int    update;                  // Flag to indicate the display needs to be updated
    // Functions
           browser();               // Constructor
    int    go_up(void);             // Go up in the menu
    int    go_down(void);           // Go down in the menu
    int    enter_subdir();          // Enter the selected subdirectory
    int    leave_subdir();          // Go back up a level in the hierarchy
    int    display_menu(int);       // Display the menu in the LCD screen
    int    get_path(char*);         // Get the full path of the current directory
    int    get_length(void);        // Returns 1 if the song is over 20 characters
    int    get_current(char*);      // Get the current menu item
    int    is_file(void);           // Is the current menu item a file?
    int    is_directory(void);      // Is the current menu item a directory?
    int    is_special(void);        // Is the current menu item a special entry?
};


syntax highlighted by Code2HTML, v. 0.9.1