void onelabGroup::openTreeItem(const std::string &name) { Fl_Tree_Item *n = _tree->find_item(name.c_str()); if(n && n->has_children()){ n->open(); _tree->redraw(); } }
void Fineline_File_System_Tree::assign_user_icons() { static const char *L_folder_xpm[] = { "11 11 3 1", ". c None", "x c #d8d833", "@ c #808011", "...........", ".....@@@@..", "....@xxxx@.", "@@@@@xxxx@@", "@xxxxxxxxx@", "@xxxxxxxxx@", "@xxxxxxxxx@", "@xxxxxxxxx@", "@xxxxxxxxx@", "@xxxxxxxxx@", "@@@@@@@@@@@"}; static Fl_Pixmap L_folderpixmap(L_folder_xpm); static const char *L_document_xpm[] = { "11 11 3 1", ". c None", "x c #d8d8f8", "@ c #202060", ".@@@@@@@@@.", ".@xxxxxxx@.", ".@xxxxxxx@.", ".@xxxxxxx@.", ".@xxxxxxx@.", ".@xxxxxxx@.", ".@xxxxxxx@.", ".@xxxxxxx@.", ".@xxxxxxx@.", ".@xxxxxxx@.", ".@@@@@@@@@."}; static Fl_Pixmap L_documentpixmap(L_document_xpm); // Assign user icons to tree items for ( Fl_Tree_Item *item = first(); item; item=item->next()) { item->usericon(item->has_children() ? &L_folderpixmap : &L_documentpixmap); } }
void Fineline_File_System_Tree::unmark_file() { Fl_Tree_Item *flti = first_selected_item(); fl_file_record_t *flrec = NULL; char file_path[FL_PATH_MAX]; // FL_PATH_MAX 2048 is an FLTK constant, Fineline FL_PATH_MAX_LENGTH 4096 string full_path; if (flti != 0) { if (item_pathname(file_path, FL_PATH_MAX, flti) != 0) { Fineline_Log::print_log_entry("Fineline_File_System_Tree::unmark_file() <ERROR> Could not get tree item path."); fl_message(" <ERROR> Could not get tree item. "); return; } full_path.append(file_path); flrec = find_file(full_path); if (flrec != NULL) { flrec->marked = 0; flti->labelcolor(FL_FOREGROUND_COLOR); flti->labelfont(FL_COURIER); if (flrec->file_type == TSK_FS_META_TYPE_DIR) //If a directory then mark all the files in the directory. { //TODO: recursively iterate through the tree subdirectory children and mark each one. if (flti->has_children()) { unmark_children(flti); } } Fl::awake(); } } return; }