Patch level : 2.2

Files correlati     : ba1 ba2
Ricompilazione Demo : [ ]
Commento            :
Tolta qualche progind inutile


git-svn-id: svn://10.65.10.50/trunk@13943 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 2006-04-26 15:22:42 +00:00
parent af646cd925
commit 9215e428fd
2 changed files with 27 additions and 18 deletions

View File

@ -251,8 +251,8 @@ int TInstaller_mask::precheck_modules(bool only_newer)
int TInstaller_mask::get_module_number(const TString& module) const int TInstaller_mask::get_module_number(const TString& module) const
{ {
int aut = -1; int aut = -1;
bool ok = FALSE; bool ok = false;
if (module.not_empty()) if (module.full())
{ {
if (module == "ba" || module == "sy") //moduli base e sistema: deve ritornare 0; if (module == "ba" || module == "sy") //moduli base e sistema: deve ritornare 0;
return 0; return 0;
@ -265,7 +265,6 @@ int TInstaller_mask::get_module_number(const TString& module) const
return ok ? aut : -1; return ok ? aut : -1;
} }
void TInstaller_mask::update_version() void TInstaller_mask::update_version()
{ {
TInstall_ini ini; TInstall_ini ini;
@ -792,7 +791,8 @@ bool TInstaller_mask::install(const TString& module, int patchlevel)
if (is_a_patch) if (is_a_patch)
msg << TR(" della patch ") << patchlevel ; msg << TR(" della patch ") << patchlevel ;
msg << TR(" del modulo '") << module << TR("' in corso..."); msg << TR(" del modulo '") << module << TR("' in corso...");
TProgind pi(dischi, msg, FALSE, TRUE); xvtil_statbar_set(msg);
TFilename tempdir; tempdir.tempdir(); TFilename tempdir; tempdir.tempdir();
// File tottale dei vari sotto-zip // File tottale dei vari sotto-zip
@ -804,7 +804,7 @@ bool TInstaller_mask::install(const TString& module, int patchlevel)
chunk.add(module); chunk.add(module);
if (patchlevel > 0) if (patchlevel > 0)
{ {
TString16 name; TString8 name;
name.format("%04da", patchlevel); name.format("%04da", patchlevel);
chunk << name; chunk << name;
} }
@ -843,10 +843,7 @@ bool TInstaller_mask::install(const TString& module, int patchlevel)
} }
if (ok) if (ok)
{
::fcopy(chunk, totti, d > 1); // Somma il chunk al totale ::fcopy(chunk, totti, d > 1); // Somma il chunk al totale
pi.addstatus(1);
}
} }
aga_unzip(totti, tempdir); // Scompatta il file totale aga_unzip(totti, tempdir); // Scompatta il file totale
::remove(totti); ::remove(totti);
@ -879,7 +876,8 @@ bool TInstaller_mask::install(const TString& module, int patchlevel)
{ {
msg.cut(0); msg.cut(0);
msg << TR("Aggiornamento del modulo '") << module << TR("' in corso..."); msg << TR("Aggiornamento del modulo '") << module << TR("' in corso...");
pi.set_text(msg); xvtil_statbar_set(msg);
ok = move_module(module, *ini, TRUE); ok = move_module(module, *ini, TRUE);
if (ok) if (ok)
@ -904,7 +902,7 @@ bool TInstaller_mask::install(const TString& module, int patchlevel)
} }
ok &= move_module(submod, *ini, upd); ok &= move_module(submod, *ini, upd);
if (upd && ok) // marca sull'install.ini di destinazione l'avvenuta installazione del sottomodulo "esterno" if (upd && ok) // marca sull'install.ini di destinazione l'avvenuta installazione del sottomodulo "esterno"
ini->export_paragraph(submod, ini->default_name(),!is_a_patch); ini->export_paragraph(submod, ini->default_name(), !is_a_patch);
} }
} }
} }
@ -1126,26 +1124,38 @@ bool TInstaller_mask::path_handler(TMask_field& fld, KEY key)
void TInstaller_mask::install_selection() void TInstaller_mask::install_selection()
{ {
TString_array& arr = rows_array(); TString_array& arr = rows_array();
_sys_installed = false; _sys_installed = false;
int nModules = 0;
{
FOR_EACH_ARRAY_ROW(arr, r, row)
{
if (checked(r))
nModules++;
}
}
TProgind pi(nModules, "Installazione", true, true);
FOR_EACH_ARRAY_ROW(arr, r, row) if (checked(r)) FOR_EACH_ARRAY_ROW(arr, r, row) if (checked(r))
{ {
if (!pi.addstatus(1))
break;
const TString newver = row->get(C_RELEASE); const TString newver = row->get(C_RELEASE);
if (newver.blank()) if (newver.blank())
{ {
check(r, FALSE); check(r, FALSE);
continue; continue;
} }
const TString modulo = row->get(C_CODE); const TString4 modulo = row->get(C_CODE);
const int newpatch = row->get_int(C_PATCH); const int newpatch = row->get_int(C_PATCH);
const TString oldver = row->get(C_CURRRELEASE); const TString oldver = row->get(C_CURRRELEASE);
const int oldpatch = row->get_int(C_CURRPATCH); const int oldpatch = row->get_int(C_CURRPATCH);
if (version2year(newver) < 1998) pi.set_text(format(FR("Installazione modulo '%s'"), (const char*)modulo));
if (version2year(newver) < 2003)
{ {
error_box(FR("Il modulo '%s' non ha una versione valida."), (const char*)modulo); error_box(FR("Il modulo '%s' non ha una versione valida."), (const char*)modulo);
continue; continue;

View File

@ -1,15 +1,14 @@
#include <limits.h>
#include <agasys.h> #include <agasys.h>
#include <automask.h> #include <automask.h>
#include <execp.h> #include <execp.h>
#include <isam.h> #include <isam.h>
#include <mailbox.h> #include <mailbox.h>
#include <prefix.h>
#include <progind.h> #include <progind.h>
#include <utility.h> #include <utility.h>
#include <limits.h>
#include "ba2200.h" #include "ba2200.h"
#include "ba2201.h" #include "ba2201.h"
@ -494,7 +493,7 @@ void TArchive_app::restore(int mode, long firm, const TFilename& floppy_path)
{ {
if (firm > 0) if (firm > 0)
{ {
TString16 para; para.format("%05lda", firm); TString8 para; para.format("%05lda", firm);
read_paragraph(ini, para); read_paragraph(ini, para);
} }
else else