### YamlMime:ManagedReference items: - uid: Mono.Terminal.MainLoop id: MainLoop children: - Mono.Terminal.MainLoop.#ctor - Mono.Terminal.MainLoop.#ctor(Mono.Terminal.IMainLoopDriver) - Mono.Terminal.MainLoop.AddIdle(System.Func{System.Boolean}) - Mono.Terminal.MainLoop.AddTimeout(System.TimeSpan,System.Func{Mono.Terminal.MainLoop,System.Boolean}) - Mono.Terminal.MainLoop.AddWatch(System.Int32,Mono.Terminal.MainLoop.Condition,System.Func{Mono.Terminal.MainLoop,System.Boolean}) - Mono.Terminal.MainLoop.Driver - Mono.Terminal.MainLoop.EventsPending(System.Boolean) - Mono.Terminal.MainLoop.Invoke(System.Action) - Mono.Terminal.MainLoop.MainIteration - Mono.Terminal.MainLoop.RemoveIdle(System.Func{System.Boolean}) - Mono.Terminal.MainLoop.RemoveTimeout(System.Object) - Mono.Terminal.MainLoop.RemoveWatch(System.Object) - Mono.Terminal.MainLoop.Run - Mono.Terminal.MainLoop.Stop - Mono.Terminal.MainLoop.WindowsKeyPressed langs: - csharp name: MainLoop nameWithType: MainLoop fullName: Mono.Terminal.MainLoop type: Class assemblies: - Terminal.Gui namespace: Mono.Terminal summary: >- Simple main loop implementation that can be used to monitor file descriptor, run timers and idle handlers. remarks: >- Monitoring of file descriptors is only available on Unix, there does not seem to be a way of supporting this on Windows. syntax: content: public class MainLoop inheritance: - System.Object implements: [] inheritedMembers: [] - uid: Mono.Terminal.MainLoop.#ctor id: '#ctor' parent: Mono.Terminal.MainLoop langs: - csharp name: MainLoop() nameWithType: MainLoop.MainLoop() fullName: MainLoop.MainLoop() type: Constructor assemblies: [] namespace: Mono.Terminal summary: Default constructor syntax: content: public MainLoop (); parameters: [] overload: Mono.Terminal.MainLoop.#ctor* exceptions: [] - uid: Mono.Terminal.MainLoop.#ctor(Mono.Terminal.IMainLoopDriver) id: '#ctor(Mono.Terminal.IMainLoopDriver)' parent: Mono.Terminal.MainLoop langs: - csharp name: MainLoop(IMainLoopDriver) nameWithType: MainLoop.MainLoop(IMainLoopDriver) fullName: MainLoop.MainLoop(IMainLoopDriver) type: Constructor assemblies: - Terminal.Gui namespace: Mono.Terminal summary: >- Creates a new Mainloop, to run it you must provide a driver, and choose one of the implementations UnixMainLoop, NetMainLoop or WindowsMainLoop. syntax: content: public MainLoop (Mono.Terminal.IMainLoopDriver driver); parameters: - id: driver type: Mono.Terminal.IMainLoopDriver description: To be added. overload: Mono.Terminal.MainLoop.#ctor* exceptions: [] - uid: Mono.Terminal.MainLoop.AddIdle(System.Func{System.Boolean}) id: AddIdle(System.Func{System.Boolean}) parent: Mono.Terminal.MainLoop langs: - csharp name: AddIdle(Func) nameWithType: MainLoop.AddIdle(Func) fullName: MainLoop.AddIdle(Func) type: Method assemblies: - Terminal.Gui namespace: Mono.Terminal summary: Executes the specified @idleHandler on the idle loop. The return value is a token to remove it. syntax: content: public Func AddIdle (Func idleHandler); parameters: - id: idleHandler type: System.Func{System.Boolean} description: To be added. return: type: System.Func{System.Boolean} description: To be added. overload: Mono.Terminal.MainLoop.AddIdle* exceptions: [] - uid: Mono.Terminal.MainLoop.AddTimeout(System.TimeSpan,System.Func{Mono.Terminal.MainLoop,System.Boolean}) id: AddTimeout(System.TimeSpan,System.Func{Mono.Terminal.MainLoop,System.Boolean}) parent: Mono.Terminal.MainLoop langs: - csharp name: AddTimeout(TimeSpan, Func) nameWithType: MainLoop.AddTimeout(TimeSpan, Func) fullName: MainLoop.AddTimeout(TimeSpan, Func) type: Method assemblies: - Terminal.Gui namespace: Mono.Terminal summary: Adds a timeout to the mainloop. remarks: "When time time specified passes, the callback will be invoked.\n If the callback returns true, the timeout will be reset, repeating\n the invocation. If it returns false, the timeout will stop.\n \n The returned value is a token that can be used to stop the timeout\n by calling RemoveTimeout." syntax: content: public object AddTimeout (TimeSpan time, Func callback); parameters: - id: time type: System.TimeSpan description: To be added. - id: callback type: System.Func{Mono.Terminal.MainLoop,System.Boolean} description: To be added. return: type: System.Object description: To be added. overload: Mono.Terminal.MainLoop.AddTimeout* exceptions: [] - uid: Mono.Terminal.MainLoop.AddWatch(System.Int32,Mono.Terminal.MainLoop.Condition,System.Func{Mono.Terminal.MainLoop,System.Boolean}) id: AddWatch(System.Int32,Mono.Terminal.MainLoop.Condition,System.Func{Mono.Terminal.MainLoop,System.Boolean}) parent: Mono.Terminal.MainLoop langs: - csharp name: AddWatch(Int32, MainLoop+Condition, Func) nameWithType: MainLoop.AddWatch(Int32, MainLoop+Condition, Func) fullName: MainLoop.AddWatch(Int32, MainLoop+Condition, Func) type: Method assemblies: [] namespace: Mono.Terminal summary: Watches a file descriptor for activity. remarks: "When the condition is met, the provided callback\n is invoked. If the callback returns false, the\n watch is automatically removed.\n \n The return value is a token that represents this watch, you can\n use this token to remove the watch by calling RemoveWatch." syntax: content: public object AddWatch (int fileDescriptor, Mono.Terminal.MainLoop.Condition condition, Func callback); parameters: - id: fileDescriptor type: System.Int32 description: To be added. - id: condition type: Mono.Terminal.MainLoop+Condition description: To be added. - id: callback type: System.Func{Mono.Terminal.MainLoop,System.Boolean} description: To be added. return: type: System.Object description: To be added. overload: Mono.Terminal.MainLoop.AddWatch* exceptions: [] - uid: Mono.Terminal.MainLoop.Driver id: Driver parent: Mono.Terminal.MainLoop langs: - csharp name: Driver nameWithType: MainLoop.Driver fullName: MainLoop.Driver type: Property assemblies: - Terminal.Gui namespace: Mono.Terminal summary: The current IMainLoopDriver in use. syntax: content: public Mono.Terminal.IMainLoopDriver Driver { get; } return: type: Mono.Terminal.IMainLoopDriver description: The driver. overload: Mono.Terminal.MainLoop.Driver* exceptions: [] - uid: Mono.Terminal.MainLoop.EventsPending(System.Boolean) id: EventsPending(System.Boolean) parent: Mono.Terminal.MainLoop langs: - csharp name: EventsPending(Boolean) nameWithType: MainLoop.EventsPending(Boolean) fullName: MainLoop.EventsPending(Boolean) type: Method assemblies: - Terminal.Gui namespace: Mono.Terminal summary: Determines whether there are pending events to be processed. remarks: >- You can use this method if you want to probe if events are pending. Typically used if you need to flush the input queue while still running some of your own code in your main thread. syntax: content: public bool EventsPending (bool wait = false); parameters: - id: wait type: System.Boolean description: To be added. return: type: System.Boolean description: To be added. overload: Mono.Terminal.MainLoop.EventsPending* exceptions: [] - uid: Mono.Terminal.MainLoop.Invoke(System.Action) id: Invoke(System.Action) parent: Mono.Terminal.MainLoop langs: - csharp name: Invoke(Action) nameWithType: MainLoop.Invoke(Action) fullName: MainLoop.Invoke(Action) type: Method assemblies: - Terminal.Gui namespace: Mono.Terminal summary: Runs @action on the thread that is processing events syntax: content: public void Invoke (Action action); parameters: - id: action type: System.Action description: To be added. overload: Mono.Terminal.MainLoop.Invoke* exceptions: [] - uid: Mono.Terminal.MainLoop.MainIteration id: MainIteration parent: Mono.Terminal.MainLoop langs: - csharp name: MainIteration() nameWithType: MainLoop.MainIteration() fullName: MainLoop.MainIteration() type: Method assemblies: - Terminal.Gui namespace: Mono.Terminal summary: Runs one iteration of timers and file watches remarks: "You use this to process all pending events (timers, idle handlers and file watches).\n \n You can use it like this:\n while (main.EvensPending ()) MainIteration ();" syntax: content: public void MainIteration (); parameters: [] overload: Mono.Terminal.MainLoop.MainIteration* exceptions: [] - uid: Mono.Terminal.MainLoop.RemoveIdle(System.Func{System.Boolean}) id: RemoveIdle(System.Func{System.Boolean}) parent: Mono.Terminal.MainLoop langs: - csharp name: RemoveIdle(Func) nameWithType: MainLoop.RemoveIdle(Func) fullName: MainLoop.RemoveIdle(Func) type: Method assemblies: - Terminal.Gui namespace: Mono.Terminal summary: Removes the specified idleHandler from processing. syntax: content: public void RemoveIdle (Func idleHandler); parameters: - id: idleHandler type: System.Func{System.Boolean} description: To be added. overload: Mono.Terminal.MainLoop.RemoveIdle* exceptions: [] - uid: Mono.Terminal.MainLoop.RemoveTimeout(System.Object) id: RemoveTimeout(System.Object) parent: Mono.Terminal.MainLoop langs: - csharp name: RemoveTimeout(Object) nameWithType: MainLoop.RemoveTimeout(Object) fullName: MainLoop.RemoveTimeout(Object) type: Method assemblies: - Terminal.Gui namespace: Mono.Terminal summary: Removes a previously scheduled timeout remarks: The token parameter is the value returned by AddTimeout. syntax: content: public void RemoveTimeout (object token); parameters: - id: token type: System.Object description: To be added. overload: Mono.Terminal.MainLoop.RemoveTimeout* exceptions: [] - uid: Mono.Terminal.MainLoop.RemoveWatch(System.Object) id: RemoveWatch(System.Object) parent: Mono.Terminal.MainLoop langs: - csharp name: RemoveWatch(Object) nameWithType: MainLoop.RemoveWatch(Object) fullName: MainLoop.RemoveWatch(Object) type: Method assemblies: [] namespace: Mono.Terminal summary: Removes an active watch from the mainloop. remarks: The token parameter is the value returned from AddWatch syntax: content: public void RemoveWatch (object token); parameters: - id: token type: System.Object description: To be added. overload: Mono.Terminal.MainLoop.RemoveWatch* exceptions: [] - uid: Mono.Terminal.MainLoop.Run id: Run parent: Mono.Terminal.MainLoop langs: - csharp name: Run() nameWithType: MainLoop.Run() fullName: MainLoop.Run() type: Method assemblies: - Terminal.Gui namespace: Mono.Terminal summary: Runs the mainloop. syntax: content: public void Run (); parameters: [] overload: Mono.Terminal.MainLoop.Run* exceptions: [] - uid: Mono.Terminal.MainLoop.Stop id: Stop parent: Mono.Terminal.MainLoop langs: - csharp name: Stop() nameWithType: MainLoop.Stop() fullName: MainLoop.Stop() type: Method assemblies: - Terminal.Gui namespace: Mono.Terminal summary: Stops the mainloop. syntax: content: public void Stop (); parameters: [] overload: Mono.Terminal.MainLoop.Stop* exceptions: [] - uid: Mono.Terminal.MainLoop.WindowsKeyPressed id: WindowsKeyPressed parent: Mono.Terminal.MainLoop langs: - csharp name: WindowsKeyPressed nameWithType: MainLoop.WindowsKeyPressed fullName: MainLoop.WindowsKeyPressed type: Field assemblies: [] namespace: Mono.Terminal summary: This event is raised when a key is pressed when using the Windows driver. syntax: content: public Action WindowsKeyPressed; return: type: System.Action{System.ConsoleKeyInfo} description: To be added. exceptions: [] references: - uid: System.Object parent: System isExternal: true name: Object nameWithType: Object fullName: System.Object - uid: Mono.Terminal.MainLoop.#ctor parent: Mono.Terminal.MainLoop isExternal: false name: MainLoop() nameWithType: MainLoop.MainLoop() fullName: MainLoop.MainLoop() - uid: Mono.Terminal.MainLoop.#ctor(Mono.Terminal.IMainLoopDriver) parent: Mono.Terminal.MainLoop isExternal: false name: MainLoop(IMainLoopDriver) nameWithType: MainLoop.MainLoop(IMainLoopDriver) fullName: MainLoop.MainLoop(IMainLoopDriver) - uid: Mono.Terminal.IMainLoopDriver parent: Mono.Terminal isExternal: false name: IMainLoopDriver nameWithType: IMainLoopDriver fullName: Mono.Terminal.IMainLoopDriver - uid: Mono.Terminal.MainLoop.AddIdle(System.Func{System.Boolean}) parent: Mono.Terminal.MainLoop isExternal: false name: AddIdle(Func) nameWithType: MainLoop.AddIdle(Func) fullName: MainLoop.AddIdle(Func) - uid: System.Func`1 name: Func nameWithType: Func fullName: System.Func - uid: System.Boolean name: Boolean nameWithType: Boolean fullName: System.Boolean - uid: System.Func{System.Boolean} parent: System isExternal: true name: Func nameWithType: Func fullName: System.Func spec.csharp: - uid: System.Func`1 name: Func nameWithType: Func fullName: System.Func - name: < nameWithType: < fullName: < - uid: System.Boolean name: Boolean nameWithType: Boolean fullName: System.Boolean - name: '>' nameWithType: '>' fullName: '>' - uid: Mono.Terminal.MainLoop.AddTimeout(System.TimeSpan,System.Func{Mono.Terminal.MainLoop,System.Boolean}) parent: Mono.Terminal.MainLoop isExternal: false name: AddTimeout(TimeSpan, Func) nameWithType: MainLoop.AddTimeout(TimeSpan, Func) fullName: MainLoop.AddTimeout(TimeSpan, Func) - uid: System.TimeSpan parent: System isExternal: true name: TimeSpan nameWithType: TimeSpan fullName: System.TimeSpan - uid: System.Func`2 name: Func nameWithType: Func fullName: System.Func - uid: Mono.Terminal.MainLoop name: MainLoop nameWithType: MainLoop fullName: Mono.Terminal.MainLoop - uid: System.Func{Mono.Terminal.MainLoop,System.Boolean} parent: System isExternal: true name: Func nameWithType: Func fullName: System.Func spec.csharp: - uid: System.Func`2 name: Func nameWithType: Func fullName: System.Func - name: < nameWithType: < fullName: < - uid: Mono.Terminal.MainLoop name: MainLoop nameWithType: MainLoop fullName: Mono.Terminal.MainLoop - name: ',' nameWithType: ',' fullName: ',' - uid: System.Boolean name: Boolean nameWithType: Boolean fullName: System.Boolean - name: '>' nameWithType: '>' fullName: '>' - uid: Mono.Terminal.MainLoop.AddWatch(System.Int32,Mono.Terminal.MainLoop.Condition,System.Func{Mono.Terminal.MainLoop,System.Boolean}) parent: Mono.Terminal.MainLoop isExternal: false name: AddWatch(Int32, MainLoop+Condition, Func) nameWithType: MainLoop.AddWatch(Int32, MainLoop+Condition, Func) fullName: MainLoop.AddWatch(Int32, MainLoop+Condition, Func) - uid: System.Int32 parent: System isExternal: true name: Int32 nameWithType: Int32 fullName: System.Int32 - uid: Mono.Terminal.MainLoop.Driver parent: Mono.Terminal.MainLoop isExternal: false name: Driver nameWithType: MainLoop.Driver fullName: MainLoop.Driver - uid: Mono.Terminal.MainLoop.EventsPending(System.Boolean) parent: Mono.Terminal.MainLoop isExternal: false name: EventsPending(Boolean) nameWithType: MainLoop.EventsPending(Boolean) fullName: MainLoop.EventsPending(Boolean) - uid: Mono.Terminal.MainLoop.Invoke(System.Action) parent: Mono.Terminal.MainLoop isExternal: false name: Invoke(Action) nameWithType: MainLoop.Invoke(Action) fullName: MainLoop.Invoke(Action) - uid: System.Action parent: System isExternal: true name: Action nameWithType: Action fullName: System.Action - uid: Mono.Terminal.MainLoop.MainIteration parent: Mono.Terminal.MainLoop isExternal: false name: MainIteration() nameWithType: MainLoop.MainIteration() fullName: MainLoop.MainIteration() - uid: Mono.Terminal.MainLoop.RemoveIdle(System.Func{System.Boolean}) parent: Mono.Terminal.MainLoop isExternal: false name: RemoveIdle(Func) nameWithType: MainLoop.RemoveIdle(Func) fullName: MainLoop.RemoveIdle(Func) - uid: Mono.Terminal.MainLoop.RemoveTimeout(System.Object) parent: Mono.Terminal.MainLoop isExternal: false name: RemoveTimeout(Object) nameWithType: MainLoop.RemoveTimeout(Object) fullName: MainLoop.RemoveTimeout(Object) - uid: Mono.Terminal.MainLoop.RemoveWatch(System.Object) parent: Mono.Terminal.MainLoop isExternal: false name: RemoveWatch(Object) nameWithType: MainLoop.RemoveWatch(Object) fullName: MainLoop.RemoveWatch(Object) - uid: Mono.Terminal.MainLoop.Run parent: Mono.Terminal.MainLoop isExternal: false name: Run() nameWithType: MainLoop.Run() fullName: MainLoop.Run() - uid: Mono.Terminal.MainLoop.Stop parent: Mono.Terminal.MainLoop isExternal: false name: Stop() nameWithType: MainLoop.Stop() fullName: MainLoop.Stop() - uid: Mono.Terminal.MainLoop.WindowsKeyPressed parent: Mono.Terminal.MainLoop isExternal: false name: WindowsKeyPressed nameWithType: MainLoop.WindowsKeyPressed fullName: MainLoop.WindowsKeyPressed - uid: System.Action`1 name: Action nameWithType: Action fullName: System.Action - uid: System.ConsoleKeyInfo name: ConsoleKeyInfo nameWithType: ConsoleKeyInfo fullName: System.ConsoleKeyInfo - uid: System.Action{System.ConsoleKeyInfo} parent: System isExternal: true name: Action nameWithType: Action fullName: System.Action spec.csharp: - uid: System.Action`1 name: Action nameWithType: Action fullName: System.Action - name: < nameWithType: < fullName: < - uid: System.ConsoleKeyInfo name: ConsoleKeyInfo nameWithType: ConsoleKeyInfo fullName: System.ConsoleKeyInfo - name: '>' nameWithType: '>' fullName: '>' - uid: Mono.Terminal.MainLoop.#ctor* parent: Mono.Terminal.MainLoop isExternal: false name: MainLoop nameWithType: MainLoop.MainLoop fullName: MainLoop.MainLoop - uid: Mono.Terminal.MainLoop.AddIdle* parent: Mono.Terminal.MainLoop isExternal: false name: AddIdle nameWithType: MainLoop.AddIdle fullName: MainLoop.AddIdle - uid: Mono.Terminal.MainLoop.AddTimeout* parent: Mono.Terminal.MainLoop isExternal: false name: AddTimeout nameWithType: MainLoop.AddTimeout fullName: MainLoop.AddTimeout - uid: Mono.Terminal.MainLoop.AddWatch* parent: Mono.Terminal.MainLoop isExternal: false name: AddWatch nameWithType: MainLoop.AddWatch fullName: MainLoop.AddWatch - uid: Mono.Terminal.MainLoop.Driver* parent: Mono.Terminal.MainLoop isExternal: false name: Driver nameWithType: MainLoop.Driver fullName: MainLoop.Driver - uid: Mono.Terminal.MainLoop.EventsPending* parent: Mono.Terminal.MainLoop isExternal: false name: EventsPending nameWithType: MainLoop.EventsPending fullName: MainLoop.EventsPending - uid: Mono.Terminal.MainLoop.Invoke* parent: Mono.Terminal.MainLoop isExternal: false name: Invoke nameWithType: MainLoop.Invoke fullName: MainLoop.Invoke - uid: Mono.Terminal.MainLoop.MainIteration* parent: Mono.Terminal.MainLoop isExternal: false name: MainIteration nameWithType: MainLoop.MainIteration fullName: MainLoop.MainIteration - uid: Mono.Terminal.MainLoop.RemoveIdle* parent: Mono.Terminal.MainLoop isExternal: false name: RemoveIdle nameWithType: MainLoop.RemoveIdle fullName: MainLoop.RemoveIdle - uid: Mono.Terminal.MainLoop.RemoveTimeout* parent: Mono.Terminal.MainLoop isExternal: false name: RemoveTimeout nameWithType: MainLoop.RemoveTimeout fullName: MainLoop.RemoveTimeout - uid: Mono.Terminal.MainLoop.RemoveWatch* parent: Mono.Terminal.MainLoop isExternal: false name: RemoveWatch nameWithType: MainLoop.RemoveWatch fullName: MainLoop.RemoveWatch - uid: Mono.Terminal.MainLoop.Run* parent: Mono.Terminal.MainLoop isExternal: false name: Run nameWithType: MainLoop.Run fullName: MainLoop.Run - uid: Mono.Terminal.MainLoop.Stop* parent: Mono.Terminal.MainLoop isExternal: false name: Stop nameWithType: MainLoop.Stop fullName: MainLoop.Stop