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.
78 lines
1.5 KiB
78 lines
1.5 KiB
//-----------------------------------------------------------------------------
|
|
//
|
|
// File: optionval.h
|
|
// Copyright (C) 1994-1997 Microsoft Corporation
|
|
// All rights reserved.
|
|
//
|
|
//
|
|
//
|
|
//-----------------------------------------------------------------------------
|
|
|
|
#pragma once
|
|
|
|
#pragma warning(disable: 4275) // non dll-interface class 'foo' used
|
|
// as base for dll-interface class 'bar'
|
|
|
|
class LTAPIENTRY CLocOptionVal : public CRefCount, public CObject
|
|
{
|
|
public:
|
|
NOTHROW CLocOptionVal();
|
|
|
|
void AssertValid(void) const;
|
|
|
|
enum OptionCode
|
|
{
|
|
ocNoError,
|
|
ocUnknownOption,
|
|
ocInvalidValue,
|
|
ocInvalidType
|
|
};
|
|
|
|
NOTHROW void SetName(const CLString &);
|
|
NOTHROW void SetValue(const CLocVariant &);
|
|
|
|
NOTHROW const CLString & GetName(void) const;
|
|
NOTHROW const CLocVariant & GetValue(void) const;
|
|
|
|
void Serialize(CArchive &);
|
|
void Load(CArchive &);
|
|
void Store(CArchive &) const;
|
|
|
|
protected:
|
|
virtual ~CLocOptionVal();
|
|
|
|
private:
|
|
CLString m_strName;
|
|
CLocVariant m_lvValue;
|
|
|
|
};
|
|
|
|
|
|
class LTAPIENTRY CLocOptionValList :
|
|
public CTypedPtrList<CPtrList, CLocOptionVal *>
|
|
{
|
|
public:
|
|
NOTHROW CLocOptionValList();
|
|
|
|
void AssertValid(void) const;
|
|
|
|
NOTHROW ~CLocOptionValList();
|
|
|
|
private:
|
|
CLocOptionValList(const CLocOptionValList &);
|
|
|
|
void operator=(const CLocOptionValList &);
|
|
};
|
|
|
|
|
|
#pragma warning(default: 4275)
|
|
|
|
|
|
//
|
|
// Worker function for options upgrade.
|
|
LTAPIENTRY void DorkData(BYTE *, DWORD &);
|
|
|
|
|
|
#if !defined(_DEBUG) || defined(IMPLEMENT)
|
|
#include "optionval.inl"
|
|
#endif
|