mirror of
https://github.com/nillerusr/source-engine.git
synced 2026-08-08 01:39:36 +00:00
1
This commit is contained in:
@@ -0,0 +1,217 @@
|
||||
//========= Copyright Valve Corporation, All rights reserved. ============//
|
||||
//
|
||||
// CONFIG.CPP
|
||||
//
|
||||
// Configuration Dialog
|
||||
//=====================================================================================//
|
||||
#include "vxconsole.h"
|
||||
|
||||
CHAR g_xboxTargetName[MAX_XBOXNAMELEN];
|
||||
char g_localPath[MAX_PATH];
|
||||
char g_targetPath[MAX_PATH];
|
||||
BOOL g_clsOnConnect;
|
||||
BOOL g_loadSymbolsOnConnect;
|
||||
char g_xexTargetPath[MAX_PATH];
|
||||
BOOL g_alwaysAutoConnect;
|
||||
BOOL g_startMinimized;
|
||||
char g_installPath[MAX_PATH];
|
||||
BOOL g_captureDebugSpew_StartupState;
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// ConfigDlg_LoadConfig
|
||||
//
|
||||
//-----------------------------------------------------------------------------
|
||||
void ConfigDlg_LoadConfig()
|
||||
{
|
||||
// get our config
|
||||
Sys_GetRegistryString( "xboxName", g_xboxTargetName, "", sizeof( g_xboxTargetName ) );
|
||||
Sys_GetRegistryString( "localPath", g_localPath, "u:\\dev\\game", sizeof( g_localPath ) );
|
||||
Sys_GetRegistryString( "targetPath", g_targetPath, "e:\\valve", sizeof( g_targetPath ) );
|
||||
Sys_GetRegistryString( "installPath", g_installPath, "\\\\fileserver\\user\\xbox\\xbox_orange", sizeof( g_installPath ) );
|
||||
Sys_GetRegistryInteger( "clearOnConnect", true, g_clsOnConnect );
|
||||
Sys_GetRegistryInteger( "loadSymbolsOnConnect", false, g_loadSymbolsOnConnect );
|
||||
Sys_GetRegistryInteger( "alwaysAutoConnect", false, g_alwaysAutoConnect );
|
||||
Sys_GetRegistryInteger( "startMinimized", false, g_startMinimized );
|
||||
Sys_GetRegistryInteger( "captureDebugSpew", true, g_captureDebugSpew_StartupState );
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// ConfigDlg_SaveConfig
|
||||
//
|
||||
//-----------------------------------------------------------------------------
|
||||
void ConfigDlg_SaveConfig()
|
||||
{
|
||||
// save config
|
||||
Sys_SetRegistryString( "xboxName", g_xboxTargetName );
|
||||
Sys_SetRegistryString( "localPath", g_localPath );
|
||||
Sys_SetRegistryString( "targetPath", g_targetPath );
|
||||
Sys_SetRegistryString( "installPath", g_installPath );
|
||||
Sys_SetRegistryInteger( "clearOnConnect", g_clsOnConnect );
|
||||
Sys_SetRegistryInteger( "loadSymbolsOnConnect", g_loadSymbolsOnConnect );
|
||||
Sys_SetRegistryInteger( "alwaysAutoConnect", g_alwaysAutoConnect );
|
||||
Sys_SetRegistryInteger( "startMinimized", g_startMinimized );
|
||||
Sys_SetRegistryInteger( "captureDebugSpew", g_captureDebugSpew_StartupState );
|
||||
|
||||
// update
|
||||
SetMainWindowTitle();
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// ConfigDlg_Setup
|
||||
//
|
||||
//-----------------------------------------------------------------------------
|
||||
void ConfigDlg_Setup( HWND hWnd )
|
||||
{
|
||||
SetDlgItemText( hWnd,IDC_CONFIG_XBOXNAME, g_xboxTargetName );
|
||||
SetDlgItemText( hWnd,IDC_CONFIG_LOCALPATH, g_localPath );
|
||||
SetDlgItemText( hWnd,IDC_CONFIG_TARGETPATH, g_targetPath );
|
||||
SetDlgItemText( hWnd,IDC_CONFIG_INSTALLPATH, g_installPath );
|
||||
|
||||
EnableWindow( GetDlgItem( hWnd, IDC_CONFIG_PING ), strlen( g_xboxTargetName ) > 0 );
|
||||
|
||||
CheckDlgButton( hWnd, IDC_CONFIG_CLEARONCONNECT, g_clsOnConnect ? BST_CHECKED : BST_UNCHECKED );
|
||||
CheckDlgButton( hWnd, IDC_CONFIG_ALWAYSAUTOCONNECT, g_alwaysAutoConnect ? BST_CHECKED : BST_UNCHECKED );
|
||||
CheckDlgButton( hWnd, IDC_CONFIG_STARTMINIMIZED, g_startMinimized ? BST_CHECKED : BST_UNCHECKED );
|
||||
CheckDlgButton( hWnd, IDC_CONFIG_CAPTUREDEBUGSPEW, g_captureDebugSpew_StartupState ? BST_CHECKED : BST_UNCHECKED );
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// ConfigDlg_Ping
|
||||
//
|
||||
//-----------------------------------------------------------------------------
|
||||
BOOL ConfigDlg_Ping( HWND hwnd )
|
||||
{
|
||||
char xboxName[MAX_XBOXNAMELEN];
|
||||
BOOL canConnect;
|
||||
char* args[1];
|
||||
|
||||
xboxName[0] = '\0';
|
||||
GetDlgItemText( hwnd, IDC_CONFIG_XBOXNAME, xboxName, MAX_XBOXNAMELEN );
|
||||
|
||||
// ignore ping to current connection
|
||||
if ( !stricmp( g_xboxName, xboxName ) )
|
||||
{
|
||||
if ( g_connectedToXBox )
|
||||
{
|
||||
Sys_MessageBox( "Ping", "Already Connected To: '%s'", xboxName );
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
// terminate any current connection
|
||||
lc_disconnect( 0, NULL );
|
||||
|
||||
// trial connect
|
||||
args[0] = xboxName;
|
||||
canConnect = lc_connect( 1, args );
|
||||
|
||||
if ( !canConnect )
|
||||
Sys_MessageBox( "Ping FAILURE", "Could Not Connect To: %s", xboxName );
|
||||
else
|
||||
Sys_MessageBox( "Ping SUCCESS", "Connection Valid To: %s", g_xboxName );
|
||||
|
||||
if ( canConnect )
|
||||
lc_disconnect( 0, NULL );
|
||||
|
||||
return canConnect;
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// ConfigDlg_GetChanges
|
||||
//
|
||||
//-----------------------------------------------------------------------------
|
||||
bool ConfigDlg_GetChanges( HWND hwnd )
|
||||
{
|
||||
char remotePath[MAX_PATH];
|
||||
char localPath[MAX_PATH];
|
||||
char targetPath[MAX_PATH];
|
||||
char installPath[MAX_PATH];
|
||||
char xboxName[MAX_XBOXNAMELEN];
|
||||
char xexLocalPath[MAX_PATH];
|
||||
char xexTargetPath[MAX_PATH];
|
||||
|
||||
xboxName[0] = '\0';
|
||||
remotePath[0] = '\0';
|
||||
localPath[0] = '\0';
|
||||
targetPath[0] = '\0';
|
||||
xexLocalPath[0] = '\0';
|
||||
xexTargetPath[0] = '\0';
|
||||
|
||||
GetDlgItemText( hwnd, IDC_CONFIG_XBOXNAME, xboxName, MAX_XBOXNAMELEN );
|
||||
GetDlgItemText( hwnd, IDC_CONFIG_LOCALPATH, localPath, MAX_PATH );
|
||||
GetDlgItemText( hwnd, IDC_CONFIG_TARGETPATH, targetPath, MAX_PATH );
|
||||
GetDlgItemText( hwnd, IDC_CONFIG_INSTALLPATH, installPath, MAX_PATH );
|
||||
|
||||
strcpy( g_localPath, localPath );
|
||||
Sys_NormalizePath( g_localPath, true );
|
||||
|
||||
strcpy( g_targetPath, targetPath );
|
||||
Sys_NormalizePath( g_targetPath, true );
|
||||
|
||||
strcpy( g_installPath, installPath );
|
||||
Sys_NormalizePath( g_installPath, true );
|
||||
|
||||
strcpy( g_xboxTargetName, xboxName );
|
||||
|
||||
g_clsOnConnect = IsDlgButtonChecked( hwnd, IDC_CONFIG_CLEARONCONNECT );
|
||||
g_loadSymbolsOnConnect = IsDlgButtonChecked( hwnd, IDC_CONFIG_LOADSYMBOLS );
|
||||
g_alwaysAutoConnect = IsDlgButtonChecked( hwnd, IDC_CONFIG_ALWAYSAUTOCONNECT );
|
||||
g_startMinimized = IsDlgButtonChecked( hwnd, IDC_CONFIG_STARTMINIMIZED );
|
||||
g_captureDebugSpew_StartupState = IsDlgButtonChecked( hwnd, IDC_CONFIG_CAPTUREDEBUGSPEW );
|
||||
|
||||
// success
|
||||
return ( true );
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// ConfigDlg_Proc
|
||||
//
|
||||
//-----------------------------------------------------------------------------
|
||||
BOOL CALLBACK ConfigDlg_Proc( HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam )
|
||||
{
|
||||
switch ( message )
|
||||
{
|
||||
case WM_INITDIALOG:
|
||||
ConfigDlg_Setup( hwnd );
|
||||
return ( TRUE );
|
||||
|
||||
case WM_COMMAND:
|
||||
switch ( LOWORD( wParam ) )
|
||||
{
|
||||
case IDC_CONFIG_PING:
|
||||
ConfigDlg_Ping( hwnd );
|
||||
break;
|
||||
|
||||
case IDC_CONFIG_XBOXNAME:
|
||||
CHAR buff[MAX_XBOXNAMELEN];
|
||||
GetDlgItemText( hwnd, IDC_CONFIG_XBOXNAME, buff, sizeof( buff ) );
|
||||
EnableWindow( GetDlgItem( hwnd, IDC_CONFIG_PING ), strlen( buff ) > 0 );
|
||||
break;
|
||||
|
||||
case IDC_OK:
|
||||
if ( !ConfigDlg_GetChanges( hwnd ) )
|
||||
break;
|
||||
case IDCANCEL:
|
||||
case IDC_CANCEL:
|
||||
EndDialog( hwnd, wParam );
|
||||
return ( TRUE );
|
||||
}
|
||||
break;
|
||||
}
|
||||
return ( FALSE );
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// ConfigDlg_Open
|
||||
//
|
||||
//-----------------------------------------------------------------------------
|
||||
void ConfigDlg_Open( void )
|
||||
{
|
||||
int result;
|
||||
|
||||
result = DialogBox( g_hInstance, MAKEINTRESOURCE( IDD_CONFIG ), g_hDlgMain, ( DLGPROC )ConfigDlg_Proc );
|
||||
if ( LOWORD( result ) != IDC_OK )
|
||||
return;
|
||||
|
||||
ConfigDlg_SaveConfig();
|
||||
}
|
||||
Reference in New Issue
Block a user