Aoi #22 エディットボックスをウィンドウ一杯に広げる

そろそろ、テキストエディタなので、エディットボックスをウィンドウ一杯に広げたい・・・。

まず、Window.hで、

MoveWindowとOnSizeを追加・・・。
MoveWindowは位置とサイズを指定する感じ・・・。

Window.cppで、

MoveWindowは引数をメンバにセットしつつ、APIのMoveWindowで位置サイズ変更・・・。

ウィンドウサイズの変更はWM_SIZEなので、その時の処理はOnSizeに任せる・・・。
引数は型変換がちょっと必要・・・。

で、Window.cppのOnSizeは特に何もしない・・・。

CustomControl.cppはメッセージ処理が別なので、ここもOnSizeに任せる・・・。
このOnSizeはWindow.cppのOnSize・・・。

MainWindow.hにもOnSize・・・。

MainWindow.cppのm_pEditBox->Createで、WS_BORDERを外したり、ES_WANTRETURNや、縦横両方のスクロールバーのスタイルなどを追加・・・。

OnSizeでm_pEditBox->MoveWindowでウィンドウサイズ変更・・・。
cx, cyにウィンドウのクライアント領域の変更後のサイズが格納されるので、m_pEditBoxもそのサイズに合わせる・・・。

f:id:BG1:20170221230921p:plain

こんな感じで画面いっぱいにテキストを書ける・・・。

・エディットボックスをウィンドウ一杯に広げる · bg1bgst333/Aoi@dc18662 · GitHub

Aoi #21 テキストファイル(*.txt)のフィルタを追加

ここまでbinファイルしか保存できなかったので、txtファイルのフィルタも追加する・・・。

TextFile.hに、

txtファイルのフィルタを追加・・・。

MainMenuBar.cppに、

と、

というようにフィルタ文字列の作成にtxtの処理も追加・・・。

f:id:BG1:20170221182231p:plain

開いて、

f:id:BG1:20170221182244p:plain

テキストファイル(*.txt)というフィルタがあり、txtファイルを選択できる・・・。

f:id:BG1:20170221182528p:plain

もちろん読み込める・・・。

f:id:BG1:20170221182557p:plain

"かきくけこ"を追加し、名前を付けて保存・・・。

f:id:BG1:20170221182622p:plain

ここでもtxtは選択可能・・・。
test1.txtを選択・・・。

f:id:BG1:20170221182655p:plain

上書き確認・・・。
"はい"なら、

f:id:BG1:20170221182822p:plain

保存されてる・・・。

・テキストファイル(*.txt)のフィルタを追加 · bg1bgst333/Aoi@dc600cf · GitHub

ObjeqtNote #21 ファイル読み込み&文字コード変換&エディットボックスにテキストをセット

こちらも、読み込みからテキストセットまで一気に・・・。

f:id:BG1:20170220175315p:plain

最初はこうで、

f:id:BG1:20170220175341p:plain

選択すると、

f:id:BG1:20170220175353p:plain

内容を読み込んでセット・・・。

・ファイル読み込み · bg1bgst333/ObjeqtNote@9f82827 · GitHub

Aoi #20 ファイル読み込み&文字コード変換&エディットボックスにテキストをセット

ファイル読み込みから、文字コード変換、テキストのセットまで一気に・・・。

BinaryFile.hは、

ReadとGetFileSizeを追加・・・。

BinaryFile.cppは、

ReadでAPIのReadFileを呼び、

GetFileSizeでAPIのGetFileSize呼ぶ・・・。

TextFile.hは、

ReadとDecodeを追加・・・。

TextFile.cppで、Readは、

Decodeは、

こんな感じで、サイズ取得、バッファ作成、読み込み、文字コード変換・・・。

EditBox.hは、

SetWindowTextを用意・・・。

APIのSetWindowTextでエディットボックスにセット.

MainMenuBar.cppは、

pTextFile->Readで、pMainWindow->m_pEditBox->m_ptszTextに読み込んだテキストが格納される・・・。
これはpMainWindow->m_pEditBox->SetWindowTextを呼ぶことで、エディットボックスに反映される・・・。

f:id:BG1:20170220172725p:plain

この状態で、

f:id:BG1:20170220172801p:plain

開いたら、

f:id:BG1:20170220172840p:plain

こうで、test2.binを選択・・・。

f:id:BG1:20170220172933p:plain

文字が読み込めた・・・。

・ファイル読み込み · bg1bgst333/Aoi@8c647df · GitHub

ObjeqtNote #20 "開く"ファイルダイアログの表示

こちらにも、"開く"ファイルダイアログを実装・・・。

"開く"をクリックして、test2.binを選択すると、

f:id:BG1:20170220163611p:plain

パスが表示される・・・。

・"開く"ファイルダイアログの表示 · bg1bgst333/ObjeqtNote@ef80111 · GitHub