mirror of https://github.com/lianthony/NT4.0
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.
139 lines
3.9 KiB
139 lines
3.9 KiB
// DialogRunOrNot.h : header file
|
|
//
|
|
|
|
#ifdef LONGHEADERFILENAMES
|
|
#include "licenseBmp.h"
|
|
#else
|
|
#include "LICENS~1.H"
|
|
#endif
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// CDialogRunOrNot dialog
|
|
|
|
class CDialogRunOrNot
|
|
{
|
|
// Construction
|
|
public:
|
|
CDialogRunOrNot(RRNIN *rrin, RRNOUT* prro, HWND pParent = NULL); // standard constructor
|
|
~CDialogRunOrNot();
|
|
|
|
public:
|
|
LPCTSTR ProgramName();
|
|
LPCTSTR Publisher();
|
|
LPCTSTR Agency();
|
|
BOOL FHasEndorsements();
|
|
BOOL FLinkProgram();
|
|
BOOL FLinkAgency();
|
|
BOOL FHasLinks() { return FHasEndorsements() || FLinkProgram() || FLinkAgency(); }
|
|
BOOL FIncludeSeal() { return m_rrn.fIncludeSeal; }
|
|
BOOL FTestingOnly() { return m_rrn.fTestingOnly; }
|
|
BOOL FCommercial() { return m_rrn.fCommercial; }
|
|
HBITMAP AgencyLogo() { return m_rrn.hbmpAgencyLogo; }
|
|
FILETIME ExpirationDate();
|
|
void ClickOnLink(RRN);
|
|
HRESULT GetToolTipText(RRN rrn, LPOLESTR* pwsz);
|
|
|
|
public:
|
|
RRNOUT* m_prro; // our output data
|
|
HINSTANCE Hinst();
|
|
int DoModal();
|
|
BOOL OnInitDialog();
|
|
HWND GetWindow();
|
|
void SetWindow(HWND);
|
|
|
|
void OnOK();
|
|
void OnCancel();
|
|
void OnAdvancedButton();
|
|
void OnPaletteChanged(HWND hwndChanger);
|
|
int OnQueryNewPalette();
|
|
|
|
|
|
// Implementation
|
|
private:
|
|
HWND m_hWnd;
|
|
HWND m_hWndParent;
|
|
RRNIN m_rrn; // our input parameters
|
|
|
|
enum { CCHMAX = 128 };
|
|
|
|
TCHAR m_szBanter [CCHMAX];
|
|
TCHAR m_szAllByPublisher [CCHMAX];
|
|
TCHAR m_szAllByAgency [CCHMAX];
|
|
|
|
TCHAR m_szAgency [CCHMAX];
|
|
TCHAR m_szProgram [CCHMAX];
|
|
TCHAR m_szPublisher [CCHMAX];
|
|
|
|
|
|
void CopyInto(TCHAR sz[CCHMAX], LPCWSTR);
|
|
void LoadString(TCHAR sz[CCHMAX], UINT);
|
|
HWND WindowOf(UINT id);
|
|
void DoCheck(BOOL fSave, int nIDC, int& value);
|
|
|
|
public:
|
|
CLicenseBmp m_licenseBmp;
|
|
HCURSOR m_cursorHand;
|
|
BOOL m_wildAgency;
|
|
BOOL m_wildPublisher;
|
|
};
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
inline HWND CDialogRunOrNot::WindowOf(UINT id)
|
|
// Return the HWND of this control of ours
|
|
{
|
|
return ::GetDlgItem(GetWindow(), id);
|
|
}
|
|
|
|
inline HWND CDialogRunOrNot::GetWindow()
|
|
{
|
|
return m_hWnd;
|
|
}
|
|
|
|
inline void CDialogRunOrNot::SetWindow(HWND hwnd)
|
|
{
|
|
m_hWnd = hwnd;
|
|
SetWindowLong(hwnd, GWL_USERDATA, (LONG)this);
|
|
}
|
|
|
|
BOOL CALLBACK RunOrNotDialogProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
|
|
|
|
inline int CDialogRunOrNot::DoModal()
|
|
{
|
|
return DialogBoxParam
|
|
(
|
|
Hinst(),
|
|
MAKEINTRESOURCE(IDD_RUNORNOT),
|
|
m_hWndParent,
|
|
RunOrNotDialogProc,
|
|
(LPARAM)this
|
|
);
|
|
}
|
|
|
|
inline HINSTANCE CDialogRunOrNot::Hinst()
|
|
{
|
|
return hinst;
|
|
}
|
|
|
|
inline void CDialogRunOrNot::OnOK()
|
|
{
|
|
DoCheck(TRUE, IDC_WILDCARDAGENCY, m_wildAgency);
|
|
DoCheck(TRUE, IDC_WILDCARDPUBLISHER, m_wildPublisher);
|
|
|
|
m_prro->rrn = RRN_YES;
|
|
m_prro->fWildPublisher = m_wildPublisher;
|
|
m_prro->fWildAgency = m_wildAgency;
|
|
|
|
::EndDialog(GetWindow(), IDOK);
|
|
}
|
|
|
|
inline void CDialogRunOrNot::OnCancel()
|
|
{
|
|
m_prro->rrn = RRN_NO;
|
|
m_prro->fWildPublisher = FALSE;
|
|
m_prro->fWildAgency = FALSE;
|
|
|
|
::EndDialog(GetWindow(), IDCANCEL);
|
|
}
|
|
|
|
|