Patch level : 4.0 912

Files correlati     : ba7.exe
Ricompilazione Demo : [ ]
Commento           :

Risitemato il semaforo del postino


git-svn-id: svn://10.65.10.50/trunk@16344 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
alex 2008-03-20 09:25:41 +00:00
parent 3949ca1ff5
commit 88f78c69b0

View File

@ -483,7 +483,7 @@ protected:
public: public:
void test_delete(); void test_delete();
int fill_messages(); void fill_messages();
bool save_sheet_line(int& err, int line = -1); bool save_sheet_line(int& err, int line = -1);
void save_all_lines(); void save_all_lines();
void auto_save_all(); void auto_save_all();
@ -497,6 +497,9 @@ public:
void TMailer_mask::test_delete() void TMailer_mask::test_delete()
{ {
if (_mail_semaphore != 0)
return;
_mail_semaphore = 1;
TWait_cursor hourglass; TWait_cursor hourglass;
xvtil_statbar_set(TR("Eliminazione messaggi...")); xvtil_statbar_set(TR("Eliminazione messaggi..."));
@ -525,22 +528,24 @@ void TMailer_mask::test_delete()
break; break;
} }
deleted = mailbox.remove(id); deleted = mailbox.remove(id);
} else
if (mailer == "CNP")
{
TFilename file;
row->get(sender_pos, file); // Cartella di provenienza
file.add(id);
file.ext("ini");
deleted = xvt_fsys_removefile(file) != 0;
} else
if (mailer == "MAPI")
{
TMail_message* msg = new TMail_message("");
msg->set_id(id);
mapidel.add(msg);
deleted = true;
} }
else
if (mailer == "CNP")
{
TFilename file;
row->get(sender_pos, file); // Cartella di provenienza
file.add(id);
file.ext("ini");
deleted = xvt_fsys_remove_file(file) != 0;
}
else
if (mailer == "MAPI")
{
TMail_message* msg = new TMail_message("");
msg->set_id(id);
mapidel.add(msg);
deleted = true;
}
if (deleted) if (deleted)
{ {
_box.destroy(nrow); _box.destroy(nrow);
@ -567,6 +572,7 @@ void TMailer_mask::test_delete()
xvtil_statbar_set(TR("Pronto")); xvtil_statbar_set(TR("Pronto"));
do_events(); do_events();
_mail_semaphore = 0;
} }
void TMailer_mask::expand_tabs(TMail_message& msg, const int tab) const void TMailer_mask::expand_tabs(TMail_message& msg, const int tab) const
@ -658,8 +664,12 @@ void TMailer_mask::scan_dir(const TFilename& dir, TMail_messages& box) const
} }
} }
int TMailer_mask::fill_messages() void TMailer_mask::fill_messages()
{ {
if (_mail_semaphore != 0)
return;
_mail_semaphore = 1;
TWait_cursor hourglass; TWait_cursor hourglass;
TFilename server(get(F_SERVER)); TFilename server(get(F_SERVER));
@ -743,7 +753,8 @@ int TMailer_mask::fill_messages()
xvtil_statbar_set(TR("Pronto")); xvtil_statbar_set(TR("Pronto"));
return sf.items(); _mail_semaphore = 0;
return;
} }
bool TMailer_mask::file2app(const TString& file, TString& app) const bool TMailer_mask::file2app(const TString& file, TString& app) const
@ -1118,6 +1129,10 @@ void TMailer_mask::find_redundant_messages()
void TMailer_mask::save_all_lines() void TMailer_mask::save_all_lines()
{ {
if (_mail_semaphore != 0)
return;
_mail_semaphore = 1;
TBrowsefile_field& bf = (TBrowsefile_field&)field(F_LOG); TBrowsefile_field& bf = (TBrowsefile_field&)field(F_LOG);
TViswin& vv = bf.vis_win(); TViswin& vv = bf.vis_win();
@ -1189,6 +1204,7 @@ void TMailer_mask::save_all_lines()
vv.goto_end(); vv.goto_end();
sf.force_update(); // Fai apparire tutte le X sf.force_update(); // Fai apparire tutte le X
_mail_semaphore = 0;
#ifdef DBG #ifdef DBG
if (one_saved && yesno_box("Si desidera eliminare i messaggi processati?")) if (one_saved && yesno_box("Si desidera eliminare i messaggi processati?"))
@ -1230,10 +1246,7 @@ bool TMailer_mask::on_field_event(TOperable_field& o, TField_event e, long jolly
if (!field(F_SERVER).empty() && if (!field(F_SERVER).empty() &&
!field(F_USER).empty() && !field(F_USER).empty() &&
!field(F_PASSWORD).empty()) !field(F_PASSWORD).empty())
{
// auto_save_all(); // Un po' troppo precipitoso: non permette di intervenire all'accensione
fill_messages(); fill_messages();
}
} else } else
if (e == se_query_add) if (e == se_query_add)
{ {