summaryrefslogtreecommitdiff
path: root/src/T2DLL/T2Name.h
blob: 6539dec4761575eda0b178aae1c852e0cb8ce964 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#pragma once
#include "common.h"

// assumed names
enum {
	kTenantNameType = 1,
	kMoverNameType = 2,
	kMoverModuleNameType = 3,
	// what's 4?? we may never know
	kPeopleNameType = 5
};

class AFX_CLASS_EXPORT T2Name {
public:
	T2Name();
	T2Name(T2Archive&);
	T2Name(CString, T2Tenant*, BOOL favorite);
	T2Name(CString, T2People*, BOOL favorite);
	T2Name(CString, T2Mover*, BOOL favorite);
	T2Name(CString, T2MoverModule*, BOOL favorite);
	virtual ~T2Name();
	short GetName(CString& outName, unsigned int& outID);
	void SetName(CString);
	void MakeFullName(T2TowerDoc*, CString&);
	BOOL operator==(const CString&) const;
	void Write(T2Archive&) const;

	int GetSortKey() { return mType; }
	int GetType() { return mType; }
	unsigned int GetID() { return mID; }
	BOOL IsFavorite() const { return mFavorite; }

protected:
	CString mName;
	int mType;
	unsigned int mID;
	BOOL mFavorite;
};