idTech4.UI.idWindow.StateChanged C# (CSharp) Method

StateChanged() public method

public StateChanged ( bool redraw ) : void
redraw bool
return void
		public virtual void StateChanged(bool redraw)
		{
			if(this.Disposed == true)
			{
				throw new ObjectDisposedException(this.GetType().Name);
			}

			UpdateVariables();

			if((_expressionRegisters.Count > 0) && (_ops.Count > 0))
			{
				EvaluateRegisters();
			}

			foreach(DrawWindow drawWindow in _drawWindows)
			{
				if(drawWindow.Window != null)
				{
					drawWindow.Window.StateChanged(redraw);
				}
				else
				{
					drawWindow.Simple.StateChanged(redraw);
				}
			}

			if(redraw == true)
			{
				if((this.Flags & WindowFlags.Desktop) == WindowFlags.Desktop)
				{
					Draw(0, 0);
				}

				// TODO: cinematic
				/*if ( background && background->CinematicLength() ) {
					background->UpdateCinematic( gui->GetTime() );
				}*/
			}
		}