BC_FileBox Class Reference

#include <bcfilebox.h>

Inherits BC_Window.

Inherited by BrowseButtonWindow, LoadFileWindow, LocateFileWindow, NewSvgWindow, ReverbLoadDialog, ReverbSaveDialog, SaveFileWindow, and ShapeWipeLoad.

Collaboration diagram for BC_FileBox:

Collaboration graph
[legend]

Public Member Functions

 BC_FileBox (int x, int y, char *init_path, char *title, char *caption, int show_all_files=0, int want_directory=0, int multiple_files=0, int h_padding=-1)
virtual ~BC_FileBox ()
virtual int create_objects ()
virtual int keypress_event ()
virtual int close_event ()
virtual int handle_event ()
void create_history ()
void update_history ()
int refresh ()
char * get_submitted_path ()
char * get_current_path ()
char * get_path (int selection)
int update_filter (char *filter)
virtual int resize_event (int w, int h)
char * get_newfolder_title ()
char * get_delete_title ()
void delete_files ()
BC_Buttonget_ok_button ()
BC_Buttonget_cancel_button ()

Data Fields

FileSystemfs

Private Member Functions

int create_icons ()
int extract_extension (char *out, const char *in)
int create_tables ()
int delete_tables ()
int submit_dir (char *dir)
int submit_file (char *path, int use_this=0)
void move_column (int src, int dst)
int get_display_mode ()
int get_listbox_w ()
int get_listbox_h (int y)
void create_listbox (int x, int y, int mode)
BC_Pixmapget_icon (char *path, int is_dir)
int column_of_type (int type)

Static Private Member Functions

static char * columntype_to_text (int type)

Private Attributes

BC_Pixmapicons [TOTAL_ICONS]
BC_FileBoxRecentrecent_popup
BC_FileBoxTextBoxtextbox
BC_FileBoxListBoxlistbox
BC_FileBoxFilterTextfilter_text
BC_FileBoxFilterMenufilter_popup
BC_TextBoxdirectory_title
BC_Buttonicon_button
BC_Buttontext_button
BC_Buttonfolder_button
BC_Buttonupdir_button
BC_Buttondelete_button
BC_Buttonreload_button
BC_Buttonok_button
BC_Buttoncancel_button
BC_FileBoxUseThisusethis_button
char caption [BCTEXTLEN]
char current_path [BCTEXTLEN]
char submitted_path [BCTEXTLEN]
char directory [BCTEXTLEN]
char filename [BCTEXTLEN]
char string [BCTEXTLEN]
int want_directory
int select_multiple
int sort_column
int sort_order
char * column_titles [FILEBOX_COLUMNS]
ArrayList< BC_ListBoxItem * > filter_list
ArrayList< BC_ListBoxItem * > * list_column
int * column_type
int * column_width
int columns
char new_folder_title [BCTEXTLEN]
BC_NewFolderThreadnewfolder_thread
BC_DeleteThreaddelete_thread
int h_padding
ArrayList< BC_ListBoxItem * > recent_dirs

Friends

class BC_FileBoxCancel
class BC_FileBoxListBox
class BC_FileBoxTextBox
class BC_FileBoxText
class BC_FileBoxIcons
class BC_FileBoxNewfolder
class BC_FileBoxOK
class BC_NewFolderThread
class BC_FileBoxUpdir
class BC_FileBoxFilterText
class BC_FileBoxFilterMenu
class BC_FileBoxUseThis
class BC_DeleteThread
class BC_FileBoxDelete
class BC_FileBoxReload
class BC_FileBoxRecent

Detailed Description

Definition at line 177 of file bcfilebox.h.


Constructor & Destructor Documentation

BC_FileBox::BC_FileBox ( int  x,
int  y,
char *  init_path,
char *  title,
char *  caption,
int  show_all_files = 0,
int  want_directory = 0,
int  multiple_files = 0,
int  h_padding = -1 
)

BC_FileBox::~BC_FileBox (  )  [virtual]

Definition at line 498 of file bcfilebox.C.

References column_type, column_width, delete_tables(), delete_thread, filter_list, fs, icons, list_column, newfolder_thread, recent_dirs, and ArrayList< TYPE >::remove_all_objects().

Here is the call graph for this function:


Member Function Documentation

int BC_FileBox::create_objects (  )  [virtual]

Reimplemented in LoadFileWindow.

Definition at line 514 of file bcfilebox.C.

References BC_ListBox::activate(), BC_WindowBase::add_subwindow(), ArrayList< TYPE >::append(), BC_FileBoxCancel, BC_FileBoxDelete, BC_FileBoxFilterMenu, BC_FileBoxFilterText, BC_FileBoxIcons, BC_FileBoxNewfolder, BC_FileBoxOK, BC_FileBoxRecent, BC_FileBoxReload, BC_FileBoxText, BC_FileBoxTextBox, BC_FileBoxUpdir, BC_FileBoxUseThis, BC_NewFolderThread, BC_WindowBase::BC_Title, cancel_button, caption, create_history(), create_icons(), create_listbox(), create_tables(), delete_button, directory, directory_title, BC_Resources::filebox_delete_images, BC_Resources::filebox_icons_images, BC_Resources::filebox_newfolder_images, BC_Resources::filebox_reload_images, BC_Resources::filebox_text_images, BC_Resources::filebox_updir_images, filter_list, filter_popup, filter_text, folder_button, fs, get_display_mode(), BC_ListBox::get_h(), BC_WindowBase::get_h(), VFrame::get_h(), BC_WindowBase::get_resources(), BC_ListBox::get_w(), VFrame::get_w(), BC_WindowBase::get_w(), icon_button, listbox, MAX, newfolder_thread, ok_button, recent_popup, reload_button, BC_ListBox::reposition_window(), BC_TextBox::reposition_window(), BC_WindowBase::resources, FileSystem::set_filter(), BC_WindowBase::show_window(), text_button, textbox, FileSystem::update(), updir_button, usethis_button, want_directory, BC_WindowBase::x, and BC_WindowBase::y.

Referenced by LoadFileWindow::create_objects(), NewSvgButton::run(), ReverbLoadThread::run(), ReverbSaveThread::run(), ThreadIndexer::run(), and SaveAs::run().

Here is the call graph for this function:

int BC_FileBox::keypress_event (  )  [virtual]

Reimplemented from BC_WindowBase.

Definition at line 692 of file bcfilebox.C.

References BC_WindowBase::ctrl_down(), BC_WindowBase::get_keypress(), and BC_WindowBase::set_done().

Here is the call graph for this function:

int BC_FileBox::close_event (  )  [virtual]

Reimplemented from BC_WindowBase.

Definition at line 704 of file bcfilebox.C.

References BC_WindowBase::set_done().

Here is the call graph for this function:

int BC_FileBox::handle_event (  )  [virtual]

Definition at line 710 of file bcfilebox.C.

void BC_FileBox::create_history (  ) 

void BC_FileBox::update_history (  ) 

Definition at line 1052 of file bcfilebox.C.

References create_history(), directory, BC_Resources::filebox_history, BC_WindowBase::get_resources(), recent_dirs, recent_popup, BC_WindowBase::resources, and BC_ListBox::update().

Referenced by submit_file().

Here is the call graph for this function:

int BC_FileBox::refresh (  ) 

char * BC_FileBox::get_submitted_path (  ) 

Definition at line 1147 of file bcfilebox.C.

References submitted_path.

Referenced by get_path(), ThreadIndexer::run(), SaveAs::run(), and LoadFileThread::run().

char * BC_FileBox::get_current_path (  ) 

Definition at line 1152 of file bcfilebox.C.

References current_path.

char * BC_FileBox::get_path ( int  selection  ) 

int BC_FileBox::update_filter ( char *  filter  ) 

int BC_FileBox::resize_event ( int  w,
int  h 
) [virtual]

char * BC_FileBox::get_newfolder_title (  ) 

Definition at line 1158 of file bcfilebox.C.

References _, memcpy, new_folder_title, strchr, and BC_WindowBase::title.

char * BC_FileBox::get_delete_title (  ) 

Definition at line 1173 of file bcfilebox.C.

References _, memcpy, new_folder_title, strchr, and BC_WindowBase::title.

void BC_FileBox::delete_files (  ) 

Definition at line 1188 of file bcfilebox.C.

References fs, get_path(), FileSystem::is_dir(), and refresh().

Referenced by BC_DeleteThread::handle_done_event().

Here is the call graph for this function:

BC_Button * BC_FileBox::get_ok_button (  ) 

Definition at line 1207 of file bcfilebox.C.

References ok_button.

BC_Button * BC_FileBox::get_cancel_button (  ) 

Definition at line 1212 of file bcfilebox.C.

References cancel_button.

Referenced by LoadFileWindow::create_objects(), and LoadFileWindow::resize_event().

int BC_FileBox::create_icons (  )  [private]

Definition at line 621 of file bcfilebox.C.

References BC_WindowBase::BC_Pixmap, BC_WindowBase::get_resources(), and icons.

Referenced by create_objects().

Here is the call graph for this function:

int BC_FileBox::extract_extension ( char *  out,
const char *  in 
) [private]

Definition at line 715 of file bcfilebox.C.

Referenced by create_tables().

int BC_FileBox::create_tables (  )  [private]

int BC_FileBox::delete_tables (  )  [private]

Definition at line 824 of file bcfilebox.C.

References columns, list_column, and ArrayList< TYPE >::remove_all_objects().

Referenced by create_tables(), and ~BC_FileBox().

Here is the call graph for this function:

int BC_FileBox::submit_dir ( char *  dir  )  [private]

int BC_FileBox::submit_file ( char *  path,
int  use_this = 0 
) [private]

void BC_FileBox::move_column ( int  src,
int  dst 
) [private]

int BC_FileBox::get_display_mode (  )  [private]

Definition at line 1110 of file bcfilebox.C.

References BC_Resources::filebox_mode, BC_WindowBase::get_resources(), and BC_WindowBase::top_level.

Referenced by create_objects().

Here is the call graph for this function:

int BC_FileBox::get_listbox_w (  )  [private]

Definition at line 603 of file bcfilebox.C.

References BC_WindowBase::get_w().

Here is the call graph for this function:

int BC_FileBox::get_listbox_h ( int  y  )  [private]

Definition at line 608 of file bcfilebox.C.

References BC_Resources::dirbox_margin, BC_Resources::filebox_margin, BC_WindowBase::get_h(), BC_WindowBase::get_resources(), h_padding, and want_directory.

Here is the call graph for this function:

void BC_FileBox::create_listbox ( int  x,
int  y,
int  mode 
) [private]

BC_Pixmap * BC_FileBox::get_icon ( char *  path,
int  is_dir 
) [private]

Definition at line 833 of file bcfilebox.C.

References BC_WindowBase::get_resources(), suffix_to_type_t::icon_type, icons, strrchr, and BC_Resources::suffix_to_type.

Referenced by create_tables().

Here is the call graph for this function:

char * BC_FileBox::columntype_to_text ( int  type  )  [static, private]

Definition at line 859 of file bcfilebox.C.

Referenced by BC_FileBox(), and move_column().

int BC_FileBox::column_of_type ( int  type  )  [private]


Friends And Related Function Documentation

friend class BC_FileBoxCancel [friend]

Definition at line 193 of file bcfilebox.h.

Referenced by create_objects().

friend class BC_FileBoxListBox [friend]

Definition at line 194 of file bcfilebox.h.

Referenced by create_listbox().

friend class BC_FileBoxTextBox [friend]

Definition at line 195 of file bcfilebox.h.

Referenced by create_objects().

friend class BC_FileBoxText [friend]

Definition at line 196 of file bcfilebox.h.

Referenced by create_objects().

friend class BC_FileBoxIcons [friend]

Definition at line 197 of file bcfilebox.h.

Referenced by create_objects().

friend class BC_FileBoxNewfolder [friend]

Definition at line 198 of file bcfilebox.h.

Referenced by create_objects().

friend class BC_FileBoxOK [friend]

Definition at line 199 of file bcfilebox.h.

Referenced by create_objects().

friend class BC_NewFolderThread [friend]

Definition at line 200 of file bcfilebox.h.

Referenced by create_objects().

friend class BC_FileBoxUpdir [friend]

Definition at line 201 of file bcfilebox.h.

Referenced by create_objects().

friend class BC_FileBoxFilterText [friend]

Definition at line 202 of file bcfilebox.h.

Referenced by create_objects().

friend class BC_FileBoxFilterMenu [friend]

Definition at line 203 of file bcfilebox.h.

Referenced by create_objects().

friend class BC_FileBoxUseThis [friend]

Definition at line 204 of file bcfilebox.h.

Referenced by create_objects().

friend class BC_DeleteThread [friend]

Definition at line 205 of file bcfilebox.h.

Referenced by BC_FileBox().

friend class BC_FileBoxDelete [friend]

Definition at line 206 of file bcfilebox.h.

Referenced by create_objects().

friend class BC_FileBoxReload [friend]

Definition at line 207 of file bcfilebox.h.

Referenced by create_objects().

friend class BC_FileBoxRecent [friend]

Definition at line 208 of file bcfilebox.h.

Referenced by create_objects().


Field Documentation

BC_Pixmap* BC_FileBox::icons[TOTAL_ICONS] [private]

Definition at line 262 of file bcfilebox.h.

Referenced by create_icons(), get_icon(), and ~BC_FileBox().

Definition at line 263 of file bcfilebox.h.

Referenced by create_objects(), resize_event(), and update_history().

Definition at line 267 of file bcfilebox.h.

Referenced by BC_FileBox(), create_objects(), and resize_event().

Definition at line 268 of file bcfilebox.h.

Referenced by create_objects(), resize_event(), submit_dir(), and submit_file().

Definition at line 269 of file bcfilebox.h.

Referenced by create_objects(), and resize_event().

Definition at line 269 of file bcfilebox.h.

Referenced by create_objects(), and resize_event().

Definition at line 269 of file bcfilebox.h.

Referenced by create_objects(), and resize_event().

Definition at line 269 of file bcfilebox.h.

Referenced by create_objects(), and resize_event().

Definition at line 269 of file bcfilebox.h.

Referenced by create_objects(), and resize_event().

Definition at line 269 of file bcfilebox.h.

Referenced by create_objects(), and resize_event().

Definition at line 270 of file bcfilebox.h.

Referenced by create_objects(), and get_ok_button().

Definition at line 270 of file bcfilebox.h.

Referenced by create_objects(), and get_cancel_button().

Definition at line 271 of file bcfilebox.h.

Referenced by BC_FileBox(), create_objects(), and resize_event().

char BC_FileBox::caption[BCTEXTLEN] [private]

Definition at line 272 of file bcfilebox.h.

Referenced by create_objects().

char BC_FileBox::current_path[BCTEXTLEN] [private]

char BC_FileBox::submitted_path[BCTEXTLEN] [private]

char BC_FileBox::directory[BCTEXTLEN] [private]

char BC_FileBox::filename[BCTEXTLEN] [private]

Reimplemented in ShapeWipeLoad.

Definition at line 276 of file bcfilebox.h.

Referenced by BC_FileBox(), BC_FileBoxListBox::selection_changed(), submit_dir(), and submit_file().

char BC_FileBox::string[BCTEXTLEN] [private]

Definition at line 277 of file bcfilebox.h.

Referenced by get_path().

Definition at line 279 of file bcfilebox.h.

Referenced by BC_FileBox().

int BC_FileBox::sort_column [private]

int BC_FileBox::sort_order [private]

char* BC_FileBox::column_titles[FILEBOX_COLUMNS] [private]

Definition at line 284 of file bcfilebox.h.

Referenced by BC_FileBox(), move_column(), and refresh().

Definition at line 285 of file bcfilebox.h.

Referenced by create_objects(), and ~BC_FileBox().

int* BC_FileBox::column_type [private]

Definition at line 287 of file bcfilebox.h.

Referenced by BC_FileBox(), column_of_type(), create_tables(), move_column(), and ~BC_FileBox().

int* BC_FileBox::column_width [private]

int BC_FileBox::columns [private]

char BC_FileBox::new_folder_title[BCTEXTLEN] [private]

Definition at line 292 of file bcfilebox.h.

Referenced by get_delete_title(), and get_newfolder_title().

Definition at line 294 of file bcfilebox.h.

Referenced by BC_FileBox(), BC_FileBoxDelete::handle_event(), and ~BC_FileBox().

int BC_FileBox::h_padding [private]

Definition at line 295 of file bcfilebox.h.

Referenced by get_listbox_h().

Definition at line 296 of file bcfilebox.h.

Referenced by create_history(), update_history(), and ~BC_FileBox().


The documentation for this class was generated from the following files:

Generated on Mon Apr 28 14:13:15 2008 for Cinelerra by  doxygen 1.5.5