|
Solution46
|
コンソールメニュークラス [詳解]
#include "CConsoleMenu.h"


クラス | |
| struct | SMenuInfo |
| メニュー定義情報構造体 [詳解] | |
| struct | SMenuItemInfo |
| メニュー項目情報構造体 [詳解] | |
公開メンバ関数 | |
| CConsoleMenu (SMenuInfo const *psMenuInfo) noexcept | |
| コンストラクタ [詳解] | |
| virtual | ~CConsoleMenu () noexcept |
| デストラクタ [詳解] | |
| virtual bool | IsExecMenu () noexcept |
| 実行状態取得関数 [詳解] | |
| virtual bool | StartMenu () noexcept |
| メニュー開始関数 [詳解] | |
| virtual bool | ExecMenu () noexcept |
| メニュー実行関数 [詳解] | |
| virtual void | StopMenu () noexcept |
| メニュー中止要求関数 [詳解] | |
| virtual bool | WaitForMenuFinish (DWORD dwTime=INFINITE) noexcept |
| メニュー終了待ち関数 [詳解] | |
| virtual bool | CanBeExit () const noexcept |
| 終了可能状態取得関数 [詳解] | |
| virtual CConsoleMenu * | GetSubMenu () const noexcept |
| サブメニュー取得関数 [詳解] | |
| virtual bool | MenuCallBackProc (bool bPreCallBack=false) noexcept |
| メニューコールバック関数 [詳解] | |
基底クラス LibCommon::CMutex に属する継承公開メンバ関数 | |
| CMutex () noexcept | |
| コンストラクタ [詳解] | |
| virtual | ~CMutex () noexcept |
| デストラクタ [詳解] | |
| virtual void | Close () noexcept override |
| クローズ関数 [詳解] | |
| virtual bool | Release () noexcept override |
| リリース関数 [詳解] | |
| virtual bool | Lock (DWORD dwTime=INFINITE) noexcept override |
| ロック関数 [詳解] | |
| virtual bool | Unlock () noexcept override |
| ロック解除関数 [詳解] | |
| virtual bool | Create (wchar_t const *pszObjectName=nullptr) noexcept |
| 作成関数 [詳解] | |
| virtual bool | Open (wchar_t const *pszObjectName) noexcept |
| オープン関数 [詳解] | |
基底クラス LibCommon::CSync に属する継承公開メンバ関数 | |
| CSync () noexcept | |
| コンストラクタ [詳解] | |
| virtual | ~CSync () noexcept |
| デストラクタ [詳解] | |
| virtual HANDLE | GetHandle () const noexcept |
| オブジェクトハンドル取得関数 [詳解] | |
| virtual bool | IsCreate () const noexcept |
| 新規作成状態取得関数 [詳解] | |
| virtual bool | Wait (DWORD dwTime=INFINITE) noexcept |
| ウェイト関数 [詳解] | |
限定公開メンバ関数 | |
| virtual bool | ExecSubThread () noexcept |
| サブスレッド実行関数 [詳解] | |
静的限定公開メンバ関数 | |
| static DWORD WINAPI | SubThreadProc (LPVOID lpParam) noexcept |
| サブスレッド関数 [詳解] | |
限定公開変数類 | |
| SMenuInfo const * | m_psMenuInfo |
| メニュー定義情報構造体ポインタ [詳解] | |
| CEvent | m_cEventRequest |
| 要求イベント [詳解] | |
| CEvent | m_cEventNotify |
| 通知イベント [詳解] | |
| CEvent | m_cEventFinish |
| 終了イベント [詳解] | |
| CThread | m_cThreadSub |
| サブスレッド [詳解] | |
| int | m_nMenuIndex |
| メニュー項目インデックス [詳解] | |
| int | m_nRepeat |
| リピートカウント [詳解] | |
| bool | m_bRepeat |
| リピート実行フラグ [詳解] | |
| bool | m_bSubMenu |
| サブメニュー要求フラグ [詳解] | |
| CConsoleMenu * | m_pcSubMenu |
| サブメニューポインタ [詳解] | |
| CConsoleMenu * | m_pcParent |
| 親メニューポインタ [詳解] | |
基底クラス LibCommon::CMutex に属する継承限定公開変数類 | |
| DWORD | m_dwLockCount |
| ロックカウント [詳解] | |
基底クラス LibCommon::CSync に属する継承限定公開変数類 | |
| HANDLE | m_hObject |
| オブジェクトハンドル [詳解] | |
| bool | m_bIsCreate |
| 新規作成フラグ [詳解] | |
静的限定公開変数類 | |
| static wchar_t const *const | ITEM_KEY_LIST = L"123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ" |
| 項目選択文字リスト [詳解] | |
| static bool | s_bStopMenu = false |
| メニュー中止要求フラグ [詳解] | |
基底クラス LibCommon::CMutex に属する継承静的限定公開変数類 | |
| static wchar_t const *const | OBJECT_NAME_EXT = L".CMutex" |
| オブジェクト名拡張子 [詳解] | |
非公開メンバ関数 | |
| CConsoleMenu (CConsoleMenu const &)=delete | |
| CConsoleMenu & | operator= (CConsoleMenu const &)=delete |
|
explicitnoexcept |
コンストラクタ
コンストラクタです。
| [in] | psMenuInfo | メニュー定義情報構造体ポインタ |
CConsoleMenu.cpp の 31 行目に定義があります。
参照先 NotifyFatalError.
|
inlinevirtualnoexcept |
|
privatedelete |
|
inlinevirtualnoexcept |
実行状態取得関数
実行状態取得関数です。
| なし |
CConsoleMenu.h の 100 行目に定義があります。
参照元 ExecMenu(), StartMenu(), StopMenu(), AppTest::CAppTest::WmClose().

|
virtualnoexcept |
メニュー開始関数
メニュー開始関数です。
| なし |
CConsoleMenu.cpp の 85 行目に定義があります。
参照先 LibCommon::CThread::Create(), IsExecMenu(), m_cEventFinish, m_cEventNotify, m_cEventRequest, m_cThreadSub, LibCommon::CEvent::Reset(), SubThreadProc().
参照元 AppTest::CAppTest::ExecApp(), ExecMenu().


|
virtualnoexcept |
メニュー実行関数
メニュー実行関数です。
| なし |
CConsoleMenu.cpp の 152 行目に定義があります。
参照先 ExecMenu(), GetSubMenu(), IsExecMenu(), LibCommon::CSyncAuto::IsLock(), m_bRepeat, m_bSubMenu, m_cEventNotify, m_cEventRequest, m_pcParent, m_pcSubMenu, MenuCallBackProc(), LibCommon::CEvent::Set(), StartMenu(), LibCommon::CSync::Wait().
参照元 ExecMenu(), AppTest::CAppTest::IdleCallBackProc().


|
virtualnoexcept |
メニュー中止要求関数
メニュー中止要求関数です。
| なし |
CConsoleMenu.cpp の 130 行目に定義があります。
参照先 ConsoleLine, ConsoleNewLine, ConsoleStopInput, IsExecMenu(), m_cEventFinish, s_bStopMenu, LibCommon::CSync::Wait().
参照元 AppTest::CAppTest::ExecApp(), AppTest::CAppTest::WmClose().


|
inlinevirtualnoexcept |
メニュー終了待ち関数
メニュー終了待ち関数です。
| [in] | dwTime | 待機時間 |
CConsoleMenu.h の 153 行目に定義があります。
参照元 ExecSubThread().

|
inlinevirtualnoexcept |
終了可能状態取得関数
終了可能状態取得関数です。
| なし |
CConsoleMenu.h の 166 行目に定義があります。
参照元 ExecSubThread().

|
inlinevirtualnoexcept |
サブメニュー取得関数
サブメニュー取得関数です。
| なし |
AppTest::CAppTestMenuで再実装されています。
CConsoleMenu.h の 177 行目に定義があります。
参照元 ExecMenu().

|
inlinevirtualnoexcept |
メニューコールバック関数
メニューコールバック関数です。
| [in] | bPreCallBack | 事前コールバックフラグ |
AppTest::CAppTestMenuConsole, AppTest::CAppTestMenuWindowで再実装されています。
CConsoleMenu.h の 190 行目に定義があります。
参照元 ExecMenu(), ExecSubThread().

|
protectedvirtualnoexcept |
サブスレッド実行関数
サブスレッド実行関数です。
| なし |
CConsoleMenu.cpp の 226 行目に定義があります。
参照先 CanBeExit(), ConsoleInputChar, ConsoleLine, ConsoleNewLine, ConsoleString, ConsoleYesNo, ITEM_KEY_LIST, m_bRepeat, LibCommon::CConsoleMenu::SMenuItemInfo::m_bSubMenu, m_bSubMenu, m_cEventNotify, m_cEventRequest, LibCommon::CConsoleMenu::SMenuInfo::m_nCount, m_nMenuIndex, m_nRepeat, m_pcParent, m_pcSubMenu, LibCommon::CConsoleMenu::SMenuInfo::m_psItemInfo, m_psMenuInfo, LibCommon::CConsoleMenu::SMenuItemInfo::m_pszItemName, LibCommon::CConsoleMenu::SMenuInfo::m_pszName, MenuCallBackProc(), s_bStopMenu, LibCommon::CEvent::Set(), LibCommon::CSync::Wait(), WaitForMenuFinish() (計26項目).
参照元 SubThreadProc().


|
staticprotectednoexcept |
サブスレッド関数
サブスレッド関数です。
| [in] | lpParam | 引数ポインタ |
CConsoleMenu.cpp の 456 行目に定義があります。
参照先 ExecSubThread(), ITEM_KEY_LIST, m_cEventFinish, NotifyFatalError, s_bStopMenu, LibCommon::CEvent::Set().
参照元 StartMenu().


|
privatedelete |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
staticprotected |
|
staticprotected |