From 5fbdfc82989c5eff865ef3a10a47da8e5cf3dd7c Mon Sep 17 00:00:00 2001 From: parax0 Date: Sat, 20 Feb 2016 04:41:07 -0700 Subject: [PATCH] Added/updated some icons and made some UI changes - added/changed some UI actions and removed some UI elements that aren't being used --- src/Editor/CStartWindow.ui | 1 - src/Editor/Icons.qrc | 5 + src/Editor/WorldEditor/CWorldEditor.cpp | 29 ++-- src/Editor/WorldEditor/CWorldEditor.ui | 174 +++++------------------- src/Editor/icons/Create.png | Bin 3249 -> 3066 bytes src/Editor/icons/Display.png | Bin 3025 -> 2962 bytes src/Editor/icons/Instances.png | Bin 2932 -> 2913 bytes src/Editor/icons/Modify.png | Bin 3497 -> 3314 bytes src/Editor/icons/New.png | Bin 0 -> 2899 bytes src/Editor/icons/Open.png | Bin 0 -> 3022 bytes src/Editor/icons/Redo.png | Bin 0 -> 3215 bytes src/Editor/icons/Save.png | Bin 0 -> 3015 bytes src/Editor/icons/Undo.png | Bin 0 -> 3234 bytes src/Editor/icons/World.png | Bin 3617 -> 3408 bytes 14 files changed, 52 insertions(+), 157 deletions(-) create mode 100644 src/Editor/icons/New.png create mode 100644 src/Editor/icons/Open.png create mode 100644 src/Editor/icons/Redo.png create mode 100644 src/Editor/icons/Save.png create mode 100644 src/Editor/icons/Undo.png 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 + + + + + + + @@ -472,20 +414,8 @@ File - - - - Window - - - - - Models - - - Edit @@ -540,51 +470,6 @@ - - - - - - - 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 57449b93dd06c394f7663ad1c3542525e0dfe95b..6d08249c48bc6c91e8d34e5164a9dc3b66ecc46c 100644 GIT binary patch delta 359 zcmV-t0hs==8TuC?iBL{Q4GJ0x0000DNk~Le0000O0000O2nGNE0N{5$_^~0M3V$U@ zL_t(|+O(F>Zo)7O#($}D+~aVE-s$!%+m%UxG|s#WxkET_Z!_)O9dM=6Cay!pCs|eH z)PG|8b6wlEJQE%ugkU|t1RM}8hnuFkIViwRp3(Y2HF)1jlp5SbhP%-f^>CHw>P(dT z3FF^N2G)-hIfXCaBm^vv0NPi9%1_z5ltKQl1z2R|&L7E!8ksaS_%~bFI3N zN@{R4WN@5Q#?5AvO2GxR zfld*EN&=y0Vc!uOQ`F+~;{n_PH-DC-rq}`|;^TJ?C*&0FS_@ zj0fOI-q|-I3$%a>U?KMZs*F8g2N>n;16j`f1m`NMGN)B`05#y!u;d(>>wlFQz^<&$ z6jflq%m6lXB~U&P+1> zUs`db6_$Wg;0gE!K7f1RSajZvYzW;P$@LB#$S918jesnmoITqB5(Q++y`Y{kM=NwI z8Ufig$YhgyK_qks!mSNJDmuZWEom8N$562=%!XdKL@GJN9&K!bqlV_ hFS;$xyszg!0|1QVWyvauXNCX(002ovPDHLkV1fd2>oWiV diff --git a/src/Editor/icons/Display.png b/src/Editor/icons/Display.png index e2c860d5994da9342927c62a7646819167a4fff3..cb6924f5e4beaa9bada6f987ea3b655a54807ffb 100644 GIT binary patch delta 254 zcmV`ff+}0W}O~ zfSNHETM)qvZ)9L#U?dYaqM3y?4jL$MeZ%leMWYssPz&lQFs~k;1<#Q(%YQO4ETg@^ zWLu%04xMESmjcUU;qFB07*qoM6N<$ Ef?d{FegFUf delta 318 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 literal 0 HcmV?d00001 diff --git a/src/Editor/icons/Open.png b/src/Editor/icons/Open.png new file mode 100644 index 0000000000000000000000000000000000000000..46b466ba5bbc8ad456c63b4aa3c2ce26669edfbe GIT binary patch literal 3022 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 B{J;PJ literal 0 HcmV?d00001 diff --git a/src/Editor/icons/Save.png b/src/Editor/icons/Save.png new file mode 100644 index 0000000000000000000000000000000000000000..44a9d7d068f2f32972df4985f1bd5b3f82c49687 GIT binary patch literal 3015 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 delta 915 zcmV;E18n@z8lfB^iBL{Q4GJ0x0000DNk~Le0000W0000W2nGNE0CReJ^synH3V#Dk zNklNVg7>MLeEP9&QlL&DULYXbfeXa_j7E!cF zF$mgNL}gfF2HHh2%p~lgk%vls(==2@>|*gN4Ci3NJu_a!ti$lmaG6C1KBQpC-gb;%4JLd zI0bA5_5&kx*@2}%gC_3>N`V3O4eHECjq#(h4XQmLpMGI92-9}}*MKbjE`J1W0ttfcGLha>inJn zQ$QYYSA9Q#9AFiYVE81+mII8-c1ONb%B6s?J(Dm)AR|B#uo}1m>{PJ(^tr9vmOsEV zpj^4}N!S@cccdLSBwY)PiGN)709~@z0iD1XVAAlLl&uqZDBElK_6n=kn!|MmoLYZs z*^{NqmD!FsH(9JjN(Xf$rZfU)fNfqmkShJwvd2k}`(Vv+%g2#-(i^-2aJao$b)0Ce zaKc9b6P8b+u$rwoJehDUa09rmgjpnewi0R#_+?c=3=pp)Fc~sK^MB0vq2gfy?A5Jz z6v#CCTRiIDO)`afPe~ZIdBi?~57IHfX&|VJ=9{siK48d&iigzqQnv5%4GL?y>>s@X zXqDbA{aYpI+yiAwqM!>E2h~?*+y`C4KqYC;;TpgL>Ek+2duLL8Bw?C#uVIT9Ccu5K z0J?!Tt*Fw-ksj%EAAbRClzwmIS*0-BOcsn(1?QD)WlF+EgK%<1Fw<5QEK}YrF^DD| zxUH>E7Dk1i2T2&H0Zz)X*yzg^