Aoi32(0, 0, 5, 4/Osaki #57) -メニューで違う改行コードを選択した後にラジオボタンに反映されているようにする.

ファイルを開いた後、メニューで改行コードを切り替える場合、元々の改行コードから違う改行コードに選択して切り替えても、もう一度メニューを見るとラジオボタンが元に戻ってしまっている。ちゃんとラジオボタンも反映させたい。

MainWindow.hで、

"CRLF"を選択された時のハンドラOnNLCrLf、"LF"を選択された時のハンドラOnNLLf、"CR"を選択された時のハンドラOnNLCr、を追加。
MainWindow.cppでは、

各ハンドラの定義。
m_pTextFile->m_NewLineに改行コードをセット。
CheckMenuRadioItemでラジオボタンを設定し直す。

OnCreateにおいて、AddCommandHandlerで改行コードのハンドラを追加。

OnDestroyにおいて、DeleteCommandHandlerで改行コードのハンドラを削除。

開く
開く

[開く]から、

CRLF
CRLF

CRLFのファイルを選択。

CRLFのファイル
CRLFのファイル

CRLFのファイルはこんな感じ。

Shift_JIS
Shift_JIS

文字コードShift_JIS

CRLF
CRLF

改行コードはCRLF。

Unicodeを選択
Unicodeを選択

いったんメニューを閉じてから、メニューから文字コードUnicodeを選択する。

LFを選択
LFを選択

改行コードはLFを選択。

Unicodeにセットされている
Unicodeにセットされている

再度確認すると、Unicodeにセットされている。

LFにセットされている
LFにセットされている

これまではCRLFのままだったが、今回の修正で再度確認すると、ちゃんとLFにセットされているようになっている。

CRに切り替える
CRに切り替える

もちろんCRに切り替えても、

CRになっている
CRになっている

再度確認するとCRになっている。

-メニューで違う改行コードを選択した後にラジオボタンに反映されているようにする. · bg1bgst333/Aoi32@64547e8 · GitHub