2017-07-14 10:28:59 +02:00
|
|
|
|
/*
|
|
|
|
|
* Copyright (c) 2017 ETH Zürich, Educational Development and Technology (LET)
|
|
|
|
|
*
|
|
|
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
|
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
|
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
using System;
|
|
|
|
|
using SafeExamBrowser.Contracts.Configuration;
|
2017-07-24 17:31:28 +02:00
|
|
|
|
using SafeExamBrowser.Contracts.UserInterface;
|
2017-07-14 10:28:59 +02:00
|
|
|
|
|
|
|
|
|
namespace SafeExamBrowser.Browser
|
|
|
|
|
{
|
|
|
|
|
public class BrowserApplicationInstance : IApplicationInstance
|
|
|
|
|
{
|
|
|
|
|
public Guid Id { get; private set; }
|
|
|
|
|
public string Name { get; private set; }
|
2017-07-24 17:31:28 +02:00
|
|
|
|
public IWindow Window { get; private set; }
|
2017-07-14 10:28:59 +02:00
|
|
|
|
|
2017-07-28 09:12:17 +02:00
|
|
|
|
public event TerminationEventHandler OnTerminated;
|
|
|
|
|
|
2017-07-14 10:28:59 +02:00
|
|
|
|
public BrowserApplicationInstance(string name)
|
|
|
|
|
{
|
|
|
|
|
Id = Guid.NewGuid();
|
|
|
|
|
Name = name;
|
|
|
|
|
}
|
2017-07-24 17:31:28 +02:00
|
|
|
|
|
|
|
|
|
public void RegisterWindow(IWindow window)
|
|
|
|
|
{
|
|
|
|
|
Window = window;
|
2017-07-28 09:12:17 +02:00
|
|
|
|
Window.OnClose += () => OnTerminated?.Invoke(Id);
|
2017-07-24 17:31:28 +02:00
|
|
|
|
}
|
2017-07-14 10:28:59 +02:00
|
|
|
|
}
|
|
|
|
|
}
|