diff --git a/xvaga/xvaga.cpp b/xvaga/xvaga.cpp index d247dd488..def069512 100755 --- a/xvaga/xvaga.cpp +++ b/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);