diff --git a/ApplicationView/MainApplicationWidget.cs b/ApplicationView/MainApplicationWidget.cs
index 32ff21012..f4b10355b 100644
--- a/ApplicationView/MainApplicationWidget.cs
+++ b/ApplicationView/MainApplicationWidget.cs
@@ -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
diff --git a/DataStorage/Datastore.cs b/DataStorage/Datastore.cs
index 0a729c47f..361a8a2eb 100644
--- a/DataStorage/Datastore.cs
+++ b/DataStorage/Datastore.cs
@@ -53,6 +53,19 @@ namespace MatterHackers.MatterControl.DataStorage
}
}
+ ///
+ /// Returns the application temp data folder
+ ///
+ ///
+ public string ApplicationTempDataPath
+ {
+ get
+ {
+ return Path.Combine(Environment.GetFolderPath(System.Environment.SpecialFolder.LocalApplicationData), applicationDataFolderName,"data", "temp");
+ }
+ }
+
+
public string ApplicationLibraryDataPath
{
get
diff --git a/MatterControl.sln b/MatterControl.sln
index 99ae1a34e..c31aa7358 100644
--- a/MatterControl.sln
+++ b/MatterControl.sln
@@ -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
diff --git a/MatterControlApplication.cs b/MatterControlApplication.cs
index e7f0c8ec3..103c75b6f 100644
--- a/MatterControlApplication.cs
+++ b/MatterControlApplication.cs
@@ -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;