// Machine generated IDispatch wrapper class(es) created by Microsoft Visual C++

// NOTE: Do not modify the contents of this file.  If this class is regenerated by
//  Microsoft Visual C++, your modifications will be overwritten.


#include "stdafx.h"
#include "shapefilecategories.h"

// Dispatch interfaces referenced by this interface
#include "callback.h"
#include "shapefilecategory.h"
#include "shapefile.h"


/////////////////////////////////////////////////////////////////////////////
// CShapefileCategories properties

/////////////////////////////////////////////////////////////////////////////
// CShapefileCategories operations

long CShapefileCategories::GetLastErrorCode()
{
	long result;
	InvokeHelper(0x1, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL);
	return result;
}

CString CShapefileCategories::GetErrorMsg(long ErrorCode)
{
	CString result;
	static BYTE parms[] =
		VTS_I4;
	InvokeHelper(0x2, DISPATCH_PROPERTYGET, VT_BSTR, (void*)&result, parms,
		ErrorCode);
	return result;
}

CCallback CShapefileCategories::GetGlobalCallback()
{
	LPDISPATCH pDispatch;
	InvokeHelper(0x3, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&pDispatch, NULL);
	return CCallback(pDispatch);
}

void CShapefileCategories::SetGlobalCallback(LPDISPATCH newValue)
{
	static BYTE parms[] =
		VTS_DISPATCH;
	InvokeHelper(0x3, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
		 newValue);
}

CString CShapefileCategories::GetKey()
{
	CString result;
	InvokeHelper(0x4, DISPATCH_PROPERTYGET, VT_BSTR, (void*)&result, NULL);
	return result;
}

void CShapefileCategories::SetKey(LPCTSTR lpszNewValue)
{
	static BYTE parms[] =
		VTS_BSTR;
	InvokeHelper(0x4, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
		 lpszNewValue);
}

CShapefileCategory CShapefileCategories::Add(LPCTSTR Name)
{
	LPDISPATCH pDispatch;
	static BYTE parms[] =
		VTS_BSTR;
	InvokeHelper(0x5, DISPATCH_METHOD, VT_DISPATCH, (void*)&pDispatch, parms,
		Name);
	return CShapefileCategory(pDispatch);
}

CShapefileCategory CShapefileCategories::Insert(long Index, LPCTSTR Name)
{
	LPDISPATCH pDispatch;
	static BYTE parms[] =
		VTS_I4 VTS_BSTR;
	InvokeHelper(0x6, DISPATCH_METHOD, VT_DISPATCH, (void*)&pDispatch, parms,
		Index, Name);
	return CShapefileCategory(pDispatch);
}

BOOL CShapefileCategories::Remove(long Index)
{
	BOOL result;
	static BYTE parms[] =
		VTS_I4;
	InvokeHelper(0x7, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
		Index);
	return result;
}

void CShapefileCategories::Clear()
{
	InvokeHelper(0x8, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
}

CShapefileCategory CShapefileCategories::GetItem(long Index)
{
	LPDISPATCH pDispatch;
	static BYTE parms[] =
		VTS_I4;
	InvokeHelper(0x9, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&pDispatch, parms,
		Index);
	return CShapefileCategory(pDispatch);
}

void CShapefileCategories::SetItem(long Index, LPDISPATCH newValue)
{
	static BYTE parms[] =
		VTS_I4 VTS_DISPATCH;
	InvokeHelper(0x9, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
		 Index, newValue);
}

BOOL CShapefileCategories::Generate(long FieldIndex, long ClassificationType, long numClasses)
{
	BOOL result;
	static BYTE parms[] =
		VTS_I4 VTS_I4 VTS_I4;
	InvokeHelper(0xa, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
		FieldIndex, ClassificationType, numClasses);
	return result;
}

long CShapefileCategories::GetCount()
{
	long result;
	InvokeHelper(0xb, DISPATCH_PROPERTYGET, VT_I4, (void*)&result, NULL);
	return result;
}

CShapefile CShapefileCategories::GetShapefile()
{
	LPDISPATCH pDispatch;
	InvokeHelper(0xc, DISPATCH_PROPERTYGET, VT_DISPATCH, (void*)&pDispatch, NULL);
	return CShapefile(pDispatch);
}

void CShapefileCategories::ApplyExpressions()
{
	InvokeHelper(0xd, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
}

void CShapefileCategories::ApplyExpression(long CategoryIndex)
{
	static BYTE parms[] =
		VTS_I4;
	InvokeHelper(0xe, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
		 CategoryIndex);
}

void CShapefileCategories::ApplyColorScheme(long Type, LPDISPATCH ColorScheme)
{
	static BYTE parms[] =
		VTS_I4 VTS_DISPATCH;
	InvokeHelper(0xf, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
		 Type, ColorScheme);
}

void CShapefileCategories::ApplyColorScheme2(long Type, LPDISPATCH ColorScheme, long ShapeElement)
{
	static BYTE parms[] =
		VTS_I4 VTS_DISPATCH VTS_I4;
	InvokeHelper(0x10, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
		 Type, ColorScheme, ShapeElement);
}

void CShapefileCategories::ApplyColorScheme3(long Type, LPDISPATCH ColorScheme, long ShapeElement, long CategoryStartIndex, long CategoryEndIndex)
{
	static BYTE parms[] =
		VTS_I4 VTS_DISPATCH VTS_I4 VTS_I4 VTS_I4;
	InvokeHelper(0x11, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
		 Type, ColorScheme, ShapeElement, CategoryStartIndex, CategoryEndIndex);
}

CString CShapefileCategories::GetCaption()
{
	CString result;
	InvokeHelper(0x12, DISPATCH_PROPERTYGET, VT_BSTR, (void*)&result, NULL);
	return result;
}

void CShapefileCategories::SetCaption(LPCTSTR lpszNewValue)
{
	static BYTE parms[] =
		VTS_BSTR;
	InvokeHelper(0x12, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, parms,
		 lpszNewValue);
}

BOOL CShapefileCategories::MoveUp(long Index)
{
	BOOL result;
	static BYTE parms[] =
		VTS_I4;
	InvokeHelper(0x13, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
		Index);
	return result;
}

BOOL CShapefileCategories::MoveDown(long Index)
{
	BOOL result;
	static BYTE parms[] =
		VTS_I4;
	InvokeHelper(0x14, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
		Index);
	return result;
}

CString CShapefileCategories::Serialize()
{
	CString result;
	InvokeHelper(0x15, DISPATCH_METHOD, VT_BSTR, (void*)&result, NULL);
	return result;
}

void CShapefileCategories::Deserialize(LPCTSTR newVal)
{
	static BYTE parms[] =
		VTS_BSTR;
	InvokeHelper(0x16, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
		 newVal);
}

BOOL CShapefileCategories::AddRange(long FieldIndex, long ClassificationType, long numClasses, const VARIANT& MinValue, const VARIANT& MaxValue)
{
	BOOL result;
	static BYTE parms[] =
		VTS_I4 VTS_I4 VTS_I4 VTS_VARIANT VTS_VARIANT;
	InvokeHelper(0x17, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms,
		FieldIndex, ClassificationType, numClasses, &MinValue, &MaxValue);
	return result;
}