response.h

来自「把doc文档转成pdf后刻录成CD,用VC++开发,用了Nero的SDK和CXI」· C头文件 代码 · 共 81 行

H
81
字号
/******************************************************************************
|* THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
|* ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
|* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
|* PARTICULAR PURPOSE.
|* 
|* Copyright 1995-2004 Ahead Software AG. All Rights Reserved.
|*-----------------------------------------------------------------------------
|* NeroSDK / NeroCmd
|*
|* PROGRAM: Response.h
|*
|* PURPOSE: Interaction with the user via keyboard
******************************************************************************/

// This simple structure holds a pair of response text and
// the corresponding return value that should be returned
// if that particular text was selected.

struct CResponsePairs {
	LPCSTR m_psButtonText;
	NeroUserDlgInOut m_RetVal;
};

// The following class is a base class for all responses.
// 
class CResponse
{
protected:
	const CResponsePairs * m_pResponsePairs;
	int m_iDefaultPairIndex;
	static bool m_bUseDefaultResponse;

public:
	CResponse (const CResponsePairs * pResponsePairs, int iDefaultPairIndex);

	NeroUserDlgInOut SelectResponse (void) const;
	operator NeroUserDlgInOut () const;

	static void SetUseDefaultResponse (bool bUseDefaultResponse);
};

class CResponseYesNo : public CResponse
{
protected:
	static const CResponsePairs m_ResponsePairs[];
public:
	CResponseYesNo () : CResponse (m_ResponsePairs, 1) {}
};

class CResponseYesNoDefaultIsYes : public CResponseYesNo
{
public:
	CResponseYesNoDefaultIsYes () {m_iDefaultPairIndex = 0;}
};

class CResponseOkay : public CResponse
{
protected:
	static const CResponsePairs m_ResponsePairs[];
public:
	CResponseOkay () : CResponse (m_ResponsePairs, 0) {}
};


class CResponseGeneric: public CResponse
{
protected:
	static const CResponsePairs m_ResponsePairs_ok[];
	static const CResponsePairs m_ResponsePairs_yesno[];
	static const CResponsePairs m_ResponsePairs_okcancel[];
	static const CResponsePairs m_ResponsePairs_retrycancel[];
	static const CResponsePairs m_ResponsePairs_abortretryignore[];
	static const CResponsePairs m_ResponsePairs_yesnocancel[];

public:
	CResponseGeneric (NERODLG_MESSAGE_TYPE msgType, NeroUserDlgInOut defaultReturn);
	
	bool IsOk (void) const;
};

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?