mirror of
https://github.com/creyD/intelliphoto.git
synced 2026-04-14 12:20:32 +02:00
second fix
all kown bugs according to history, fixed
This commit is contained in:
@@ -103,6 +103,7 @@ void IntelliPhotoGui::slotCreateNewRasterLayer(){
|
||||
// Create New Layer
|
||||
if (ok1&&ok2) {
|
||||
paintingArea->addLayer(width,height,0,0,255,ImageType::RASTERIMAGE);
|
||||
paintingArea->historyadd();
|
||||
UpdateGui();
|
||||
}
|
||||
}
|
||||
@@ -122,6 +123,7 @@ void IntelliPhotoGui::slotCreateNewShapedLayer(){
|
||||
// Create New Layer
|
||||
if (ok1&&ok2) {
|
||||
paintingArea->addLayer(width, height, 0, 0,255, ImageType::SHAPEDIMAGE);
|
||||
paintingArea->historyadd();
|
||||
UpdateGui();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -94,6 +94,7 @@ bool IntelliDatamanager::loadProject(PaintingArea* Canvas, QString filePath){
|
||||
}
|
||||
Canvas->setRenderSettings(static_cast<bool>(rendersetting));
|
||||
openFile.close();
|
||||
Canvas->historyadd();
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -106,7 +106,6 @@ int PaintingArea::addLayer(int width, int height, int widthOffset, int heightOff
|
||||
}
|
||||
this->layerBundle.push_back(newLayer);
|
||||
activeLayer = static_cast<int>(layerBundle.size()) - 1;
|
||||
historyadd();
|
||||
return activeLayer;
|
||||
}
|
||||
|
||||
@@ -524,10 +523,12 @@ void PaintingArea::historyGoBack(){
|
||||
if (historyPresent != historyMaxPast) {
|
||||
if (--historyPresent == -1)
|
||||
historyPresent = 99;
|
||||
if (activeLayer == -1)
|
||||
activeLayer = 0;
|
||||
if (layerBundle.size() > history[static_cast<size_t>(historyPresent)].size())
|
||||
activeLayer--;
|
||||
if ((layerBundle.size() == 0) && (layerBundle.size() < history[static_cast<size_t>(historyPresent)].size()))
|
||||
activeLayer++;
|
||||
activeLayer = static_cast<int>(history[static_cast<size_t>(historyPresent)].size())-1;
|
||||
if (history[static_cast<size_t>(historyPresent)].size() == 0)
|
||||
activeLayer = -1;
|
||||
layerBundle = history[static_cast<size_t>(historyPresent)];
|
||||
}
|
||||
this->guiReference->UpdateGui();
|
||||
@@ -537,10 +538,12 @@ void PaintingArea::historyGoForward(){
|
||||
if (historyPresent != historyMaxFuture) {
|
||||
if (++historyPresent == 100)
|
||||
historyPresent = 0;
|
||||
if (activeLayer == -1)
|
||||
activeLayer = 0;
|
||||
if (layerBundle.size() > history[static_cast<size_t>(historyPresent)].size())
|
||||
activeLayer--;
|
||||
if ((layerBundle.size() == 0) && (layerBundle.size() < history[static_cast<size_t>(historyPresent)].size()))
|
||||
activeLayer++;
|
||||
activeLayer = static_cast<int>(history[static_cast<size_t>(historyPresent)].size())-1;
|
||||
if (history[static_cast<size_t>(historyPresent)].size() == 0)
|
||||
activeLayer = -1;
|
||||
layerBundle = history[static_cast<size_t>(historyPresent)];
|
||||
}
|
||||
this->guiReference->UpdateGui();
|
||||
|
||||
@@ -223,6 +223,7 @@ std::vector<LayerObject>* getLayerBundle();
|
||||
IntelliToolsettings Toolsettings;
|
||||
IntelliColorPicker colorPicker;
|
||||
|
||||
void historyadd();
|
||||
void historyGoBack();
|
||||
void historyGoForward();
|
||||
|
||||
@@ -285,8 +286,6 @@ int historyMaxPast = 0;
|
||||
int historyMaxFuture = 0;
|
||||
int historyPresent = 0;
|
||||
|
||||
void historyadd();
|
||||
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user