diff --git a/app/src/mainwindow2.cpp b/app/src/mainwindow2.cpp index 14a30edb34..8013771718 100644 --- a/app/src/mainwindow2.cpp +++ b/app/src/mainwindow2.cpp @@ -1003,7 +1003,15 @@ void MainWindow2::newObject() { auto object = new Object(); object->init(); - object->createDefaultLayers(); + + // default layers + object->addNewCameraLayer(); + object->addNewBitmapLayer(); + // Layers are counted bottom up + // 0 - Camera Layer + // 1 - Bitmap Layer + object->data()->setCurrentLayer(1); + mEditor->setObject(object); closeDialogs(); diff --git a/app/ui/filespage.ui b/app/ui/filespage.ui index 7a8e3146eb..37ac3af32e 100644 --- a/app/ui/filespage.ui +++ b/app/ui/filespage.ui @@ -6,8 +6,8 @@ 0 0 - 316 - 422 + 390 + 611 @@ -63,6 +63,9 @@ true + + startupGroup + @@ -73,6 +76,9 @@ false + + startupGroup + @@ -80,6 +86,9 @@ Load last active file + + startupGroup + @@ -110,7 +119,7 @@ 50 - 0 + 34 @@ -150,4 +159,7 @@ + + + diff --git a/core_lib/src/structure/object.cpp b/core_lib/src/structure/object.cpp index e7691667d7..6dacc80407 100644 --- a/core_lib/src/structure/object.cpp +++ b/core_lib/src/structure/object.cpp @@ -208,14 +208,6 @@ void Object::setWorkingDir(const QString& path) mWorkingDirPath = path; } -void Object::createDefaultLayers() -{ - // default layers - addNewCameraLayer(); - addNewVectorLayer(); - addNewBitmapLayer(); -} - int Object::getMaxLayerID() { int maxId = 0; diff --git a/core_lib/src/structure/object.h b/core_lib/src/structure/object.h index a338afa166..bfe1c63041 100644 --- a/core_lib/src/structure/object.h +++ b/core_lib/src/structure/object.h @@ -54,7 +54,6 @@ class Object final void createWorkingDir(); void deleteWorkingDir() const; void setWorkingDir(const QString& path); // used by crash recovery - void createDefaultLayers(); QString filePath() const { return mFilePath; } void setFilePath(const QString& strFileName) { mFilePath = strFileName; } diff --git a/core_lib/src/structure/objectdata.h b/core_lib/src/structure/objectdata.h index c321ad585c..6d9694bcb0 100644 --- a/core_lib/src/structure/objectdata.h +++ b/core_lib/src/structure/objectdata.h @@ -59,10 +59,7 @@ class ObjectData private: int mCurrentFrame = 1; QColor mCurrentColor{ 0, 0, 0, 255 }; - int mCurrentLayer = 2; // Layers are counted bottom up - // 0 - Camera Layer - // 1 - Vector Layer - // 2 - Bitmap Layer + int mCurrentLayer = 0; // view manager QTransform mCurrentView; diff --git a/tests/src/test_colormanager.cpp b/tests/src/test_colormanager.cpp index cf03f1047b..0fdc824569 100644 --- a/tests/src/test_colormanager.cpp +++ b/tests/src/test_colormanager.cpp @@ -52,7 +52,10 @@ TEST_CASE("ColorManager set color tests") layerMgr->init(); layerObj->init(); - layerObj->createDefaultLayers(); // 0 = camera, 1 = vector, 2 = bitmap + // 0 = camera, 1 = vector, 2 = bitmap + layerObj->addNewCameraLayer(); + layerObj->addNewVectorLayer(); + layerObj->addNewBitmapLayer(); SECTION("setColor non vector layer") diff --git a/tests/src/test_filemanager.cpp b/tests/src/test_filemanager.cpp index 85c410caf7..36b57875af 100644 --- a/tests/src/test_filemanager.cpp +++ b/tests/src/test_filemanager.cpp @@ -309,7 +309,9 @@ TEST_CASE("FileManager File-saving") // 1. create a animation with one red frame & save it Object* o1 = new Object; o1->init(); - o1->createDefaultLayers(); + o1->addNewCameraLayer(); + o1->addNewVectorLayer(); + o1->addNewBitmapLayer(); LayerBitmap* layer = dynamic_cast(o1->getLayer(2)); REQUIRE(layer->addNewKeyFrameAt(2)); @@ -350,7 +352,9 @@ TEST_CASE("FileManager File-saving") // 1. Create a animation with 150 frames & save it Object* o1 = new Object; o1->init(); - o1->createDefaultLayers(); + o1->addNewCameraLayer(); + o1->addNewVectorLayer(); + o1->addNewBitmapLayer(); LayerBitmap* layer = dynamic_cast(o1->getLayer(2)); for (int i = 100; i < 150; ++i) diff --git a/tests/src/test_layermanager.cpp b/tests/src/test_layermanager.cpp index 70a3058ae7..9cd717d9b2 100644 --- a/tests/src/test_layermanager.cpp +++ b/tests/src/test_layermanager.cpp @@ -32,10 +32,12 @@ TEST_CASE("LayerManager::init()") LayerManager* layerMgr = new LayerManager(editor); layerMgr->init(); - object->init(); - object->createDefaultLayers(); // create default 3 layers + object->init(); + object->addNewCameraLayer(); + object->addNewVectorLayer(); + object->addNewBitmapLayer(); REQUIRE(layerMgr->count() == 3); - REQUIRE(layerMgr->currentLayerIndex() == 2); + REQUIRE(layerMgr->currentLayerIndex() == 0); REQUIRE(layerMgr->getLayer(0)->type() == Layer::CAMERA); REQUIRE(layerMgr->getLayer(1)->type() == Layer::VECTOR); REQUIRE(layerMgr->getLayer(2)->type() == Layer::BITMAP);