13 #pragma managed( push, off )    50             if ( !cFile.
Open( pszPath ) ) {
    82             if ( !cFile.
Create( pszPath ) ) {
   111             if ( 
nullptr != pszKey ) {
   138             if ( !
GetPath( cPath, pszKey, nIndex ) ) {
   145             if ( 
nullptr == pcJson ) {
   171             if ( !
GetPath( cPath, pszKey, nIndex ) ) {
   178             if ( 
nullptr == pcJson ) {
   196             rnValue = ::wcstol( cValue, 
nullptr, 10 );
   214             if ( !
GetPath( cPath, pszKey, nIndex ) ) {
   239     bool CJsonConfig::Get( std::initializer_list< int* > 
const& rpnValueList, 
wchar_t const* pszKey ) noexcept {
   245             for ( 
auto pcIter = rpnValueList.begin();; ++pcIter, ++nIndex ) {
   247                 if ( rpnValueList.end() == pcIter ) {
   255                 if ( !
GetPath( cPath, pszKey, nIndex ) ) {
   262                 if ( 
nullptr == pcJson ) {
   280                 if ( 
nullptr != *pcIter ) {
   281                     **pcIter = ::wcstol( cValue, 
nullptr, 10 );
   292     bool CJsonConfig::Set( std::initializer_list< int > 
const& rnValueList, 
wchar_t const* pszKey ) noexcept {
   298             if ( !
GetPath( cPath, pszKey ) ) {
   305             for ( 
auto pcIter = rnValueList.begin();; ++pcIter ) {
   307                 if ( rnValueList.end() == pcIter ) {
   320                 else if ( rnValueList.begin() != pcIter ) {
   342             if ( !
GetPath( cPath, pszKey, nIndex ) ) {
   349             if ( 
nullptr == pcJson ) {
   367             rfValue = ::wcstof( cValue, 
nullptr );
   385             if ( !
GetPath( cPath, pszKey, nIndex ) ) {
   416             if ( !
GetPath( cPath, pszKey, nIndex ) ) {
   423             if ( 
nullptr == pcJson ) {
   441             rbValue = ( 0 == ::wcscmp( L
"true", cValue ) );
   459             if ( !
GetPath( cPath, pszKey, nIndex ) ) {
   466             cPath += ( bValue? L
"true": L
"false" );
   490             if ( !
GetPath( cPath, pszKey, nIndex ) ) {
   497             if ( 
nullptr == pcJson ) {
   517     bool CJsonConfig::Set( 
wchar_t const* pszValue, 
wchar_t const* pszKey, 
int nIndex ) noexcept {
   523             if ( !
GetPath( cPath, pszKey, nIndex ) ) {
   559             if ( !
Get( { &nLeft, &nTop, &nWidth, &nHeight }, pszKey ) ) {
   565             ::SetWindowPos( hWnd, HWND_TOP, nLeft, nTop, nWidth, nHeight, ( SWP_NOACTIVATE | SWP_SHOWWINDOW ) );
   566             ::UpdateWindow( hWnd );
   583             WINDOWPLACEMENT sWndPlace = { 
sizeof( WINDOWPLACEMENT ) };
   584             if ( 0 == ::GetWindowPlacement( hWnd, &sWndPlace ) ) {
   590             int nLeft   = sWndPlace.rcNormalPosition.left;
   591             int nTop    = sWndPlace.rcNormalPosition.top;
   592             int nWidth  = ( sWndPlace.rcNormalPosition.right  - sWndPlace.rcNormalPosition.left );
   593             int nHeight = ( sWndPlace.rcNormalPosition.bottom - sWndPlace.rcNormalPosition.top );
   594             if ( !
Set( { nLeft, nTop, nWidth, nHeight }, pszKey ) ) {
   622             HWND hActive = ::GetActiveWindow();
   628                 ::ShowWindow( hWnd, SW_SHOWNOACTIVATE );
   632                 ::ShowWindow( hWnd, SW_SHOWNA );
   634             case SW_SHOWMINIMIZED:
   636                 ::ShowWindow( hWnd, SW_SHOWMINNOACTIVE );
   641                     ::ShowWindow( hWnd, nShow );
   644                     if ( hActive != ::GetActiveWindow() ) {
   645                         ::SetActiveWindow( hActive );
   654                 ::ShowWindow( hWnd, SW_HIDE );
   672             bool bVisible = ( 0 != ::IsWindowVisible( hWnd ) );
   675             WINDOWPLACEMENT sWndPlace = { 
sizeof( WINDOWPLACEMENT ) };
   676             if ( 0 == ::GetWindowPlacement( hWnd, &sWndPlace ) ) {
   682             int nShow = sWndPlace.showCmd;
   704             if ( !
Get( { &nVisible, &rnShow }, pszKey ) ) {
   710             rbVisible = ( 0 != nVisible );
   727             if ( !
Set( { bVisible, nShow }, pszKey ) ) {
   746 #pragma managed( pop ) #define LogOutHeader()                
関数ヘッダマクロ 
virtual bool Get(int &rnValue, wchar_t const *pszKey=nullptr, int nIndex=-1) noexcept
整数型設定値取得関数 
virtual bool SaveWindowPosition(HWND hWnd, wchar_t const *pszKey=KEY_WINDOW_POS) noexcept
ウィンドウ表示位置保存関数 
#define LogOutFooter()                
関数フッタマクロ 
virtual bool GetShowWindow(HWND hWnd, bool &rbVisible, int &rnShow, wchar_t const *pszKey=KEY_SHOW_WINDOW) noexcept
ウィンドウ表示状態取得関数 
virtual bool Delete(wchar_t const *pszKey, int nIndex=-1) noexcept
キー設定値削除関数 
virtual bool IsJsonFixed() noexcept
virtual bool CreatePath(wchar_t const *pszPath) noexcept
JSONパス作成関数 
static bool GetJsonSetValue(CString &rcValue, CJson *pcJson, bool bClassName=false, bool bQuotes=true) noexcept
JSON設定値文字列取得関数 
virtual bool SaveShowWindow(HWND hWnd, wchar_t const *pszKey=KEY_SHOW_WINDOW) noexcept
ウィンドウ表示状態保存関数 
virtual bool Open(wchar_t const *pszPath, bool bWrite=false) noexcept
オープン関数 
virtual bool Save(wchar_t const *pszPath) noexcept
構成ファイルセーブ関数 
static wchar_t const *const KEY_WINDOW_POS
ウィンドウ表示位置キー文字列 
virtual bool Set(int nValue, wchar_t const *pszKey=nullptr, int nIndex=-1) noexcept
整数型設定値設定関数 
virtual bool SetShowWindow(HWND hWnd, bool bVisible, int nShow, wchar_t const *pszKey=KEY_SHOW_WINDOW) noexcept
ウィンドウ表示状態設定関数 
CJsonConfig() noexcept
コンストラクタ 
virtual wchar_t const * Format(wchar_t const *pszFormat,...) noexcept
書式設定文字列代入関数 
static CJson * FindJsonPath(wchar_t const *pszPath, CJson *pcJson) noexcept
JSONパス検索関数 
virtual bool Load(wchar_t const *pszPath) noexcept
構成ファイルロード関数 
virtual bool ResumeShowWindow(HWND hWnd, wchar_t const *pszKey=KEY_SHOW_WINDOW) noexcept
ウィンドウ表示状態復元関数 
virtual bool OutputDocument(CStreamOut &rcStreamOut) noexcept
JSONドキュメント出力関数 
virtual bool IsJsonNumber() noexcept
virtual bool Create(wchar_t const *pszPath, UINT uCodePage=CP_UTF16) noexcept
作成関数 
#define NewDelLogOut()                    
ログ出力許可フラグ取得マクロ 
virtual bool GetPath(CString &rcPath, wchar_t const *pszKey=nullptr, int nIndex=-1) noexcept
JSONパス取得関数 
static wchar_t const *const KEY_SHOW_WINDOW
ウィンドウ表示状態キー文字列 
virtual bool InputDocument(CStream &rcStream) noexcept
JSONドキュメント入力関数 
CJson * m_pcJsonCurrent
カレントJSONクラスポインタ 
virtual bool ResumeWindowPosition(HWND hWnd, wchar_t const *pszKey=KEY_WINDOW_POS) noexcept
ウィンドウ表示位置復元関数 
static bool DeleteJson(CJson *&rpcJson) noexcept
JSONクラス削除関数