Solution46
総合概要
名前空間
クラス
ファイル
ファイル一覧
ファイルメンバ
CAppTestMenu.cpp
[詳解]
1
//=============================================================================
2
/// @file
3
/// テストアプリケーションメインメニュー実装ファイル
4
///
5
/// テストアプリケーションメインメニュー実装ファイルです。
6
///
7
/// $Id: CAppTestMenu.cpp 245 2019-03-20 15:03:41Z admin $
8
/// $Date: 2019-03-21 00:03:41 +0900 (2019/03/21 (木)) $
9
/// $Author: admin $
10
///
11
/// @attention なし
12
13
#pragma managed( push, off )
14
15
//=============================================================================
16
// インクルードファイル
17
#include <
CAppTestMenu.h
>
18
#include <
CAppTestMenuConsole.h
>
19
#include <
CAppTestMenuWindow.h
>
20
21
//=============================================================================
22
// テストアプリケーション名前空間
23
namespace
AppTest
{
24
//=========================================================================
25
// テストアプリケーションメインメニュークラス
26
//=========================================================================
27
// 構築子と解体子
28
//-------------------------------------------------------------------------
29
// コンストラクタ
30
CAppTestMenu::CAppTestMenu
() noexcept
31
// 基底クラスコンストラクタ
32
:
CAppTestMenuBase
( &s_sMenuInfo )
33
{}
34
35
//=========================================================================
36
// 公開関数
37
//-------------------------------------------------------------------------
38
// サブメニュー取得関数
39
CAppTestMenuBase
*
CAppTestMenu::GetSubMenu
() const noexcept {
40
// 処理ブロック
41
CAppTestMenuBase
* result =
nullptr
;
42
do
{
43
// インデックスを調べる
44
switch
( static_cast< EMenuItem >(
m_nMenuIndex
) ) {
45
case
EMenuItem::MenuConsole
: result =
new
CAppTestMenuConsole
;
break
;
// コンソールメニュー
46
case
EMenuItem::MenuWindow
: result =
new
CAppTestMenuWindow
;
break
;
// ウィンドウメニュー
47
}
48
}
while
(
false
);
49
50
// 実行結果を返す
51
return
result;
52
}
53
54
//=========================================================================
55
// 静的限定公開定数
56
//-------------------------------------------------------------------------
57
// メニュー定義情報構造体
58
CAppTestMenu::SMenuInfo
const
CAppTestMenu::s_sMenuInfo
= {
59
L
"テストアプリケーションメニュー"
,
// メニュー名称
60
static_cast<
int
>
(
EMenuItem::Size
),
// メニュー項目数
61
s_sItemInfo
,
// メニュー項目情報配列
62
};
63
64
//-------------------------------------------------------------------------
65
// メニュー項目情報配列
66
CAppTestMenuBase::SMenuItemInfo
const
CAppTestMenu::s_sItemInfo
[] = {
67
{ L
"コンソールメニュー"
,
true
},
// MenuConsole
68
{ L
"ウィンドウメニュー"
,
true
},
// ManuWindow
69
};
70
}
71
72
#pragma managed( pop )
AppTest
テストアプリケーション名前空間
Definition:
AppTest.h:25
AppTest::CAppTestMenu::EMenuItem::MenuWindow
ウィンドウメニュー
LibCommon::CConsoleMenu::SMenuInfo
メニュー定義情報構造体
Definition:
CConsoleMenu.h:55
AppTest::CAppTestMenuConsole
テストアプリケーションコンソールメニュークラス
Definition:
CAppTestMenuConsole.h:31
AppTest::CAppTestMenu::CAppTestMenu
CAppTestMenu() noexcept
コンストラクタ
Definition:
CAppTestMenu.cpp:30
CAppTestMenuConsole.h
テストアプリケーションコンソールメニュークラスヘッダファイル
AppTest::CAppTestMenu::EMenuItem::Size
列挙体サイズ
LibCommon::CConsoleMenu::m_nMenuIndex
int m_nMenuIndex
メニュー項目インデックス
Definition:
CConsoleMenu.h:230
AppTest::CAppTestMenu::EMenuItem::MenuConsole
コンソールメニュー
AppTest::CAppTestMenuWindow
テストアプリケーションウィンドウメニュークラス
Definition:
CAppTestMenuWindow.h:31
AppTest::CAppTestMenuBase
テストアプリケーションメニュー基底クラス
Definition:
CAppTestMenuBase.h:31
AppTest::CAppTestMenu::s_sMenuInfo
static SMenuInfo const s_sMenuInfo
メニュー定義情報構造体
Definition:
CAppTestMenu.h:90
CAppTestMenuWindow.h
テストアプリケーションウィンドウメニュークラスヘッダファイル
LibCommon::CConsoleMenu::SMenuItemInfo
メニュー項目情報構造体
Definition:
CConsoleMenu.h:43
CAppTestMenu.h
テストアプリケーションメインメニュークラスヘッダファイル
AppTest::CAppTestMenu::GetSubMenu
virtual CAppTestMenuBase * GetSubMenu() const noexcept override
サブメニュー取得関数
Definition:
CAppTestMenu.cpp:39
AppTest::CAppTestMenu::s_sItemInfo
static SMenuItemInfo const s_sItemInfo[static_cast< int >(EMenuItem::Size)]
メニュー項目情報配列
Definition:
CAppTestMenu.h:91
Source
Application
AppTest
CAppTestMenu.cpp
2019年03月26日(火) 13時18分15秒作成 - Solution46 / 構成:
1.8.11