00001 /* AbiCollab - Code to enable the modification of remote documents. 00002 * Copyright (C) 2007 by Ryan Pavlik <abiryan@ryand.net> 00003 * 00004 * This program is free software; you can redistribute it and/or 00005 * modify it under the terms of the GNU General Public License 00006 * as published by the Free Software Foundation; either version 2 00007 * of the License, or (at your option) any later version. 00008 * 00009 * This program is distributed in the hope that it will be useful, 00010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00012 * GNU General Public License for more details. 00013 * 00014 * You should have received a copy of the GNU General Public License 00015 * along with this program; if not, write to the Free Software 00016 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 00017 * 02110-1301 USA. 00018 */ 00019 00020 #ifndef __TCPWIN32ACCOUNTHANDLER__ 00021 #define __TCPWIN32ACCOUNTHANDLER__ 00022 00023 #define WIN32_LEAN_AND_MEAN 00024 00025 #include <string> 00026 #include <ap_Win32App.h> 00027 #include "xap_Win32DialogHelper.h" 00028 00029 #include <core/session/xp/AbiCollabSessionManager.h> 00030 #include <core/dialogs/win/ap_Win32Dialog_CollaborationAddAccount.h> 00031 00032 #include <backends/tcp/xp/TCPAccountHandler.h> 00033 00034 class TCPWin32AccountHandler : public TCPAccountHandler 00035 { 00036 public: 00037 TCPWin32AccountHandler(); 00038 00039 static AccountHandler* static_constructor(); 00040 00041 // dialog management 00042 virtual void embedDialogWidgets(void* pEmbeddingParent); 00043 virtual void removeDialogWidgets(void* pEmbeddingParent); 00044 virtual void loadProperties(); 00045 virtual void storeProperties(); 00046 virtual BOOL _onCommand(HWND hWnd, WPARAM wParam, LPARAM lParam); 00047 virtual bool shouldProcessFocus(); 00048 00049 private: 00050 XAP_Win32DialogHelper * m_pWin32Dialog; 00051 00052 // handles 00053 HINSTANCE m_hInstance; 00054 HWND m_hServerEntry; 00055 HWND m_hPortEntry; 00056 HWND m_hServerRadio; 00057 HWND m_hJoinRadio; 00058 HWND m_hServerLabel; 00059 HWND m_hPortLabel; 00060 HWND m_hAllowAllCheck; 00061 HWND m_hAutoconnectCheck; 00062 00063 void _checkButtonHwnd(HWND hCtrl, bool bChecked); 00064 bool _isCheckedHwnd(HWND hCtrl); 00065 int _getControlTextHwnd(HWND hCtrl, int iLen, const char * p_szBuf); 00066 00067 00068 }; 00069 00070 #endif /* __TCPWin32ACCOUNTHANDLER__ */