Просмотр исходного кода

Win export, fixed windows stuff

Ivan Safrin 13 лет назад
Родитель
Сommit
7eecfd5d06

+ 2 - 0
IDE/Build/Windows/Polycode.vcxproj

@@ -15,6 +15,7 @@
     <ClCompile Include="..\..\Contents\Source\ExportProjectWindow.cpp" />
     <ClCompile Include="..\..\Contents\Source\NewFileWindow.cpp" />
     <ClCompile Include="..\..\Contents\Source\NewProjectWindow.cpp" />
+    <ClCompile Include="..\..\Contents\Source\PolycodeClipboard.cpp" />
     <ClCompile Include="..\..\Contents\Source\PolycodeConsole.cpp" />
     <ClCompile Include="..\..\Contents\Source\PolycodeEditor.cpp" />
     <ClCompile Include="..\..\Contents\Source\PolycodeEditorManager.cpp" />
@@ -42,6 +43,7 @@
     <ClInclude Include="..\..\Contents\Include\ExportProjectWindow.h" />
     <ClInclude Include="..\..\Contents\Include\NewFileWindow.h" />
     <ClInclude Include="..\..\Contents\Include\NewProjectWindow.h" />
+    <ClInclude Include="..\..\Contents\Include\PolycodeClipboard.h" />
     <ClInclude Include="..\..\Contents\Include\PolycodeConsole.h" />
     <ClInclude Include="..\..\Contents\Include\PolycodeEditor.h" />
     <ClInclude Include="..\..\Contents\Include\PolycodeEditorManager.h" />

+ 6 - 0
IDE/Build/Windows/Polycode.vcxproj.filters

@@ -84,6 +84,9 @@
     <ClCompile Include="main.cpp">
       <Filter>Source</Filter>
     </ClCompile>
+    <ClCompile Include="..\..\Contents\Source\PolycodeClipboard.cpp">
+      <Filter>Source</Filter>
+    </ClCompile>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\..\Contents\Include\ExampleBrowserWindow.h">
@@ -161,5 +164,8 @@
     <ClInclude Include="..\..\Contents\Include\ToolWindows.h">
       <Filter>Include</Filter>
     </ClInclude>
+    <ClInclude Include="..\..\Contents\Include\PolycodeClipboard.h">
+      <Filter>Include</Filter>
+    </ClInclude>
   </ItemGroup>
 </Project>

+ 1 - 1
IDE/Contents/Include/PolycodeEditor.h

@@ -44,7 +44,7 @@ public:
 	
 	virtual void saveFile(){};
 	
-	virtual String Copy(void **data) {}
+	virtual String Copy(void **data) { return ""; }
 	virtual void Paste(void *data, String clipboardType) {}
 
 	virtual void handleDroppedFile(OSFileEntry file, Number x, Number y) {};

+ 10 - 1
IDE/Contents/Source/PolycodeProjectManager.cpp

@@ -136,7 +136,7 @@ void PolycodeProjectManager::createNewProject(String templateFolder, String proj
 	openProject(projectLocation+"/"+projectName+"/"+projectName+".polyproject");	
 }
 
-void PolycodeProjectManager::exportProject(PolycodeProject *project, String exportPath, bool macOS, bool windows, bool _linux) {
+void PolycodeProjectManager::exportProject(PolycodeProject *project, String exportPath, bool macOS, bool windows, bool linux) {
 
 	String polycodeBasePath = CoreServices::getInstance()->getCore()->getDefaultWorkingDirectory();
 
@@ -163,6 +163,15 @@ void PolycodeProjectManager::exportProject(PolycodeProject *project, String expo
 		
 	}
 
+	if(windows) {
+		PolycodeConsole::print("Exporting Linux version to "+exportPath+"/Win \n");
+		CoreServices::getInstance()->getCore()->copyDiskItem(publishPath+"/Win", exportPath);
+		CoreServices::getInstance()->getCore()->copyDiskItem(publishPath+"/Win", exportPath);
+		CoreServices::getInstance()->getCore()->moveDiskItem(exportPath+"/Win/StandalonePlayer.exe", exportPath+"/Win/"+project->getProjectName()+".exe");
+		CoreServices::getInstance()->getCore()->removeDiskItem(exportPath+"/Win/main.polyapp");
+		CoreServices::getInstance()->getCore()->copyDiskItem(polyappPath, exportPath+"/Win/main.polyapp");
+	}
+
 	if(linux) {
 		PolycodeConsole::print("Exporting Linux version to "+exportPath+"/Linux \n");
 		CoreServices::getInstance()->getCore()->copyDiskItem(publishPath+"/Linux", exportPath);

+ 5 - 0
IDE/Contents/Source/PolycodeScreenEditor.cpp

@@ -1911,7 +1911,12 @@ void PolycodeScreenEditorMain::handleEvent(Event *event) {
 			{
 				if(firstMove) {
 					Core *core = CoreServices::getInstance()->getCore();
+
+#if (defined(__APPLE__) && defined(__MACH__)) || (defined(_WINDOWS))
+					if(core->getInput()->getKeyState(KEY_RCTRL) || core->getInput()->getKeyState(KEY_RCTRL)) {
+#else
 					if(core->getInput()->getKeyState(KEY_RCTRL) || core->getInput()->getKeyState(KEY_LCTRL)) {
+#endif
 						void *data;
 						String type = Copy(&data);
 						if(data) {