29 #include "../idlib/precompiled.h"
50 #include "../tools/guied/GEWindowWrapper.h"
167 for (
int i = 0;
i <
c;
i++) {
181 int sz =
name.Allocated();
186 for (i = 0; i <
c; i++) {
196 for (i = 0; i <
c; i++) {
201 for (i = 0; i <
c; i++) {
206 for (i = 0; i <
c; i++) {
244 for (i = 0; i <
c; i++) {
341 dc->
DrawText(
va(
"x: %i y: %i", (
int )
rect.
x(), (
int )
rect.
y() ), 0.25, 0,
dc->
colorWhite,
idRectangle(
rect.
x(),
rect.
y() - 15, 100, 20 ),
false );
342 dc->
DrawText(
va(
"w: %i h: %i", (
int )
rect.
w(), (
int )
rect.
h() ), 0.25, 0,
dc->
colorWhite,
idRectangle(
rect.
x() +
rect.
w(),
rect.
w() +
rect.
h() + 5, 100, 20 ),
false );
360 for (
int i = 0;
i <
c;
i++) {
363 for (
int j =
i+1;
j <
c;
j++) {
428 if (xd == -2000 || yd == -2000) {
490 for (
int i = 0;
i <
c;
i++) {
507 for (
int i = 0;
i <
c;
i++ ) {
527 for (
int i = 0;
i <
c;
i++ ) {
555 for (
int i = 0;
i <
c;
i++) {
586 for (
int i = 0;
i <
c;
i++) {
621 for (
int i = 0;
i <
c;
i++) {
640 for ( i = 0; i <
c; i ++ ) {
659 for ( i = 0; i <
c; i++ ) {
660 children[
i]->RunNamedEvent ( eventName );
710 static bool actionDownRun;
711 static bool actionUpRun;
716 actionDownRun =
false;
731 *updateVisuals =
true;
758 const char *childRet = child->
HandleEvent(event, updateVisuals);
759 if (childRet && *childRet) {
778 if (event->
evValue2 && !actionDownRun) {
780 }
else if (!actionUpRun) {
803 const char *childRet = child->
HandleEvent(event, updateVisuals);
804 if (childRet && *childRet) {
816 for (
int i = 0;
i <
c;
i++) {
821 flags &= ~WIN_SELECTED;
831 if (childRet && *childRet) {
847 bool foundFocus =
false;
848 bool recurse =
false;
852 }
else if ( direction < 0 ) {
857 if ( testWindow == currentFocus ) {
879 }
else if ( recurse ) {
897 if (childRet && *childRet) {
905 if (childRet && *childRet) {
919 if (childRet && *childRet) {
927 *updateVisuals =
true;
930 if (mouseRet && *mouseRet) {
937 if (childRet && *childRet) {
960 static char buff[16384];
1002 for ( i = 0; i <
c; i++ ) {
1062 for (
int i = 0;
i <
c;
i++) {
1080 static float regs[MAX_EXPRESSION_REGISTERS];
1083 if (!force && test >= 0 && test < MAX_EXPRESSION_REGISTERS && lastEval ==
this) {
1095 if (test >= 0 && test < MAX_EXPRESSION_REGISTERS) {
1113 float scalex, scaley;
1150 static idVec3 vec(0, 0, 1);
1180 for (
int i = 0;
i <
c;
i++) {
1212 dc->
DrawText(
va(
" %0.1f seconds\n%s", (
float)(time -
timeLine) / 1000,
gui->
State().
GetString(
"name")), 0.35
f, 0,
dc->
colorWhite,
idRectangle(100, 0, 80, 80),
false);
1263 for (
int i = 0;
i <
c;
i++ ) {
1274 if ( ! (
flags & WIN_NOCLIP ) ) {
1307 for (
int i = 0;
i <
c;
i++) {
1320 for (
int i = 0;
i <
c;
i++) {
1333 for (
int i = 0;
i <
c;
i++) {
1548 if ( scripts && lastFocus ) {
1553 if ( scripts && w ) {
1573 bool ifElseBlock =
false;
1584 if ( !token.
Icmp (
"if" ) ) {
1602 src->
Error(
"Unexpected end of file" );
1606 if ( token ==
"{" ) {
1610 if ( token ==
"}" ) {
1617 if (token.
Icmp(
"if") == 0) {
1622 if (token ==
"else") {
1635 if ( ifElseBlock ) {
1644 if ( token ==
"{" ) {
1645 src->
Error (
"Unexpected {" );
1720 if ( wv == &
rect ) {
1759 ret =
drawWindows[
i].win->GetWinVarOffset( wv, owner );
1761 ret =
drawWindows[
i].simp->GetWinVarOffset( wv, owner );
1830 bool guiVar = (key.
Find(VAR_GUIPREFIX) >= 0);
1832 for (
int i = 0;
i <
c;
i++) {
1840 if (fixup && *_name !=
'$') {
1852 if ( len > 5 && guiVar ) {
1854 var->
Init(_name,
this);
1858 int n = key.
Find(
"::");
1929 if (
idStr::Icmp(_name,
"forceaspectwidth") == 0) {
1933 if (
idStr::Icmp(_name,
"forceaspectheight") == 0) {
1975 if ( tok.
Icmp(
"," ) ) {
1976 src->
Error(
"Expected comma in shear definiation" );
2029 common->
Warning(
"play encountered during gui parse.. see Robert\n" );
2131 idToken token, token2, token3, token4, token5, token6, token7;
2155 #ifdef ID_ALLOW_TOOLS
2161 while( token !=
"}" ) {
2165 if ( token ==
"windowDef" || token ==
"animationDef" ) {
2166 if (token ==
"animationDef") {
2174 if (dw && dw->
win) {
2181 win->
Parse(src, rebuild);
2199 else if ( token ==
"editDef" ) {
2202 win->
Parse(src, rebuild);
2210 else if ( token ==
"choiceDef" ) {
2213 win->
Parse(src, rebuild);
2221 else if ( token ==
"sliderDef" ) {
2224 win->
Parse(src, rebuild);
2232 else if ( token ==
"markerDef" ) {
2235 win->
Parse(src, rebuild);
2243 else if ( token ==
"bindDef" ) {
2246 win->
Parse(src, rebuild);
2254 else if ( token ==
"listDef" ) {
2257 win->
Parse(src, rebuild);
2265 else if ( token ==
"fieldDef" ) {
2268 win->
Parse(src, rebuild);
2276 else if ( token ==
"renderDef" ) {
2279 win->
Parse(src, rebuild);
2287 else if ( token ==
"gameSSDDef" ) {
2290 win->
Parse(src, rebuild);
2298 else if ( token ==
"gameBearShootDef" ) {
2301 win->
Parse(src, rebuild);
2309 else if ( token ==
"gameBustOutDef" ) {
2312 win->
Parse(src, rebuild);
2322 else if ( token ==
"onNamedEvent" ) {
2325 src->
Error(
"Expected event name" );
2340 #ifdef ID_ALLOW_TOOLS
2358 else if ( token ==
"onTime" ) {
2362 src->
Error(
"Unexpected end of file" );
2378 #ifdef ID_ALLOW_TOOLS
2398 else if ( token ==
"definefloat" ) {
2414 #ifdef ID_ALLOW_TOOLS
2424 else if ( token ==
"definevec4" ) {
2443 #ifdef ID_ALLOW_TOOLS
2453 else if ( token ==
"float" ) {
2469 #ifdef ID_ALLOW_TOOLS
2483 #ifdef ID_ALLOW_TOOLS
2503 #ifdef ID_ALLOW_TOOLS
2516 #ifdef ID_ALLOW_TOOLS
2525 src->
Error(
"Unexpected end of file" );
2541 #ifdef ID_ALLOW_TOOLS
2557 for (
int i = 0;
i <
c;
i++) {
2581 for (
int i = 0;
i <
c;
i++) {
2651 for ( i = 0; i <
c; i++ ) {
2660 for ( i = 0; i <
c; i++ ) {
2750 if (
ops.
Num() == MAX_EXPRESSION_OPS ) {
2819 return EmitOp( a, b, opType, opp );
2836 if ( token ==
"(" ) {
2842 if ( !token.
Icmp(
"time" ) ) {
2847 if ( token ==
"-" ) {
2852 src->
Warning(
"Bad negative number '%s'", token.
c_str() );
2856 if ( token.
type ==
TT_NUMBER || token ==
"." || token ==
"-" ) {
2877 var->
Init(token,
this);
2879 if (dynamic_cast<idWinVec4*>(var)) {
2889 }
else if (dynamic_cast<idWinFloat*>(var)) {
2891 }
else if (dynamic_cast<idWinInt*>(var)) {
2893 }
else if (dynamic_cast<idWinBool*>(var)) {
2895 }
else if (dynamic_cast<idWinStr*>(var)) {
2898 src->
Warning(
"Var expression not vec4, float or int '%s'", token.
c_str());
2903 char *
p =
new char[token.
Length()+1];
2919 #define TOP_PRIORITY 4
2924 if ( priority == 0 ) {
2925 return ParseTerm( src, var, component );
2936 if ( priority == 1 && token ==
"*" ) {
2939 if ( priority == 1 && token ==
"/" ) {
2942 if ( priority == 1 && token ==
"%" ) {
2945 if ( priority == 2 && token ==
"+" ) {
2948 if ( priority == 2 && token ==
"-" ) {
2951 if ( priority == 3 && token ==
">" ) {
2954 if ( priority == 3 && token ==
">=" ) {
2957 if ( priority == 3 && token ==
"<" ) {
2960 if ( priority == 3 && token ==
"<=" ) {
2963 if ( priority == 3 && token ==
"==" ) {
2966 if ( priority == 3 && token ==
"!=" ) {
2969 if ( priority == 4 && token ==
"&&" ) {
2972 if ( priority == 4 && token ==
"||" ) {
2975 if ( priority == 4 && token ==
"?" ) {
3042 for ( i = 0 ; i < oc ; i++ ) {
3049 registers[op->
c] = registers[op->
a] + registers[op->
b];
3052 registers[op->
c] = registers[op->
a] - registers[op->
b];
3055 registers[op->
c] = registers[op->
a] * registers[op->
b];
3058 if ( registers[op->
b] == 0.0f ) {
3060 registers[op->
c] = registers[op->
a];
3062 registers[op->
c] = registers[op->
a] / registers[op->
b];
3066 b = (
int)registers[op->
b];
3068 registers[op->
c] = (
int)registers[op->
a] %
b;
3077 registers[op->
c] = registers[ op->
a ] > registers[op->
b];
3080 registers[op->
c] = registers[ op->
a ] >= registers[op->
b];
3083 registers[op->
c] = registers[ op->
a ] < registers[op->
b];
3086 registers[op->
c] = registers[ op->
a ] <= registers[op->
b];
3089 registers[op->
c] = registers[ op->
a ] == registers[op->
b];
3092 registers[op->
c] = registers[ op->
a ] != registers[op->
b];
3095 registers[op->
c] = (registers[ op->
a ]) ? registers[op->
b] : registers[op->
d];
3098 registers[op->
c] = registers[ op->
a ] && registers[op->
b];
3101 registers[op->
c] = registers[ op->
a ] || registers[op->
b];
3105 registers[op->
c] = 0.0f;
3108 if ( op->
b >= 0 && registers[op->
b] >= 0 && registers[op->
b] < 4 ) {
3111 registers[op->
c] = ((
idVec4&)var)[registers[op->
b]];
3119 registers[op->
c] = atof(var->
c_str());
3121 registers[op->
c] = 0;
3127 registers[op->
c] = *var;
3129 registers[op->
c] = 0;
3135 registers[op->
c] = *var;
3137 registers[op->
c] = 0;
3143 registers[op->
c] = *var;
3145 registers[op->
c] = 0;
3171 f->
SetLog(
true,
"window1");
3206 f->
SetLog(
true, (work +
"-scripts"));
3217 f->
SetLog(
true, (work +
"-timelines"));
3219 for (i = 0; i <
c; i++) {
3234 f->
SetLog(
true, (work +
"-transitions"));
3236 for (i = 0; i <
c; i++) {
3241 float startTime, accelTime, linearTime, decelTime;
3242 idVec4 startValue, endValue;
3249 td.
interp.
Init( startTime, accelTime, decelTime, accelTime + linearTime + decelTime, startValue, endValue );
3253 int extrapolationType;
3258 f->
ReadInt( extrapolationType );
3270 f->
SetLog(
true, (work +
"-regstuff"));
3273 for (i = 0; i <
c; i++) {
3284 for (i = 0; i <
c; i++) {
3293 f->
SetLog(
true, (work +
"-children"));
3295 for (i = 0; i <
c; i++) {
3301 for (
int j = 0;
j <
c;
j++) {
3303 children[
j]->ReadFromDemoFile(f,rebuild);
3325 f->
SetLog(
true,
"window");
3356 f->
SetLog(
true, (work +
"-transitions"));
3359 for (i = 0; i <
c; i++) {
3381 f->
SetLog(
true, (work +
"-regstuff"));
3383 f->
SetLog(
true, (work +
"-children"));
3386 for (i = 0; i <
c; i++) {
3387 for (
int j = 0;
j <
c;
j++) {
3405 int len = strlen(
string );
3407 savefile->
Write( &len,
sizeof( len ) );
3408 savefile->
Write(
string, len );
3426 if ( offset != -1 && fdw && ( fdw->
win || fdw->
simp ) ) {
3427 savefile->
Write( &offset,
sizeof( offset ) );
3432 savefile->
Write( &offset,
sizeof( offset ) );
3444 savefile->
Read( &offset,
sizeof( offset ) );
3445 if ( offset != -1 ) {
3451 if ( winName.
Length() ) {
3453 strVar->
Set( winName );
3523 savefile->
Write( &winID,
sizeof( winID ) );
3526 savefile->
Write( &winID,
sizeof( winID ) );
3529 savefile->
Write( &winID,
sizeof( winID ) );
3553 savefile->
Write( &num,
sizeof( num ) );
3577 if ( window.
simp ) {
3579 }
else if ( window.
win ) {
3593 savefile->
Read( &len,
sizeof( len ) );
3595 common->
Warning(
"idWindow::ReadSaveGameString: invalid length" );
3598 string.Fill(
' ', len );
3599 savefile->
Read( &
string[0], len );
3672 savefile->
Read( &winID,
sizeof( winID ) );
3678 savefile->
Read( &winID,
sizeof( winID ) );
3684 savefile->
Read( &winID,
sizeof( winID ) );
3712 savefile->
Read( &num,
sizeof( num ) );
3713 for ( i = 0; i <
num; i++ ) {
3740 if ( window.
simp ) {
3742 }
else if ( window.
win ) {
3773 for ( i = 0; i <
c; i++ ) {
3777 if ( dw && ( dw->
win || dw->
simp ) ){
3841 for (i = 0; i <
c; i++) {
3851 for (i = 0; i <
c; i++) {
3856 for (i = 0; i <
c; i++) {
3861 for (i = 0; i <
c; i++) {
3862 if (
ops[i].
b == -2) {
3864 const char *
p = (
const char*)(
ops[i].
a);
3926 for (
int i = 0;
i <
c;
i++) {
3944 for (
int i = 0;
i <
c;
i++) {
3960 if (dw && dw->
simp) {
3962 }
else if (dw && dw->
win) {
3984 if ( *below ==
this ) {
3993 for (
int i = c - 1;
i >= 0 ;
i-- ) {
4103 if ( index != -1 ) {
4123 for ( p =
this, x = 0, y = 0;
p; p = p->
parent ) {
4142 for ( p =
this, x = 0, y = 0;
p; p = p->
parent ) {
void SetTransformInfo(const idVec3 &origin, const idMat3 &mat)
virtual int ReadUnsignedChar(unsigned char &value)
idList< float > expressionRegisters
void Error(const char *str,...) const id_attribute((format(printf
virtual int WriteUnsignedChar(const unsigned char value)
idList< idTimeLineEvent * > timeLineEvents
void ReadFromDemoFile(idDemoFile *f)
virtual void Set(const char *val)=0
virtual int virtual int ReadInt(int &value)
assert(prefInfo.fullscreenBtn)
int ExpressionConstant(float f)
bool ParseScript(idParser *src, idGuiScriptList &list, int *timeParm=NULL, bool allowIf=false)
void UnreadToken(idToken *token)
const type & GetEndValue(void) const
idMat3 mat3_identity(idVec3(1, 0, 0), idVec3(0, 1, 0), idVec3(0, 0, 1))
virtual void WriteToSaveGame(idFile *savefile)
bool UpdateFromDictionary(idDict &dict)
bool Contains(float x, float y)
virtual void ReadFromSaveGame(idFile *savefile)
virtual int ReadVec4(idVec4 &vec)
void ScreenToClient(idRectangle *rect)
void ResetCinematicTime(int time) const
const idStr & GetKey(void) const
void SetNum(int newnum, bool resize=true)
int GetWinVarOffset(idWinVar *wv, drawWin_t *dw)
virtual void StateChanged(bool redraw)
void Offset(float x, float y)
int EmitOp(int a, int b, wexpOpType_t opType, wexpOp_t **opp=NULL)
void RestoreExpressionParseState()
virtual void ArchiveToDictionary(idDict *dict, bool useNames=true)
virtual bool ParseInternalVar(const char *name, idParser *src)
idList< idWindow * > children
virtual void ReadFromSaveGame(idFile *savefile)
void GetFromRegs(float *registers)
void UpdateCinematic(int time) const
drawWin_t * FindChildByName(const char *name)
void Set(const float x, const float y, const float z)
idWindow(idUserInterfaceLocal *gui)
void BringToTop(idWindow *w)
void DisableRegister(const char *_name)
void AddCommand(const char *cmd)
idList< drawWin_t > drawWindows
idList< float > * saveRegs
virtual void WriteToSaveGame(idFile *savefile)
void ClientToScreen(idRectangle *rect)
GLenum GLsizei GLenum GLenum const GLvoid * table
void FixupParms(idWindow *win)
void ParseString(idParser *src, idStr &out)
float GetFloatValue(void)
virtual int GetSaveGameVersion(void)=0
virtual void WriteToSaveGame(idFile *savefile)
idRegisterList * RegList()
virtual void WriteToSaveGame(idFile *savefile)
void ParseVec4(idParser *src, idVec4 &out)
const char * Left(int len, idStr &result) const
virtual void GainCapture()
int GetImageHeight(void) const
GLuint GLuint GLsizei GLenum type
int ExpectTokenString(const char *string)
void PushClipRect(float x, float y, float w, float h)
virtual const idMaterial * FindMaterial(const char *name, bool makeDefault=true)=0
void Set(const char *key, const char *value)
virtual int WriteVec4(const idVec4 &vec)
const idMaterial * background
idGuiScriptList * scripts[SCRIPT_COUNT]
void DebugDraw(int time, float x, float y)
void SetDC(idDeviceContext *d)
int Icmp(const char *text) const
void AddReg(const char *name, int type, idParser *src, idWindow *win, idWinVar *var)
int FindFont(const char *name)
virtual void WriteToSaveGame(idFile *savefile)
virtual void MouseEnter()
virtual void LoseCapture()
int ParseExpressionPriority(idParser *src, int priority, idWinVar *var=NULL, int component=0)
virtual void WriteToDemoFile(class idDemoFile *f)
void ReadFromSaveGame(idFile *savefile)
void CalcRects(float x, float y)
int ReadToken(idToken *token)
void SetParent(idWindow *w)
virtual void Draw(int time, float x, float y)
idWindow * FindChildByPoint(float x, float y, idWindow *below=NULL)
virtual void WriteToSaveGame(idFile *savefile)
idList< idWinVar * > updateVars
void AddUpdateVar(idWinVar *var)
idStr * GetStrPtrByName(const char *_name)
void Init(const float startTime, const float accelTime, const float decelTime, const float duration, const type &startValue, const type &endValue)
void GetStringFromMarker(idStr &out, bool clean=false)
virtual void Activate(bool activate, idStr &act)
virtual void ReadFromSaveGame(idFile *savefile)
int MaxCharWidth(float scale)
virtual void DrawBackground(const idRectangle &drawRect)
virtual int WriteInt(const int value)
void WriteToSaveGame(idFile *savefile)
bool RunTimeEvents(int time)
int DrawText(const char *text, float textScale, int textAlign, idVec4 color, idRectangle rectDraw, bool wrap, int cursor=-1, bool calcOnly=false, idList< int > *breaks=NULL, int limit=0)
idRegister * FindReg(const char *name)
const char * GetString(const char *key, const char *defaultString="") const
GLubyte GLubyte GLubyte GLubyte w
virtual void WriteToSaveGame(idFile *savefile)
idDict & GetScriptDict(void)
virtual void InitFromDictionary(idDict *dict, bool byName=true)
idVec3 vec3_origin(0.0f, 0.0f, 0.0f)
virtual void DrawCursor()
virtual void Init(const char *_name, idWindow *win)=0
void DrawFilledRect(float x, float y, float width, float height, const idVec4 &color)
idSimpleWindow * FindSimpleWinByName(const char *_name)
virtual const idDecl * FindType(declType_t type, const char *name, bool makeDefault=true)=0
bool IsIdentity(const float epsilon=MATRIX_EPSILON) const
GLsizei GLsizei GLenum GLenum const GLvoid * data
int GetInteger(void) const
void ReadFromDemoFile(class idDemoFile *f)
float EvalRegs(int test=-1, bool force=false)
void GetTransformInfo(idVec3 &origin, idMat3 &mat)
bool IsDone(float time) const
idDict & GetVariableDict(void)
const char * GetSourceFile(void) const
virtual void virtual void FatalError(const char *fmt,...) id_attribute((format(printf
virtual int Read(void *buffer, int len)
idWindow * SetCapture(idWindow *w)
void SetMaterialPtr(const idMaterial **m)
virtual bool Parse(idParser *src, bool rebuild=true)
static const char * ScriptNames[SCRIPT_COUNT]
void EnableClipping(bool b)
void SetName(const char *_name)
void void Warning(const char *str,...) const id_attribute((format(printf
idList< wexpOp_t > * saveOps
virtual const char * RouteMouseCoords(float xd, float yd)
const idStr & GetValue(void) const
void DeleteContents(bool clear)
void DrawBorderAndCaption(const idRectangle &drawRect)
virtual size_t Allocated()
virtual void ReadFromSaveGame(idFile *savefile)
const char * Right(int len, idStr &result) const
idWindow * GetCaptureChild()
int Find(const char c, int start=0, int end=-1) const
static const idRegEntry RegisterVars[]
idStr & RemoveColors(void)
void SetupTransforms(float x, float y)
virtual const idDict & State() const
void Move(float x, float y)
int MaxCharHeight(float scale)
GLubyte GLubyte GLubyte a
idWindow * GetDesktop() const
void SaveExpressionParseState()
idList< idTransitionData > transitions
int ExpectAnyToken(idToken *token)
int CinematicLength(void) const
void ReadSaveGameString(idStr &string, idFile *savefile)
idWinVar * GetWinVarByName(const char *_name)
void WriteSaveGameString(const char *string, idFile *savefile)
const int WIN_INTRANSITION
virtual int ReadBool(bool &value)
void Set(const idVec3 &rotationOrigin, const idVec3 &rotationVec, const float rotationAngle)
void RemoveChild(idWindow *win)
virtual void ReadFromSaveGame(idFile *savefile)
virtual void RunNamedEvent(const char *eventName)
virtual int ReadUnsignedInt(unsigned int &value)
idDeclManager * declManager
void SetInitialState(const char *_name)
void ParseBracedExpression(idParser *src)
idWindow * SetFocus(idWindow *w, bool scripts=true)
virtual void ReadFromSaveGame(idFile *savefile)
void WriteToSaveGame(idFile *savefile)
bool ParseRegEntry(const char *name, idParser *src)
void SetToRegs(float *registers)
bool RunScriptList(idGuiScriptList *src)
int ParseExpression(idParser *src, idWinVar *var=NULL, int component=0)
void Execute(idWindow *win)
idGuiScriptList * elseList
int Insert(const type &obj, int index=0)
void ClearFlag(unsigned int f)
int ExpressionTemporary()
int Append(const type &obj)
GLdouble GLdouble GLdouble r
void SetChildWinVarVal(const char *name, const char *var, const char *val)
static rvGEWindowWrapper * GetWrapper(idWindow *window)
int AddUnique(const type &obj)
idUserInterfaceLocal * gui
virtual const idDecl * DeclByIndex(declType_t type, int index, bool forceParse=true)=0
virtual int WriteUnsignedInt(const unsigned int value)
idUserInterfaceLocal * GetGui()
static bool registerIsTemporary[MAX_EXPRESSION_REGISTERS]
const idMat3 & ToMat3(void) const
bool RemoveIndex(int index)
virtual int WriteFloat(const float value)
bool Contains(float xt, float yt)
idWindow * GetChild(int index)
virtual int Write(const void *buffer, int len)
void SetLog(bool b, const char *p)
int GetImageWidth(void) const
virtual void Redraw(float x, float y)
bool Parse(idParser *src)
virtual const char * c_str() const
void ReadSaveGameTransition(idTransitionData &trans, idFile *savefile)
const char * c_str(void) const
bool InsertChild(idWindow *win, idWindow *before)
idList< rvNamedEvent * > namedEvents
bool ParseScriptEntry(const char *name, idParser *src)
bool TestMaterialFlag(const int flag) const
idInterpolateAccelDecelLinear< idVec4 > interp
void SetSort(float s) const
const idKeyValue * GetKeyVal(int index) const
virtual void ReadFromDemoFile(class idDemoFile *f, bool rebuild=true)
friend class idSimpleWindow
const char * ReadHashString()
void SetImageClassifications(int tag) const
void Set(const float x, const float y)
wexpOp_t * ExpressionOp()
void * Mem_Alloc(const int size)
void EvaluateRegisters(float *registers)
void SetStateKey(const char *key, const char *value, bool update=true)
virtual int ReadFloat(float &value)
void AddChild(idWindow *win)
if(!ValidDisplayID(prefInfo.prefDisplayID)) prefInfo.prefDisplayID
char * va(const char *fmt,...)
static const int NumRegisterVars
virtual const char * HandleEvent(const sysEvent_t *event, bool *updateVisuals)
const int WIN_HOLDCAPTURE
virtual void Set(const char *val)
void SetSize(float width, float height)
void SetFlag(unsigned int f)
idList< idWinVar * > definedVars
idWinBackground backGroundName
void DrawMaterial(float x, float y, float w, float h, const idMaterial *mat, const idVec4 &color, float scalex=1.0, float scaley=1.0)
virtual void ReadFromSaveGame(idFile *savefile)
int GetNumKeyVals(void) const
const char * ParseBracedSectionExact(idStr &out, int tabs=-1)
virtual void virtual void Warning(const char *fmt,...) id_attribute((format(printf
int GetChildIndex(idWindow *window)
virtual idWinVar * GetWinVarByName(const char *_name, bool winLookup=false, drawWin_t **owner=NULL)
int sprintf(idStr &string, const char *fmt,...)
void ReadFromSaveGame(idFile *savefile)
type GetCurrentValue(float time) const
bool Remove(const type &obj)
void Append(idGuiScript *gs)
virtual void ReadFromSaveGame(idFile *savefile)
void DrawRect(float x, float y, float width, float height, float size, const idVec4 &color)
virtual void WriteToSaveGame(idFile *savefile)
idWindow * GetFocusedChild()
int ExpectTokenType(int type, int subtype, idToken *token)
void CalcClientRect(float xofs, float yofs)
void AddTransition(idWinVar *dest, idVec4 from, idVec4 to, int time, float accelTime, float decelTime)
friend class rvGEWindowWrapper
void WriteHashString(const char *str)
float TableLookup(float index) const
int ParseTerm(idParser *src, idWinVar *var=NULL, int component=0)
int ParseEmitOp(idParser *src, int a, wexpOpType_t opType, int priority, wexpOp_t **opp=NULL)
void WriteSaveGameTransition(idTransitionData &trans, idFile *savefile)