[2507]
コマンド追加方法
げんた
コマンド追加時に考慮すべき内容をまとめてみました.
▼コマンド追加手順
1. Funccode.hにコマンドID追加 メニューに入れる物は32767以下の値を割り振る
2. CEditView::HandleCommand()に処理追加
3. Funccode.cpp にコマンドID追加.どこかのカテゴリに加える.
4. sakura_rc.rcにコマンド名IDとコマンド名の組み合わせを追加
5. CEditWnd::InitMenu() にメニューを追加
6. CSMacroMgr.cppにマクロ文字列及び引数型を定義
7. (必要なら) CShareData.cppのCShareData::Init()でデフォルトのキー割り当てを設定
8. 常時利用可能なコマンドでなければ,CEditWnd::IsFuncEnableでコマンドの有効・無効判定を追加
9. チェック状態を持つコマンドでは,CEditWnd::IsFuncCheckedでON/OFF表示判定を追加
10. ファイル編集に関連するコマンドは,CEditDoc_new.cppのCEditDoc::IsModificationForbidden()に追加し,読みとり専用時に利用できなくする.
11. アイコンを追加する場合は,ビットマップリソースmytool.bmpにアイコン追加.
12. アイコンを追加する場合は,CMenuDrawer.cppの該当箇所にコマンドIDを入れて有効化
13. キーマクロの保存対象コマンドであれば,CSMacroMgr::CanFuncIsKeyMacro()に判定追加
14. マクロに引数がある場合は CMacro::HandleCommand() に引数をHandleCommandに渡す処理を追加.
15. マクロ保存時に引数を付けたい場合にはCMacro::AddParam()に引数を追加する処理を追加
▼動作確認手順
1. メニューから実行できるか
2. ツールバーから実行できるか
3. ショートカットキーから実行できるか
4. マクロ登録の有無は意図どおりか
5. 読み出し専用モードでは意図どおりに動作するか
6. マクロからの実行は可能か
7. マクロ引数は意図どおりに解釈され,動作するか