From ded4aa73f8304e51beb150dca500096284ce123e Mon Sep 17 00:00:00 2001 From: "cmanske%netscape.com" Date: Wed, 2 Sep 1998 13:12:58 +0000 Subject: [PATCH] Composer work: Menus, paste style, paragraph properties dialog improvements, remove P_MENU, P_DIRECTORY git-svn-id: svn://10.0.0.236/trunk@9110 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/cmd/winfe/cxwin.cpp | 12 +-- mozilla/cmd/winfe/edcombtb.cpp | 32 +++++--- mozilla/cmd/winfe/eddialog.cpp | 2 +- mozilla/cmd/winfe/edframe.cpp | 29 ++++--- mozilla/cmd/winfe/editfloat.cpp | 4 +- mozilla/cmd/winfe/editor.rc | 21 +++-- mozilla/cmd/winfe/edprops.cpp | 89 ++++++++++++---------- mozilla/cmd/winfe/edprops.h | 2 + mozilla/cmd/winfe/edtrcdll/src/edtrcdll.rc | 2 +- mozilla/cmd/winfe/edview.cpp | 25 ++---- mozilla/cmd/winfe/edview.h | 10 +-- mozilla/cmd/winfe/edview2.cpp | 55 +++++-------- mozilla/cmd/winfe/res/editor.rc2 | 49 ++++++------ mozilla/cmd/winfe/resource.h | 6 +- 14 files changed, 157 insertions(+), 181 deletions(-) diff --git a/mozilla/cmd/winfe/cxwin.cpp b/mozilla/cmd/winfe/cxwin.cpp index 54c36d61590..59d1526646b 100644 --- a/mozilla/cmd/winfe/cxwin.cpp +++ b/mozilla/cmd/winfe/cxwin.cpp @@ -2573,11 +2573,6 @@ CWinCX::OnLButtonUpForLayerCX(UINT uFlags, CPoint& cpPoint, XY& Point, } if( EDT_IS_EDITOR(pMWContext) ) { - if( EDT_CanPasteStyle(pMWContext) ) - { - // Apply style if available - EDT_PasteStyle(pMWContext, TRUE); - } // Cancel any attempt to drag a table or cell EDT_StopDragTable(pMWContext); } @@ -6310,12 +6305,7 @@ mouse_over_callback(MWContext * context, LO_Element * lo_element, int32 event, if( EDT_IS_EDITOR(context) ) { #ifdef EDITOR - if( EDT_CanPasteStyle(context) ) - { - SetCursor(theApp.LoadCursor(IDC_COPY_STYLE)); - bCursorSet = TRUE; - } - else if( bMouseInSelection ) + if( bMouseInSelection ) { // Indicate that user can drag selected text with special cursor SetCursor(theApp.LoadCursor(IDC_IBEAM_HAND)); diff --git a/mozilla/cmd/winfe/edcombtb.cpp b/mozilla/cmd/winfe/edcombtb.cpp index 9e889a4bda9..e6523ad48ae 100644 --- a/mozilla/cmd/winfe/edcombtb.cpp +++ b/mozilla/cmd/winfe/edcombtb.cpp @@ -429,21 +429,31 @@ void CComboToolBar::SetComboBox( UINT nID, CComboBox * pComboBox, for ( ; i < m_nCount; i++, pInfo++ ) { if ( pInfo->bComboBox && pInfo->pComboBox == 0 ) { + // Need extra amount: 10 pixels above and below edit box? + int iEditHeight = pComboBox->GetItemHeight(-1) + 10; + int iItemHeight = pComboBox->GetItemHeight(0); + // Calculate full height from number of items, - if ( nListHeight == 0 ) { - // Need extra amount: 10 pixels above and below edit box? - int iEditHeight = pComboBox->GetItemHeight(-1) + 10; - int iItemHeight = pComboBox->GetItemHeight(0); - // but limit size to less than half the screen height - // else single click in combo will immediately select because - // list is drawn on top of closed combobbox - nListHeight = min( sysInfo.m_iScreenHeight / 2, - iEditHeight + (pComboBox->GetCount() * iItemHeight) ); + if ( nListHeight == 0 ) + nListHeight = iEditHeight + (pComboBox->GetCount() * iItemHeight); + + if( nListWidth == 0 ) + nListWidth = nWidth; + + // Limit the height to less than half the screen height + // else single click in combo might immediately select because + // list is drawn on top of closed combobbox + // (happens only when combobox is at vertical center, + // but we need to set the height for all cases) + UINT nMaxHeight = (::GetSystemMetrics(SM_CYSCREEN) / 2); + if( nListHeight > nMaxHeight ) + { + nListHeight = nMaxHeight; + nListWidth += sysInfo.m_iScrollWidth; } + // Save the pointer for resizing box when controls are hidden pInfo->pComboBox = pComboBox; - - // Save command ID and width pInfo->nID = nID; // Add extra space (built-in separator) after right edge, diff --git a/mozilla/cmd/winfe/eddialog.cpp b/mozilla/cmd/winfe/eddialog.cpp index 60c9eac6d9f..f4cb81291ef 100644 --- a/mozilla/cmd/winfe/eddialog.cpp +++ b/mozilla/cmd/winfe/eddialog.cpp @@ -1465,5 +1465,5 @@ void CGetColumnsDlg::DoDataExchange(CDataExchange* pDX) ED_CharsetEncode FE_EncodingDialog(MWContext* pMWContext) { // TODO: Implement this! - return ED_ENCODE_CANCEL; + return ED_ENDCODE_CANCEL; } diff --git a/mozilla/cmd/winfe/edframe.cpp b/mozilla/cmd/winfe/edframe.cpp index 3e3d6614e32..35c2fbd524e 100644 --- a/mozilla/cmd/winfe/edframe.cpp +++ b/mozilla/cmd/winfe/edframe.cpp @@ -114,8 +114,8 @@ static UINT BASED_CODE nIDCharButtonBarArray[] = ID_FORMAT_CHAR_ITALIC, ID_FORMAT_CHAR_UNDERLINE, ID_FORMAT_CHAR_NONE, - ID_UNUM_LIST, - ID_NUM_LIST, + ID_FORMAT_UNUM_LIST, + ID_FORMAT_NUM_LIST, ID_FORMAT_OUTDENT, ID_FORMAT_INDENT, ID_ALIGN_POPUP, @@ -132,8 +132,8 @@ static UINT BASED_CODE nIDCharFloatButtonBarArray[] = ID_FORMAT_CHAR_UNDERLINE, ID_CHECK_SPELLING, ID_SEPARATOR, - ID_UNUM_LIST, - ID_NUM_LIST, + ID_FORMAT_UNUM_LIST, + ID_FORMAT_NUM_LIST, ID_FORMAT_OUTDENT, ID_FORMAT_INDENT, ID_SEPARATOR, @@ -463,8 +463,9 @@ BOOL CEditToolBarController::CreateEditBars(MWContext *pMWContext, BOOL bIsFloat CSize(8, ED_TB_BUTTON_HEIGHT), CSize(1,ED_TB_BITMAP_HEIGHT) ) ) return FALSE; - m_pCharacterToolbar = CreateCharacterToolbar((ett & DISPLAY_EDIT_TOOLBAR) ? CHARBUTTONBAR_ID_COUNT-1 : CHARBUTTONBAR_ID_COUNT); - m_wndCharacterBar.SetCNSToolbar(m_pCharacterToolbar); + m_pCharacterToolbar = CreateCharacterToolbar((ett & DISPLAY_EDIT_TOOLBAR) ? CHARBUTTONBAR_ID_COUNT-1 : CHARBUTTONBAR_ID_COUNT); + + m_wndCharacterBar.SetCNSToolbar(m_pCharacterToolbar); } else { @@ -476,9 +477,6 @@ BOOL CEditToolBarController::CreateEditBars(MWContext *pMWContext, BOOL bIsFloat return FALSE; } - - - // Paragraph styles Combo CRect rect; rect.SetRectEmpty(); //Don't need size to create it @@ -532,10 +530,6 @@ BOOL CEditToolBarController::CreateEditBars(MWContext *pMWContext, BOOL bIsFloat } } } - // Add some list-type items to the combobox: - csTemp = "_Blockquote"; - m_ParagraphCombo.AddString((LPCTSTR)csTemp); - // String used to get width of FontSize combobox csTemp = "55"; cSize = CIntlWin::GetTextExtent(wincsid, pDC->GetSafeHdc(), csTemp, csTemp.GetLength()); @@ -548,6 +542,12 @@ BOOL CEditToolBarController::CreateEditBars(MWContext *pMWContext, BOOL bIsFloat wfe_iListItemHeight = wfe_iFontHeight - 1; int iFontSizeWidth = cSize.cx + sysInfo.m_iScrollWidth + 6; + // This is longest string when combobox is dropped down: + csTemp = "8 pts"; + cSize = CIntlWin::GetTextExtent(wincsid, pDC->GetSafeHdc(), csTemp, csTemp.GetLength()); + pDC->LPtoDP(&cSize); + int iMaxSizeWidth = cSize.cx; // + sysInfo.m_iScrollWidth; + m_ParagraphCombo.ReleaseDC(pDC); // Initialize app-global list of TrueType fonts @@ -604,7 +604,7 @@ BOOL CEditToolBarController::CreateEditBars(MWContext *pMWContext, BOOL bIsFloat m_wndCharacterBar.SetComboBox( ID_COMBO_FONTSIZE, &m_FontSizeCombo, - iFontSizeWidth /*sysInfo.m_iScrollWidth+20*/, 0, 0 ); + iFontSizeWidth, iMaxSizeWidth, 0 ); m_FontSizeCombo.SetCurSel(2); // Initialize with the "default" size - 3rd in list // Set the color combobox data @@ -2230,7 +2230,6 @@ void CGenericFrame::OnMenuSelectComposer(UINT nItemID, UINT nFlags, HMENU hSysMe HMENU hFontMenu = NULL; HMENU hSizeMenu = NULL; HMENU hSubMenu = NULL; - HMENU hSubSubMenu; int i; for( i = 0; i < nCount; i++) diff --git a/mozilla/cmd/winfe/editfloat.cpp b/mozilla/cmd/winfe/editfloat.cpp index 38b1194e5a6..22381e63f71 100644 --- a/mozilla/cmd/winfe/editfloat.cpp +++ b/mozilla/cmd/winfe/editfloat.cpp @@ -37,8 +37,8 @@ static UINT BASED_CODE nIDCharButtonBarArray[] = ID_FORMAT_CHAR_UNDERLINE, ID_CHECK_SPELLING, ID_SEPARATOR, - ID_UNUM_LIST, - ID_NUM_LIST, + ID_FORMAT_UNUM_LIST, + ID_FORMAT_NUM_LIST, ID_FORMAT_OUTDENT, ID_FORMAT_INDENT, ID_SEPARATOR, diff --git a/mozilla/cmd/winfe/editor.rc b/mozilla/cmd/winfe/editor.rc index b9d2f6eb826..1dace13f93c 100644 --- a/mozilla/cmd/winfe/editor.rc +++ b/mozilla/cmd/winfe/editor.rc @@ -192,9 +192,10 @@ BEGIN VK_RETURN, IDM_SEND, VIRTKEY, CONTROL, NOINVERT VK_RETURN, ID_PROPS_LOCAL, VIRTKEY, ALT, NOINVERT VK_TAB, ID_NEXT_WINDOW, VIRTKEY, CONTROL, NOINVERT + "V", ID_PASTE_CHARACTER_STYLE, VIRTKEY, SHIFT, CONTROL, NOINVERT "W", ID_FILE_CLOSE, VIRTKEY, CONTROL, NOINVERT "X", ID_EDIT_CUT, VIRTKEY, CONTROL, NOINVERT - "Y", ID_COPY_STYLE, VIRTKEY, CONTROL, NOINVERT + "Y", ID_PASTE_CHARACTER_STYLE, VIRTKEY, CONTROL, NOINVERT "Z", ID_EDIT_UNDO, VIRTKEY, CONTROL, NOINVERT END @@ -263,9 +264,10 @@ BEGIN VK_PRIOR, ID_EDITOR_PAGEUP, VIRTKEY, NOINVERT VK_PRIOR, ID_EDITOR_SELECTPAGEUP, VIRTKEY, SHIFT, NOINVERT VK_RETURN, ID_PROPS_LOCAL, VIRTKEY, ALT, NOINVERT + "V", ID_PASTE_CHARACTER_STYLE, VIRTKEY, SHIFT, CONTROL, NOINVERT "W", ID_FILE_CLOSE, VIRTKEY, CONTROL, NOINVERT "X", ID_EDIT_CUT, VIRTKEY, CONTROL, NOINVERT - "Y", ID_COPY_STYLE, VIRTKEY, CONTROL, NOINVERT + "Y", ID_PASTE_CHARACTER_STYLE, VIRTKEY, CONTROL, NOINVERT "Z", ID_EDIT_UNDO, VIRTKEY, CONTROL, NOINVERT END @@ -307,7 +309,6 @@ IDC_DROP_COLOR CURSOR DISCARDABLE "res\\eddrpclr.cur" IDC_DRAG_ARROW CURSOR DISCARDABLE "res\\dragarro.cur" IDC_NO_DROP CURSOR DISCARDABLE "res\\ednodrop.cur" IDC_ALL_CELLS_SEL CURSOR DISCARDABLE "res\\edselall.cur" -IDC_COPY_STYLE CURSOR DISCARDABLE "res\\edstyle.cur" IDC_TABLE_COPY CURSOR DISCARDABLE "res\\edtblcpy.cur" IDC_TABLE_MOVE CURSOR DISCARDABLE "res\\edtblmov.cur" IDC_TABLE_VSIZE CURSOR DISCARDABLE "res\\edtavsiz.cur" @@ -384,6 +385,7 @@ BEGIN ID_PROPS_TEXT "Change character, paragraph, and font properties" ID_PROPS_TARGET "Change target properties" ID_PROPS_TAG "Change HTML tag properties" + ID_PROPS_DOC_COLOR "Change text and background colors, and background image" END STRINGTABLE PRELOAD DISCARDABLE @@ -421,9 +423,7 @@ BEGIN IDS_UNUM_LIST "Bullet (Unnumbered) List" IDS_NUM_LIST "Numbered List" IDS_BLOCK_QUOTE "Block Quote" - IDS_DIRECTORY_LIST "Directory List" - IDS_MENU_LIST "Menu List" - IDS_DESCRIPTION_LIST "Description List" + IDS_DESCRIPTION_LIST "Definition List" IDS_DEFAULT "Default" IDS_LIST "List" IDS_DIGIT "1, 2, 3..." @@ -627,8 +627,6 @@ STRINGTABLE DISCARDABLE BEGIN IDS_UNLINK_WARNING "The selection contains links.\nRemove all links from this selection?" IDS_CLEAR_CHAR_STYLES_CAPTION "Remove All Character Styles" - ID_UNUM_LIST "Start, change to, or clear an unnumbered (bulleted) list\nBullet List" - ID_NUM_LIST "Start, change to, or clear a numbered list\nNumbered List" ID_INSERT_NONBREAK_SPACE "Insert a non-breaking space at the insertion location" IDS_EDIT_TOOLBAR_CAPTION "Composition Toolbar" @@ -654,10 +652,9 @@ BEGIN IDS_REMOVE_LINKS "&Remove Links" IDS_REMOVE_ALL_LINKS "&Remove all links in selection" ID_REMOVE_LINKS "Remove link at the insertion point or all links within the selection\nRemove Links" -END - -STRINGTABLE DISCARDABLE -BEGIN + ID_PASTE_CHARACTER_STYLE "Use the character styles of the last text copied to the clipboard" + IDS_PASTE_CHARACTER_SYLE_POPUP + "Apply Last-Copied St&yle\tCtrl+Y" IDS_UNABLE_TO_LAUNCH_EDITOR "Unable to launch external editor! Error code=%d" IDS_IMAGE_IS_REMOTE "Image is at a remote location.\nSave image to disk before editing." diff --git a/mozilla/cmd/winfe/edprops.cpp b/mozilla/cmd/winfe/edprops.cpp index bb718d2b8db..cccf3489c90 100644 --- a/mozilla/cmd/winfe/edprops.cpp +++ b/mozilla/cmd/winfe/edprops.cpp @@ -5068,8 +5068,7 @@ typedef enum { struct _EDT_ListData { - intn iTagType; P_UNUM_LIST, P_NUM_LIST, P_BLOCKQUOTE - P_DIRECTORY, P_MENU, P_DESC_LIST + intn iTagType; P_UNUM_LIST, P_NUM_LIST, P_BLOCKQUOTE, P_DESC_LIST Bool bCompact; ED_ListType eType; int iStart; automatically maps, start is 1 @@ -5088,8 +5087,6 @@ enum { enum { ED_UNUM_LIST, ED_NUM_LIST, - ED_DIR_LIST, - ED_MENU_LIST, ED_DESC_LIST }; @@ -5267,12 +5264,6 @@ BOOL CParagraphPage::OnSetActive() m_iContainerStyle = ED_BLOCKQUOTE; m_iListStyle = ED_DEFAULT; break; - case P_DIRECTORY: - m_iListStyle = ED_DIR_LIST; - break; - case P_MENU: - m_iListStyle = ED_MENU_LIST; - break; case P_DESC_LIST: m_iListStyle = ED_DESC_LIST; break; @@ -5323,8 +5314,6 @@ BOOL CParagraphPage::OnSetActive() // Fill the List styles list pListStyles->AddString(szLoadString(IDS_UNUM_LIST)); pListStyles->AddString(szLoadString(IDS_NUM_LIST)); - pListStyles->AddString(szLoadString(IDS_DIRECTORY_LIST)); - pListStyles->AddString(szLoadString(IDS_MENU_LIST)); pListStyles->AddString(szLoadString(IDS_DESCRIPTION_LIST)); // Remove/rebuild item styles depending on current state @@ -5374,12 +5363,6 @@ void CParagraphPage::OnOK() case ED_NUM_LIST: iTagType = P_NUM_LIST; break; - case ED_DIR_LIST: - iTagType = P_DIRECTORY; - break; - case ED_MENU_LIST: - iTagType = P_MENU; - break; case ED_DESC_LIST: iTagType = P_DESC_LIST; break; @@ -5523,23 +5506,24 @@ void CParagraphPage::UpdateLists() } -void CParagraphPage::OnSelchangeParagraphStyles() +void CParagraphPage::ChangeParagraphStyle() { - SetModified(TRUE); - m_iParagraphStyle = ((CComboBox*)GetDlgItem(IDC_PARAGRAPH_STYLES))->GetCurSel(); - - // Selecting a list item will force - // List container and default type: Unnumbered List - if( m_iParagraphStyle == ED_PARA_LIST ){ + // Selecting one of the list item will force a list container + if( m_iParagraphStyle == ED_PARA_LIST ) + { m_iContainerStyle = ED_LIST; - if( m_iListStyle == ED_DEFAULT ){ + // Either numbered or unnumbered list style is OK + if( m_iListStyle != ED_NUM_LIST ) m_iListStyle = ED_UNUM_LIST; - } - } else if( m_iParagraphStyle == ED_PARA_DESC_TITLE || m_iParagraphStyle == ED_PARA_DESC_TEXT){ + else if( m_iListStyle != ED_UNUM_LIST ) + m_iListStyle = ED_NUM_LIST; + } + else if( m_iParagraphStyle == ED_PARA_DESC_TITLE || m_iParagraphStyle == ED_PARA_DESC_TEXT) + { m_iContainerStyle = ED_LIST; - if( m_iListStyle == ED_DEFAULT ){ - m_iListStyle = ED_DESC_LIST; - } + //if( m_iListStyle == ED_DEFAULT ) + m_iListStyle = ED_DESC_LIST; + } else if( m_iContainerStyle == ED_LIST ){ // Remove List container // Note that it is left as is for BLOCK QUOTE @@ -5548,29 +5532,52 @@ void CParagraphPage::OnSelchangeParagraphStyles() UpdateLists(); } +void CParagraphPage::OnSelchangeParagraphStyles() +{ + SetModified(TRUE); + m_iParagraphStyle = ((CComboBox*)GetDlgItem(IDC_PARAGRAPH_STYLES))->GetCurSel(); + ChangeParagraphStyle(); +} + void CParagraphPage::OnSelchangeContainerStyle() { SetModified(TRUE); m_iContainerStyle = ((CComboBox*)GetDlgItem(IDC_CONTAINER_STYLES))->GetCurSel(); // Force List paragraph style - if( m_iContainerStyle == ED_LIST ){ - m_iParagraphStyle = ED_PARA_LIST; - - if( m_iListStyle == ED_DEFAULT ){ - m_iListStyle = ED_UNUM_LIST; - } + if( m_iContainerStyle == ED_LIST ) + { + // If not already a list item, set it now + if( m_iParagraphStyle < ED_PARA_LIST ) + m_iParagraphStyle = ED_PARA_LIST; + } - UpdateLists(); + else if( m_iParagraphStyle >= ED_PARA_LIST ) + { + // For no container or BLOCKQUOTE, + // any list item must be converted to normal + m_iParagraphStyle = ED_PARA_NORMAL; + } + ChangeParagraphStyle(); } void CParagraphPage::OnSelchangeListStyles() { SetModified(TRUE); m_iListStyle = ((CComboBox*)GetDlgItem(IDC_LIST_STYLES))->GetCurSel(); - // Reset Bullet/Numbering styles - // depending on new List Style - UpdateLists(); + + if( m_iListStyle == ED_DESC_LIST ) + { + // Set appropriate paragraph style for definition list + if( m_iParagraphStyle < ED_PARA_DESC_TITLE ) + m_iParagraphStyle = ED_PARA_DESC_TITLE; + } + else + { + // Changing to either numbered or bulleted list + m_iParagraphStyle = ED_PARA_LIST; + } + ChangeParagraphStyle(); } void CParagraphPage::OnSelchangeListItemStyle() diff --git a/mozilla/cmd/winfe/edprops.h b/mozilla/cmd/winfe/edprops.h index 231e377d5a5..03e795edbf6 100644 --- a/mozilla/cmd/winfe/edprops.h +++ b/mozilla/cmd/winfe/edprops.h @@ -1001,6 +1001,8 @@ private: // This is used to change resource hInstance back to EXE CEditorResourceSwitcher * m_pResourceSwitcher; + void ChangeParagraphStyle(); + // Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CParagraphPage) diff --git a/mozilla/cmd/winfe/edtrcdll/src/edtrcdll.rc b/mozilla/cmd/winfe/edtrcdll/src/edtrcdll.rc index 301613136a5..288cefd1024 100644 --- a/mozilla/cmd/winfe/edtrcdll/src/edtrcdll.rc +++ b/mozilla/cmd/winfe/edtrcdll/src/edtrcdll.rc @@ -583,7 +583,7 @@ BEGIN LTEXT "pixels",IDC_STATIC,112,68,31,8 LTEXT "&Spacing:",IDC_STATIC,16,88,41,8 EDITTEXT IDC_CELL_SPACING,58,86,24,13 - LTEXT "pixels between cells",IDC_STATIC,84,88,82,8 + LTEXT "pixels between cells",IDC_STATIC,84,88,81,8 LTEXT "&Padding:",IDC_STATIC,16,104,41,8 EDITTEXT IDC_CELL_PADDING,58,102,24,13 LTEXT "pixels between border and cell contents",IDC_STATIC,84, diff --git a/mozilla/cmd/winfe/edview.cpp b/mozilla/cmd/winfe/edview.cpp index 165a577459d..7ff3a882c05 100644 --- a/mozilla/cmd/winfe/edview.cpp +++ b/mozilla/cmd/winfe/edview.cpp @@ -248,6 +248,8 @@ BEGIN_MESSAGE_MAP(CNetscapeEditView, CNetscapeView) ON_COMMAND(ID_PROPS_CHARACTER, OnCharacterProperties) ON_COMMAND(ID_PROPS_DOCUMENT, OnDocumentProperties) ON_COMMAND(ID_PROPS_DOC_COLOR, OnDocColorProperties) + ON_COMMAND(ID_PASTE_CHARACTER_STYLE, OnPasteCharacterStyle) + ON_UPDATE_COMMAND_UI(ID_PASTE_CHARACTER_STYLE, OnUpdatePasteCharacterStyle) ON_UPDATE_COMMAND_UI(ID_PROPS_DOCUMENT, HaveEditContext) ON_COMMAND(ID_FORMAT_CHAR_NO_TEXT_STYLES, OnCharacterNoTextStyles) ON_COMMAND(ID_FORMAT_CHAR_NONE, OnCharacterNone) @@ -265,9 +267,6 @@ BEGIN_MESSAGE_MAP(CNetscapeEditView, CNetscapeView) ON_COMMAND(ID_INSERT_BREAK_BOTH,OnInsertBreakBoth) ON_COMMAND(ID_INSERT_NONBREAK_SPACE,OnInsertNonbreakingSpace) ON_COMMAND(ID_REMOVE_LIST, OnRemoveList) - ON_COMMAND(ID_UNUM_LIST, OnUnumList) - ON_COMMAND(ID_NUM_LIST, OnNumList) - ON_COMMAND(ID_BLOCK_QUOTE, OnBlockQuote) ON_COMMAND(ID_EDIT_SELECTALL, OnSelectAll) ON_COMMAND(ID_EDIT_UNDO, OnUndo) ON_COMMAND( ID_FILE_PUBLISH, OnPublish) @@ -363,8 +362,6 @@ BEGIN_MESSAGE_MAP(CNetscapeEditView, CNetscapeView) ON_UPDATE_COMMAND_UI(ID_INSERT_BREAK_RIGHT, OnUpdateInsertBreak) ON_UPDATE_COMMAND_UI(ID_INSERT_BREAK_BOTH, OnUpdateInsertBreak) ON_UPDATE_COMMAND_UI(ID_REMOVE_LIST, OnUpdateRemoveList) - ON_UPDATE_COMMAND_UI(ID_UNUM_LIST, OnUpdateUnumList) - ON_UPDATE_COMMAND_UI(ID_NUM_LIST, OnUpdateNumList) ON_UPDATE_COMMAND_UI(ID_EDIT_SELECTALL, HaveEditContext) ON_UPDATE_COMMAND_UI(ID_EDIT_UNDO, OnUpdateUndo) ON_UPDATE_COMMAND_UI(ID_FILE_PUBLISH, HaveEditContext) @@ -908,7 +905,7 @@ void CNetscapeEditView::OnSetFocus(CWnd *pOldWin) if (GetEmbedded()) { CMainFrame * pFrame = (CMainFrame*)GetParentFrame(); - CComboToolBar *pControler = pFrame->getComposeToolBar(); + CEnderBar *pControler = pFrame->getComposeToolBar(); if (pControler) { //must calculate position for toolbar @@ -939,7 +936,7 @@ void CNetscapeEditView::OnKillFocus(CWnd *pOldWin) if (GetEmbedded()) { CMainFrame * pFrame = (CMainFrame*)GetParentFrame(); - CComboToolBar *pControler = pFrame->getComposeToolBar(); + CEnderBar *pControler = pFrame->getComposeToolBar(); CWnd *pWnd=NULL; CWnd *pCPparent=NULL; BOOL keepToolbar=FALSE; @@ -1077,8 +1074,8 @@ BOOL CNetscapeEditView::OnCmdMsg(UINT nID, int nCode, void* pExtra, AFX_CMDHANDL // and remove separate message handlers, but not // done now (7/23/97) to avoid changing the ID // associated with these in res\editor.rc2 - if( t == P_DIRECTORY || - t == P_MENU || + if( t == P_UNUM_LIST || //P_DIRECTORY || + t == P_NUM_LIST || //P_MENU || t == P_DESC_LIST ){ EDT_ToggleList(GET_MWCONTEXT, t); return TRUE; @@ -1153,8 +1150,8 @@ BOOL CNetscapeEditView::OnCmdMsg(UINT nID, int nCode, void* pExtra, AFX_CMDHANDL { TagType t = TagType(nID - ID_FORMAT_PARAGRAPH_BASE); if( t == P_BLOCKQUOTE || - t == P_DIRECTORY || - t == P_MENU || + t == P_UNUM_LIST || //P_DIRECTORY || + t == P_NUM_LIST || //P_MENU || t == P_DESC_LIST) { UpdateListMenuItem(pCmdUI, t); @@ -1260,12 +1257,6 @@ void CNetscapeEditView::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags) if( EDT_IsSizing(pMWContext) ) GetContext()->CancelSizing(); - // Cancel copy style action - if( EDT_CanPasteStyle(pMWContext) ) - { - EDT_PasteStyle(pMWContext, FALSE); - UpdateCursor(); - } // Call the CGenericView's interrupt function OnNavigateInterrupt(); diff --git a/mozilla/cmd/winfe/edview.h b/mozilla/cmd/winfe/edview.h index c183e23752f..aa72613f5fa 100644 --- a/mozilla/cmd/winfe/edview.h +++ b/mozilla/cmd/winfe/edview.h @@ -383,9 +383,6 @@ protected: afx_msg void OnInsertBreakBoth(); afx_msg void OnUpdateInsertBreak(CCmdUI* pCmdUI); afx_msg void OnRemoveList(); - afx_msg void OnUnumList(); - afx_msg void OnNumList(); - afx_msg void OnBlockQuote(); afx_msg void OnUpdateRemoveList(CCmdUI* pCmdUI); afx_msg void OnUpdateUnumList(CCmdUI* pCmdUI); afx_msg void OnUpdateNumList(CCmdUI* pCmdUI); @@ -468,9 +465,10 @@ protected: afx_msg void OnSelectEndOfDocument(); afx_msg void OnSelectNextWord(); afx_msg void OnSelectPreviousWord(); - // We trap these messages to do editor's copy/cut/paste - // CAbstractCX::CopySelection() will be called if - // view is not an Editor + // We trap normal Cut/Copy/Paste messages to do editor's copy/cut/paste + // CAbstractCX::CopySelection() will be called if view is not an Editor + afx_msg void OnPasteCharacterStyle(); + afx_msg void OnUpdatePasteCharacterStyle(CCmdUI* pCmdUI); afx_msg void OnGoToDefaultPublishLocation(); afx_msg void OnEditCopy(); afx_msg void OnCopyStyle(); diff --git a/mozilla/cmd/winfe/edview2.cpp b/mozilla/cmd/winfe/edview2.cpp index 262082aa085..6115a130574 100644 --- a/mozilla/cmd/winfe/edview2.cpp +++ b/mozilla/cmd/winfe/edview2.cpp @@ -221,6 +221,7 @@ void CNetscapeEditView::OnUpdateTagProperties(CCmdUI* pCmdUI) pCmdUI->Enable( CAN_INTERACT && ED_ELEMENT_UNKNOWN_TAG == EDT_GetCurrentElementType(GET_MWCONTEXT) ); } + /////////////////////////////////////////////////////////////// // Edit menu // Find is shared with Navigator - uses common dialog @@ -232,6 +233,19 @@ void CNetscapeEditView::OnEditFindReplace() // TODO: something like: CMainFrame::OnFindReplace(); } +void CNetscapeEditView::OnPasteCharacterStyle() +{ + MWContext *pMWContext = GET_MWCONTEXT; + if( pMWContext && EDT_CanPasteStyle(pMWContext) ) + //Actually paste. FALSE would clear stored styles + EDT_PasteStyle(pMWContext, TRUE); +} + +void CNetscapeEditView::OnUpdatePasteCharacterStyle(CCmdUI* pCmdUI) +{ + pCmdUI->Enable( CAN_INTERACT && EDT_CanPasteStyle(GET_MWCONTEXT) ); +} + /////////////////////////////////////////////////////////////// // Insert menu @@ -1603,12 +1617,15 @@ void CNetscapeEditView::OnRButtonDown(UINT uFlags, CPoint cpPoint) cmPopup.AppendMenu(MF_POPUP, (UINT)hPasteMenu, szLoadString(IDS_EDIT_PASTE)); } } - else if( !bCanPasteTableInTable ) // All table items we can paste are covered above + else if( bCanPaste && !bCanPasteTableInTable ) // All table items we can paste are covered above { nID = bHaveLink ? IDS_EDIT_PASTE_LINK : IDS_EDIT_PASTE; cmPopup.AppendMenu(MF_ENABLED, ID_EDIT_PASTE, szLoadString(nID)); } - + if( EDT_CanPasteStyle(pMWContext) ) + { + cmPopup.AppendMenu(MF_ENABLED, ID_PASTE_CHARACTER_STYLE, szLoadString(IDS_PASTE_CHARACTER_SYLE_POPUP)); + } // Remove last item if its a separator int iLastItem = cmPopup.GetMenuItemCount() - 1; if( iLastItem > 0 && 0 == cmPopup.GetMenuItemID(iLastItem) ) @@ -1819,7 +1836,6 @@ PUBLIC Bool FE_EditorPrefConvertFileCaseOnWrite( ){ return TRUE; } - void CNetscapeEditView::OnTimer(UINT nIDEvent) { CNetscapeView::OnTimer(nIDEvent); @@ -2474,22 +2490,6 @@ void CNetscapeEditView::OnFormatOutdent() } } -void CNetscapeEditView::OnUnumList() -{ - if ( !CAN_INTERACT ){ - return; - } - EDT_ToggleList(GET_MWCONTEXT, P_UNUM_LIST); -} - -void CNetscapeEditView::OnNumList() -{ - if ( !CAN_INTERACT ){ - return; - } - EDT_ToggleList(GET_MWCONTEXT, P_NUM_LIST); -} - void CNetscapeEditView::OnRemoveList() { // Repeat removing indent until last Unnumbered list is gone @@ -2503,7 +2503,7 @@ void CNetscapeEditView::OnRemoveList() void CNetscapeEditView::OnUpdateRemoveList(CCmdUI* pCmdUI) { EDT_ListData * pListData = EDT_GetListData(GET_MWCONTEXT); - pCmdUI->Enable(CAN_INTERACT && pListData); + pCmdUI->Enable(CAN_INTERACT); if( pCmdUI->m_pMenu) { pCmdUI->SetCheck(!pListData); } @@ -2528,21 +2528,6 @@ void CNetscapeEditView::UpdateListMenuItem(CCmdUI* pCmdUI, TagType t) } } -void CNetscapeEditView::OnUpdateUnumList(CCmdUI* pCmdUI) -{ - UpdateListMenuItem(pCmdUI, P_UNUM_LIST); -} - -void CNetscapeEditView::OnUpdateNumList(CCmdUI* pCmdUI) -{ - UpdateListMenuItem(pCmdUI, P_NUM_LIST); -} - -void CNetscapeEditView::OnBlockQuote() -{ - OnFormatParagraph(ID_FORMAT_PARAGRAPH_BASE+P_BLOCKQUOTE); -} - void CNetscapeEditView::OnAlignPopup() { MWContext * pMWContext = GET_MWCONTEXT; diff --git a/mozilla/cmd/winfe/res/editor.rc2 b/mozilla/cmd/winfe/res/editor.rc2 index fa199109fd1..711ee5aebf4 100644 --- a/mozilla/cmd/winfe/res/editor.rc2 +++ b/mozilla/cmd/winfe/res/editor.rc2 @@ -32,6 +32,8 @@ #include "..\..\..\lib\libparse\pa_tags.h" // interface to layout tag defines #include "..\edres2.h" +// NO MAIL COMPOSER IN 5.0 +#if 0 IDR_COMPOSEFRAME MENU DISCARDABLE BEGIN POPUP "&File" @@ -194,6 +196,7 @@ BEGIN MENUITEM "&Nonbreaking" ID_FORMAT_CHAR_NOBREAKS END MENUITEM "Text &Color...", ID_GET_COLOR // ID_FORMAT_FONTCOLOR + MENUITEM "Apply Last-Copied St&yle\tCtrl+Y" ID_PASTE_CHARACTER_STYLE MENUITEM "&Remove All Styles\tCtrl+K" ID_FORMAT_CHAR_NONE MENUITEM SEPARATOR POPUP "&Heading" @@ -211,18 +214,15 @@ BEGIN MENUITEM "&Address", ID_FORMAT_PARAGRAPH_BASE+P_ADDRESS MENUITEM "&Formatted", ID_FORMAT_PARAGRAPH_BASE+P_PREFORMAT MENUITEM "&Block Quote" ID_FORMAT_PARAGRAPH_BASE+P_BLOCKQUOTE - MENUITEM "Description &Title" ID_FORMAT_PARAGRAPH_BASE+P_DESC_TITLE - MENUITEM "&Description Text" ID_FORMAT_PARAGRAPH_BASE+P_DESC_TEXT + MENUITEM "&Term Name" ID_FORMAT_PARAGRAPH_BASE+P_DESC_TITLE + MENUITEM "&Definition" ID_FORMAT_PARAGRAPH_BASE+P_DESC_TEXT END POPUP "&List" BEGIN MENUITEM "N&one" ID_REMOVE_LIST - MENUITEM "&Bulletted" ID_UNUM_LIST - MENUITEM "&Numbered" ID_NUM_LIST - // Put here or in Paragraph? - MENUITEM "&Description" ID_FORMAT_PARAGRAPH_BASE+P_DESC_LIST - MENUITEM "D&irectory" ID_FORMAT_PARAGRAPH_BASE+P_DIRECTORY - MENUITEM "&Menu" ID_FORMAT_PARAGRAPH_BASE+P_MENU + MENUITEM "&Bulletted" ID_FORMAT_PARAGRAPH_BASE+P_UNUM_LIST + MENUITEM "&Numbered" ID_FORMAT_PARAGRAPH_BASE+P_NUM_LIST + MENUITEM "&Definition" ID_FORMAT_PARAGRAPH_BASE+P_DESC_LIST END POPUP "&Align" BEGIN @@ -317,6 +317,7 @@ BEGIN MENUITEM "PLACEHOLDER", IDC_FIRST_HELP_MENU_ID END END +#endif ////////////////////////////////////////////////////////////////////////////// // // Page Composer Menu @@ -362,6 +363,7 @@ BEGIN MENUITEM "Cu&t\tCtrl+X", ID_EDIT_CUT MENUITEM "&Copy\tCtrl+C", ID_EDIT_COPY MENUITEM "&Paste\tCtrl+V", ID_EDIT_PASTE + MENUITEM "Paste Charater St&yle\tCtrl+Shift+V" ID_PASTE_CHARACTER_STYLE MENUITEM "&Delete\tDel" ID_EDIT_DELETE MENUITEM SEPARATOR MENUITEM "Remove Lin&k", ID_REMOVE_LINKS @@ -471,7 +473,8 @@ BEGIN MENUITEM "&Nonbreaking" ID_FORMAT_CHAR_NOBREAKS END MENUITEM "Text &Color...", ID_GET_COLOR // ID_FORMAT_FONTCOLOR - MENUITEM "&Remove All Styles\tCtrl+K" ID_FORMAT_CHAR_NONE + MENUITEM "Apply Last-Copied &Style\tCtrl+Y" ID_PASTE_CHARACTER_STYLE + MENUITEM "&Remove All Styles\tCtrl+K" ID_FORMAT_CHAR_NONE MENUITEM SEPARATOR POPUP "&Heading" BEGIN @@ -488,18 +491,15 @@ BEGIN MENUITEM "&Address", ID_FORMAT_PARAGRAPH_BASE+P_ADDRESS MENUITEM "&Formatted", ID_FORMAT_PARAGRAPH_BASE+P_PREFORMAT MENUITEM "&Block Quote" ID_FORMAT_PARAGRAPH_BASE+P_BLOCKQUOTE - MENUITEM "Description &Title" ID_FORMAT_PARAGRAPH_BASE+P_DESC_TITLE - MENUITEM "&Description Text" ID_FORMAT_PARAGRAPH_BASE+P_DESC_TEXT + MENUITEM "&Term Name" ID_FORMAT_PARAGRAPH_BASE+P_DESC_TITLE + MENUITEM "&Definition" ID_FORMAT_PARAGRAPH_BASE+P_DESC_TEXT END POPUP "&List" BEGIN MENUITEM "N&one" ID_REMOVE_LIST - MENUITEM "&Bulletted" ID_UNUM_LIST - MENUITEM "&Numbered" ID_NUM_LIST - // Put here or in Paragraph? - MENUITEM "&Description" ID_FORMAT_PARAGRAPH_BASE+P_DESC_LIST - MENUITEM "D&irectory" ID_FORMAT_PARAGRAPH_BASE+P_DIRECTORY - MENUITEM "&Menu" ID_FORMAT_PARAGRAPH_BASE+P_MENU + MENUITEM "&Bulletted" ID_FORMAT_PARAGRAPH_BASE+P_UNUM_LIST + MENUITEM "&Numbered" ID_FORMAT_PARAGRAPH_BASE+P_NUM_LIST + MENUITEM "&Definition" ID_FORMAT_PARAGRAPH_BASE+P_DESC_LIST END POPUP "&Align" BEGIN @@ -685,8 +685,8 @@ BEGIN ID_LIST_TEXT_PARAGRAPH_BASE+P_ADDRESS "Address" ID_LIST_TEXT_PARAGRAPH_BASE+P_PREFORMAT "Formatted" ID_LIST_TEXT_PARAGRAPH_BASE+P_LIST_ITEM "List Item" - ID_LIST_TEXT_PARAGRAPH_BASE+P_DESC_TITLE "Desc. Title" - ID_LIST_TEXT_PARAGRAPH_BASE+P_DESC_TEXT "Desc. Text" + ID_LIST_TEXT_PARAGRAPH_BASE+P_DESC_TITLE "Term Name" + ID_LIST_TEXT_PARAGRAPH_BASE+P_DESC_TEXT "Definition" // End of Paragraph combobox list ID_LIST_TEXT_CHARACTER_BASE+P_BOLD "Bold\tCtrl+B" ID_LIST_TEXT_CHARACTER_BASE+P_ITALIC "Italic\tCtrl+I" @@ -720,13 +720,12 @@ BEGIN ID_FORMAT_PARAGRAPH_BASE+P_HEADER_6 "Set the style to Heading 6\nHeading 6" ID_FORMAT_PARAGRAPH_BASE+P_ADDRESS "Set the style to Address\nAddress" ID_FORMAT_PARAGRAPH_BASE+P_PREFORMAT "Set the style to Preformat\nPreformat" - ID_FORMAT_PARAGRAPH_BASE+P_UNUM_LIST "Set the style to Unordered List\nUnordered List" - ID_FORMAT_PARAGRAPH_BASE+P_NUM_LIST "Set the style to Ordered List\nOrdered List" - ID_FORMAT_PARAGRAPH_BASE+P_MENU "Set the style to Menu List\nMenu List" - ID_FORMAT_PARAGRAPH_BASE+P_DIRECTORY "Set the style to Directory List\nDirectory List" + ID_FORMAT_PARAGRAPH_BASE+P_UNUM_LIST "Start, change to, or clear an Unnumbered (Bulleted) List\nBullet List" + ID_FORMAT_PARAGRAPH_BASE+P_NUM_LIST "Start, change to, or clear a Numbered List\nNumbered List" + ID_FORMAT_PARAGRAPH_BASE+P_DESC_LIST "Start, change to, or clear a Definition List\nDefinition List" ID_FORMAT_PARAGRAPH_BASE+P_LIST_ITEM "Set the style to List Item\nList Item" - ID_FORMAT_PARAGRAPH_BASE+P_DESC_TITLE "Set the style to Description Title\nDescription Title" - ID_FORMAT_PARAGRAPH_BASE+P_DESC_TEXT "Set the style to Description Text\nDescription Text" + ID_FORMAT_PARAGRAPH_BASE+P_DESC_TITLE "Set the style to Term Name (an item to be defined)\nTerm Name" + ID_FORMAT_PARAGRAPH_BASE+P_DESC_TEXT "Set the style to Term Definition\nDefinition" ID_FORMAT_PARAGRAPH_BASE+P_BLOCKQUOTE "Set the style to Block Quote\nBlock Quote" ID_FORMAT_CHAR_NONE "Remove all character styles and link(s)\nRemove All Styles (Ctrl+K)" ID_FORMAT_CHAR_BOLD "Set the style to Bold\nBold (Ctrl+B)" diff --git a/mozilla/cmd/winfe/resource.h b/mozilla/cmd/winfe/resource.h index f995a5d13bf..41236a11a29 100755 --- a/mozilla/cmd/winfe/resource.h +++ b/mozilla/cmd/winfe/resource.h @@ -1617,7 +1617,6 @@ #define IDC_STATIC_MAIL_SERVER 1563 #define IDC_RADIO_SEARCH_LOCAL 1570 #define IDC_RADIO_SEARCH_SERVER 1571 -#define IDC_COPY_STYLE 1580 #define IDC_TABLE_COPY 1581 #define IDC_TABLE_MOVE 1582 #define IDD_NETPROFILE_LOGIN 1599 @@ -2735,8 +2734,6 @@ #define ID_WEB_PAGE_STARTER 42177 #define IDS_UNLINK_WARNING 42178 #define IDS_CLEAR_CHAR_STYLES_CAPTION 42179 -#define ID_UNUM_LIST 42180 -#define ID_NUM_LIST 42181 #define ID_INSERT_NONBREAK_SPACE 42182 #define IDS_EDIT_TOOLBAR_CAPTION 42183 #define IDS_CHAR_TOOLBAR_CAPTION 42185 @@ -2807,6 +2804,8 @@ #define IDS_REMOVE_LINKS 42268 #define IDS_REMOVE_ALL_LINKS 42269 #define ID_REMOVE_LINKS 42270 +#define ID_PASTE_CHARACTER_STYLE 42271 +#define IDS_PASTE_CHARACTER_SYLE_POPUP 42272 #define IDS_UNABLE_TO_LAUNCH_EDITOR 42273 #define IDS_IMAGE_IS_REMOTE 42274 #define IDS_EDIT_IMAGE_CAPTION 42275 @@ -2925,7 +2924,6 @@ #define IDS_FONTSIZE_4 42407 #define ID_EDIT_BACKGROUND_IMAGE 42408 #define ID_EDIT_PAGE_TITLE 42409 -#define ID_BLOCK_QUOTE 42410 #define ID_NAVIGATE_MSG_BACK 42411 #define ID_NAVIGATE_MSG_FORWARD 42412 #define ID_MESSAGE_UNFLAGMESSAGE 42413