Patch level : 2.1 nopatch
Files correlati : xvaga.dll Ricompilazione Demo : [ ] Commento : Migliorata selezione font tramite xvt_dm_post_font_select git-svn-id: svn://10.65.10.50/trunk@11901 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
7112dfd722
commit
7df1024793
121
xvaga/xvaga.cpp
121
xvaga/xvaga.cpp
@ -1714,17 +1714,19 @@ BOOLEAN xvt_dm_post_font_sel(WINDOW win, XVT_FNTID font_id, PRINT_RCD *precp, un
|
||||
TFontId& font = *(TFontId*)font_id;
|
||||
wxFontData data;
|
||||
data.SetInitialFont(font.Font(NULL, win));
|
||||
data.EnableEffects(FALSE);
|
||||
data.EnableEffects(reserved != 0);
|
||||
wxFontDialog dlg(_task_win, &data);
|
||||
BOOLEAN ok = dlg.ShowModal() == wxID_OK;
|
||||
if (ok)
|
||||
{
|
||||
font.Copy(dlg.GetFontData().GetChosenFont());
|
||||
|
||||
EVENT e; memset(&e, 0, sizeof(EVENT));
|
||||
e.type = E_FONT;
|
||||
e.v.font.font_id = font_id;
|
||||
_task_win_handler(win, &e);
|
||||
if (win == (WINDOW)_task_win)
|
||||
{
|
||||
EVENT e; memset(&e, 0, sizeof(EVENT));
|
||||
e.type = E_FONT;
|
||||
e.v.font.font_id = font_id;
|
||||
_task_win_handler(win, &e);
|
||||
}
|
||||
}
|
||||
return ok;
|
||||
}
|
||||
@ -1766,43 +1768,10 @@ struct XVAGA_HELP_INFO
|
||||
{
|
||||
wxString m_strFilename;
|
||||
bool m_hlp;
|
||||
// wxHtmlHelpController m_hc;
|
||||
} help_info;
|
||||
|
||||
XVT_HELP_INFO xvt_help_open_helpfile(FILE_SPEC *fs, unsigned long flags)
|
||||
{
|
||||
/*
|
||||
if (!help_info.m_strFilename.IsEmpty())
|
||||
xvt_help_close_helpfile((XVT_HELP_INFO)&help_info);
|
||||
|
||||
const char* ext[] = { ".zip", ".htb", ".hlp", NULL };
|
||||
for (int j = 0; j < 2; j++)
|
||||
{
|
||||
wxString base = fs->name;
|
||||
if (j == 1)
|
||||
base.Replace("campo", "prassi", true);
|
||||
for (int i = 0; ext[i]; i++)
|
||||
{
|
||||
wxString strName;
|
||||
if (i < 2)
|
||||
strName = "help/";
|
||||
strName << base;
|
||||
strName << ext[i];
|
||||
if (::wxFileExists(strName))
|
||||
{
|
||||
help_info.m_strFilename = strName;
|
||||
help_info.m_hlp = i == 2;
|
||||
if (!help_info.m_hlp)
|
||||
{
|
||||
wxFileSystem::AddHandler(new wxZipFSHandler);
|
||||
help_info.m_hc.AddBook(strName, true);
|
||||
}
|
||||
return (XVT_HELP_INFO)&help_info;
|
||||
}
|
||||
}
|
||||
}
|
||||
return NULL_HELP_INFO;
|
||||
*/
|
||||
return (XVT_HELP_INFO)&help_info;
|
||||
}
|
||||
|
||||
@ -1810,82 +1779,12 @@ void xvt_help_close_helpfile(XVT_HELP_INFO hi)
|
||||
{
|
||||
if (hi == NULL_HELP_INFO)
|
||||
hi = (XVT_HELP_INFO)&help_info;
|
||||
|
||||
/*
|
||||
XVAGA_HELP_INFO* ahi = (XVAGA_HELP_INFO*)hi;
|
||||
if (!ahi->m_strFilename.IsEmpty())
|
||||
{
|
||||
#ifdef WIN32
|
||||
if (ahi->m_hlp)
|
||||
{
|
||||
unsigned int hwnd = (unsigned int)xvt_vobj_get_attr(TASK_WIN, ATTR_NATIVE_WINDOW);
|
||||
OsWin32_Help(hwnd, ahi->m_strFilename, 0, NULL); // HELP_QUIT
|
||||
}
|
||||
#endif
|
||||
if (!ahi->m_hlp)
|
||||
ahi->m_hc.Quit();
|
||||
ahi->m_strFilename.Empty();
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
BOOLEAN xvt_help_process_event(XVT_HELP_INFO hi, WINDOW win, EVENT *ev)
|
||||
{
|
||||
BOOLEAN bProcessed = FALSE;
|
||||
|
||||
/*
|
||||
if (hi == NULL_HELP_INFO)
|
||||
return bProcessed;
|
||||
|
||||
XVAGA_HELP_INFO* ahi = (XVAGA_HELP_INFO*)hi;
|
||||
if (ahi->m_strFilename.IsEmpty())
|
||||
return bProcessed;
|
||||
|
||||
#ifdef WIN32
|
||||
if (ahi->m_hlp)
|
||||
{
|
||||
unsigned int hwnd = (unsigned int)xvt_vobj_get_attr(win, ATTR_NATIVE_WINDOW);
|
||||
switch (ev->type)
|
||||
{
|
||||
case E_COMMAND:
|
||||
bProcessed = OsWin32_Help(hwnd, ahi->m_strFilename, ev->v.cmd.tag, NULL);
|
||||
break;
|
||||
case E_HELP:
|
||||
bProcessed = OsWin32_Help(hwnd, ahi->m_strFilename, M_HELP_ONCONTEXT, (const char*)ev->v.help.tid);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return bProcessed;
|
||||
}
|
||||
#endif
|
||||
|
||||
switch (ev->type)
|
||||
{
|
||||
case E_COMMAND:
|
||||
switch (ev->v.cmd.tag)
|
||||
{
|
||||
case M_HELP_CONTENTS:
|
||||
ahi->m_hc.DisplayContents();
|
||||
bProcessed = TRUE;
|
||||
break;
|
||||
case M_HELP_SEARCH:
|
||||
ahi->m_hc.DisplayIndex();
|
||||
bProcessed = TRUE;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case E_HELP:
|
||||
ahi->m_hc.Display((const char*)ev->v.help.tid);
|
||||
bProcessed = TRUE;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
*/
|
||||
|
||||
#ifdef WIN32
|
||||
unsigned int hwnd = (unsigned int)xvt_vobj_get_attr(win, ATTR_NATIVE_WINDOW);
|
||||
switch (ev->type)
|
||||
@ -1986,7 +1885,6 @@ bool TFontId::Underline() const
|
||||
return (m_wMask & XVT_FS_UNDERLINE) != 0;
|
||||
}
|
||||
|
||||
|
||||
wxFont& TFontId::Font(wxDC* dc, WINDOW win) const
|
||||
{
|
||||
int nSize = PointSize();
|
||||
@ -2002,7 +1900,7 @@ wxFont& TFontId::Font(wxDC* dc, WINDOW win) const
|
||||
const int cpi = 120 / nSize;
|
||||
const wxString str('M', cpi);
|
||||
|
||||
int nMin = 1, nMax = nSize*8;
|
||||
int nMin = 1, nMax = nSize*10;
|
||||
int nBest = 0;
|
||||
while (nMin <= nMax)
|
||||
{
|
||||
@ -3107,6 +3005,7 @@ BOOLEAN xvt_menu_popup(MENU_ITEM *menu_p, WINDOW win, PNT pos,
|
||||
else
|
||||
item = new wxMenuItem(&menu, mi->tag, mi->text, wxEmptyString, mi->checkable);
|
||||
menu.DoAppend(item);
|
||||
item->Enable(mi->enabled); // Fattibile solo dopo l'append
|
||||
}
|
||||
CAST_WIN(win, w);
|
||||
bool ok = w.PopupMenu(&menu, pos.h, pos.v);
|
||||
|
Loading…
x
Reference in New Issue
Block a user