Solution46
総合概要
名前空間
クラス
ファイル
ファイル一覧
ファイルメンバ
CAppTestMenuWindow.cpp
[詳解]
1
//=============================================================================
2
/// @file
3
/// テストアプリケーションウィンドウメニュー実装ファイル
4
///
5
/// テストアプリケーションウィンドウメニュー実装ファイルです。
6
///
7
/// $Id: CAppTestMenuWindow.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 <
CAppTestMenuWindow.h
>
18
#include <
AppTest.h
>
19
#include <
CConsole.h
>
20
21
//=============================================================================
22
// テストアプリケーション名前空間
23
namespace
AppTest
{
24
//=========================================================================
25
// テストアプリケーションウィンドウメニュークラス
26
//=========================================================================
27
// 構築子と解体子
28
//-------------------------------------------------------------------------
29
// コンストラクタ
30
CAppTestMenuWindow::CAppTestMenuWindow
() noexcept
31
// 基底クラスコンストラクタ
32
:
CAppTestMenuBase
( &s_sMenuInfo )
33
{}
34
35
//=========================================================================
36
// 公開関数
37
//-------------------------------------------------------------------------
38
// メニューコールバック関数
39
bool
CAppTestMenuWindow::MenuCallBackProc
(
bool
bPreCallBack ) noexcept {
40
// 処理ブロック
41
bool
result =
false
;
42
do
{
43
// インデックスを調べる
44
switch
( static_cast< EMenuItem >(
m_nMenuIndex
) ) {
45
case
EMenuItem::ShowWindowInfo
: result =
ShowWindowInfo
( bPreCallBack );
break
;
// ウィンドウ情報表示
46
}
47
}
while
(
false
);
48
49
// 実行結果を返す
50
return
result;
51
}
52
53
//-------------------------------------------------------------------------
54
// ウィンドウ情報表示関数
55
bool
CAppTestMenuWindow::ShowWindowInfo
(
bool
bPreCallBack ) noexcept {
56
// 処理ブロック
57
bool
result =
false
;
58
do
{
59
// 事前コールバックフラグを調べる
60
if
( bPreCallBack ) {
61
// 継続!
62
result =
true
;
63
break
;
64
}
65
66
// メインウィンドウ情報を表示する
67
ConsoleLine
( L
"メインウィンドウ情報"
);
68
ConsoleNewLine
();
69
70
OutputFinishMessage
( L
"ウィンドウ情報を表示しました。"
);
71
}
while
(
false
);
72
73
// 実行結果を返す
74
return
result;
75
}
76
77
//=========================================================================
78
// 静的限定公開定数
79
//-------------------------------------------------------------------------
80
// メニュー定義情報構造体
81
CAppTestMenuWindow::SMenuInfo
const
CAppTestMenuWindow::s_sMenuInfo
= {
82
L
"ウィンドウメニュー"
,
// メニュー名称
83
static_cast<
int
>
(
EMenuItem::Size
),
// メニュー項目数
84
s_sItemInfo
,
// メニュー項目情報配列
85
};
86
87
//-------------------------------------------------------------------------
88
// メニュー項目情報配列
89
CAppTestMenuBase::SMenuItemInfo
const
CAppTestMenuWindow::s_sItemInfo
[] = {
90
{ L
"ウィンドウ情報表示"
},
// ShowWindowInfo
91
};
92
}
93
94
#pragma managed( pop )
AppTest
テストアプリケーション名前空間
Definition:
AppTest.h:25
AppTest::CAppTestMenuWindow::EMenuItem::Size
列挙体サイズ
AppTest::CAppTestMenuWindow::EMenuItem::ShowWindowInfo
ウィンドウ情報表示
LibCommon::CConsoleMenu::SMenuInfo
メニュー定義情報構造体
Definition:
CConsoleMenu.h:55
AppTest::CAppTestMenuWindow::ShowWindowInfo
virtual bool ShowWindowInfo(bool bPreCallBack) noexcept
メニュー項目関数
Definition:
CAppTestMenuWindow.cpp:55
ConsoleNewLine
#define ConsoleNewLine()
改行出力マクロ
Definition:
CConsole.h:29
AppTest::CAppTestMenuWindow::s_sItemInfo
static SMenuItemInfo const s_sItemInfo[static_cast< int >(EMenuItem::Size)]
メニュー項目情報配列
Definition:
CAppTestMenuWindow.h:105
LibCommon::CConsoleMenu::m_nMenuIndex
int m_nMenuIndex
メニュー項目インデックス
Definition:
CConsoleMenu.h:230
CConsole.h
コンソール入出力クラスヘッダコンソール
AppTest::CAppTestMenuWindow::MenuCallBackProc
virtual bool MenuCallBackProc(bool bPreCallBack) noexcept override
メニューコールバック関数
Definition:
CAppTestMenuWindow.cpp:39
AppTest::CAppTestMenuBase
テストアプリケーションメニュー基底クラス
Definition:
CAppTestMenuBase.h:31
AppTest::CAppTestMenuBase::OutputFinishMessage
static bool OutputFinishMessage(wchar_t const *pszFormat,...) noexcept
終了メッセージ出力関数
Definition:
CAppTestMenuBase.cpp:39
ConsoleLine
#define ConsoleLine(...)
ヘッダインデントなし書式設定文字列行出力マクロ
Definition:
CConsole.h:34
CAppTestMenuWindow.h
テストアプリケーションウィンドウメニュークラスヘッダファイル
AppTest::CAppTestMenuWindow::s_sMenuInfo
static SMenuInfo const s_sMenuInfo
メニュー定義情報構造体
Definition:
CAppTestMenuWindow.h:104
LibCommon::CConsoleMenu::SMenuItemInfo
メニュー項目情報構造体
Definition:
CConsoleMenu.h:43
AppTest.h
テストアプリケーションヘッダファイル
AppTest::CAppTestMenuWindow::CAppTestMenuWindow
CAppTestMenuWindow() noexcept
コンストラクタ
Definition:
CAppTestMenuWindow.cpp:30
Source
Application
AppTest
CAppTestMenuWindow.cpp
2019年03月26日(火) 13時18分15秒作成 - Solution46 / 構成:
1.8.11