Interface IModelLayoutHostController
The main controller for any IModelLayoutHost view which can contain multiple instances of IModelLayoutDisplayer
Namespace: LemonEdge.Client.UI.API.Layouts
Assembly: LemonEdge.Client.UI.API.dll
Syntax
public interface IModelLayoutHostController : IController
Properties
ActiveLayout
The currently active layout the user is interacting with in this Displayer
Declaration
IModelLayoutDisplayer ActiveLayout { get; }
Property Value
Type | Description |
---|---|
IModelLayoutDisplayer |
ActiveNonToolWindowLayout
The currently active layout that is a tool window that the user is interacting with in this Displayer
Declaration
IModelLayoutDisplayer? ActiveNonToolWindowLayout { get; }
Property Value
Type | Description |
---|---|
IModelLayoutDisplayer |
Displayer
The ui in the client application that hosts multiple instances of a IModelLayoutDisplayer
Declaration
IModelLayoutHost Displayer { get; }
Property Value
Type | Description |
---|---|
IModelLayoutHost |
Layouts
All the current loaded layouts hosted within the Displayer
Declaration
IEnumerable<IModelLayoutDisplayer> Layouts { get; }
Property Value
Type | Description |
---|---|
IEnumerable<IModelLayoutDisplayer> |
NonToolWindowLayouts
All the layouts hosted within the Displayer that are not tool windows (that operate on the active layout and are identified as having a MainDisplayedItem of type DisplayableItemDescriptorForToolWindow)
Declaration
IEnumerable<IModelLayoutDisplayer> NonToolWindowLayouts { get; }
Property Value
Type | Description |
---|---|
IEnumerable<IModelLayoutDisplayer> |
Methods
Clear()
Provides any inheriting classes an opportunity to clear the LemonEdge.Client.Core.Views.Core.ModelLayoutHostController.Displayer. Typically disposes of any main menu commands
Declaration
void Clear()
CloseLayout(IModelLayoutDisplayer, bool)
Closes the specified layout, removes it from the ModelLayoutHostController.Displayer, disposes of it and return true if the layout was removed
If silent
is false, and the layout has pending changes within its context then this will first prompt the user to continue, save or cancel. If the user selects cancel or
the save fails then false is returned.
Declaration
Task<bool> CloseLayout(IModelLayoutDisplayer layout, bool silent = false)
Parameters
Type | Name | Description |
---|---|---|
IModelLayoutDisplayer | layout | The layout to be closed, and removed from the LemonEdge.Client.Core.Views.Core.ModelLayoutHostController |
bool | silent | If true means any pending changes should be ignored and disposed. If false and the layout has pending changes then it will prompt the user what to do before closing the layout |
Returns
Type | Description |
---|---|
Task<bool> | True if the layout was closed, or false if the user cancelled or a save failed |
GetDescriptorsWithLayouts()
Gets the list of descriptors
Declaration
Task<IEnumerable<Guid>> GetDescriptorsWithLayouts()
Returns
Type | Description |
---|---|
Task<IEnumerable<Guid>> |
IsToolWindowLayout(IModelLayoutDisplayer)
Returns true if the specified layout is a tool window which operates on the active layout and has a MainDisplayedItem of type IDisplayableItemDescriptorForToolWindow
Declaration
bool IsToolWindowLayout(IModelLayoutDisplayer layout)
Parameters
Type | Name | Description |
---|---|---|
IModelLayoutDisplayer | layout | The layout to identify if it is a tool window or not |
Returns
Type | Description |
---|---|
bool | True if the specified layout is a tool window which operates on the active layout and has a MainDisplayedItem of type IDisplayableItemDescriptorForToolWindow |