This repository has been archived on 2025-02-27. You can view files and clone it, but cannot push or open issues or pull requests.
CnC_Renegade/Code/Tools/WWConfig/WWConfig.cpp

157 lines
4.4 KiB
C++
Raw Permalink Normal View History

/*
** Command & Conquer Renegade(tm)
** Copyright 2025 Electronic Arts Inc.
**
** This program is free software: you can redistribute it and/or modify
** it under the terms of the GNU General Public License as published by
** the Free Software Foundation, either version 3 of the License, or
** (at your option) any later version.
**
** 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, see <http://www.gnu.org/licenses/>.
*/
// WWConfig.cpp : Defines the class behaviors for the application.
//
#include "stdafx.h"
#include "WWConfig.h"
#include "WWConfigDlg.h"
#include "argv.h"
#include "locale_api.h"
#include "wwconfig_ids.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
int GlobalExitValue=1;
void AutoConfigSettings();
void CheckDriverVersion();
/////////////////////////////////////////////////////////////////////////////
// CWWConfigApp
BEGIN_MESSAGE_MAP(CWWConfigApp, CWinApp)
//{{AFX_MSG_MAP(CWWConfigApp)
// 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()
/////////////////////////////////////////////////////////////////////////////
// CWWConfigApp construction
CWWConfigApp::CWWConfigApp()
{
// TODO: add construction code here,
// Place all significant initialization in InitInstance
}
/////////////////////////////////////////////////////////////////////////////
// The one and only CWWConfigApp object
CWWConfigApp theApp;
/////////////////////////////////////////////////////////////////////////////
// CWWConfigApp initialization
// Modified: 12/06/2001 by MML - Retrieving strings from Locomoto file.
BOOL CWWConfigApp::InitInstance()
{
AfxEnableControlContainer();
//-------------------------------------------------------------------------
// Standard initialization
//
// If you are not using these features and wish to reduce the size
// of your final executable, you should remove from the following
// the specific initialization routines you do not need.
//-------------------------------------------------------------------------
#ifdef _AFXDLL
Enable3dControls(); // Call this when using MFC in a shared DLL
#else
Enable3dControlsStatic(); // Call this when linking to MFC statically
#endif
//-------------------------------------------------------------------------
// Get the Command line parameters.
//-------------------------------------------------------------------------
CString cmd(m_lpCmdLine);
//=========================================================================
// Init the strings.
//=========================================================================
int language = -1;
if( cmd.Find( "-French") !=-1 ) {
language = IDL_FRENCH;
} else if( cmd.Find( "-German") !=-1 ) {
language = IDL_GERMAN;
} else if( cmd.Find( "-Japanese") !=-1 ) {
language = IDL_JAPANESE;
} else if( cmd.Find( "-Korean") !=-1 ) {
language = IDL_KOREAN;
} else if( cmd.Find( "-Chinese") !=-1 ) {
language = IDL_CHINESE;
} else if( cmd.Find( "-English") !=-1 ) {
language = IDL_ENGLISH;
}
Locale_Init( language, "WWConfig.loc" );
//
//
//
if (cmd.Find("-autoconfig")!=-1) {
AutoConfigSettings();
}
else if (cmd.Find("-driverversion")!=-1) {
CheckDriverVersion();
}
else {
CWWConfigDlg dlg;
m_pMainWnd = &dlg;
int nResponse = dlg.DoModal();
if (nResponse == IDOK)
{
// TODO: Place code here to handle when the dialog is
// dismissed with OK
}
else if (nResponse == IDCANCEL)
{
// TODO: Place code here to handle when the dialog is
// dismissed with Cancel
}
}
//-------------------------------------------------------------------------
// Free the strings.
//-------------------------------------------------------------------------
Locale_Restore();
// Since the dialog has been closed, return FALSE so that we exit the
// application, rather than start the application's message pump.
return FALSE;
}
int CWWConfigApp::ExitInstance()
{
// TODO: Add your specialized code here and/or call the base class
CWinApp::ExitInstance();
return GlobalExitValue;
}