diff --git a/src/Editor/CStartWindow.ui b/src/Editor/CStartWindow.ui
index 9bff275e..c26dab3b 100644
--- a/src/Editor/CStartWindow.ui
+++ b/src/Editor/CStartWindow.ui
@@ -221,7 +221,6 @@
File
-
diff --git a/src/Editor/Icons.qrc b/src/Editor/Icons.qrc
index dc238584..ff679534 100644
--- a/src/Editor/Icons.qrc
+++ b/src/Editor/Icons.qrc
@@ -31,5 +31,10 @@
icons/POI Important.png
icons/POI Normal.png
icons/AppIcon.ico
+ icons/New.png
+ icons/Open.png
+ icons/Redo.png
+ icons/Save.png
+ icons/Undo.png
diff --git a/src/Editor/WorldEditor/CWorldEditor.cpp b/src/Editor/WorldEditor/CWorldEditor.cpp
index 51597f50..40488bfa 100644
--- a/src/Editor/WorldEditor/CWorldEditor.cpp
+++ b/src/Editor/WorldEditor/CWorldEditor.cpp
@@ -59,10 +59,19 @@ CWorldEditor::CWorldEditor(QWidget *parent) :
ui->menuEdit->insertActions(ui->ActionSelectAll, mUndoActions);
ui->menuEdit->insertSeparator(ui->ActionSelectAll);
- // Initialize offscreen actions
+ // Initialize actions
addAction(ui->ActionIncrementGizmo);
addAction(ui->ActionDecrementGizmo);
+ QAction *pToolBarUndo = mUndoStack.createUndoAction(this);
+ pToolBarUndo->setIcon(QIcon(":/icons/Undo.png"));
+ ui->MainToolBar->insertAction(ui->ActionLink, pToolBarUndo);
+
+ QAction *pToolBarRedo = mUndoStack.createRedoAction(this);
+ pToolBarRedo->setIcon(QIcon(":/icons/Redo.png"));
+ ui->MainToolBar->insertAction(ui->ActionLink, pToolBarRedo);
+ ui->MainToolBar->insertSeparator(ui->ActionLink);
+
// Connect signals and slots
connect(ui->MainViewport, SIGNAL(ViewportClick(SRayIntersection,QMouseEvent*)), this, SLOT(OnViewportClick(SRayIntersection,QMouseEvent*)));
connect(ui->MainViewport, SIGNAL(InputProcessed(SRayIntersection,QMouseEvent*)), this, SLOT(OnViewportInputProcessed(SRayIntersection,QMouseEvent*)));
@@ -85,8 +94,6 @@ CWorldEditor::CWorldEditor(QWidget *parent) :
ui->CreateTabEditorProperties->SyncToEditor(this);
ui->ModifyTabEditorProperties->SyncToEditor(this);
ui->InstancesTabEditorProperties->SyncToEditor(this);
- ui->DisplayTabEditorProperties->SyncToEditor(this);
- ui->WorldTabEditorProperties->SyncToEditor(this);
}
CWorldEditor::~CWorldEditor()
@@ -155,21 +162,13 @@ void CWorldEditor::SetArea(CWorld *pWorld, CGameArea *pArea, u32 AreaIndex)
UpdateCameraOrbit();
// Default bloom to Fake Bloom for Metroid Prime 3; disable for other games
- if (mpWorld->Version() == eCorruption)
- {
- ui->menuBloom->setVisible(true);
- on_ActionFakeBloom_triggered();
- }
-
- else
- {
- ui->menuBloom->setVisible(false);
- on_ActionNoBloom_triggered();
- }
+ bool AllowBloom = (mpWorld->Version() == eCorruptionProto || mpWorld->Version() == eCorruption);
+ AllowBloom ? on_ActionFakeBloom_triggered() : on_ActionNoBloom_triggered();
+ ui->menuBloom->setEnabled(AllowBloom);
// Disable EGMC editing for Prime 1 and DKCR
bool AllowEGMC = ( (mpWorld->Version() >= eEchoesDemo) && (mpWorld->Version() <= eCorruption) );
- ui->ActionEditPoiToWorldMap->setVisible(AllowEGMC);
+ ui->ActionEditPoiToWorldMap->setEnabled(AllowEGMC);
// Set up sidebar tabs
CMasterTemplate *pMaster = CMasterTemplate::GetMasterForGame(mpArea->Version());
diff --git a/src/Editor/WorldEditor/CWorldEditor.ui b/src/Editor/WorldEditor/CWorldEditor.ui
index 321bd541..c4f0ed4c 100644
--- a/src/Editor/WorldEditor/CWorldEditor.ui
+++ b/src/Editor/WorldEditor/CWorldEditor.ui
@@ -370,95 +370,37 @@
-
-
-
- :/icons/Display.png:/icons/Display.png
-
-
-
-
-
- Display
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
- -
-
-
- -
-
-
- Qt::Vertical
-
-
-
- 20
- 40
-
-
-
-
-
-
-
-
-
- :/icons/World.png:/icons/World.png
-
-
-
-
-
- World
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
- -
-
-
- -
-
-
- Qt::Vertical
-
-
-
- 20
- 40
-
-
-
-
-
-
+
+
+
+ Qt::NoContextMenu
+
+
+ toolBar
+
+
+
+ 32
+ 32
+
+
+
+ TopToolBarArea
+
+
+ false
+
+
+
+
+
+
+
-
-
-
-
-
- Qt::NoContextMenu
-
-
- toolBar_2
-
-
- false
-
-
- TopToolBarArea
-
-
- false
-
-
-
-
-
-
- Qt::NoContextMenu
-
-
- toolBar
-
-
-
- 32
- 32
-
-
-
- TopToolBarArea
-
-
- true
-
-
-
-
@@ -592,9 +477,16 @@
+
+
+ :/icons/Save.png:/icons/Save.png
+
Save
+
+ Ctrl+S
+
diff --git a/src/Editor/icons/Create.png b/src/Editor/icons/Create.png
index 57449b93..6d08249c 100644
Binary files a/src/Editor/icons/Create.png and b/src/Editor/icons/Create.png differ
diff --git a/src/Editor/icons/Display.png b/src/Editor/icons/Display.png
index e2c860d5..cb6924f5 100644
Binary files a/src/Editor/icons/Display.png and b/src/Editor/icons/Display.png differ
diff --git a/src/Editor/icons/Instances.png b/src/Editor/icons/Instances.png
index 25b9ff49..a3130e00 100644
Binary files a/src/Editor/icons/Instances.png and b/src/Editor/icons/Instances.png differ
diff --git a/src/Editor/icons/Modify.png b/src/Editor/icons/Modify.png
index 21237b50..c87679b6 100644
Binary files a/src/Editor/icons/Modify.png and b/src/Editor/icons/Modify.png differ
diff --git a/src/Editor/icons/New.png b/src/Editor/icons/New.png
new file mode 100644
index 00000000..fad7cba0
Binary files /dev/null and b/src/Editor/icons/New.png differ
diff --git a/src/Editor/icons/Open.png b/src/Editor/icons/Open.png
new file mode 100644
index 00000000..46b466ba
Binary files /dev/null and b/src/Editor/icons/Open.png differ
diff --git a/src/Editor/icons/Redo.png b/src/Editor/icons/Redo.png
new file mode 100644
index 00000000..9904f8db
Binary files /dev/null and b/src/Editor/icons/Redo.png differ
diff --git a/src/Editor/icons/Save.png b/src/Editor/icons/Save.png
new file mode 100644
index 00000000..44a9d7d0
Binary files /dev/null and b/src/Editor/icons/Save.png differ
diff --git a/src/Editor/icons/Undo.png b/src/Editor/icons/Undo.png
new file mode 100644
index 00000000..c11ce811
Binary files /dev/null and b/src/Editor/icons/Undo.png differ
diff --git a/src/Editor/icons/World.png b/src/Editor/icons/World.png
index 5be3fed2..42412975 100644
Binary files a/src/Editor/icons/World.png and b/src/Editor/icons/World.png differ