Serious-Engine/Sources/RCon/RCon.cpp
2016-03-11 18:20:51 -06:00

117 lines
3.0 KiB
C++

/* Copyright (c) 2002-2012 Croteam Ltd.
This program is free software; you can redistribute it and/or modify
it under the terms of version 2 of the GNU General Public License as published by
the Free Software Foundation
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */
// RCon.cpp : Defines the class behaviors for the application.
//
#include "stdafx.h"
#include "RCon.h"
#include "RConDlg.h"
#ifdef _DEBUG
#undef new
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CRConApp
BEGIN_MESSAGE_MAP(CRConApp, CWinApp)
//{{AFX_MSG_MAP(CRConApp)
// NOTE - the ClassWizard will add and remove mapping macros here.
// DO NOT EDIT what you see in these blocks of generated code!
//}}AFX_MSG
ON_COMMAND(ID_HELP, CWinApp::OnHelp)
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CRConApp construction
CRConApp::CRConApp()
{
// TODO: add construction code here,
// Place all significant initialization in InitInstance
}
/////////////////////////////////////////////////////////////////////////////
// The one and only CRConApp object
CRConApp theApp;
/////////////////////////////////////////////////////////////////////////////
// CRConApp initialization
BOOL CRConApp::SubInitInstance()
{
// initialize engine
SE_InitEngine( "Serious Sam");
CTString strCmdLine = CStringA(m_lpCmdLine);
char strHost[80], strPass[80];
strHost[0] = 0;
strPass[0] = 0;
ULONG ulPort;
strCmdLine.ScanF("%80s %u \"%80[^\"]\"", strHost, &ulPort, strPass);
CNetworkProvider np;
np.np_Description = "TCP/IP Client";
_pNetwork->StartProvider_t(np);
m_ulHost = StringToAddress(strHost);
m_uwPort = ulPort;
m_ulCode = rand()*rand();
m_strPass = strPass;
CRConDlg dlg;
m_pMainWnd = &dlg;
dlg.m_strLog = (const char*)CTString(0,
"Serious Sam RCON v1.0\r\nServer: %s:%d\r\nReady for commands...\r\n", strHost, ulPort);
int nResponse = dlg.DoModal();
// Since the dialog has been closed, return FALSE so that we exit the
// application, rather than start the application's message pump.
return FALSE;
}
BOOL CRConApp::InitInstance()
{
BOOL bResult;
CTSTREAM_BEGIN {
bResult = SubInitInstance();
} CTSTREAM_END;
return bResult;
}
void MinimizeApp(void)
{
theApp.m_pMainWnd->ShowWindow(SW_SHOWMINIMIZED);
// theApp.m_pMainWnd->ShowWindow(SW_HIDE);
}
void RestoreApp(void)
{
theApp.m_pMainWnd->EnableWindow(TRUE);
theApp.m_pMainWnd->SetActiveWindow();
theApp.m_pMainWnd->ShowWindow(SW_SHOW);
theApp.m_pMainWnd->SetFocus();
theApp.m_pMainWnd->SetForegroundWindow();
}