From 39ed046738486f73f3b304dc58661bd1f9b95cd5 Mon Sep 17 00:00:00 2001 From: Katsuhisa Yuasa Date: Fri, 30 Aug 2019 02:09:57 +0900 Subject: [PATCH 1/2] =?UTF-8?q?CViewCommander::Command=5FSETFONTSIZE=20?= =?UTF-8?q?=E3=81=8B=E3=82=89=20CEditDoc::OnChangeSetting=20=E3=82=92?= =?UTF-8?q?=E5=91=BC=E3=81=B3=E5=87=BA=E3=81=99=E5=A0=B4=E5=90=88=E3=81=AF?= =?UTF-8?q?=E4=B8=8D=E5=BF=85=E8=A6=81=E3=81=AA=E5=87=A6=E7=90=86=E3=82=92?= =?UTF-8?q?=E5=AE=9F=E8=A1=8C=E3=81=97=E3=81=AA=E3=81=84=E3=82=88=E3=81=86?= =?UTF-8?q?=E3=81=AB=E5=88=A4=E5=AE=9A=E3=82=92=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sakura_core/cmd/CViewCommander_Settings.cpp | 2 +- sakura_core/doc/CEditDoc.cpp | 23 +++++++++++++------ sakura_core/doc/CEditDoc.h | 4 +++- sakura_core/doc/layout/CLayoutMgr.cpp | 1 + .../doc/layout/CLayoutMgr_DoLayout.cpp | 2 +- 5 files changed, 22 insertions(+), 10 deletions(-) diff --git a/sakura_core/cmd/CViewCommander_Settings.cpp b/sakura_core/cmd/CViewCommander_Settings.cpp index 1e7a2b40a3..8bcfad1c79 100644 --- a/sakura_core/cmd/CViewCommander_Settings.cpp +++ b/sakura_core/cmd/CViewCommander_Settings.cpp @@ -339,7 +339,7 @@ void CViewCommander::Command_SETFONTSIZE( int fontSize, int shift, int mode ) ); }else if( mode == 2 ){ // 自分だけ更新 - GetDocument()->OnChangeSetting( true, false ); + GetDocument()->OnChangeSetting( true, false, true ); } } diff --git a/sakura_core/doc/CEditDoc.cpp b/sakura_core/doc/CEditDoc.cpp index d4bc2cda1a..8c2ed40fd7 100644 --- a/sakura_core/doc/CEditDoc.cpp +++ b/sakura_core/doc/CEditDoc.cpp @@ -644,6 +644,8 @@ void CEditDoc::OnChangeType() /*! ビューに設定変更を反映させる @param [in] bDoLayout レイアウト情報の再作成 + @param [in] bBlockingHook 処理中のユーザー操作を可能にする + @param [in] bFromSetFontSize フォントサイズ設定から呼び出されたかどうか @date 2004.06.09 Moca レイアウト再構築中にProgress Barを表示する. @date 2008.05.30 nasukoji テキストの折り返し方法の変更処理を追加 @@ -651,7 +653,8 @@ void CEditDoc::OnChangeType() */ void CEditDoc::OnChangeSetting( bool bDoLayout, - bool bBlockingHook + bool bBlockingHook, + bool bFromSetFontSize ) { int i; @@ -685,8 +688,10 @@ void CEditDoc::OnChangeSetting( } } - /* 共有データ構造体のアドレスを返す */ - CFileNameManager::getInstance()->TransformFileName_MakeCache(); + if(!bFromSetFontSize ){ + /* 展開済みメタ文字列のキャッシュを作成・更新 */ + CFileNameManager::getInstance()->TransformFileName_MakeCache(); + } CLogicPointEx* posSaveAry = NULL; @@ -714,8 +719,10 @@ void CEditDoc::OnChangeSetting( } const CKetaXInt nTabSpaceOld = m_cDocType.GetDocumentAttribute().m_nTabSpace; - // 文書種別 - m_cDocType.SetDocumentType( CDocTypeManager().GetDocumentTypeOfPath( m_cDocFile.GetFilePath() ), false ); + if (!bFromSetFontSize) { + // 文書種別 + m_cDocType.SetDocumentType( CDocTypeManager().GetDocumentTypeOfPath( m_cDocFile.GetFilePath() ), false ); + } const STypeConfig& ref = m_cDocType.GetDocumentAttribute(); @@ -832,8 +839,10 @@ void CEditDoc::OnChangeSetting( SelectCharWidthCache( CWM_FONT_PRINT, CWM_CACHE_LOCAL ); } - // 親ウィンドウのタイトルを更新 - m_pcEditWnd->UpdateCaption(); + if(!bFromSetFontSize ){ + // 親ウィンドウのタイトルを更新 + m_pcEditWnd->UpdateCaption(); + } } /*! ファイルを閉じるときのMRU登録 & 保存確認 & 保存実行 diff --git a/sakura_core/doc/CEditDoc.h b/sakura_core/doc/CEditDoc.h index b270be694c..8e13874fab 100644 --- a/sakura_core/doc/CEditDoc.h +++ b/sakura_core/doc/CEditDoc.h @@ -105,7 +105,9 @@ class CEditDoc //イベント BOOL HandleCommand(EFunctionCode nCommand); void OnChangeType(); - void OnChangeSetting(bool bDoLayout = true, bool bBlockingHook = true); // ビューに設定変更を反映させる + void OnChangeSetting(bool bDoLayout = true, + bool bBlockingHook = true, + bool bFromSetFontSize = false); // ビューに設定変更を反映させる BOOL OnFileClose(bool bGrepNoConfirm); /* ファイルを閉じるときのMRU登録 & 保存確認 & 保存実行 */ void RunAutoMacro( int idx, LPCTSTR pszSaveFilePath = NULL ); // 2006.09.01 ryoji マクロ自動実行 diff --git a/sakura_core/doc/layout/CLayoutMgr.cpp b/sakura_core/doc/layout/CLayoutMgr.cpp index 9e58d7b0b4..ca2d9e44e2 100644 --- a/sakura_core/doc/layout/CLayoutMgr.cpp +++ b/sakura_core/doc/layout/CLayoutMgr.cpp @@ -106,6 +106,7 @@ void CLayoutMgr::_Empty() /*! レイアウト情報の変更 @param bDoLayout [in] レイアウト情報の再作成 + @param[in] bBlockingHook 処理中のユーザー操作を可能にする @param refType [in] タイプ別設定 */ void CLayoutMgr::SetLayoutInfo( diff --git a/sakura_core/doc/layout/CLayoutMgr_DoLayout.cpp b/sakura_core/doc/layout/CLayoutMgr_DoLayout.cpp index 68ff814fa9..09146eced4 100644 --- a/sakura_core/doc/layout/CLayoutMgr_DoLayout.cpp +++ b/sakura_core/doc/layout/CLayoutMgr_DoLayout.cpp @@ -286,10 +286,10 @@ void CLayoutMgr::_OnLine1(SLayoutWork* pWork) /*! 現在の折り返し文字数に合わせて全データのレイアウト情報を再生成します - @date 2004.04.03 Moca TABが使われると折り返し位置がずれるのを防ぐため, nPosXがインデントを含む幅を保持するように変更.m_nMaxLineKetasは 固定値となったが,既存コードの置き換えは避けて最初に値を代入するようにした. + @param[in] bBlockingHook 処理中のユーザー操作を可能にする */ void CLayoutMgr::_DoLayout(bool bBlockingHook) { From 9e41dc4fdb6c7164fe937b741b5624fce41c2e4a Mon Sep 17 00:00:00 2001 From: beru Date: Sat, 31 Aug 2019 16:50:36 +0900 Subject: [PATCH 2/2] =?UTF-8?q?=E3=83=AC=E3=83=93=E3=83=A5=E3=83=BC?= =?UTF-8?q?=E6=8C=87=E6=91=98=E5=AF=BE=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sakura_core/doc/CEditDoc.cpp | 2 +- sakura_core/doc/layout/CLayoutMgr.cpp | 1 - sakura_core/doc/layout/CLayoutMgr_DoLayout.cpp | 2 +- 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/sakura_core/doc/CEditDoc.cpp b/sakura_core/doc/CEditDoc.cpp index 8c2ed40fd7..eb9b5aab16 100644 --- a/sakura_core/doc/CEditDoc.cpp +++ b/sakura_core/doc/CEditDoc.cpp @@ -654,7 +654,7 @@ void CEditDoc::OnChangeType() void CEditDoc::OnChangeSetting( bool bDoLayout, bool bBlockingHook, - bool bFromSetFontSize + bool bFromSetFontSize ) { int i; diff --git a/sakura_core/doc/layout/CLayoutMgr.cpp b/sakura_core/doc/layout/CLayoutMgr.cpp index ca2d9e44e2..9e58d7b0b4 100644 --- a/sakura_core/doc/layout/CLayoutMgr.cpp +++ b/sakura_core/doc/layout/CLayoutMgr.cpp @@ -106,7 +106,6 @@ void CLayoutMgr::_Empty() /*! レイアウト情報の変更 @param bDoLayout [in] レイアウト情報の再作成 - @param[in] bBlockingHook 処理中のユーザー操作を可能にする @param refType [in] タイプ別設定 */ void CLayoutMgr::SetLayoutInfo( diff --git a/sakura_core/doc/layout/CLayoutMgr_DoLayout.cpp b/sakura_core/doc/layout/CLayoutMgr_DoLayout.cpp index 09146eced4..68ff814fa9 100644 --- a/sakura_core/doc/layout/CLayoutMgr_DoLayout.cpp +++ b/sakura_core/doc/layout/CLayoutMgr_DoLayout.cpp @@ -286,10 +286,10 @@ void CLayoutMgr::_OnLine1(SLayoutWork* pWork) /*! 現在の折り返し文字数に合わせて全データのレイアウト情報を再生成します + @date 2004.04.03 Moca TABが使われると折り返し位置がずれるのを防ぐため, nPosXがインデントを含む幅を保持するように変更.m_nMaxLineKetasは 固定値となったが,既存コードの置き換えは避けて最初に値を代入するようにした. - @param[in] bBlockingHook 処理中のユーザー操作を可能にする */ void CLayoutMgr::_DoLayout(bool bBlockingHook) {