mirror of https://github.com/tongzx/nt5src
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
135 lines
3.5 KiB
135 lines
3.5 KiB
#ifndef __CDEFINESS_H__
|
|
#define __CDEFINESS_H__
|
|
|
|
#ifndef __CSUBSET_H__
|
|
#include "csubset.h"
|
|
#endif
|
|
|
|
#ifndef HHCTRL
|
|
#ifndef _CDLG_H_
|
|
#include "..\hha\cdlg.h"
|
|
#endif
|
|
#else
|
|
#include "cdlg.h"
|
|
#endif
|
|
|
|
#include <commctrl.h>
|
|
|
|
#ifndef HHCTRL
|
|
#include "..\hhw\resource.h"
|
|
#else
|
|
#include "resource.h"
|
|
#endif
|
|
|
|
|
|
#define SS_IMAGELIST_WIDTH 10
|
|
#define SS_IMAGELIST_HEIGHT 10
|
|
#define CWIDTH_IMAGE_LIST 16
|
|
|
|
#ifdef HHCTRL
|
|
|
|
class CChooseSubsets : public CDlg
|
|
{
|
|
public:
|
|
CChooseSubsets(HWND hwndParent, CHHWinType* phh) : CDlg(hwndParent, CChooseSubsets::IDD) {
|
|
m_phh = phh;
|
|
}
|
|
BOOL OnBeginOrEnd(void);
|
|
|
|
enum { IDD = IDDLG_CHOOSE_SUBSETS };
|
|
|
|
private:
|
|
CHHWinType* m_phh;
|
|
};
|
|
|
|
#endif // HHCTRL
|
|
|
|
|
|
class CDefineSubSet : public CDlg
|
|
{
|
|
|
|
public:
|
|
CDefineSubSet( HWND hwndParent, CSubSets *pSubSets, CInfoType *pInfoType, BOOL fHidden );
|
|
~CDefineSubSet();
|
|
|
|
BOOL InitTreeView(int);
|
|
void SetItemFont(HFONT hFont);
|
|
int IncState(int const type);
|
|
int GetITState(int const type );
|
|
|
|
LRESULT OnDlgMsg(UINT msg, WPARAM wParam, LPARAM lParam);
|
|
LRESULT TreeViewMsg(NM_TREEVIEW* pnmhdr);
|
|
|
|
|
|
BOOL Save(); // returns TRUE if a new SubSet in m_aSubSets.
|
|
BOOL OnBeginOrEnd();
|
|
void OnSelChange( UINT id );
|
|
void OnButton(UINT id);
|
|
|
|
void Refresh();
|
|
BOOL GetDisplayHidden() const { return m_pSubSets->m_fPredefined; }
|
|
void SetDisplayHidden( BOOL const fHidden) { m_pSubSets->m_fPredefined = fHidden; }
|
|
|
|
protected:
|
|
HWND m_hwndTree; // The tree view that contains all the categories and ITs
|
|
public:
|
|
BOOL m_fSaveHHP; // TRUE if need to save the HHP file with subset changes.
|
|
|
|
private:
|
|
BOOL m_fModified; // TRUE if the subset has changed;
|
|
CSubSets *m_pSubSets;
|
|
CSubSet *m_pSubSet; // used for current state of treeview items.
|
|
CInfoType *m_pInfoType; // The IT and Categories available to choose from
|
|
HTREEITEM *m_pSSRoot;
|
|
int m_cFonts;
|
|
HFONT* m_ahfonts;
|
|
HIMAGELIST m_hil;
|
|
|
|
|
|
#ifdef HHCTRL
|
|
enum { IDD = IDDLG_HH_DEFINESUBSET };
|
|
#else
|
|
enum { IDD = IDD_DEFINESUBSET };
|
|
#endif
|
|
|
|
enum {EXCLUSIVE, DONT_CARE, INCLUSIVE};
|
|
#define BOLD INCLUSIVE
|
|
#define NORMAL DONT_CARE
|
|
|
|
};
|
|
|
|
|
|
class CNameSubSet : public CDlg
|
|
{
|
|
public:
|
|
#ifdef HHCTRL
|
|
CNameSubSet(HWND hwndParent, CStr &cszName, int max_text) : CDlg(hwndParent, IDD) ,m_csz(cszName){ m_max_text = max_text; }
|
|
#else
|
|
CNameSubSet(HWND hwndParent, CStr &cszName, int max_text) : CDlg(IDD, hwndParent),m_csz(cszName){ m_max_text = max_text; }
|
|
#endif
|
|
|
|
CStr &m_csz;
|
|
int m_max_text;
|
|
BOOL OnBeginOrEnd() {if (m_fInitializing)
|
|
{
|
|
SetFocus( IDC_SUBSET_NAME );
|
|
SetWindowText(IDC_SUBSET_NAME, m_csz.psz);
|
|
m_fInitializing = FALSE;
|
|
}
|
|
else
|
|
{
|
|
CStr cszTemp;
|
|
lcHeapCheck();
|
|
cszTemp.ReSize(80);
|
|
GetWindowText(IDC_SUBSET_NAME, cszTemp.psz, 79);
|
|
lcHeapCheck();
|
|
m_csz = cszTemp.psz;
|
|
lcHeapCheck();
|
|
}
|
|
return TRUE;
|
|
}
|
|
|
|
enum {IDD = IDD_SUBSET_NAME };
|
|
};
|
|
|
|
#endif // __CSUBSET_H__
|