void CControlState::Load( CEditX *pCtrl ) { if ( !pCtrl ) return; ASSERT( IsWindow( pCtrl->m_hWnd ) ); CEdit *pEdit = pCtrl->m_pEdit; if ( !pEdit ) return; CBuffer *pBuff = pEdit->GetBuffer(); m_bColorSyntax = pEdit->m_bColorSyntax; m_bAllowHSplit = pEdit->m_bAllowHSplit; m_bAllowVSplit = pEdit->m_bAllowVSplit; m_bHScroll = (BYTE)pEdit->ShowHScrollBar(); m_bVScroll = (BYTE)pEdit->ShowVScrollBar(); m_bSmoothScroll = pEdit->m_bSmoothScroll; m_bLineToolTips = pEdit->m_bLineToolTips; m_bShowLeftMargin = pEdit->m_bShowLeftMargin; m_bAllowColumnSel = pEdit->m_bAllowColumnSel; m_bAllowDragDrop = pEdit->m_bAllowDragDrop; m_bExpandTabs = pEdit->m_bExpandTabs; m_xPosHSplitter = pEdit->m_xPosHSplitter; m_yPosVSplitter = pEdit->m_yPosVSplitter; m_eIndentStyle = pEdit->m_eIndentStyle; m_nTabSize = (WORD)pBuff->GetTabSize(); m_bDisplayWhitespace = pEdit->m_bDisplayWhitespace; m_bWantCarriageReturn = pBuff->WantCarriageReturn(); m_bEnabled = IsWindowEnabled( pEdit->m_hWnd ); m_bGlobalProps = pEdit->m_bGlobalProps; m_bModified = pBuff->IsModified(); m_bOverType = pEdit->m_bOverType; m_bReadOnly = pBuff->IsReadOnly(); m_bPreserveCase = pEdit->g_FindReplaceData.m_bPreserveCase; m_bCaseSensitiveSearch = pEdit->g_FindReplaceData.m_bCaseSensitiveSearch; m_bWholeWordOnly = pEdit->g_FindReplaceData.m_bWholeWordOnly; m_bRegExp = pEdit->g_FindReplaceData.m_bRegExp; m_nMaxUndo = pBuff->GetMaxUndo(); m_Colors = pEdit->m_Colors; m_FontStyles = pEdit->m_FontStyles; m_bSelBounds = pEdit->m_bSelBounds; m_bHideSel = pEdit->m_bHideSel; m_bNormalizeCase = pEdit->m_Buffer.NormalizeCase(); m_LineNum = pEdit->m_LineNum; m_bOvertypeCaret = pEdit->m_bOvertypeCaret; m_nHighlightedLine = pEdit->m_nHighlightedLine; m_dwBorderStyle = CM_GetBorderStyle( pCtrl->m_hWnd ); m_bStealKeys = pCtrl->m_bStealKeys; HFONT hFont = ( HFONT ) SendMessage( pCtrl->m_hWnd, WM_GETFONT, 0, 0 ); int cbSize = GetObject( hFont, sizeof( LOGFONT ), NULL ); VERIFY( GetObject( hFont, cbSize, &m_lf ) ); pCtrl->get_Text( &m_bstrText ); pCtrl->get_Language( &m_bstrLang ); }