Aggiunto controllo di abilitazione dei moduli corrispondenti ad
ogni singola voce di menu inferendolo dalle prime due lettere git-svn-id: svn://10.65.10.50/trunk@5647 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
1ea0f9dc35
commit
620354eed9
51
ba/ba0.cpp
51
ba/ba0.cpp
@ -1368,7 +1368,7 @@ bool TMenu_application::choose_colors()
|
||||
TColor_mask * cm = new TColor_mask();
|
||||
if (cm->run() == K_ENTER)
|
||||
{
|
||||
cm->save_colors(); // Aggiorna config
|
||||
cm->save_colors(); // Aggiorna config
|
||||
customize_colors(); // Aggiorna set di colori
|
||||
|
||||
reload_images(); // Aggiorna bitmaps del menu
|
||||
@ -1387,7 +1387,9 @@ bool TMenu_application::choose_colors()
|
||||
}
|
||||
|
||||
HIDDEN bool browse_file_handler(TMask_field& f, KEY k)
|
||||
{
|
||||
{
|
||||
bool ok = TRUE;
|
||||
|
||||
if (k == K_F9)
|
||||
{
|
||||
FILE_SPEC fs; memset(&fs, 0, sizeof(FILE_SPEC));
|
||||
@ -1395,19 +1397,34 @@ HIDDEN bool browse_file_handler(TMask_field& f, KEY k)
|
||||
strcpy(fs.type, "EXE");
|
||||
strcpy(fs.name, f.get());
|
||||
strcpy(fs.creator, "ba0");
|
||||
|
||||
xvt_fsys_save_dir();
|
||||
if (xvt_dm_post_file_open(&fs, "Selezione programma") == FL_OK)
|
||||
|
||||
DIRECTORY dir;
|
||||
xvt_fsys_get_dir(&dir);
|
||||
const int err = xvt_dm_post_file_open(&fs, "Selezione programma");
|
||||
xvt_fsys_set_dir(&dir);
|
||||
if (err == FL_OK)
|
||||
{
|
||||
TFilename n;
|
||||
xvt_fsys_convert_dir_to_str(&fs.dir, n.get_buffer(n.size()), n.size());
|
||||
xvt_fsys_convert_dir_to_str(&fs.dir, n.get_buffer(), n.size());
|
||||
n.add(fs.name);
|
||||
f.set(n);
|
||||
xvt_fsys_restore_dir();
|
||||
}
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
if (k == K_TAB && f.focusdirty())
|
||||
{
|
||||
TFilename infile(f.get());
|
||||
if (infile.not_empty())
|
||||
{
|
||||
TFilename outfile;
|
||||
if (*infile.ext() == '\0')
|
||||
infile.ext("exe");
|
||||
if (!infile.search_in_path(outfile))
|
||||
ok = error_box("Il programma %s non esiste!", (const char*)infile);
|
||||
}
|
||||
}
|
||||
|
||||
return ok;
|
||||
}
|
||||
|
||||
HIDDEN bool link_notify(TSheet_field& s, int r, KEY k)
|
||||
@ -1435,29 +1452,25 @@ bool TMenu_application::choose_editors()
|
||||
sm.set_handler(102, browse_file_handler);
|
||||
|
||||
TAssoc_array& var = (TAssoc_array&)link.list_variables();
|
||||
var.restart();
|
||||
|
||||
for (THash_object* hobj = var.get_hashobj(); hobj; hobj = var.get_hashobj())
|
||||
FOR_EACH_ASSOC_STRING(var, obj, key, str)
|
||||
{
|
||||
TToken_string& row = sheet.row(-1);
|
||||
row = hobj->key();
|
||||
row = key;
|
||||
row.lower();
|
||||
if (row.compare("txt", -1, TRUE) == 0)
|
||||
sheet.disable_cell(sheet.items()-1, 0);
|
||||
row.add((TString&)hobj->obj());
|
||||
row.add(str);
|
||||
}
|
||||
sheet.rows_array().sort();
|
||||
|
||||
if (m.run() == K_ENTER)
|
||||
{
|
||||
link.remove_all();
|
||||
for (int r = sheet.items()-1; r >= 0; r--)
|
||||
FOR_EACH_SHEET_ROW_BACK(sheet, r, row)
|
||||
{
|
||||
TToken_string& row = sheet.row(r);
|
||||
TString16 ext = row.get(0);
|
||||
TString16 ext = row->get(0);
|
||||
if (!ext.blank())
|
||||
{
|
||||
ext.lower();
|
||||
TFilename prg = row.get();
|
||||
TFilename prg = row->get();
|
||||
link.set(ext, prg);
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user