Added generic OnClosed event to application (for plugins).

Added temp folder to defined data paths.
This commit is contained in:
kevinepope 2014-12-18 17:15:07 -08:00
parent fe65590ff5
commit 39f168c2d9
4 changed files with 49 additions and 6 deletions

View file

@ -235,6 +235,7 @@ namespace MatterHackers.MatterControl
public SlicePresetsWindow EditQualityPresetsWindow{ get; set;}
public ApplicationView MainView;
public event EventHandler ApplicationClosed;
event EventHandler unregisterEvents;
public bool WidescreenMode { get; set; }
@ -263,6 +264,14 @@ namespace MatterHackers.MatterControl
}
public void OnApplicationClosed()
{
if (ApplicationClosed != null)
{
ApplicationClosed(null, null);
}
}
public static ApplicationController Instance
{
get

View file

@ -53,6 +53,19 @@ namespace MatterHackers.MatterControl.DataStorage
}
}
/// <summary>
/// Returns the application temp data folder
/// </summary>
/// <returns></returns>
public string ApplicationTempDataPath
{
get
{
return Path.Combine(Environment.GetFolderPath(System.Environment.SpecialFolder.LocalApplicationData), applicationDataFolderName,"data", "temp");
}
}
public string ApplicationLibraryDataPath
{
get

View file

@ -1,6 +1,6 @@

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MatterControl", "MatterControl.csproj", "{0B8D6F56-BD7F-4426-B858-D9292B084656}"
ProjectSection(ProjectDependencies) = postProject
{F67AE800-B0C7-42A8-836F-597B4E74591C} = {F67AE800-B0C7-42A8-836F-597B4E74591C}
@ -95,6 +95,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "agg-sharp", "agg-sharp", "{
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "InfInstaller", "PrinterDriverInstaller\InfInstaller.csproj", "{990A9AD3-B6A4-407B-9DFC-9C722AF7C9B9}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Nat", "..\Mono.Nat\src\Mono.Nat\Mono.Nat.csproj", "{F5D74163-145F-47BF-83DC-D0E07249C6CA}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@ -647,12 +649,27 @@ Global
{990A9AD3-B6A4-407B-9DFC-9C722AF7C9B9}.Release64|x64.ActiveCfg = Release64|x64
{990A9AD3-B6A4-407B-9DFC-9C722AF7C9B9}.Release64|x64.Build.0 = Release64|x64
{990A9AD3-B6A4-407B-9DFC-9C722AF7C9B9}.Release64|x86.ActiveCfg = Release64|Any CPU
{F5D74163-145F-47BF-83DC-D0E07249C6CA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F5D74163-145F-47BF-83DC-D0E07249C6CA}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F5D74163-145F-47BF-83DC-D0E07249C6CA}.Debug|x64.ActiveCfg = Debug|Any CPU
{F5D74163-145F-47BF-83DC-D0E07249C6CA}.Debug|x86.ActiveCfg = Debug|Any CPU
{F5D74163-145F-47BF-83DC-D0E07249C6CA}.Debug64|Any CPU.ActiveCfg = Debug|Any CPU
{F5D74163-145F-47BF-83DC-D0E07249C6CA}.Debug64|Any CPU.Build.0 = Debug|Any CPU
{F5D74163-145F-47BF-83DC-D0E07249C6CA}.Debug64|x64.ActiveCfg = Debug|Any CPU
{F5D74163-145F-47BF-83DC-D0E07249C6CA}.Debug64|x86.ActiveCfg = Debug|Any CPU
{F5D74163-145F-47BF-83DC-D0E07249C6CA}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F5D74163-145F-47BF-83DC-D0E07249C6CA}.Release|Any CPU.Build.0 = Release|Any CPU
{F5D74163-145F-47BF-83DC-D0E07249C6CA}.Release|x64.ActiveCfg = Release|Any CPU
{F5D74163-145F-47BF-83DC-D0E07249C6CA}.Release|x86.ActiveCfg = Release|Any CPU
{F5D74163-145F-47BF-83DC-D0E07249C6CA}.Release64|Any CPU.ActiveCfg = Release|Any CPU
{F5D74163-145F-47BF-83DC-D0E07249C6CA}.Release64|Any CPU.Build.0 = Release|Any CPU
{F5D74163-145F-47BF-83DC-D0E07249C6CA}.Release64|x64.ActiveCfg = Release|Any CPU
{F5D74163-145F-47BF-83DC-D0E07249C6CA}.Release64|x86.ActiveCfg = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{AE37DE1F-22F7-49EE-8732-FC6BC8DC58D9} = {2AB9B589-5C98-4C05-BBEA-F97DAE168EAB}
{670BDDFF-927B-425D-9DD1-22ACB14356EB} = {2AB9B589-5C98-4C05-BBEA-F97DAE168EAB}
{D3E41B4E-BFBB-44CA-94C8-95C00F754FDD} = {2AB9B589-5C98-4C05-BBEA-F97DAE168EAB}
{545B6912-77FF-4B34-BA76-6C3D6A32BE6A} = {2AB9B589-5C98-4C05-BBEA-F97DAE168EAB}
@ -668,13 +685,15 @@ Global
{036BCCBA-52D8-457C-84AE-8821F209FE4A} = {2AB9B589-5C98-4C05-BBEA-F97DAE168EAB}
{9B062971-A88E-4A3D-B3C9-12B78D15FA66} = {2AB9B589-5C98-4C05-BBEA-F97DAE168EAB}
{DF6845CD-64C6-4263-8357-DA8066855739} = {2AB9B589-5C98-4C05-BBEA-F97DAE168EAB}
{291CD87C-2C58-4369-9D85-238C7EB31542} = {DA2BE4E5-5FB2-4C74-9170-0D2513AAFC84}
{A526DC5D-65F3-461B-805F-D3AC9665F5C9} = {2AB9B589-5C98-4C05-BBEA-F97DAE168EAB}
{3E4AABA8-D85F-4922-88C6-5C1B2D2308FB} = {2AB9B589-5C98-4C05-BBEA-F97DAE168EAB}
{AE37DE1F-22F7-49EE-8732-FC6BC8DC58D9} = {2AB9B589-5C98-4C05-BBEA-F97DAE168EAB}
{291CD87C-2C58-4369-9D85-238C7EB31542} = {DA2BE4E5-5FB2-4C74-9170-0D2513AAFC84}
{F49EC1DD-D645-4709-8667-B57318AF67B0} = {DA2BE4E5-5FB2-4C74-9170-0D2513AAFC84}
{239CC6B1-537C-4998-9AA9-3372A3464498} = {DA2BE4E5-5FB2-4C74-9170-0D2513AAFC84}
{BEC6FD13-C765-4B90-836B-53823AC12E20} = {DA2BE4E5-5FB2-4C74-9170-0D2513AAFC84}
{3E4AABA8-D85F-4922-88C6-5C1B2D2308FB} = {2AB9B589-5C98-4C05-BBEA-F97DAE168EAB}
{6782BF37-8139-4DC6-885E-98D22D1FB258} = {DA2BE4E5-5FB2-4C74-9170-0D2513AAFC84}
{F5D74163-145F-47BF-83DC-D0E07249C6CA} = {DA2BE4E5-5FB2-4C74-9170-0D2513AAFC84}
EndGlobalSection
GlobalSection(MonoDevelopProperties) = preSolution
StartupItem = MatterControl.csproj

View file

@ -57,7 +57,7 @@ namespace MatterHackers.MatterControl
bool firstDraw = true;
bool ShowMemoryUsed = false;
bool DoCGCollectEveryDraw = false;
public bool RestartOnClose = false;
public bool RestartOnClose = false;
static readonly Vector2 minSize = new Vector2(600, 600);
@ -373,6 +373,8 @@ namespace MatterHackers.MatterControl
Datastore.Instance.Exit();
PrinterConnectionAndCommunication.Instance.HaltConnectionThread();
SlicingQueue.Instance.ShutDownSlicingThread();
ApplicationController.Instance.OnApplicationClosed();
if (RestartOnClose)
{
string appPathAndFile = System.Reflection.Assembly.GetExecutingAssembly().Location;