using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using Tango.BL.Entities; using Tango.Integration.Operation; using Tango.Integration.ExternalBridge; namespace Tango.PPC.Common.Application { /// /// Represents the application manager. /// public interface IPPCApplicationManager { /// /// Occurs when the application has started. /// event EventHandler ApplicationStarted; /// /// Occurs when the application is ready and all modules are views are loaded. /// event EventHandler ApplicationReady; /// /// Occurs when the main window content has been rendered. /// event EventHandler ContentRendered; /// /// Occurs when all PPC modules are ready and initialized. /// event EventHandler ModulesInitialized; /// /// Occurs when machine setup is required. /// event EventHandler SetupRequired; /// /// Occurs when a system restart is required. /// event EventHandler SystemRestartRequired; /// /// Occurs when the updater utility has failed to perform the last update. /// event EventHandler UpdaterFailed; /// /// Occurs when the application has encountered an error when initializing. /// event EventHandler ApplicationInitializationError; /// /// Gets a value indicating whether the application is shutting down. /// bool IsShuttingDown { get; } /// /// Gets a value indicating whether the application is in technician mode. /// bool IsInTechnicianMode { get; } /// /// Gets a value indicating whether an update has occurred before the application started. /// bool IsAfterUpdate { get; } /// /// Gets a value indicating whether the updater utility has failed to perform the last update. /// bool IsUpdateFailed { get; } /// /// Shutdown the application. /// void ShutDown(); /// /// Restarts the application. /// void Restart(); /// /// Runs the updater utility and exits the application. /// void UpdateApplication(String updaterPath, String arguments); /// /// Enteres the application technician mode. /// void EnterTechnicianMode(bool displayNotification = true); /// /// Exits the application technician mode. /// void ExitTechnicianMode(); /// /// Gets the application version. /// Version Version { get; } /// /// Gets the firmware version. /// Version FirmwareVersion { get; } /// /// Gets the version tag. /// String VersionTag { get; } /// /// Gets the version and tag display. /// String VersionAndTag { get; } /// /// Gets the application build date. /// String BuildDate { get; } /// /// Gets the application startup date. /// DateTime StartUpDate { get; } /// /// Gets or sets the application folder. /// String StartPath { get; } /// /// Gets or sets a value indicating whether the screen is currently locked. /// bool IsScreenLocked { get; set; } /// /// Resets the screen lock timer. /// void ResetScreenLockTimer(); /// /// Invokes a dialog for entering a password and releasing the screen lock. /// void ReleaseScreenLock(); /// /// Sets the state of the main window. /// /// The state. void SetWindowState(WindowState state); } }