void AP_Win32Dialog_InsertHyperlink::runModal(XAP_Frame * pFrame) { UT_return_if_fail (pFrame && m_id == AP_DIALOG_ID_INSERTHYPERLINK); setDialog(this); createModal(pFrame, MAKEINTRESOURCE(AP_RID_DIALOG_INSERTHYPERLINK)); }
void XAP_Win32Dialog_Zoom::runModal(XAP_Frame * pFrame) { m_pFrame = pFrame; /* This dialog is non-persistent. This dialog should do the following: - Construct itself to represent the base-class zoomTypes z_200, z_100, z_75, z_PageWidth, z_WholePage, and z_Percent. The Unix one looks just like Microsoft Word 97, with the preview and all (even though it's not hooked up yet). - Set zoom type to match "m_zoomType" and value of radio button to match "m_zoomPercent". On "OK" (or during user-interaction) the dialog should: - Save the zoom type to "m_zoomType". - Save the value in the Percent spin button box to "m_zoomPercent". - Just quit, the data items will be ignored by the caller. */ // raise the dialog UT_ASSERT(m_id == XAP_DIALOG_ID_ZOOM); setDialog(this); createModal(pFrame, MAKEINTRESOURCEW(XAP_RID_DIALOG_ZOOM)); }
void AP_Win32Dialog_Field::runModal(XAP_Frame * pFrame) { // raise the dialog UT_return_if_fail (m_id == AP_DIALOG_ID_FIELD); createModal(pFrame, MAKEINTRESOURCEW(AP_RID_DIALOG_FIELD)); }
void XAP_Win32Dialog_PluginManager::runModal(XAP_Frame * pFrame) { UT_return_if_fail(pFrame); UT_return_if_fail(m_id == XAP_DIALOG_ID_PLUGIN_MANAGER); setDialog(this); createModal(pFrame,MAKEINTRESOURCE(XAP_RID_DIALOG_PLUGIN_MANAGER)); }
void XAP_Win32Dialog_Insert_Symbol::runModal(XAP_Frame * pFrame) { UT_ASSERT(pFrame); UT_ASSERT(m_id == XAP_DIALOG_ID_INSERT_SYMBOL); setDialog(this); createModal(pFrame, MAKEINTRESOURCE(XAP_RID_DIALOG_INSERT_SYMBOL)); }
void XAP_Win32Dialog_HTMLOptions::runModal(XAP_Frame * pFrame) { UT_ASSERT(pFrame); UT_ASSERT(m_id == XAP_DIALOG_ID_HTMLOPTIONS); setDialog(this); createModal(pFrame, MAKEINTRESOURCEW(XAP_RID_DIALOG_HTMLOPTIONS)); }
void XAP_Win32Dialog_DocComparison::runModal(XAP_Frame * pFrame) { XAP_Win32App * pWin32App = static_cast<XAP_Win32App *>(m_pApp); XAP_Win32LabelledSeparator_RegisterClass(pWin32App); UT_ASSERT(m_id == XAP_DIALOG_ID_DOCCOMPARISON); createModal(pFrame, MAKEINTRESOURCEW(XAP_RID_DIALOG_DOCCOMPARISON)); }
void AP_Win32Dialog_Columns::runModal(XAP_Frame * pFrame) { UT_return_if_fail (m_id == AP_DIALOG_ID_COLUMNS); // raise the dialog setViewAndDoc(pFrame); setDialog(this); createModal(pFrame, MAKEINTRESOURCEW(AP_RID_DIALOG_COLUMNS)); }
void AP_Win32Dialog_ListRevisions::runModal(XAP_Frame * pFrame) { XAP_Win32App * pWin32App = static_cast<XAP_Win32App *>(m_pApp); XAP_Win32LabelledSeparator_RegisterClass(pWin32App); UT_return_if_fail (m_id == AP_DIALOG_ID_LIST_REVISIONS); createModal(pFrame, MAKEINTRESOURCEW(AP_RID_DIALOG_LIST_REVISIONS)); }
void AP_Win32Dialog_Stylist::runModal(XAP_Frame * pFrame) { UT_return_if_fail(pFrame); UT_return_if_fail(m_id == AP_DIALOG_ID_STYLIST); m_bIsModal = true; // raise the dialog XAP_Win32App * pWin32App = static_cast<XAP_Win32App *>(m_pApp); createModal (pFrame, MAKEINTRESOURCEW(AP_RID_DIALOG_STYLIST)); }
void XAP_Win32Dialog_WindowMore::runModal(XAP_Frame * pFrame) { UT_ASSERT(pFrame); UT_ASSERT(m_id == XAP_DIALOG_ID_WINDOWMORE); // NOTE: this work could be done in XP code m_ndxSelFrame = m_pApp->findFrame(pFrame); UT_ASSERT(m_ndxSelFrame >= 0); // raise the dialog setDialog(this); createModal(pFrame, MAKEINTRESOURCEW(XAP_RID_DIALOG_WINDOWMORE)); }
BOOL AP_Win32Dialog_Styles::_onCommand(HWND hWnd, WPARAM wParam, LPARAM lParam) { WORD wNotifyCode = HIWORD(wParam); WORD wId = LOWORD(wParam); HWND hWndCtrl = (HWND)lParam; switch (wId) { case AP_RID_DIALOG_STYLES_TOP_BUTTON_APPLY: { const gchar * szStyle = getCurrentStyle(); if(szStyle && *szStyle) { getView()->setStyle(szStyle); } } m_answer = a_OK; return 1; case AP_RID_DIALOG_STYLES_TOP_BUTTON_CLOSE: case IDCANCEL: m_answer = a_CANCEL; EndDialog(hWnd,0); return 1; case IDOK: { const XAP_StringSet * pSS = m_pApp->getStringSet (); WCHAR stylename[MAX_EBX_LENGTH+1]; // Verfiy a name value for the style // TODO - Verify unique name value GetDlgItemTextW(hWnd,AP_RID_DIALOG_STYLES_NEWMODIFY_EBX_NAME,stylename,MAX_EBX_LENGTH); /*_win32DialogNewModify.getControlText( AP_RID_DIALOG_STYLES_NEWMODIFY_EBX_NAME, m_newStyleName, MAX_EBX_LENGTH );*/ UT_UTF8String str; str.appendUCS2((const UT_UCS2Char*)stylename,0); strcpy(m_newStyleName,str.utf8_str()); if( !m_newStyleName || !strlen(m_newStyleName) ) { getFrame()->showMessageBox( pSS->getValue (AP_STRING_ID_DLG_Styles_ErrBlankName), XAP_Dialog_MessageBox::b_O, XAP_Dialog_MessageBox::a_OK); return 1; } //strcpy (m_newStyleName, (AP_Win32App::s_fromWinLocaleToUTF8(m_newStyleName)).utf8_str()); } m_answer = a_OK; EndDialog(hWnd,0); return 1; case AP_RID_DIALOG_STYLES_TOP_COMBO_LIST: if( wNotifyCode == CBN_SELCHANGE ) { switch(_win32Dialog.getComboSelectedIndex(AP_RID_DIALOG_STYLES_TOP_COMBO_LIST)) { case 0: m_whichType = USED_STYLES; break; case 1: m_whichType = ALL_STYLES; break; case 2: m_whichType = USER_STYLES; break; } _populateWindowData(); } return 1; case AP_RID_DIALOG_STYLES_TOP_LIST_STYLES: if (wNotifyCode == LBN_SELCHANGE) { UT_uint32 nData = -1; const char* name; const PD_Style * pcStyle = NULL; int row = _win32Dialog.getListSelectedIndex(AP_RID_DIALOG_STYLES_TOP_LIST_STYLES); nData = _win32Dialog.getListDataItem( AP_RID_DIALOG_STYLES_TOP_LIST_STYLES, row); if (row!=LB_ERR) { getDoc()->enumStyles(nData, &name, &pcStyle); m_selectedStyle = name; m_nSelectedStyleIdx = nData; // refresh the previews _populatePreviews(false); } break; } return 1; case AP_RID_DIALOG_STYLES_TOP_BUTTON_DELETE: { if( m_selectedStyle != "" ) { if ( !getDoc()->removeStyle(m_selectedStyle.c_str()) ) // actually remove the style { const XAP_StringSet * pSS = m_pApp->getStringSet(); getFrame()->showMessageBox( pSS->getValue (AP_STRING_ID_DLG_Styles_ErrStyleCantDelete), XAP_Dialog_MessageBox::b_O, XAP_Dialog_MessageBox::a_OK ); return 1; } getFrame()->repopulateCombos(); _populateWindowData(); // force a refresh getDoc()->signalListeners(PD_SIGNAL_UPDATE_LAYOUT); m_selectedStyle = ""; } } return 1; case AP_RID_DIALOG_STYLES_TOP_BUTTON_NEW: { m_bisNewStyle = true; //_win32Dialog.showWindow(SW_HIDE); XAP_Frame* pFrame = getFrame(); //_win32DialogNewModify.runModal(pFrame, AP_DIALOG_ID_STYLES, AP_RID_DIALOG_STYLES_NEWMODIFY, this); createModal(pFrame, MAKEINTRESOURCEW(AP_RID_DIALOG_STYLES_NEWMODIFY)); if(m_answer == AP_Dialog_Styles::a_OK) { createNewStyle((gchar *) m_newStyleName); _populateCList(); } destroyAbiPreview(); DELETEP(m_pAbiPreviewWidget); //_win32Dialog.showWindow(SW_SHOW); } return 1; case AP_RID_DIALOG_STYLES_TOP_BUTTON_MODIFY: { // Verify that a style is selected if( m_selectedStyle == "" ) { XAP_Frame * pFrame = getFrame(); const XAP_StringSet * pSS = m_pApp->getStringSet(); pFrame->showMessageBox( pSS->getValue(AP_STRING_ID_DLG_Styles_ErrNoStyle), XAP_Dialog_MessageBox::b_O, XAP_Dialog_MessageBox::a_OK); m_answer = AP_Dialog_Styles::a_CANCEL; return 1; } else { PD_Style * pStyle = NULL; getDoc()->getStyle(m_selectedStyle.c_str(), &pStyle); m_bisNewStyle = false; XAP_Frame* pFrame = getFrame(); XAP_Win32App * pWin32App = static_cast<XAP_Win32App *>(getApp()); createModal (pFrame, MAKEINTRESOURCEW(AP_RID_DIALOG_STYLES_NEWMODIFY)); /*LPCWSTR lpTemplate = MAKEINTRESOURCEW(AP_RID_DIALOG_STYLES_NEWMODIFY); int result = DialogBoxParamW(pWin32App->getInstance(), lpTemplate, static_cast<XAP_Win32FrameImpl*>(pFrame->getFrameImpl())->getTopLevelWindow(), (DLGPROC)s_dlgProc, (LPARAM)this);*/ if(m_answer == AP_Dialog_Styles::a_OK) { applyModifiedStyleToDoc(); getDoc()->updateDocForStyleChange(getCurrentStyle(),true); getDoc()->signalListeners(PD_SIGNAL_UPDATE_LAYOUT); } destroyAbiPreview(); DELETEP(m_pAbiPreviewWidget); } } return 1; case AP_RID_DIALOG_STYLES_NEWMODIFY_BTN_REMOVE: { char szTemp[128]; _win32DialogNewModify.getControlText( AP_RID_DIALOG_STYLES_NEWMODIFY_CBX_REMOVE, szTemp, sizeof(szTemp) ); removeVecProp(szTemp); rebuildDeleteProps(); updateCurrentStyle(); } return 1; case AP_RID_DIALOG_STYLES_NEWMODIFY_BTN_TOGGLEITEMS: { RECT rect; HMENU hMenu; int x,y; HWND hWndButton; static int menu_items[]={AP_STRING_ID_DLG_Styles_ModifyParagraph, AP_STRING_ID_DLG_Styles_ModifyFont, AP_STRING_ID_DLG_Styles_ModifyTabs, AP_STRING_ID_DLG_Styles_ModifyNumbering, AP_STRING_ID_DLG_Styles_ModifyLanguage }; UT_Win32LocaleString str; hWndButton = GetDlgItem(hWnd, AP_RID_DIALOG_STYLES_NEWMODIFY_BTN_TOGGLEITEMS); XAP_Win32App * app = static_cast<XAP_Win32App *> (m_pApp); const XAP_StringSet * pSS = m_pApp->getStringSet(); // Get button position GetWindowRect(hWndButton, &rect); x = rect.left; y = rect.bottom; // Menu creation hMenu = CreatePopupMenu(); str; for (int i=0; i<5; i++) { str.fromUTF8(pSS->getValue(menu_items[i])); AppendMenuW(hMenu, MF_ENABLED|MF_STRING, i+1, (LPCWSTR)str.c_str()); } // show and track the menu m_selectToggle = TrackPopupMenu(hMenu, TPM_LEFTALIGN|TPM_LEFTBUTTON|TPM_NONOTIFY|TPM_RETURNCMD, x,y,0, hWndButton, NULL); switch(m_selectToggle) { case 0: // user has cancelled break; case 1: ModifyParagraph(); break; case 2: ModifyFont(); break; case 3: ModifyTabs(); break; case 4: ModifyLists(); break; case 5: ModifyLang(); break; default: break; } rebuildDeleteProps(); updateCurrentStyle(); DestroyMenu(hMenu); return 1; } case AP_RID_DIALOG_STYLES_NEWMODIFY_CBX_BASEDON: if( wNotifyCode == CBN_SELCHANGE ) { eventBasedOn(); rebuildDeleteProps(); } return 1; case AP_RID_DIALOG_STYLES_NEWMODIFY_CBX_FOLLOWPARA: if( wNotifyCode == CBN_SELCHANGE ) { eventFollowedBy(); } return 1; case AP_RID_DIALOG_STYLES_NEWMODIFY_CBX_TYPE: if( wNotifyCode == CBN_SELCHANGE ) { eventStyleType(); } return 1; default: // we did not handle this notification UT_DEBUGMSG(("WM_Command for id %ld\n",wId)); return 0; // return zero to let windows take care of it. } return 0; // return zero to let windows take care of it. }
void AP_Win32Dialog_Annotation::runModal(XAP_Frame * pFrame) { UT_return_if_fail (m_id == AP_DIALOG_ID_ANNOTATION); createModal(pFrame, MAKEINTRESOURCEW(AP_RID_DIALOG_ANNOTATION)); }