Migliorata gestione maisucole/minuscole in SSA

git-svn-id: svn://10.65.10.50/branches/R_10_00@22753 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 2012-10-26 09:10:17 +00:00
parent fc22ece6d4
commit d8d92f48c7
2 changed files with 39 additions and 40 deletions

View File

@ -4142,8 +4142,10 @@ RCT* xvt_vobj_get_client_rect(WINDOW win, RCT *rctp)
l = 4600; h = 6800; // circa A4 size at 600 DPI
break;
default:
CAST_WIN(win, w);
w.GetClientSize(&l, &h);
{
CAST_WIN(win, w);
w.GetClientSize(&l, &h);
}
break;
}
xvt_rect_set(rctp, 0, 0, l, h);
@ -4502,16 +4504,19 @@ void xvt_win_release_pointer(void)
void xvt_win_set_cursor(WINDOW win, CURSOR cursor)
{
CAST_WIN(win, w);
wxCursor cur;
switch (cursor)
{
case CURSOR_ARROW: cur = *wxSTANDARD_CURSOR; break;
case CURSOR_CROCE: cur = *wxCROSS_CURSOR; break;
case CURSOR_WAIT : cur = *wxHOURGLASS_CURSOR; break;
default: cur = xvtart_GetCursorResource(cursor); break; // Always succeeds
}
w.SetCursor(cur);
if (xvt_vobj_is_valid(win)) // Ignore seting cursor on invalid windows
{
CAST_WIN(win, w);
wxCursor cur;
switch (cursor)
{
case CURSOR_ARROW: cur = *wxSTANDARD_CURSOR; break;
case CURSOR_CROCE: cur = *wxCROSS_CURSOR; break;
case CURSOR_WAIT : cur = *wxHOURGLASS_CURSOR; break;
default: cur = xvtart_GetCursorResource(cursor); break; // Always succeeds
}
w.SetCursor(cur);
}
}
void xvt_win_set_handler(WINDOW win, EVENT_HANDLER eh)

View File

@ -10,7 +10,7 @@
static int _ssa_serial = SSA_UTENTE_NON_LOGGATO;
static wxString _ssa_module;
static const char* const _ssa_product = "CAMPO";
static const char* xvt_dongle_sa_id()
{
static char id[80];
@ -25,27 +25,6 @@ static const char* xvt_dongle_sa_id()
return id;
}
static const char* xvt_dongle_sa_product()
{
static const char* product = NULL;
if (product == NULL)
{
const char* const products[] = { "CAMPO", "Campo", "campo", NULL };
for (int i = 0; products[i]; i++)
{
if (SSA_Login(xvt_dongle_sa_id(), products[i]) == 0)
{
product = products[i];
break;
}
}
if (product == NULL)
product = products[0];
}
return product;
}
static BOOLEAN xvt_dongle_sa_is_remote_ba0()
{
BOOLEAN yes = FALSE;
@ -97,10 +76,10 @@ int xvt_dongle_sa_login(const char* module)
{
if (_ssa_serial < 0)
{
err = SSA_Login(xvt_dongle_sa_id(), xvt_dongle_sa_product());
err = SSA_Login(xvt_dongle_sa_id(), _ssa_product);
if (err == 0)
{
err = _ssa_serial = SSA_NumeroSerie(xvt_dongle_sa_product());
err = _ssa_serial = SSA_NumeroSerie(_ssa_product);
if (_ssa_timer == NULL && xvt_dongle_sa_is_remote_ba0())
_ssa_timer = new TSSA_Pinger;
}
@ -108,12 +87,19 @@ int xvt_dongle_sa_login(const char* module)
if (_ssa_serial >= 0 && module && *module)
{
err = SSA_ApriModulo(xvt_dongle_sa_id(), module);
wxString m = module;
err = SSA_ApriModulo(xvt_dongle_sa_id(), m);
if (err != 0 && *module >= 'a')
{
m.MakeUpper();
err = SSA_ApriModulo(xvt_dongle_sa_id(), m);
}
if (err == 0)
{
if (!_ssa_module.IsEmpty())
xvt_dongle_sa_logout(_ssa_module);
_ssa_module = module;
_ssa_module = m;
}
}
}
@ -151,7 +137,7 @@ int xvt_dongle_sa_logout(const char* module)
}
else
{
err = SSA_Logout(xvt_dongle_sa_id(), xvt_dongle_sa_product());
err = SSA_Logout(xvt_dongle_sa_id(), _ssa_product);
if (err == 0)
{
_ssa_serial = SSA_UTENTE_NON_LOGGATO;
@ -171,6 +157,14 @@ int xvt_dongle_sa_test(const char* module)
{
int err = _ssa_serial;
if (err >= 0 && module && *module)
err = SSA_VerificaModulo("Campo", module);
{
wxString m = module;
err = SSA_VerificaModulo(_ssa_product, m);
if (err != 0 && *module >= 'a')
{
m.MakeUpper();
err = SSA_VerificaModulo(_ssa_product, m);
}
}
return err;
}