Created
August 10, 2013 13:51
-
-
Save hirosof/6200513 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #pragma once | |
| #include <Windows.h> | |
| #include <stdio.h> | |
| typedef struct HSControlData | |
| { | |
| HWND hControl; //コントロール ウィンドウハンドル | |
| WNDPROC OldProc; //従来のプロシージャ | |
| wchar_t szControlName[260]; //コントロール名 | |
| UINT32 ControlNumber; //種別のコントロール番号 | |
| struct{ | |
| wchar_t Name[260]; //メニューID(マクロ名) | |
| UINT32 ID; //メニューID | |
| }MenuID; | |
| BOOL isPreviewMode; //プレビューモードかどうか | |
| BOOL isSelected; //選択されているか | |
| }*LPHSControlData; | |
| typedef struct HSInternalData | |
| { | |
| HSControlData Data; | |
| HSInternalData *lpBack; //前のデータ | |
| HSInternalData *lpNext; //次のデータ | |
| }*LPHSInternalData; | |
| class CHSInternalDataAdmin | |
| { | |
| private: | |
| LPHSInternalData lpData; //設定 | |
| LPHSInternalData AllocNewSettingMemory(void); //新しい設定の位置を確保 | |
| LPHSInternalData GetSettingMemory(HWND hwnd); //指定されたコントロールを管理しているメモリのアドレスを確認する | |
| public: | |
| CHSInternalDataAdmin(); //コンストラクタ | |
| ~CHSInternalDataAdmin(); //デストラクタ | |
| void Add(LPHSControlData lpAddData); //追加 | |
| void Destroy(HWND hObject); //コントロール破棄 | |
| void AllDestroy(void); //全コントロール破棄 | |
| BOOL GetInfo(LPHSControlData lpInfo); //取得 | |
| BOOL SetInfo(LPHSControlData lpInfo); //設定 | |
| BOOL GetPreviewMode(HWND hwnd); //プレビューモード取得 | |
| BOOL SetPreviewMode(HWND hwnd , BOOL bMode); //プレビューモード設定 | |
| WNDPROC GetOldProc(HWND hwnd); //以前のプロシージャのアドレスを取得 | |
| BOOL SetSelected(HWND hwnd , BOOL bSelected); //オブジェクトが選択されているかの設定 | |
| BOOL GetSelected(HWND hwnd); //オブジェクトが選択されているかの設定取得 | |
| BOOL ChangeSelectObject(HWND hwnd , BOOL bOK_Multi = FALSE); //選択されているオブジェクトを変更する | |
| int GetSelectedObjectsCount(void); //選択されているオブジェクトの数を数える | |
| int GetSelectedObjects(HWND *lpObjectHandles); //選択されている全オブジェクトの配列を返す | |
| int GetNumberOfControls(TCHAR *lpszContorlName = NULL); //コントロールの数を数える | |
| BOOL GetControlRect(HWND hwnd , RECT *lpRect); //指定されたコントロールの表示領域を取得する | |
| BOOL GetControlPosition(HWND hwnd , POINT *lpPoint); //指定されたコントロールの位置を取得する | |
| BOOL GetControlSize(HWND hwnd , SIZE *lpSize); //指定されたコントロールのサイズを取得する | |
| BOOL SetControlPosition(HWND hwnd , POINT *lpPoint); //指定されたコントロールの位置を設定する | |
| BOOL SetControlSize(HWND hwnd , SIZE *lpSize); //指定されたコントロールのサイズを設定する | |
| }; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment