mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-04-24 05:45:40 +00:00
Streamlined baseUI profiles
Implemented audioOptions file with structure to comply to BaseUI options menu Implemented majority of keybind remapping logic for options menu
This commit is contained in:
parent
f14c96c2bc
commit
55697cffdb
23 changed files with 1605 additions and 1582 deletions
|
|
@ -52,7 +52,7 @@ new GuiControlProfile(GuiConsoleTextProfile)
|
|||
category = "Core";
|
||||
};
|
||||
|
||||
$ConsoleDefaultFillColor = "12 14 19 175";
|
||||
$ConsoleDefaultFillColor = "0 0 0 175";
|
||||
|
||||
if(!isObject(ConsoleScrollProfile))
|
||||
new GuiControlProfile(ConsoleScrollProfile : GuiScrollProfile)
|
||||
|
|
|
|||
|
|
@ -267,3 +267,24 @@ new GuiControlProfile(GuiScrollProfile)
|
|||
bitmapAsset = "Core_GUI:scrollBar_image";
|
||||
category = "Core";
|
||||
};
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
singleton GuiControlProfile( GuiInputCtrlProfile )
|
||||
{
|
||||
tab = true;
|
||||
canKeyFocus = true;
|
||||
category = "Core";
|
||||
};
|
||||
|
||||
singleton GuiControlProfile (GuiTextProfile)
|
||||
{
|
||||
justify = "left";
|
||||
fontColor = "20 20 20";
|
||||
category = "Core";
|
||||
};
|
||||
|
||||
singleton GuiControlProfile (GuiTextRightProfile : GuiTextProfile)
|
||||
{
|
||||
justify = "right";
|
||||
category = "Core";
|
||||
};
|
||||
File diff suppressed because it is too large
Load diff
|
|
@ -7,7 +7,7 @@ function Core_SFX::onCreate(%this)
|
|||
exec("./scripts/audioDescriptions." @ $TorqueScriptFileExtension);
|
||||
exec("./scripts/audioEnvironments." @ $TorqueScriptFileExtension);
|
||||
exec("./scripts/audioStates." @ $TorqueScriptFileExtension);
|
||||
|
||||
exec("./scripts/audioOptions." @ $TorqueScriptFileExtension);
|
||||
}
|
||||
|
||||
function Core_SFX::onDestroy(%this)
|
||||
|
|
|
|||
|
|
@ -0,0 +1,82 @@
|
|||
new SimGroup(AudioSettingsGroup)
|
||||
{
|
||||
class = "PrimaryOptionsGroup";
|
||||
displayName = "Audio";
|
||||
|
||||
new SimGroup()
|
||||
{
|
||||
class = "SubOptionsGroup";
|
||||
displayName = "Audio Devices";
|
||||
|
||||
new SimGroup(AudioSettingsProviderGroup)
|
||||
{
|
||||
class = "AudioOptionsSettings";
|
||||
|
||||
OptionName = "Audio Provider";
|
||||
Description = "";
|
||||
};
|
||||
|
||||
new SimGroup(AudioSettingsDeviceGroup)
|
||||
{
|
||||
class = "AudioOptionsSettings";
|
||||
|
||||
OptionName = "Audio Device";
|
||||
Description = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
function AudioSettingsGroup::populateSettings(%this)
|
||||
{
|
||||
AudioSettingsProviderGroup.clear();
|
||||
AudioSettingsDeviceGroup.clear();
|
||||
|
||||
%buffer = sfxGetAvailableDevices();
|
||||
%count = getRecordCount( %buffer );
|
||||
|
||||
for(%i = 0; %i < %count; %i++)
|
||||
{
|
||||
%record = getRecord(%buffer, %i);
|
||||
%provider = getField(%record, 0);
|
||||
%device = getField(%record, 1);
|
||||
|
||||
//When the client is actually running, we don't care about null audo devices
|
||||
if(%provider $= "null")
|
||||
continue;
|
||||
|
||||
//We can't have duplicate providers, so double check for uniqueness
|
||||
%foundProvider = false;
|
||||
foreach(%registeredProviders in AudioSettingsProviderGroup)
|
||||
{
|
||||
if(%registeredProviders.displayName $= %provider)
|
||||
{
|
||||
%foundProvider = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if(!%foundProvider)
|
||||
{
|
||||
//Provider entry
|
||||
%providerEntry = new ArrayObject()
|
||||
{
|
||||
class = "OptionsQualityLevel";
|
||||
displayName = %provider;
|
||||
key["$pref::SFX::provider"] = %provider;
|
||||
};
|
||||
|
||||
AudioSettingsProviderGroup.add(%providerEntry);
|
||||
}
|
||||
|
||||
//Device Entry
|
||||
%deviceEntry = new ArrayObject()
|
||||
{
|
||||
class = "OptionsQualityLevel";
|
||||
displayName = %device;
|
||||
provider = %provider; //this is for filtering later, if we need to
|
||||
key["$pref::SFX::device"] = %device;
|
||||
};
|
||||
|
||||
AudioSettingsDeviceGroup.add(%deviceEntry);
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue