Browse Source

Build improvements

Josh Engebretson 10 years ago
parent
commit
958fa17c05

+ 10 - 4
Data/AtomicEditor/Resources/EditorData/AtomicEditor/editor/ui/buildsettings.tb.txt

@@ -1,14 +1,20 @@
 TBLayout: axis: y, distribution: gravity, position: left
 TBLayout: axis: y, distribution: gravity, position: left
-	TBLayout: position: top
-		TBLayout: id: platformcontainer, axis: y, position: left, gravity: top bottom
-			lp: min-width: 160
+	lp: min-height: 512
+	TBLayout: distribution: gravity, position: top
+		TBLayout: id: platformcontainer
 		TBLayout: id: settingscontainer
 		TBLayout: id: settingscontainer
 	TBSeparator: gravity: left right, skin: AESeparator
 	TBSeparator: gravity: left right, skin: AESeparator
 	TBLayout: distribution: gravity
 	TBLayout: distribution: gravity
-		TBLayout: axis: y, position: left, gravity: top left
+		TBLayout: axis: y
 			TBButton: text: "Set Current Platform", id: set_current_platform
 			TBButton: text: "Set Current Platform", id: set_current_platform
+				lp: min-height: 42
 				TBSkinImage: skin: LogoAtomic64, id: current_platform_indicator
 				TBSkinImage: skin: LogoAtomic64, id: current_platform_indicator
 					lp: height: 28, width: 28
 					lp: height: 28, width: 28
+		TBLayout:
+			TBButton: text: Build, id: build
+				lp: min-height: 42, min-width: 84
 		TBLayout:
 		TBLayout:
 			TBButton: text: Ok, id: ok
 			TBButton: text: Ok, id: ok
+				lp: min-height: 42, min-width: 64
 			TBButton: text: Cancel, id: cancel
 			TBButton: text: Cancel, id: cancel
+				lp: min-height: 42, min-width: 64

+ 6 - 1
Source/AtomicEditor/Source/Build/BuildAndroid.cpp

@@ -318,7 +318,8 @@ void BuildAndroid::Build(const String& buildPath)
     Editor* editor = GetSubsystem<Editor>();
     Editor* editor = GetSubsystem<Editor>();
     Project* project = editor->GetProject();
     Project* project = editor->GetProject();
 
 
-    buildPath_ = buildPath;
+    buildPath_ = buildPath + "/Android-Build";
+
     androidSDKPath_ = editor->GetPreferences()->GetAndroidSDKPath();
     androidSDKPath_ = editor->GetPreferences()->GetAndroidSDKPath();
 
 
 #ifdef ATOMIC_PLATFORM_OSX
 #ifdef ATOMIC_PLATFORM_OSX
@@ -343,6 +344,10 @@ void BuildAndroid::Build(const String& buildPath)
 
 
     FileSystem* fileSystem = GetSubsystem<FileSystem>();
     FileSystem* fileSystem = GetSubsystem<FileSystem>();
 
 
+    if (fileSystem->DirExists(buildPath_))
+        fileSystem->RemoveDir(buildPath_, true);
+
+
 #ifdef ATOMIC_PLATFORM_OSX
 #ifdef ATOMIC_PLATFORM_OSX
     String buildSourceDir = fileSystem->GetAppBundleResourceFolder();
     String buildSourceDir = fileSystem->GetAppBundleResourceFolder();
 #else
 #else

+ 4 - 1
Source/AtomicEditor/Source/Build/BuildIOS.cpp

@@ -280,11 +280,14 @@ void BuildIOS::RunDeploy()
 
 
 void BuildIOS::Build(const String& buildPath)
 void BuildIOS::Build(const String& buildPath)
 {
 {
-    buildPath_ = buildPath;
+    buildPath_ = buildPath + "/IOS-Build";
 
 
     Initialize();
     Initialize();
 
 
     FileSystem* fileSystem = GetSubsystem<FileSystem>();
     FileSystem* fileSystem = GetSubsystem<FileSystem>();
+    if (fileSystem->DirExists(buildPath_))
+        fileSystem->RemoveDir(buildPath_, true);
+
 
 
  #ifdef ATOMIC_PLATFORM_WINDOWS
  #ifdef ATOMIC_PLATFORM_WINDOWS
     String buildSourceDir = fileSystem->GetProgramDir();
     String buildSourceDir = fileSystem->GetProgramDir();

+ 3 - 1
Source/AtomicEditor/Source/Build/BuildMac.cpp

@@ -51,11 +51,13 @@ void BuildMac::Initialize()
 
 
 void BuildMac::Build(const String& buildPath)
 void BuildMac::Build(const String& buildPath)
 {
 {
-    buildPath_ = buildPath;
+    buildPath_ = buildPath + "/Mac-Build";
 
 
     Initialize();
     Initialize();
 
 
     FileSystem* fileSystem = GetSubsystem<FileSystem>();
     FileSystem* fileSystem = GetSubsystem<FileSystem>();
+    if (fileSystem->DirExists(buildPath_))
+        fileSystem->RemoveDir(buildPath_, true);
 
 
  #ifdef ATOMIC_PLATFORM_WINDOWS
  #ifdef ATOMIC_PLATFORM_WINDOWS
     String buildSourceDir = fileSystem->GetProgramDir();
     String buildSourceDir = fileSystem->GetProgramDir();

+ 4 - 1
Source/AtomicEditor/Source/Build/BuildWeb.cpp

@@ -46,11 +46,14 @@ void BuildWeb::Initialize()
 }
 }
 void BuildWeb::Build(const String& buildPath)
 void BuildWeb::Build(const String& buildPath)
 {
 {
-    buildPath_ = buildPath;
+    buildPath_ = buildPath + "/Web-Build";
 
 
     Initialize();
     Initialize();
 
 
     FileSystem* fileSystem = GetSubsystem<FileSystem>();
     FileSystem* fileSystem = GetSubsystem<FileSystem>();
+    if (fileSystem->DirExists(buildPath_))
+        fileSystem->RemoveDir(buildPath_, true);
+
     String buildSourceDir = fileSystem->GetAppBundleResourceFolder();
     String buildSourceDir = fileSystem->GetAppBundleResourceFolder();
     buildSourceDir += "Deployment/Web";
     buildSourceDir += "Deployment/Web";
 
 

+ 4 - 1
Source/AtomicEditor/Source/Build/BuildWindows.cpp

@@ -52,11 +52,14 @@ void BuildWindows::Initialize()
 
 
 void BuildWindows::Build(const String& buildPath)
 void BuildWindows::Build(const String& buildPath)
 {
 {
-    buildPath_ = buildPath;
+    buildPath_ = buildPath + "/Windows-Build";
 
 
     Initialize();
     Initialize();
 
 
     FileSystem* fileSystem = GetSubsystem<FileSystem>();
     FileSystem* fileSystem = GetSubsystem<FileSystem>();
+    if (fileSystem->DirExists(buildPath_))
+        fileSystem->RemoveDir(buildPath_, true);
+
 #ifdef ATOMIC_PLATFORM_WINDOWS
 #ifdef ATOMIC_PLATFORM_WINDOWS
     String buildSourceDir = fileSystem->GetProgramDir();
     String buildSourceDir = fileSystem->GetProgramDir();
 #else
 #else

+ 22 - 2
Source/AtomicEditor/Source/UI/Modal/UIBuildSettings.cpp

@@ -46,6 +46,8 @@ UIBuildSettings::UIBuildSettings(Context* context):
     platformSelect_->SetSource(&platformSource_);
     platformSelect_->SetSource(&platformSource_);
     LayoutParams lp;
     LayoutParams lp;
     lp.min_h = 370;
     lp.min_h = 370;
+    lp.max_h = 370;
+    lp.min_w = 160;
     platformSelect_->SetLayoutParams(lp);
     platformSelect_->SetLayoutParams(lp);
     platformSelect_->SetGravity(WIDGET_GRAVITY_ALL);
     platformSelect_->SetGravity(WIDGET_GRAVITY_ALL);
 
 
@@ -78,6 +80,8 @@ UIBuildSettings::UIBuildSettings(Context* context):
     platformIndicator_ = delegate_->GetWidgetByIDAndType<TBSkinImage>(TBIDC("current_platform_indicator"));
     platformIndicator_ = delegate_->GetWidgetByIDAndType<TBSkinImage>(TBIDC("current_platform_indicator"));
     assert(platformIndicator_);
     assert(platformIndicator_);
 
 
+    RefreshSettings();
+
     Editor* editor = GetSubsystem<Editor>();
     Editor* editor = GetSubsystem<Editor>();
     AEEditorPlatform platform = editor->GetCurrentPlatform();
     AEEditorPlatform platform = editor->GetCurrentPlatform();
     UpdateCurrentPlatform(platform);
     UpdateCurrentPlatform(platform);
@@ -238,6 +242,15 @@ void UIBuildSettings::RequestPlatformChange(TBID id)
     editor->RequestPlatformChange(platform);
     editor->RequestPlatformChange(platform);
 }
 }
 
 
+void UIBuildSettings::RefreshSettings()
+{
+    androidSettings_->Refresh();
+    iosSettings_->Refresh();
+    macSettings_->Refresh();
+    windowsSettings_->Refresh();
+    webSettings_->Refresh();
+}
+
 void UIBuildSettings::StoreSettings()
 void UIBuildSettings::StoreSettings()
 {
 {
     androidSettings_->StoreSettings();
     androidSettings_->StoreSettings();
@@ -309,8 +322,15 @@ bool UIBuildSettings::OnEvent(const TBWidgetEvent &ev)
             ops->Hide();
             ops->Hide();
             return true;
             return true;
         }
         }
-
-        if (ev.target->GetID() == TBIDC("cancel"))
+        else if (ev.target->GetID() == TBIDC("build"))
+        {
+            StoreSettings();
+            SharedPtr<UIBuildSettings> keepAlive(this);
+            ops->Hide();
+            ops->ShowBuild();
+            return true;
+        }
+        else if (ev.target->GetID() == TBIDC("cancel"))
         {
         {
             ops->Hide();
             ops->Hide();
             return true;
             return true;

+ 2 - 0
Source/AtomicEditor/Source/UI/Modal/UIBuildSettings.h

@@ -46,6 +46,8 @@ private:
 
 
     void StoreSettings();
     void StoreSettings();
 
 
+    void RefreshSettings();
+
     void UpdateCurrentPlatform(AEEditorPlatform platform);
     void UpdateCurrentPlatform(AEEditorPlatform platform);
     void RequestPlatformChange(TBID id);
     void RequestPlatformChange(TBID id);
 
 

+ 6 - 0
Source/AtomicEditor/Source/UI/Modal/UIProgramOutput.cpp

@@ -74,6 +74,12 @@ bool UIProgramOutput::OnEvent(const TBWidgetEvent &ev)
             return true;
             return true;
         }
         }
 
 
+        if (ev.target->GetID() == TBIDC("ok"))
+        {
+            ops->Hide();
+            return true;
+        }
+
         if (ev.target->GetID() == TBIDC("cancel"))
         if (ev.target->GetID() == TBIDC("cancel"))
         {
         {
             ops->Hide();
             ops->Hide();