Patch level : 2.0 500

Files correlati     : xvaga.dll
Ricompilazione Demo : [ ]
Commento            :

Corretto disegno rettangolo focus in Win98 e migliorata gestione font


git-svn-id: svn://10.65.10.50/trunk@11239 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 2003-06-18 08:06:55 +00:00
parent 18ef8c0a4d
commit c34337e9ef
3 changed files with 37 additions and 18 deletions

View File

@ -76,7 +76,16 @@ int CALLBACK SizeEnumerator(
{ {
XvtData* d = (XvtData*)lParam; XvtData* d = (XvtData*)lParam;
long& i = d->cur_count; long& i = d->cur_count;
const int size = (plf->lfHeight+5) / 10; int size = (plf->lfHeight+5) / 10;
if (size <= 0)
{
for (const char* n = plf->lfFaceName; *n; n++)
if (*n >= '1' && *n <= '9')
{
size = int(10.0 / atoi(n) * 10.0 + 0.5);
break;
}
}
if (i == 0 || size > d->sizes[i-1]) if (i == 0 || size > d->sizes[i-1])
{ {
d->sizes[i] = size; d->sizes[i] = size;

View File

@ -32,7 +32,7 @@ XVT_CONFIG* _config_ = NULL;
wxWindow* _task_win = NULL; wxWindow* _task_win = NULL;
wxWindow* _mouse_trapper = NULL; wxWindow* _mouse_trapper = NULL;
RCT _startup_rect = { 0,0,0,0 }; RCT _startup_rect = { 0,0,0,0 };
wxString _startup_dir; wxString* _startup_dir = NULL;
static wxHashTable _nice_windows; static wxHashTable _nice_windows;
static wxHashTable _nice_icons; static wxHashTable _nice_icons;
@ -96,7 +96,7 @@ wxRect NormalizeRCT(const RCT* prct)
wxString GetResourceName(const char* type, int rid) wxString GetResourceName(const char* type, int rid)
{ {
wxString strName; wxString strName;
strName = _startup_dir; strName = *_startup_dir;
strName += "/res/resource.ini"; strName += "/res/resource.ini";
wxFileConfig ini("", "", strName); wxFileConfig ini("", "", strName);
@ -106,7 +106,7 @@ wxString GetResourceName(const char* type, int rid)
wxString val; wxString val;
if (ini.Read(wxString::Format("%d", rid), &val)) if (ini.Read(wxString::Format("%d", rid), &val))
{ {
strName = _startup_dir; strName = *_startup_dir;
strName += "/res/"; strName += "/res/";
strName += val; strName += val;
} }
@ -1969,9 +1969,16 @@ void xvt_dwin_draw_rect(WINDOW win, RCT *rctp)
void xvt_dwin_draw_dotted_rect(WINDOW win, RCT *rctp) void xvt_dwin_draw_dotted_rect(WINDOW win, RCT *rctp)
{ {
#ifdef WIN32 #ifdef WIN32
CAST_DC(win, dc); static int can_draw_dots = -1;
OsWin32_DrawDottedRect(dc.GetHDC(), rctp->left, rctp->top, rctp->right, rctp->bottom); if (can_draw_dots < 0)
#else can_draw_dots = xvt_sys_get_os_version() >= XVT_WS_WIN_NT;
if (can_draw_dots)
{
CAST_DC(win, dc);
OsWin32_DrawDottedRect(dc.GetHDC(), rctp->left, rctp->top, rctp->right, rctp->bottom);
return;
}
#endif
DRAW_CTOOLS dct; DRAW_CTOOLS dct;
xvt_dwin_get_draw_ctools(win, &dct); xvt_dwin_get_draw_ctools(win, &dct);
@ -1990,7 +1997,6 @@ void xvt_dwin_draw_dotted_rect(WINDOW win, RCT *rctp)
xvt_dwin_draw_rect(win, rctp); xvt_dwin_draw_rect(win, rctp);
xvt_dwin_set_draw_ctools(win, &dct); xvt_dwin_set_draw_ctools(win, &dct);
#endif
} }
void xvt_dwin_draw_set_pos(WINDOW win, PNT pnt) void xvt_dwin_draw_set_pos(WINDOW win, PNT pnt)
@ -2486,10 +2492,13 @@ BOOLEAN xvt_fsys_convert_str_to_dir(const char *path, DIRECTORY *dirp)
void xvt_fsys_get_default_dir(DIRECTORY *dirp) void xvt_fsys_get_default_dir(DIRECTORY *dirp)
{ {
if (_startup_dir.IsEmpty()) if (_startup_dir == NULL)
wxFileName::SplitPath(wxTheApp->argv[0], &_startup_dir, NULL, NULL); {
_startup_dir = new wxString;
wxFileName::SplitPath(__argv[0], _startup_dir, NULL, NULL);
}
if (dirp != NULL) if (dirp != NULL)
xvt_fsys_convert_str_to_dir(_startup_dir, dirp); xvt_fsys_convert_str_to_dir(*_startup_dir, dirp);
} }
BOOLEAN xvt_fsys_get_dir(DIRECTORY *dirp) BOOLEAN xvt_fsys_get_dir(DIRECTORY *dirp)
@ -3170,7 +3179,7 @@ static void FillMenuItem(const wxString& strValue, MENU_ITEM* mi)
MENU_ITEM* xvt_res_get_menu(int rid) MENU_ITEM* xvt_res_get_menu(int rid)
{ {
wxString strName; wxString strName;
strName = _startup_dir; strName = *_startup_dir;
strName += "/res/resource.ini"; strName += "/res/resource.ini";
wxFileConfig ini("", "", strName); wxFileConfig ini("", "", strName);
@ -3936,15 +3945,16 @@ long xvt_vobj_get_attr(WINDOW win, long data)
ret = (long)_error_handler; ret = (long)_error_handler;
break; break;
case ATTR_NATIVE_GRAPHIC_CONTEXT: case ATTR_NATIVE_GRAPHIC_CONTEXT:
/*
if (_nice_windows.Get(win) != NULL) if (_nice_windows.Get(win) != NULL)
{ {
#ifdef WIN32 #ifdef WIN32
CAST_DC(win, dc); CAST_DC(win, dc);
ret = dc.GetHDC(); ret = dc.GetHDC();
#else
SORRY_BOX(); //verificare
#endif #endif
} }
*/
SORRY_BOX(); // Obsoleto e non piu' usato
break; break;
case ATTR_NATIVE_WINDOW: case ATTR_NATIVE_WINDOW:
if (_nice_windows.Get(win) != NULL) if (_nice_windows.Get(win) != NULL)
@ -3953,7 +3963,7 @@ long xvt_vobj_get_attr(WINDOW win, long data)
CAST_WIN(win, w); CAST_WIN(win, w);
ret = w.GetHandle(); ret = w.GetHandle();
#else #else
SORRY_BOX(); //verificare ret = win;
#endif #endif
} }
break; break;

View File

@ -213,7 +213,7 @@ BOOLEAN xvt_dm_post_page_setup(PRINT_RCD* precp)
long xvt_fmap_get_family_sizes(PRINT_RCD *precp, char *family, long *size_array, BOOLEAN *scalable, long max_sizes) long xvt_fmap_get_family_sizes(PRINT_RCD *precp, char *family, long *size_array, BOOLEAN *scalable, long max_sizes)
{ {
long size = 1; long size = 1;
size_array[0] = 13; size_array[0] = 10;
*scalable = FALSE; *scalable = FALSE;
if (precp != NULL) if (precp != NULL)
@ -330,9 +330,9 @@ WINDOW xvt_print_create_win(PRINT_RCD* precp, char* /* title */)
return win; return win;
} }
void xvt_print_destroy(PRINT_RCD *precp) void xvt_print_destroy(PRINT_RCD* precp)
{ {
// Nothing to do! delete precp;
} }
RCT* xvt_print_get_next_band(void) RCT* xvt_print_get_next_band(void)