Aggiunta gestione password

MIgliorato controllo degli errori negli sheet


git-svn-id: svn://10.65.10.50/trunk@625 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 1994-11-15 11:23:24 +00:00
parent cbfb9ffe34
commit e577b60ffc
15 changed files with 180 additions and 138 deletions

View File

@ -1,87 +1,96 @@
#include <bagn003.h> #include <bagn003.h>
PAGE "CAMPO DI STAMPA" -1 -1 60 12 PAGE "CAMPO DI STAMPA" -1 -1 60 12
LIST F_CLASS 10 LIST F_CLASS 10
BEGIN BEGIN
PROMPT 1 1 "Tipo " PROMPT 1 1 "Tipo "
FLAGS "D" FLAGS "D"
ITEM "STRING|Testo" MESSAGE HIDE,2@ ITEM "STRING|Testo" MESSAGE HIDE,2@
ITEM "NUMBER|Numero" MESSAGE SHOW,2@ ITEM "NUMBER|Numero" MESSAGE SHOW,2@
ITEM "DATE|Data" MESSAGE HIDE,2@ ITEM "DATE|Data" MESSAGE HIDE,2@
ITEM "LIST|Selettore" MESSAGE HIDE,2@ ITEM "LIST|Selettore" MESSAGE HIDE,2@
END END
STRING F_KEY 44 STRING F_KEY 44
BEGIN BEGIN
PROMPT 1 2 "Descrizione " PROMPT 1 2 "Descrizione "
END HELP "Descrizione del campo da configurare"
END
NUMBER F_Y 3
BEGIN NUMBER F_Y 3
PROMPT 1 4 "Riga " BEGIN
END PROMPT 1 4 "Riga "
HELP "Riga in cui stampare il campo"
NUMBER F_X 3 END
BEGIN
PROMPT 21 4 "Colonna " NUMBER F_X 3
END BEGIN
PROMPT 21 4 "Colonna "
NUMBER F_WIDTH 3 HELP "Colonna in cui stampare il campo"
BEGIN END
PROMPT 41 4 "Dimensione "
END NUMBER F_WIDTH 3
BEGIN
STRING F_PROMPT 40 PROMPT 41 4 "Dimensione "
BEGIN HELP "Lunghezza di stampa del campo"
PROMPT 1 5 "Testo " END
END
STRING F_PROMPT 40
BOOLEAN F_HIDDEN BEGIN
BEGIN PROMPT 1 5 "Testo "
PROMPT 1 6 "Nascosto" HELP "Eventuale commento al valore del campo"
END END
BOOLEAN F_DISABLED BOOLEAN F_HIDDEN
BEGIN BEGIN
PROMPT 21 6 "Disabilitato" PROMPT 1 6 "Nascosto"
END HELP "Inidcare se il campo va calcolato ma non visualizzato"
END
BOOLEAN F_AUTOMAGIC
BEGIN BOOLEAN F_DISABLED
PROMPT 41 6 "Automatico" BEGIN
FLAGS "H" PROMPT 21 6 "Disabilitato"
END HELP "Indicare se il campo viene ignorato"
END
STRING F_FIELD 24
BEGIN BOOLEAN F_AUTOMAGIC
PROMPT 1 7 "Campo su file " BEGIN
FLAGS "H" PROMPT 41 6 "Automatico"
END FLAGS "H"
END
STRING F_PICTURE 16
BEGIN STRING F_FIELD 24
PROMPT 1 8 "Formato di stampa " BEGIN
GROUP 2 PROMPT 1 7 "Campo su file "
END FLAGS "H"
END
STRING F_GROUP 16 STRING F_PICTURE 16
BEGIN BEGIN
PROMPT 1 9 "Gruppo di stampa " PROMPT 1 8 "Formato di stampa "
END HELP "Indicare il formato in cui stampare il campo (vedi codici sul manuale)"
GROUP 2
END
BUTTON DLG_OK 9 2
BEGIN
PROMPT -12 -1 "" STRING F_GROUP 16
END BEGIN
PROMPT 1 9 "Gruppo di stampa "
BUTTON DLG_CANCEL 9 2 HELP "Indicare il numero del gruppo nel quale rientra il campo"
BEGIN END
PROMPT -22 -1 ""
END
BUTTON DLG_OK 9 2
ENDPAGE BEGIN
PROMPT -12 -1 ""
ENDMASK END
BUTTON DLG_CANCEL 9 2
BEGIN
PROMPT -22 -1 ""
END
ENDPAGE
ENDMASK

View File

@ -5,7 +5,7 @@ PAGE "IMPOSTAZIONE STAMPANTE" -1 -1 76 13
RADIOBUTTON MSK_1_TYPE 70 RADIOBUTTON MSK_1_TYPE 70
BEGIN BEGIN
PROMPT 1 1 "Stampa su..." PROMPT 1 1 "Stampa su..."
HELP "Selezionare il tipo di stampa" HELP "Selezionare il tipo dove direzionare la stampa"
ITEM "0|Stampante" ITEM "0|Stampante"
MESSAGE HIDE,MSK_1_FILENAME|RESET,MSK_1_FILENAME|SHOW,MSK_1_PRINTERS MESSAGE HIDE,MSK_1_FILENAME|RESET,MSK_1_FILENAME|SHOW,MSK_1_PRINTERS
MESSAGE ENABLE,MSK_1_PRINTERS MESSAGE ENABLE,MSK_1_PRINTERS
@ -33,20 +33,20 @@ LIST MSK_1_PRINTERS 50
BEGIN BEGIN
/* viene riempito a run-time con nomi letti da config */ /* viene riempito a run-time con nomi letti da config */
PROMPT 4 5 "Stampante " PROMPT 4 5 "Stampante "
HELP "Selezionare la stampante desiderata" HELP "Selezionare il tipo di stampante desiderata"
END END
STRING MSK_1_FILENAME 52 STRING MSK_1_FILENAME 52
BEGIN BEGIN
PROMPT 4 5 "Nome file " PROMPT 4 5 "Nome file "
HELP "Inserire qui il nome del file in caso di stampa su file" HELP "Nome del file su cui direzionare la stampa"
END END
LIST MSK_1_CODES 40 LIST MSK_1_CODES 40
BEGIN BEGIN
PROMPT 4 6 "Tipo stampa " PROMPT 4 6 "Tipo stampa "
/* pure */ /* pure */
HELP "Selezionare la modalita' nelle quale si desidera la stampa" HELP "Modalita' nelle quale si desidera la stampa"
END END
LIST MSK_1_SIZE 3 LIST MSK_1_SIZE 3
@ -58,7 +58,7 @@ BEGIN
ITEM "12|12" ITEM "12|12"
ITEM "15|15" ITEM "15|15"
ITEM "17|17" ITEM "17|17"
HELP "Selezionare le dimensioni del carattere di stampa" HELP "Dimensioni del carattere di stampa"
END END
LIST MSK_1_LINES 3 LIST MSK_1_LINES 3
@ -71,12 +71,13 @@ BEGIN
ITEM "8|8" ITEM "8|8"
ITEM "9|9" ITEM "9|9"
ITEM "10|10" ITEM "10|10"
HELP "Selezionare il numero di linee per pollice" HELP "Numero di linee per pollice"
END END
LIST MSK_1_FONT 10 LIST MSK_1_FONT 10
BEGIN BEGIN
PROMPT 4 6 "Font " PROMPT 4 6 "Font "
HELP "Font di stampa su video o stampante"
ITEM "1|Courier" ITEM "1|Courier"
FLAGS "D" FLAGS "D"
END END
@ -84,12 +85,13 @@ END
NUMBER MSK_1_NPAGES 3 0 NUMBER MSK_1_NPAGES 3 0
BEGIN BEGIN
PROMPT 54 8 "N.o copie " PROMPT 54 8 "N.o copie "
HELP "Numero di copie da fare"
END END
BOOLEAN MSK_1_ISGRAPHICS BOOLEAN MSK_1_ISGRAPHICS
BEGIN BEGIN
PROMPT 4 8 "Stampa elementi grafici" PROMPT 4 8 "Stampa elementi grafici"
HELP "Stampa elementi grafici (linee, box, logo) se la stampante lo consente" HELP "Indicare se stampare elementi grafici (linee, box, logo) quando la stampante lo consente"
END END

View File

@ -5,7 +5,7 @@ PAGE "Selezione Ditta" -1 -1 64 7
NUMBER F_CODDITTA 5 NUMBER F_CODDITTA 5
BEGIN BEGIN
PROMPT 1 1 "Codice " PROMPT 1 1 "Codice "
HELP "Codice della ditta" HELP "Codice della ditta da attivare"
FLAGS "FR" FLAGS "FR"
USE LF_NDITTE KEY 1 USE LF_NDITTE KEY 1
CHECKTYPE NORMAL CHECKTYPE NORMAL
@ -22,6 +22,7 @@ END
LIST F_TIPO 20 LIST F_TIPO 20
BEGIN BEGIN
PROMPT 40 1 "" PROMPT 40 1 ""
HELP "Tipo di dati da selezionare"
ITEM "0|Ditte" ITEM "0|Ditte"
MESSAGE ENABLE,1@ MESSAGE ENABLE,1@
ITEM "1|Dati comuni" ITEM "1|Dati comuni"
@ -36,7 +37,7 @@ STRING F_RAGSOC 50
BEGIN BEGIN
PROMPT 1 3 "Rag. Soc. " PROMPT 1 3 "Rag. Soc. "
USE LF_NDITTE KEY 2 USE LF_NDITTE KEY 2
HELP "Ragione sociale della ditta" HELP "Ragione sociale della ditta da selezionare"
INPUT RAGSOC F_RAGSOC INPUT RAGSOC F_RAGSOC
DISPLAY "Ragione sociale@50" RAGSOC DISPLAY "Ragione sociale@50" RAGSOC
DISPLAY "Codice" CODDITTA DISPLAY "Codice" CODDITTA

View File

@ -24,7 +24,7 @@ END
STRING F_FILE_DESTINAZIONE 13 STRING F_FILE_DESTINAZIONE 13
BEGIN BEGIN
PROMPT 27 4 "Nome file " PROMPT 27 4 "Nome file "
HELP "Assegna il nome del file che verra' generato" HELP "Nome del file che verra' generato"
END END
STRING F_LABEL 12 STRING F_LABEL 12
@ -52,4 +52,3 @@ END
ENDPAGE ENDPAGE
ENDMASK ENDMASK

View File

@ -185,7 +185,7 @@ void TControl::create(
_win = xvtcm_create(id, left, top, right, bottom, _win = xvtcm_create(id, left, top, right, bottom,
prop_count, (char**)prop_list, parent, prop_count, (char**)prop_list, parent,
0, 0, NULL, handler, set_creation_args); 0, 0, NULL, handler, set_creation_args);
CHECKS(_win, "Can't create control ", title); CHECKD(_win, "Can't create control ", id);
creating = NULL; creating = NULL;
set_app_data(_win, app_data); set_app_data(_win, app_data);

View File

@ -55,6 +55,7 @@ protected:
// Ritorna la finestra della pagina corrente (Usare con attenzione) // Ritorna la finestra della pagina corrente (Usare con attenzione)
WINDOW win() const { return _page == -1 ? NULL_WIN : _pagewin[_page]; } WINDOW win() const { return _page == -1 ? NULL_WIN : _pagewin[_page]; }
WINDOW toolwin() const { return _pagewin[MAX_PAGES]; } WINDOW toolwin() const { return _pagewin[MAX_PAGES]; }
WINDOW fieldwin(short id) const { return field(id).win(); }
int find_field_win(WINDOW win) const; // number of field with window win int find_field_win(WINDOW win) const; // number of field with window win

View File

@ -1,4 +1,4 @@
// $Id: maskfld.cpp,v 1.46 1994-11-14 13:22:38 guy Exp $ // $Id: maskfld.cpp,v 1.47 1994-11-15 11:23:06 guy Exp $
#include <xvt.h> #include <xvt.h>
#include <applicat.h> #include <applicat.h>
@ -37,6 +37,7 @@ TMask_field::TField_Flags::TField_Flags()
dirty = focusdirty = FALSE; dirty = focusdirty = FALSE;
roman = exchange = FALSE; roman = exchange = FALSE;
firm = ghost = FALSE; firm = ghost = FALSE;
password = FALSE;
} }
// Certified 100% // Certified 100%
@ -46,6 +47,8 @@ char TMask_field::TField_Flags::update(const char* s)
for (; *s; s++) for (; *s; s++)
switch(toupper(*s)) switch(toupper(*s))
{ {
case '*':
password = TRUE; break;
case 'A': case 'A':
automagic = persistent = TRUE; break; automagic = persistent = TRUE; break;
case 'D': case 'D':
@ -1443,13 +1446,18 @@ KEY TBrowse::run()
TToken_string* sib = siblings.empty() ? NULL : &siblings; TToken_string* sib = siblings.empty() ? NULL : &siblings;
byte buttons = 0; byte buttons = 0;
if (_insert.not_empty()) if (_insert.not_empty())
{ {
TFilename path;
if (_insert[0] == 'M') if (_insert[0] == 'M')
buttons = 1; path = "ba3 -0";
else else
{ {
TExternal_app a(_insert.mid(1)); path = _insert.mid(1);
if (a.can_run()) buttons = 1; if (main_app().name() != cmd2name(path)) // Se non lancerei me stesso e ...
{
TExternal_app a(path);
if (a.can_run()) buttons = 1; // ... se c'e' memoria
}
} }
} }
@ -1816,7 +1824,10 @@ void TEdit_field::create(WINDOW parent)
{ {
const int len = create_prompt(parent); const int len = create_prompt(parent);
long align = _flags.rightjust ? CTL_FLAG_RIGHT_JUST : CTL_FLAG_LEFT_JUST; long bandiere = _flags.rightjust ? CTL_FLAG_RIGHT_JUST : CTL_FLAG_LEFT_JUST;
if (_flags.uppercase) bandiere |= CTL_FLAG_MAC_GENEVA9;
if (_flags.password) bandiere |= CTL_FLAG_MAC_MONACO9;
_x += len; _x += len;
#if XVTWS == WMWS #if XVTWS == WMWS
@ -1825,14 +1836,11 @@ void TEdit_field::create(WINDOW parent)
const int delta = 1; const int delta = 1;
#endif #endif
wincreate(WC_EDIT, _width+delta, 1, _str, parent, align); wincreate(WC_EDIT, _width+delta, 1, _str, parent, bandiere);
#if XVT_OS == XVT_OS_WIN #if XVT_OS == XVT_OS_WIN
HWND hwnd = (HWND)get_value(win(), ATTR_NATIVE_WINDOW); HWND hwnd = (HWND)get_value(win(), ATTR_NATIVE_WINDOW);
SendMessage(hwnd, EM_LIMITTEXT, _size, 0L); // Limita il testo SendMessage(hwnd, EM_LIMITTEXT, _size, 0L); // Limita il testo
long style = GetWindowLong(hwnd, GWL_STYLE);
if (_flags.uppercase) style != ES_UPPERCASE; // Edit in maiuscolo
SetWindowLong(hwnd, GWL_STYLE, style);
#endif #endif
if (_browse || _sheet) if (_browse || _sheet)

View File

@ -1,4 +1,4 @@
/* $Id: maskfld.h,v 1.8 1994-11-14 10:00:04 guy Exp $ */ /* $Id: maskfld.h,v 1.9 1994-11-15 11:23:11 guy Exp $ */
#ifndef __MASKFLD_H #ifndef __MASKFLD_H
#define __MASKFLD_H #define __MASKFLD_H
@ -70,6 +70,7 @@ protected:
bool firm : 1; // Is the current firm ? bool firm : 1; // Is the current firm ?
bool focusdirty : 1; // Modified during focus ? bool focusdirty : 1; // Modified during focus ?
bool ghost : 1; bool ghost : 1;
bool password : 1;
bool persistent : 1; bool persistent : 1;
bool rightjust : 1; bool rightjust : 1;
bool roman : 1; // Is a Roman number ? bool roman : 1; // Is a Roman number ?

View File

@ -624,6 +624,7 @@ break;
{ {
set_dirty(3); set_dirty(3);
xiev->refused = TRUE; xiev->refused = TRUE;
mask2str(_cur_row);
} }
} }
break; break;

View File

@ -1 +1 @@
#define VERSION 1.16 #define VERSION 1.15

View File

@ -18,7 +18,6 @@
HIDDEN const char* const glockname = "xx"; HIDDEN const char* const glockname = "xx";
TPrefix::TPrefix() TPrefix::TPrefix()
{ {
CHECK(prefhndl == NULL, "Can't create two prefix objects"); CHECK(prefhndl == NULL, "Can't create two prefix objects");
@ -27,6 +26,14 @@ TPrefix::TPrefix()
_recfl = recfl; _recfl = recfl;
_fdir = fdir; _fdir = fdir;
_rdir = rdir; _rdir = rdir;
CGetPref();
const long primaditta = atol(cprefix);
if (primaditta > 0 && !exist(primaditta))
{
ofstream out_pr("prefix.txt");
out_pr << "com" << endl;
}
} }

View File

@ -1,4 +1,4 @@
// $Id: relapp.cpp,v 1.27 1994-11-14 13:22:46 guy Exp $ // $Id: relapp.cpp,v 1.28 1994-11-15 11:23:19 guy Exp $
#include <mailbox.h> #include <mailbox.h>
#include <sheet.h> #include <sheet.h>
#include <urldefid.h> #include <urldefid.h>
@ -562,7 +562,7 @@ bool TRelation_application::save(bool check_dirty)
KEY k; KEY k;
if (errore) if (errore)
{ {
if (annulla) k = yesno_box("Annullare %s?", ms); if (annulla) k = yesno_box("Annullare %s?", ms) ? K_NO : K_ESC;
else k = K_ESC; else k = K_ESC;
} }
else else
@ -592,7 +592,8 @@ bool TRelation_application::save(bool check_dirty)
} }
} }
was_dirty = FALSE; was_dirty = FALSE;
xvt_statbar_set("Registrazione in corso ...");
if (mode == MODE_INS) if (mode == MODE_INS)
{ {
bool changed = TRUE; bool changed = TRUE;

View File

@ -4,7 +4,6 @@
#define __STDTYPES_CPP #define __STDTYPES_CPP
#include <extcdecl.h> #include <extcdecl.h>
#include <lffiles.h>
#include <conf.h> #include <conf.h>
#include <modaut.h> #include <modaut.h>
@ -34,7 +33,8 @@ void init_global_vars()
CHECK(prefhndl == NULL, "Can't init global vars two times"); CHECK(prefhndl == NULL, "Can't init global vars two times");
prefhndl = new TPrefix; prefhndl = new TPrefix;
prefhndl->set("DEF");
// prefhndl->set("DEF");
prefhndl->set(""); prefhndl->set("");
stdlevel = prefhndl->filelevel(); stdlevel = prefhndl->filelevel();

View File

@ -560,8 +560,8 @@ void TFilename::ext(const char* e)
// Certified 90% // Certified 90%
const char* TFilename::name() const const char* TFilename::name() const
{ {
const char* d = strrchr(_str, '\\'); const char* d = strrchr(_str, '/');
if (d == NULL) d = strrchr(_str, '/'); if (d == NULL) d = strrchr(_str, '\\');
if (d == NULL) d = strchr(_str, ':'); if (d == NULL) d = strchr(_str, ':');
if (d == NULL) d = _str-1; if (d == NULL) d = _str-1;
return d+1; return d+1;
@ -570,8 +570,8 @@ const char* TFilename::name() const
// Certified 90% // Certified 90%
const char* TFilename::path() const const char* TFilename::path() const
{ {
const char* d = strrchr(_str, '\\'); const char* d = strrchr(_str, '/');
if (d == NULL) d = strrchr(_str, '/'); if (d == NULL) d = strrchr(_str, '\\');
if (d == NULL) if (d == NULL)
{ {
d = strchr(_str, ':'); d = strchr(_str, ':');
@ -589,9 +589,10 @@ const TFilename& TFilename::tempdir()
if (dirpref == NULL) dirpref = getenv("TMP"); if (dirpref == NULL) dirpref = getenv("TMP");
if (dirpref == NULL) dirpref = "/tmp"; if (dirpref == NULL) dirpref = "/tmp";
set(dirpref); set(dirpref);
const int last = len()-1; const int last = len()-1;
if (!is_not_slash(_str[last]))
if (!is_not_slash(_str[last])) cut(last); cut(last);
int res = 0; int res = 0;
@ -605,15 +606,15 @@ const TFilename& TFilename::tempdir()
#endif #endif
} }
if (res == 0) const TString& user = main_app().user();
{ if (res == 0 && user.not_empty())
if (not_empty()) {
#if XVT_OS==XVT_OS_SCOUNIX #if XVT_OS==XVT_OS_SCOUNIX
*this << '/' ; *this << '/'
#else #else
*this << '\\' ; *this << '\\'
#endif #endif
*this << main_app().user(); << user;
lower(); lower();
if (!fexist(_str)) if (!fexist(_str))
{ {

View File

@ -208,6 +208,7 @@ static BOOLEAN event_hook(HWND hwnd,
HIDDEN WIN_TYPE _wc_type = W_NONE; HIDDEN WIN_TYPE _wc_type = W_NONE;
HIDDEN long _bandiere = 0L;
static void createwindow_hook(DWORD* exstyle, LPCSTR* classname, LPCSTR* windowname, DWORD* styl, static void createwindow_hook(DWORD* exstyle, LPCSTR* classname, LPCSTR* windowname, DWORD* styl,
int* x, int* y, int* width, int* height, HWND* parent, HMENU* menu, int* x, int* y, int* width, int* height, HWND* parent, HMENU* menu,
@ -215,12 +216,13 @@ static void createwindow_hook(DWORD* exstyle, LPCSTR* classname, LPCSTR* windown
{ {
if (_wc_type == WC_EDIT) if (_wc_type == WC_EDIT)
{ {
*y++; if (_bandiere & CTL_FLAG_RIGHT_JUST)
} else *exstyle |= ES_MULTILINE | ES_RIGHT;
if (_wc_type == WC_GROUPBOX) if (_bandiere & CTL_FLAG_MAC_GENEVA9)
{ *exstyle |= ES_UPPERCASE;
*classname = "Static"; if (_bandiere & CTL_FLAG_MAC_MONACO9)
} *exstyle |= ES_PASSWORD;
}
_wc_type = W_NONE; _wc_type = W_NONE;
} }
@ -489,8 +491,8 @@ void customize_controls(bool on)
{ {
set_value(NULL_WIN,ATTR_WIN_PM_DRAWABLE_TWIN, TRUE); set_value(NULL_WIN,ATTR_WIN_PM_DRAWABLE_TWIN, TRUE);
set_value(NULL_WIN,ATTR_EVENT_HOOK, (long)event_hook); set_value(NULL_WIN,ATTR_EVENT_HOOK, (long)event_hook);
set_value(NULL_WIN,ATTR_WIN_CREATEWINDOW_HOOK, (long)createwindow_hook);
#ifdef __CTL3D__ #ifdef __CTL3D__
// set_value(NULL_WIN,ATTR_WIN_CREATEWINDOW_HOOK, (long)createwindow_hook);
HINSTANCE _hInstance = (HINSTANCE)get_value(NULL_WIN, ATTR_WIN_INSTANCE); HINSTANCE _hInstance = (HINSTANCE)get_value(NULL_WIN, ATTR_WIN_INSTANCE);
Ctl3dRegister(_hInstance); Ctl3dRegister(_hInstance);
Ctl3dAutoSubclass(_hInstance); Ctl3dAutoSubclass(_hInstance);
@ -632,6 +634,8 @@ WINDOW xvt_create_control(WIN_TYPE wt,
#if XVT_OS == XVT_OS_WIN #if XVT_OS == XVT_OS_WIN
_wc_type = wt; _wc_type = wt;
_bandiere = flags;
flags &= ~(CTL_FLAG_MAC_MONACO9 | CTL_FLAG_MAC_GENEVA9);
if (wt == WC_PUSHBUTTON) if (wt == WC_PUSHBUTTON)
win = xvt_create_pushbutton(r.left, r.top, r.right, r.bottom, win = xvt_create_pushbutton(r.left, r.top, r.right, r.bottom,
@ -674,8 +678,9 @@ WINDOW xvt_create_control(WIN_TYPE wt,
if (dy == 2) r.bottom -= ROWY; if (dy == 2) r.bottom -= ROWY;
if (id == DLG_F9) if (id == DLG_F9)
{ wt = WC_TEXT; r.right = r.left+CHARX; caption = "*"; } { wt = WC_TEXT; r.right = r.left+CHARX; caption = "*"; }
else if (*caption == '#') caption = ""; else if (*caption == '*') caption = "";
} }
while (*caption == '@') caption += 2; while (*caption == '@') caption += 2;
win = create_control(wt, &r, (char*)caption, parent, win = create_control(wt, &r, (char*)caption, parent,
flags, app_data, id); flags, app_data, id);
@ -694,7 +699,13 @@ WINDOW xvt_create_control(WIN_TYPE wt,
#endif #endif
{ {
HWND hwnd = (HWND)get_value(win, ATTR_NATIVE_WINDOW); HWND hwnd = (HWND)get_value(win, ATTR_NATIVE_WINDOW);
SendMessage(hwnd, WM_SETFONT, NormalFont, TRUE); SendMessage(hwnd, WM_SETFONT, NormalFont, FALSE);
if (_bandiere & CTL_FLAG_MAC_MONACO9)
SendMessage(hwnd, EM_SETPASSWORDCHAR, (WORD)'#', 0);
#ifdef DBG
DWORD stylecheck = GetWindowLong(hwnd, GWL_STYLE);
stylecheck |= 0;
#endif
#ifdef __CTL3D__ #ifdef __CTL3D__
Ctl3dSubclassCtl(hwnd); Ctl3dSubclassCtl(hwnd);
#endif #endif