summaryrefslogtreecommitdiffabout
path: root/T42Frame.h
blob: 9f220f1f7021069071b5a0f9edda5b8082a3c7c3 (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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
// T42Frame.h : header file
//

/////////////////////////////////////////////////////////////////////////////
// T42Frame frame

struct	TalkEditChars	{
	CHAR	m_cErase;
	CHAR	m_kill;
	CHAR	m_wErase;
};

class T42View;
class T42Frame : public CFrameWnd
{
	DECLARE_DYNCREATE(T42Frame)

// Attributes
public:
	BOOL m_bConnected;
	void SystemMessage(UINT nID,LPCTSTR str);
	void WSSystemMessage(UINT nID,LONG wsaError);
	void SystemMessage(UINT nID,UINT nIDi);
	void SystemMessage(LPCTSTR str);
	void SystemMessage(UINT nID);
	BOOL m_bMinimizeSleep;
	void DeTray();
	void WakeUp();
	enum	_wakeAction	{
		wakePopup = 1,
		wakeSound = 2
	};
	UINT m_onWake;
	BOOL m_bSleep;
	BOOL m_bSleepMinimize;
	BOOL m_bTrayed;
	void SetTheIcon(HICON hicon);
	BOOL m_bTrayMinimize;
	void LoadLayout();
	BOOL m_bHaveFocus;
	HICON m_hFullCup;
	HICON m_hNormal;
	void AddToHotList(LPCTSTR str=NULL);
	BOOL m_bEstablished;
	virtual void OnUpdateFrameTitle(BOOL bAddToTitle);
	void SetPeerName(LPCTSTR str=NULL);
	void SaveLayout();
	CString m_nameFromIP;
	BYTE m_ghResolve[MAXGETHOSTSTRUCT];
	HANDLE m_resolveHandle;
	void CleanUp();
	CWnd m_wndFake;
	void Established(BOOL bEstablished);
	void ShowMessage(LPCTSTR msg,UINT flags);
	void ShowMessage(UINT nID,UINT flags);
	void StatusLine(UINT nID);
	CString m_Status;
	void StatusLine(LPCTSTR str);
	int m_nDatePaneNo;
	CString m_sendBuffer;
	BOOL m_bSentEC;
	UINT m_receivedEC;
	TalkEditChars m_localEC;
	TalkEditChars m_remoteEC;
	BOOL PutRemote(LPCTSTR str);
	void SelectTalkSocket();
	LONG m_remoteID;
	LONG m_localID;
	void AsyncCtlTransactSucceeded(TalkCtlResponse& response);
	void AsyncCtlTransactFailed(UINT code,LONG error);
	enum	{
		ctlFailSendto = 1,
		ctlFailSelect, ctlFailError
	};
	UINT	m_ctlSuccess;
	UINT	m_ctlFailure;
	sockaddr_in m_ctlTarget;
	BOOL AsyncCtlTransact(TalkCtlMessage& msg,sockaddr_in& target, UINT wmSuccess,UINT wmFailure);
	TalkCtlMessage m_ctlRequest;
	TalkCtlResponse m_ctlResponse;
	CString m_TargetTTY;
	CString m_LocalUser;
	BOOL FillInMessage(TalkCtlMessage& msg);
	SOCKET m_Socket;
	SOCKADDR_IN m_ctlAddr;
	SOCKET m_ctlSocket;
	SOCKADDR_IN m_SourceAddr;
	SOCKADDR_IN m_TargetAddr;
	BYTE m_gethostData[MAXGETHOSTSTRUCT];
	HANDLE m_asyncHandle;
	CString m_TargetHost;
	CString m_TargetUser;
	CString m_Target;

// Operations
public:
	T42Frame();           // protected constructor used by dynamic creation

// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(T42Frame)
	public:
	virtual void ActivateFrame(int nCmdShow = -1);
	protected:
	virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
	//}}AFX_VIRTUAL

// Implementation
protected:
	CStatusBar  m_wndStatusBar;
	virtual ~T42Frame();
public:
	// Generated message map functions
	//{{AFX_MSG(T42Frame)
	afx_msg void OnClose();
	afx_msg void OnTalkRemoteuser();
	afx_msg LRESULT OnInitiateTalk(WPARAM,LPARAM);
	afx_msg LRESULT OnTargetResolved(WPARAM,LPARAM);
	afx_msg LRESULT OnSourceResolved(WPARAM,LPARAM);
	afx_msg void OnTimer(UINT nIDEvent);
	afx_msg LRESULT OnCTLTransact(WPARAM,LPARAM);
	afx_msg LRESULT OnLookupSuccess(WPARAM,LPARAM);
	afx_msg LRESULT OnLookupFailure(WPARAM,LPARAM);
	afx_msg LRESULT OnAnnounceSuccess(WPARAM,LPARAM);
	afx_msg LRESULT OnAnnounceFailure(WPARAM,LPARAM);
	afx_msg LRESULT OnLeaveInviteSuccess(WPARAM,LPARAM);
	afx_msg LRESULT OnLeaveInviteFailure(WPARAM,LPARAM);
	afx_msg LRESULT OnTalkAccept(WPARAM,LPARAM);
	afx_msg LRESULT OnLocalRemoveSuccess(WPARAM,LPARAM);
	afx_msg LRESULT OnLocalRemoveFailure(WPARAM,LPARAM);
	afx_msg LRESULT OnRemoteRemoveSuccess(WPARAM,LPARAM);
	afx_msg LRESULT OnRemoteRemoveFailure(WPARAM,LPARAM);
	afx_msg LRESULT OnTalk(WPARAM,LPARAM);
	afx_msg LRESULT OnTalkChar(WPARAM,LPARAM);
	afx_msg LRESULT OnTalkConnect(WPARAM,LPARAM);
	afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
	afx_msg void OnUpdateDate(CCmdUI* pCmdUI);
	afx_msg LRESULT OnExitMenuLoop(WPARAM,LPARAM);
	afx_msg void OnDestroy();
	afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
	afx_msg LRESULT OnNameResolved(WPARAM,LPARAM);
	afx_msg LRESULT OnIPResolved(WPARAM,LPARAM);
	afx_msg void OnActivate(UINT nState, CWnd* pWndOther, BOOL bMinimized);
	afx_msg LRESULT OnTrayIcon(WPARAM,LPARAM);
	afx_msg void OnUpdateWindowHideintrayonminimize(CCmdUI* pCmdUI);
	afx_msg void OnWindowHideintrayonminimize();
	afx_msg void OnTalkAbort();
	afx_msg void OnUpdateTalkAbort(CCmdUI* pCmdUI);
	afx_msg void OnTalkReconnect();
	afx_msg void OnUpdateTalkReconnect(CCmdUI* pCmdUI);
	afx_msg void OnUpdateTalkRemoteuser(CCmdUI* pCmdUI);
	afx_msg void OnUpdateSleepSleep(CCmdUI* pCmdUI);
	afx_msg void OnSleepSleep();
	afx_msg void OnUpdateSleepSleeponminimize(CCmdUI* pCmdUI);
	afx_msg void OnSleepSleeponminimize();
	afx_msg void OnUpdateSleepWakeupactionMakesound(CCmdUI* pCmdUI);
	afx_msg void OnSleepWakeupactionMakesound();
	afx_msg void OnUpdateSleepWakeupactionPopup(CCmdUI* pCmdUI);
	afx_msg void OnSleepWakeupactionPopup();
	afx_msg void OnUpdateSleepMinimizeonsleep(CCmdUI* pCmdUI);
	afx_msg void OnSleepMinimizeonsleep();
	afx_msg void OnTalkClose();
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
private:
	BOOL InitStatusBar(UINT *pIndicators, int nSize, int nSeconds);
};

/////////////////////////////////////////////////////////////////////////////