rott/kf_sources/GUI2K4/Classes/GUICustomPropertyPage.uc
2026-07-14 20:27:09 +07:00

82 lines
2.1 KiB
Ucode

//==============================================================================
// Created on: 09/17/2003
// Base class for menus which handle custom playinfo properties
//
// Written by Ron Prestenback
// © 2003, Epic Games, Inc. All Rights Reserved
//==============================================================================
class GUICustomPropertyPage extends LockedFloatingWindow;
// GUIComponent associated with this custom property page
// this will normally be the component that wanted this page opened
// In the case of the playinfo lists, this would be the moButton responsible for tracking this property's value
var() noexport GUIComponent Owner;
var() noexport PlayInfo.PlayInfoData Item; // Playinfo property this item is associated with
function SetOwner( GUIComponent NewOwner )
{
Owner = NewOwner;
}
function GUIComponent GetOwner()
{
return Owner;
}
function SetReadOnly( bool bValue );
function bool GetReadOnly() { return false; }
function Strip(out string Source, string Char)
{
if (Source != "" && Char != "")
{
if (Left(Source,Len(Char)) == Char)
Source = Mid(Source, Len(Char));
if (Right(Source, Len(Char)) == Char)
Source = Left(Source, Len(Source) - Len(Char));
}
}
// copied from GameInfo and modified
static function bool GrabOption( string Delim, out string Options, out string Result )
{
local string s;
s = Options;
if( Left(Options,1)==Delim )
Result = Mid(Options,1);
if ( !Divide(s, Delim, Result, Options) )
Result = s;
return Result != "";
}
//
// Break up a key=value pair into its key and value.
//
static function GetKeyValue( string Pair, out string Key, out string Value )
{
if ( !Divide(Pair, "=", Key, Value) )
Key = Pair;
}
/* ParseOption()
Find an option in the options string and return it.
*/
static function string ParseOption( string Options, string Delim, string InKey )
{
local string Pair, Key, Value;
while( GrabOption( Delim, Options, Pair ) )
{
GetKeyValue( Pair, Key, Value );
if( Key ~= InKey )
return Value;
}
return "";
}