mirror of
https://github.com/creyD/intelliphoto.git
synced 2026-04-12 19:40:28 +02:00
Uncrustified Files
This commit is contained in:
@@ -46,10 +46,10 @@ void IntelliPhotoGui::slotOpen(){
|
||||
|
||||
// If we have a file name load the image and place
|
||||
// it in the paintingArea
|
||||
if (!fileName.isEmpty()){
|
||||
if (!fileName.isEmpty()) {
|
||||
paintingArea->open(fileName);
|
||||
UpdateGui();
|
||||
}
|
||||
UpdateGui();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -73,19 +73,19 @@ void IntelliPhotoGui::slotCreateNewLayer(){
|
||||
// "New Layer" is the title of the window
|
||||
// the next tr is the text to display
|
||||
// Define the standard Value, min, max, step and ok button
|
||||
QInputDialog Input;
|
||||
Input.setPalette(Palette);
|
||||
QInputDialog Input;
|
||||
Input.setPalette(Palette);
|
||||
|
||||
int width = Input.getInt(this, tr("New Layer"),
|
||||
tr("Width:"),
|
||||
200,1, 500, 1, &ok1);
|
||||
int width = Input.getInt(this, tr("New Layer"),
|
||||
tr("Width:"),
|
||||
200,1, 500, 1, &ok1);
|
||||
|
||||
int height = QInputDialog::getInt(this, tr("New Layer"),
|
||||
tr("Height:"),
|
||||
200,1, 500, 1, &ok2);
|
||||
// Create New Layer
|
||||
if (ok1&&ok2){
|
||||
paintingArea->addLayer(width,height,0,0);
|
||||
if (ok1&&ok2) {
|
||||
paintingArea->addLayer(width,height,0,0);
|
||||
UpdateGui();
|
||||
}
|
||||
}
|
||||
@@ -100,10 +100,10 @@ void IntelliPhotoGui::slotDeleteLayer(){
|
||||
// Define the standard Value, min, max, step and ok button
|
||||
int layerNumber = QInputDialog::getInt(this, tr("delete Layer"),
|
||||
tr("Number:"),
|
||||
paintingArea->getNumberOfActiveLayer()+1,1, 501, 1, &ok);
|
||||
paintingArea->getNumberOfActiveLayer()+1,1, 501, 1, &ok);
|
||||
// Create New Layer
|
||||
if (ok) {
|
||||
paintingArea->deleteLayer(layerNumber-1);
|
||||
paintingArea->deleteLayer(layerNumber-1);
|
||||
UpdateGui();
|
||||
}
|
||||
}
|
||||
@@ -117,14 +117,14 @@ void IntelliPhotoGui::slotSetActiveAlpha(){
|
||||
// Define the standard Value, min, max, step and ok button
|
||||
int layer = QInputDialog::getInt(this, tr("Layer to set on"),
|
||||
tr("Layer:"),
|
||||
1,1,500,1, &ok1);
|
||||
1,1,500,1, &ok1);
|
||||
// "New Alpha" is the title of the window
|
||||
int alpha = QInputDialog::getInt(this, tr("New Alpha"),
|
||||
tr("Alpha:"),
|
||||
255,0, 255, 1, &ok2);
|
||||
if (ok1&&ok2)
|
||||
{
|
||||
paintingArea->setLayerAlpha(layer-1,alpha);
|
||||
paintingArea->setLayerAlpha(layer-1,alpha);
|
||||
UpdateGui();
|
||||
}
|
||||
}
|
||||
@@ -194,25 +194,25 @@ void IntelliPhotoGui::slotSetActiveLayer(){
|
||||
|
||||
// "Layer to set on" is the title of the window
|
||||
// the next tr is the text to display
|
||||
// Define the standard Value, min, max, step and ok button
|
||||
int layer = QInputDialog::getInt(this, tr("Layer to set on"),
|
||||
tr("Layer:"),
|
||||
1,1,500,1, &ok1);
|
||||
if (ok1)
|
||||
// Define the standard Value, min, max, step and ok button
|
||||
int layer = QInputDialog::getInt(this, tr("Layer to set on"),
|
||||
tr("Layer:"),
|
||||
1,1,500,1, &ok1);
|
||||
if (ok1)
|
||||
{
|
||||
paintingArea->setLayerActive(layer-1);
|
||||
paintingArea->setLayerActive(layer-1);
|
||||
UpdateGui();
|
||||
}
|
||||
}
|
||||
|
||||
void IntelliPhotoGui::slotUpdateRenderSettingsOn(){
|
||||
paintingArea->setRenderSettings(true);
|
||||
UpdateGui();
|
||||
paintingArea->setRenderSettings(true);
|
||||
UpdateGui();
|
||||
}
|
||||
|
||||
void IntelliPhotoGui::slotUpdateRenderSettingsOff(){
|
||||
paintingArea->setRenderSettings(false);
|
||||
UpdateGui();
|
||||
paintingArea->setRenderSettings(false);
|
||||
UpdateGui();
|
||||
}
|
||||
|
||||
void IntelliPhotoGui::slotSetFirstColor(){
|
||||
@@ -269,7 +269,7 @@ void IntelliPhotoGui::slotCreateFloodFillTool(){
|
||||
void IntelliPhotoGui::slotAboutDialog(){
|
||||
// Window title and text to display
|
||||
QMessageBox::about(this, tr("About Painting"),
|
||||
tr("<p><b>IntelliPhoto - </b>A Pretty basic editor.</p> <br>Developed by Team 7."));
|
||||
tr("<p><b>IntelliPhoto - </b>A Pretty basic editor.</p> <br>Developed by Team 7."));
|
||||
}
|
||||
|
||||
void IntelliPhotoGui::slotEnterPressed(){
|
||||
@@ -296,13 +296,13 @@ void IntelliPhotoGui::slotResetTools(){
|
||||
}
|
||||
|
||||
void IntelliPhotoGui::slotSetWidth(){
|
||||
paintingArea->Toolsettings.setLineWidth();
|
||||
EditLineWidth->setText(QString("%1").arg(paintingArea->Toolsettings.getLineWidth()));
|
||||
paintingArea->Toolsettings.setLineWidth();
|
||||
EditLineWidth->setText(QString("%1").arg(paintingArea->Toolsettings.getLineWidth()));
|
||||
}
|
||||
|
||||
void IntelliPhotoGui::slotSetInnerAlpha(){
|
||||
paintingArea->Toolsettings.setInnerAlpha();
|
||||
EditLineInnerAlpha->setText(QString("%1").arg(paintingArea->Toolsettings.getInnerAlpha()));
|
||||
paintingArea->Toolsettings.setInnerAlpha();
|
||||
EditLineInnerAlpha->setText(QString("%1").arg(paintingArea->Toolsettings.getInnerAlpha()));
|
||||
}
|
||||
|
||||
// Define menu actions that call functions
|
||||
@@ -332,7 +332,7 @@ void IntelliPhotoGui::createActions(){
|
||||
connect(pngSaveAction, SIGNAL(triggered()), this, SLOT(slotSave()));
|
||||
// Attach each PNG in save Menu
|
||||
actionSaveAs.append(pngSaveAction);
|
||||
pngSaveAction->setShortcut(QKeySequence(Qt::CTRL + Qt::SHIFT + Qt::Key_S));
|
||||
pngSaveAction->setShortcut(QKeySequence(Qt::CTRL + Qt::SHIFT + Qt::Key_S));
|
||||
|
||||
// Create exit action and tie to IntelliPhotoGui::close()
|
||||
actionExit = new QAction(tr("&Exit"), this);
|
||||
@@ -350,15 +350,15 @@ void IntelliPhotoGui::createActions(){
|
||||
|
||||
// Delete New Layer action and tie to IntelliPhotoGui::deleteLayer()
|
||||
actionDeleteLayer = new QAction(tr("&Delete Layer..."), this);
|
||||
actionDeleteLayer->setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::Key_D));
|
||||
actionDeleteLayer->setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::Key_D));
|
||||
connect(actionDeleteLayer, SIGNAL(triggered()), this, SLOT(slotDeleteLayer()));
|
||||
|
||||
actionSetActiveLayer = new QAction(tr("&set Active"), this);
|
||||
actionSetActiveLayer->setShortcut(QKeySequence(Qt::CTRL + Qt::Key_A));
|
||||
actionSetActiveLayer->setShortcut(QKeySequence(Qt::CTRL + Qt::Key_A));
|
||||
connect(actionSetActiveLayer, SIGNAL(triggered()), this, SLOT(slotSetActiveLayer()));
|
||||
|
||||
actionSetActiveAlpha = new QAction(tr("&set Alpha"), this);
|
||||
actionSetActiveAlpha->setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::Key_A));
|
||||
actionSetActiveAlpha = new QAction(tr("&set Alpha"), this);
|
||||
actionSetActiveAlpha->setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::Key_A));
|
||||
connect(actionSetActiveAlpha, SIGNAL(triggered()), this, SLOT(slotSetActiveAlpha()));
|
||||
|
||||
actionMovePositionUp = new QAction(tr("&move Up"), this);
|
||||
@@ -385,76 +385,76 @@ void IntelliPhotoGui::createActions(){
|
||||
actionMoveLayerDown->setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::Key_Down));
|
||||
connect(actionMoveLayerDown, SIGNAL(triggered()), this, SLOT(slotMoveLayerDown()));
|
||||
|
||||
//Create Update RenderSettings Actions here
|
||||
actionUpdateRenderSettingsOn = new QAction(tr("&On"), this);
|
||||
actionUpdateRenderSettingsOn->setShortcut(QKeySequence(Qt::ALT +Qt::SHIFT + +Qt::Key_A));
|
||||
connect(actionUpdateRenderSettingsOn, SIGNAL(triggered()),this, SLOT(slotUpdateRenderSettingsOn()));
|
||||
//Create Update RenderSettings Actions here
|
||||
actionUpdateRenderSettingsOn = new QAction(tr("&On"), this);
|
||||
actionUpdateRenderSettingsOn->setShortcut(QKeySequence(Qt::ALT +Qt::SHIFT + +Qt::Key_A));
|
||||
connect(actionUpdateRenderSettingsOn, SIGNAL(triggered()),this, SLOT(slotUpdateRenderSettingsOn()));
|
||||
|
||||
actionUpdateRenderSettingsOff = new QAction(tr("&Off"), this);
|
||||
actionUpdateRenderSettingsOff->setShortcut(QKeySequence(Qt::ALT +Qt::SHIFT + +Qt::Key_D));
|
||||
connect(actionUpdateRenderSettingsOff, SIGNAL(triggered()),this, SLOT(slotUpdateRenderSettingsOff()));
|
||||
actionUpdateRenderSettingsOff = new QAction(tr("&Off"), this);
|
||||
actionUpdateRenderSettingsOff->setShortcut(QKeySequence(Qt::ALT +Qt::SHIFT + +Qt::Key_D));
|
||||
connect(actionUpdateRenderSettingsOff, SIGNAL(triggered()),this, SLOT(slotUpdateRenderSettingsOff()));
|
||||
|
||||
//Create Color Actions here
|
||||
actionColorPickerFirstColor = new QAction(tr("&Main"), this);
|
||||
actionColorPickerFirstColor->setShortcut(QKeySequence(Qt::ALT + Qt::Key_N));
|
||||
actionColorPickerFirstColor->setShortcut(QKeySequence(Qt::ALT + Qt::Key_N));
|
||||
connect(actionColorPickerFirstColor, SIGNAL(triggered()), this, SLOT(slotSetFirstColor()));
|
||||
connect(FirstColorButton, SIGNAL(clicked()), this, SLOT(slotSetFirstColor()));
|
||||
|
||||
actionColorPickerSecondColor = new QAction(tr("&Secondary"), this);
|
||||
actionColorPickerSecondColor->setShortcut(QKeySequence(Qt::ALT + Qt::Key_M));
|
||||
actionColorPickerSecondColor->setShortcut(QKeySequence(Qt::ALT + Qt::Key_M));
|
||||
connect(actionColorPickerSecondColor, SIGNAL(triggered()), this, SLOT(slotSetSecondColor()));
|
||||
connect(SecondColorButton, SIGNAL(clicked()), this, SLOT(slotSetSecondColor()));
|
||||
|
||||
actionColorSwap = new QAction(tr("&Switch"), this);
|
||||
actionColorSwap->setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::Key_S));
|
||||
actionColorSwap->setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::Key_S));
|
||||
connect(actionColorSwap, SIGNAL(triggered()), this, SLOT(slotSwapColor()));
|
||||
connect(SwitchColorButton, SIGNAL(clicked()), this, SLOT(slotSwapColor()));
|
||||
|
||||
//Create Tool actions down here
|
||||
actionCreatePlainTool = new QAction(tr("&Plain"), this);
|
||||
actionCreatePlainTool->setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::SHIFT +Qt::Key_P));
|
||||
actionCreatePlainTool->setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::SHIFT +Qt::Key_P));
|
||||
connect(actionCreatePlainTool, SIGNAL(triggered()), this, SLOT(slotResetTools()));
|
||||
connect(actionCreatePlainTool, SIGNAL(triggered()), this, SLOT(slotCreatePlainTool()));
|
||||
|
||||
|
||||
actionCreatePenTool = new QAction(tr("&Pen"),this);
|
||||
actionCreatePenTool->setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::SHIFT +Qt::Key_S));
|
||||
actionCreatePenTool->setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::SHIFT +Qt::Key_S));
|
||||
connect(actionCreatePenTool, SIGNAL(triggered()), this, SLOT(slotResetTools()));
|
||||
connect(actionCreatePenTool, SIGNAL(triggered()), this, SLOT(slotCreatePenTool()));
|
||||
|
||||
actionCreateLineTool = new QAction(tr("&Line"), this);
|
||||
actionCreateLineTool->setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::SHIFT +Qt::Key_L));
|
||||
actionCreateLineTool->setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::SHIFT +Qt::Key_L));
|
||||
connect(actionCreateLineTool, SIGNAL(triggered()), this, SLOT(slotResetTools()));
|
||||
connect(actionCreateLineTool, SIGNAL(triggered()), this, SLOT(slotCreateLineTool()));
|
||||
|
||||
actionCreateCircleTool = new QAction(tr("&Circle"), this);
|
||||
actionCreateCircleTool->setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::SHIFT +Qt::Key_C));
|
||||
actionCreateCircleTool->setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::SHIFT +Qt::Key_C));
|
||||
connect(actionCreateCircleTool, SIGNAL(triggered()), this, SLOT(slotResetTools()));
|
||||
connect(actionCreateCircleTool, SIGNAL(triggered()), this, SLOT(slotCreateCircleTool()));
|
||||
|
||||
actionCreateRectangleTool = new QAction(tr("&Rectangle"), this);
|
||||
actionCreateRectangleTool->setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::SHIFT +Qt::Key_R));
|
||||
actionCreateRectangleTool->setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::SHIFT +Qt::Key_R));
|
||||
connect(actionCreateRectangleTool, SIGNAL(triggered()), this, SLOT(slotResetTools()));
|
||||
connect(actionCreateRectangleTool, SIGNAL(triggered()), this, SLOT(slotCreateRectangleTool()));
|
||||
|
||||
actionCreatePolygonTool = new QAction(tr("&Polygon"), this);
|
||||
actionCreatePolygonTool->setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::SHIFT +Qt::Key_V));
|
||||
actionCreatePolygonTool->setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::SHIFT +Qt::Key_V));
|
||||
connect(actionCreatePolygonTool, SIGNAL(triggered()), this, SLOT(slotResetTools()));
|
||||
connect(actionCreatePolygonTool, SIGNAL(triggered()), this, SLOT(slotCreatePolygonTool()));
|
||||
|
||||
actionCreateFloodFillTool = new QAction(tr("&FloodFill"), this);
|
||||
actionCreateFloodFillTool->setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::SHIFT +Qt::Key_F));
|
||||
actionCreateFloodFillTool->setShortcut(QKeySequence(Qt::CTRL + Qt::ALT + Qt::SHIFT +Qt::Key_F));
|
||||
connect(actionCreateFloodFillTool, SIGNAL(triggered()), this, SLOT(slotResetTools()));
|
||||
connect(actionCreateFloodFillTool, SIGNAL(triggered()), this, SLOT(slotCreateFloodFillTool()));
|
||||
|
||||
// Create about action and tie to IntelliPhotoGui::about()
|
||||
actionAboutDialog = new QAction(tr("&About"), this);
|
||||
actionAboutDialog->setShortcut(Qt::Key_F2);
|
||||
actionAboutDialog->setShortcut(Qt::Key_F2);
|
||||
connect(actionAboutDialog, SIGNAL(triggered()), this, SLOT(slotAboutDialog()));
|
||||
|
||||
// Create about Qt action and tie to IntelliPhotoGui::aboutQt()
|
||||
actionAboutQtDialog = new QAction(tr("About &Qt"), this);
|
||||
actionAboutQtDialog->setShortcut(Qt::Key_F3);
|
||||
actionAboutQtDialog->setShortcut(Qt::Key_F3);
|
||||
connect(actionAboutQtDialog, SIGNAL(triggered()), qApp, SLOT(aboutQt()));
|
||||
|
||||
connect(EditLineWidth, SIGNAL(returnPressed()), this, SLOT(slotEnterPressed()));
|
||||
@@ -481,13 +481,13 @@ void IntelliPhotoGui::createActions(){
|
||||
connect(RectangleButton,SIGNAL(pressed()), this, SLOT(slotResetTools()));
|
||||
connect(RectangleButton, SIGNAL(clicked()), this, SLOT(slotCreateRectangleTool()));
|
||||
|
||||
actionSetWidth = new QAction(tr("&Set Width"),this);
|
||||
actionSetWidth->setShortcut(QKeySequence(Qt::ALT + Qt::Key_W));
|
||||
connect(actionSetWidth, SIGNAL(triggered()), this, SLOT(slotSetWidth()));
|
||||
actionSetWidth = new QAction(tr("&Set Width"),this);
|
||||
actionSetWidth->setShortcut(QKeySequence(Qt::ALT + Qt::Key_W));
|
||||
connect(actionSetWidth, SIGNAL(triggered()), this, SLOT(slotSetWidth()));
|
||||
|
||||
actionSetInnerAlpha = new QAction(tr("&Set Inner Alpha"),this);
|
||||
actionSetInnerAlpha->setShortcut(QKeySequence(Qt::ALT + Qt::Key_A));
|
||||
connect(actionSetInnerAlpha, SIGNAL(triggered()), this, SLOT(slotSetInnerAlpha()));
|
||||
actionSetInnerAlpha = new QAction(tr("&Set Inner Alpha"),this);
|
||||
actionSetInnerAlpha->setShortcut(QKeySequence(Qt::ALT + Qt::Key_A));
|
||||
connect(actionSetInnerAlpha, SIGNAL(triggered()), this, SLOT(slotSetInnerAlpha()));
|
||||
}
|
||||
|
||||
// Create the menubar
|
||||
@@ -505,61 +505,61 @@ void IntelliPhotoGui::createMenus(){
|
||||
fileMenu->addSeparator();
|
||||
fileMenu->addAction(actionExit);
|
||||
|
||||
//Attach all actions to Render Settings
|
||||
renderMenu = new QMenu(tr("&Fast Renderer"), this);
|
||||
renderMenu->addAction(actionUpdateRenderSettingsOn);
|
||||
renderMenu->addAction(actionUpdateRenderSettingsOff);
|
||||
//Attach all actions to Render Settings
|
||||
renderMenu = new QMenu(tr("&Fast Renderer"), this);
|
||||
renderMenu->addAction(actionUpdateRenderSettingsOn);
|
||||
renderMenu->addAction(actionUpdateRenderSettingsOff);
|
||||
|
||||
// Attach all actions to Layer
|
||||
layerMenu = new QMenu(tr("&Layer"), this);
|
||||
layerMenu->addAction(actionCreateNewLayer);
|
||||
layerMenu->addSeparator();
|
||||
layerMenu->addAction(actionSetActiveAlpha);
|
||||
layerMenu->addAction(actionSetActiveLayer);
|
||||
layerMenu->addSeparator();
|
||||
layerMenu->addAction(actionMovePositionUp);
|
||||
layerMenu->addAction(actionMovePositionDown);
|
||||
layerMenu->addAction(actionMovePositionLeft);
|
||||
layerMenu->addAction(actionMovePositionRight);
|
||||
layerMenu->addAction(actionMoveLayerUp);
|
||||
layerMenu->addAction(actionMoveLayerDown);
|
||||
layerMenu->addSeparator();
|
||||
layerMenu->addAction(actionDeleteLayer);
|
||||
// Attach all actions to Layer
|
||||
layerMenu = new QMenu(tr("&Layer"), this);
|
||||
layerMenu->addAction(actionCreateNewLayer);
|
||||
layerMenu->addSeparator();
|
||||
layerMenu->addAction(actionSetActiveAlpha);
|
||||
layerMenu->addAction(actionSetActiveLayer);
|
||||
layerMenu->addSeparator();
|
||||
layerMenu->addAction(actionMovePositionUp);
|
||||
layerMenu->addAction(actionMovePositionDown);
|
||||
layerMenu->addAction(actionMovePositionLeft);
|
||||
layerMenu->addAction(actionMovePositionRight);
|
||||
layerMenu->addAction(actionMoveLayerUp);
|
||||
layerMenu->addAction(actionMoveLayerDown);
|
||||
layerMenu->addSeparator();
|
||||
layerMenu->addAction(actionDeleteLayer);
|
||||
|
||||
//Attach all Color Options
|
||||
colorMenu = new QMenu(tr("&Color"), this);
|
||||
colorMenu->addAction(actionColorPickerFirstColor);
|
||||
colorMenu->addAction(actionColorPickerSecondColor);
|
||||
colorMenu->addAction(actionColorSwap);
|
||||
//Attach all Color Options
|
||||
colorMenu = new QMenu(tr("&Color"), this);
|
||||
colorMenu->addAction(actionColorPickerFirstColor);
|
||||
colorMenu->addAction(actionColorPickerSecondColor);
|
||||
colorMenu->addAction(actionColorSwap);
|
||||
|
||||
//Attach all Tool Creation Actions
|
||||
toolCreationMenu = new QMenu(tr("&Drawingtools"), this);
|
||||
toolCreationMenu->addAction(actionCreateCircleTool);
|
||||
toolCreationMenu->addAction(actionCreateFloodFillTool);
|
||||
toolCreationMenu->addAction(actionCreateLineTool);
|
||||
toolCreationMenu->addAction(actionCreatePenTool);
|
||||
toolCreationMenu->addAction(actionCreatePlainTool);
|
||||
toolCreationMenu->addAction(actionCreatePolygonTool);
|
||||
toolCreationMenu->addAction(actionCreateRectangleTool);
|
||||
//Attach all Tool Creation Actions
|
||||
toolCreationMenu = new QMenu(tr("&Drawingtools"), this);
|
||||
toolCreationMenu->addAction(actionCreateCircleTool);
|
||||
toolCreationMenu->addAction(actionCreateFloodFillTool);
|
||||
toolCreationMenu->addAction(actionCreateLineTool);
|
||||
toolCreationMenu->addAction(actionCreatePenTool);
|
||||
toolCreationMenu->addAction(actionCreatePlainTool);
|
||||
toolCreationMenu->addAction(actionCreatePolygonTool);
|
||||
toolCreationMenu->addAction(actionCreateRectangleTool);
|
||||
|
||||
//Attach all Tool Setting Actions
|
||||
toolSettingsMenu = new QMenu(tr("&Toolsettings"), this);
|
||||
toolSettingsMenu->addAction(actionSetWidth);
|
||||
toolSettingsMenu->addAction(actionSetInnerAlpha);
|
||||
//Attach all Tool Setting Actions
|
||||
toolSettingsMenu = new QMenu(tr("&Toolsettings"), this);
|
||||
toolSettingsMenu->addAction(actionSetWidth);
|
||||
toolSettingsMenu->addAction(actionSetInnerAlpha);
|
||||
|
||||
//Attach all Tool Options
|
||||
toolMenu = new QMenu(tr("&Tools"), this);
|
||||
toolMenu->addMenu(toolCreationMenu);
|
||||
toolMenu->addMenu(toolSettingsMenu);
|
||||
toolMenu->addSeparator();
|
||||
toolMenu->addMenu(colorMenu);
|
||||
//Attach all Tool Options
|
||||
toolMenu = new QMenu(tr("&Tools"), this);
|
||||
toolMenu->addMenu(toolCreationMenu);
|
||||
toolMenu->addMenu(toolSettingsMenu);
|
||||
toolMenu->addSeparator();
|
||||
toolMenu->addMenu(colorMenu);
|
||||
|
||||
// Attach all actions to Options
|
||||
optionMenu = new QMenu(tr("&Options"), this);
|
||||
optionMenu->addMenu(layerMenu);
|
||||
optionMenu->addMenu(toolMenu);
|
||||
optionMenu->addSeparator();
|
||||
optionMenu->addMenu(renderMenu);
|
||||
optionMenu->addMenu(layerMenu);
|
||||
optionMenu->addMenu(toolMenu);
|
||||
optionMenu->addSeparator();
|
||||
optionMenu->addMenu(renderMenu);
|
||||
|
||||
// Attach all actions to Help
|
||||
helpMenu = new QMenu(tr("&Help"), this);
|
||||
@@ -583,54 +583,54 @@ void IntelliPhotoGui::createGui(){
|
||||
|
||||
// create Gui elements
|
||||
paintingArea = new PaintingArea();
|
||||
paintingArea->DummyGui = this;
|
||||
paintingArea->DummyGui = this;
|
||||
|
||||
preview = QPixmap(":/Icons/Buttons/icons/circle-tool.svg");
|
||||
preview = QPixmap(":/Icons/Buttons/icons/circle-tool.svg");
|
||||
CircleButton = new QPushButton();
|
||||
CircleButton->setFixedSize(Buttonsize);
|
||||
CircleButton->setIcon(preview);
|
||||
CircleButton->setIcon(preview);
|
||||
CircleButton->setIconSize(Buttonsize);
|
||||
CircleButton->setCheckable(true);
|
||||
|
||||
preview = QPixmap(":/Icons/Buttons/icons/flood-fill-tool.svg");
|
||||
preview = QPixmap(":/Icons/Buttons/icons/flood-fill-tool.svg");
|
||||
FloodFillButton = new QPushButton();
|
||||
FloodFillButton->setFixedSize(Buttonsize);
|
||||
FloodFillButton->setIcon(preview);
|
||||
FloodFillButton->setIcon(preview);
|
||||
FloodFillButton->setIconSize(Buttonsize);
|
||||
FloodFillButton->setCheckable(true);
|
||||
|
||||
preview = QPixmap(":/Icons/Buttons/icons/line-tool.svg");
|
||||
preview = QPixmap(":/Icons/Buttons/icons/line-tool.svg");
|
||||
LineButton = new QPushButton();
|
||||
LineButton->setFixedSize(Buttonsize);
|
||||
LineButton->setIcon(preview);
|
||||
LineButton->setIcon(preview);
|
||||
LineButton->setIconSize(Buttonsize);
|
||||
LineButton->setCheckable(true);
|
||||
|
||||
preview = QPixmap(":/Icons/Buttons/icons/pen-tool.svg");
|
||||
preview = QPixmap(":/Icons/Buttons/icons/pen-tool.svg");
|
||||
PenButton = new QPushButton();
|
||||
PenButton->setFixedSize(Buttonsize);
|
||||
PenButton->setIcon(preview);
|
||||
PenButton->setIcon(preview);
|
||||
PenButton->setIconSize(Buttonsize);
|
||||
PenButton->setCheckable(true);
|
||||
|
||||
preview = QPixmap(":/Icons/Buttons/icons/plain-tool.svg");
|
||||
preview = QPixmap(":/Icons/Buttons/icons/plain-tool.svg");
|
||||
PlainButton = new QPushButton();
|
||||
PlainButton->setFixedSize(Buttonsize);
|
||||
PlainButton->setIcon(preview);
|
||||
PlainButton->setIcon(preview);
|
||||
PlainButton->setIconSize(Buttonsize);
|
||||
PlainButton->setCheckable(true);
|
||||
|
||||
preview = QPixmap(":/Icons/Buttons/icons/polygon-tool.svg");
|
||||
preview = QPixmap(":/Icons/Buttons/icons/polygon-tool.svg");
|
||||
PolygonButton = new QPushButton();
|
||||
PolygonButton->setFixedSize(Buttonsize);
|
||||
PolygonButton->setIcon(preview);
|
||||
PolygonButton->setIcon(preview);
|
||||
PolygonButton->setIconSize(Buttonsize);
|
||||
PolygonButton->setCheckable(true);
|
||||
|
||||
preview = QPixmap(":/Icons/Buttons/icons/rectangle-tool.svg");
|
||||
preview = QPixmap(":/Icons/Buttons/icons/rectangle-tool.svg");
|
||||
RectangleButton = new QPushButton();
|
||||
RectangleButton->setFixedSize(Buttonsize);
|
||||
RectangleButton->setIcon(preview);
|
||||
RectangleButton->setIcon(preview);
|
||||
RectangleButton->setIconSize(Buttonsize);
|
||||
RectangleButton->setCheckable(true);
|
||||
|
||||
@@ -664,29 +664,29 @@ void IntelliPhotoGui::createGui(){
|
||||
SecondColorButton = new QPushButton();
|
||||
SecondColorButton->setFixedSize(Buttonsize/2);
|
||||
|
||||
preview = QPixmap(":/Icons/Buttons/icons/Wechselpfeile.png");
|
||||
preview = QPixmap(":/Icons/Buttons/icons/Wechselpfeile.png");
|
||||
SwitchColorButton = new QPushButton();
|
||||
SwitchColorButton->setFixedSize(Buttonsize.width(),Buttonsize.height()/2);
|
||||
SwitchColorButton->setIcon(preview);
|
||||
SwitchColorButton->setIcon(preview);
|
||||
SwitchColorButton->setIconSize(QSize(Buttonsize.width(),Buttonsize.height()/2));
|
||||
|
||||
ActiveLayerLine = new QLabel();
|
||||
QString string = QString("Active Layer: %1").arg(paintingArea->getNumberOfActiveLayer() + 1);
|
||||
QString string = QString("Active Layer: %1").arg(paintingArea->getNumberOfActiveLayer() + 1);
|
||||
ActiveLayerLine->setText(string);
|
||||
ActiveLayerLine->setFixedSize(Buttonsize.width()+10,Buttonsize.height()/3);
|
||||
|
||||
IntelliImage* activePicture = paintingArea->getImageOfActiveLayer();
|
||||
if(activePicture){
|
||||
preview = preview.fromImage(activePicture->getImageData());
|
||||
}else{
|
||||
QImage tmp(1,1,QImage::Format_ARGB32);
|
||||
tmp.fill(Qt::transparent);
|
||||
preview = preview.fromImage(tmp);
|
||||
}
|
||||
IntelliImage* activePicture = paintingArea->getImageOfActiveLayer();
|
||||
if(activePicture) {
|
||||
preview = preview.fromImage(activePicture->getImageData());
|
||||
}else{
|
||||
QImage tmp(1,1,QImage::Format_ARGB32);
|
||||
tmp.fill(Qt::transparent);
|
||||
preview = preview.fromImage(tmp);
|
||||
}
|
||||
|
||||
ActiveLayerImageLine = new QLabel();
|
||||
ActiveLayerImageLine->setFixedSize(Buttonsize);
|
||||
ActiveLayerImageLine->setPixmap(preview.scaled(Buttonsize));
|
||||
ActiveLayerImageLine = new QLabel();
|
||||
ActiveLayerImageLine->setFixedSize(Buttonsize);
|
||||
ActiveLayerImageLine->setPixmap(preview.scaled(Buttonsize));
|
||||
|
||||
// set gui elements
|
||||
|
||||
@@ -706,40 +706,40 @@ void IntelliPhotoGui::createGui(){
|
||||
mainLayout->addWidget(SecondColorButton,12,3,1,1);
|
||||
mainLayout->addWidget(SwitchColorButton,13,2,1,2);
|
||||
mainLayout->addWidget(ActiveLayerLine,14,2,1,2);
|
||||
mainLayout->addWidget(ActiveLayerImageLine,15,2,1,2);
|
||||
mainLayout->addWidget(ActiveLayerImageLine,15,2,1,2);
|
||||
}
|
||||
|
||||
void IntelliPhotoGui::setIntelliStyle(){
|
||||
// Set the title
|
||||
setWindowTitle("IntelliPhoto Prototype");
|
||||
Palette.setBrush(QPalette::HighlightedText, QColor(200, 10, 10));
|
||||
Palette.setBrush(QPalette::Highlight, QColor(100, 5, 5));
|
||||
Palette.setBrush(QPalette::ButtonText, QColor(255, 255, 255));
|
||||
Palette.setBrush(QPalette::Button, QColor(64, 64, 64));
|
||||
Palette.setBrush(QPalette::Window, QColor(0, 0, 0));
|
||||
Palette.setBrush(QPalette::WindowText, QColor(255, 255, 255));
|
||||
Palette.setBrush(QPalette::PlaceholderText, QColor(255, 255, 255));
|
||||
Palette.setBrush(QPalette::ToolTipText, QColor(255, 255, 255));
|
||||
Palette.setBrush(QPalette::Text, QColor(255, 255, 255));
|
||||
Palette.setBrush(QPalette::HighlightedText, QColor(200, 10, 10));
|
||||
Palette.setBrush(QPalette::Highlight, QColor(100, 5, 5));
|
||||
Palette.setBrush(QPalette::ButtonText, QColor(255, 255, 255));
|
||||
Palette.setBrush(QPalette::Button, QColor(64, 64, 64));
|
||||
Palette.setBrush(QPalette::Window, QColor(0, 0, 0));
|
||||
Palette.setBrush(QPalette::WindowText, QColor(255, 255, 255));
|
||||
Palette.setBrush(QPalette::PlaceholderText, QColor(255, 255, 255));
|
||||
Palette.setBrush(QPalette::ToolTipText, QColor(255, 255, 255));
|
||||
Palette.setBrush(QPalette::Text, QColor(255, 255, 255));
|
||||
// Set style sheet
|
||||
this->setStyleSheet("background-color:rgb(64,64,64)");
|
||||
this->menuBar()->setPalette(Palette);
|
||||
this->fileMenu->setPalette(Palette);
|
||||
this->saveAsMenu->setPalette(Palette);
|
||||
this->optionMenu->setPalette(Palette);
|
||||
this->helpMenu->setPalette(Palette);
|
||||
this->renderMenu->setPalette(Palette);
|
||||
this->toolMenu->setPalette(Palette);
|
||||
this->layerMenu->setPalette(Palette);
|
||||
this->colorMenu->setPalette(Palette);
|
||||
this->toolCreationMenu->setPalette(Palette);
|
||||
this->toolSettingsMenu->setPalette(Palette);
|
||||
this->setStyleSheet("background-color:rgb(64,64,64)");
|
||||
this->menuBar()->setPalette(Palette);
|
||||
this->fileMenu->setPalette(Palette);
|
||||
this->saveAsMenu->setPalette(Palette);
|
||||
this->optionMenu->setPalette(Palette);
|
||||
this->helpMenu->setPalette(Palette);
|
||||
this->renderMenu->setPalette(Palette);
|
||||
this->toolMenu->setPalette(Palette);
|
||||
this->layerMenu->setPalette(Palette);
|
||||
this->colorMenu->setPalette(Palette);
|
||||
this->toolCreationMenu->setPalette(Palette);
|
||||
this->toolSettingsMenu->setPalette(Palette);
|
||||
|
||||
this->WidthLine->setPalette(Palette);
|
||||
this->EditLineWidth->setPalette(Palette);
|
||||
this->innerAlphaLine->setPalette(Palette);
|
||||
this->EditLineInnerAlpha->setPalette(Palette);
|
||||
this->ActiveLayerLine->setPalette(Palette);
|
||||
this->WidthLine->setPalette(Palette);
|
||||
this->EditLineWidth->setPalette(Palette);
|
||||
this->innerAlphaLine->setPalette(Palette);
|
||||
this->EditLineInnerAlpha->setPalette(Palette);
|
||||
this->ActiveLayerLine->setPalette(Palette);
|
||||
|
||||
QString string = QString("background-color: %1").arg(paintingArea->colorPicker.getFirstColor().name());
|
||||
FirstColorButton->setStyleSheet(string);
|
||||
@@ -800,18 +800,18 @@ void IntelliPhotoGui::setDefaultToolValue(){
|
||||
}
|
||||
|
||||
void IntelliPhotoGui::UpdateGui(){
|
||||
QString string = QString("Active Layer: %1").arg(paintingArea->getNumberOfActiveLayer() + 1);
|
||||
QString string = QString("Active Layer: %1").arg(paintingArea->getNumberOfActiveLayer() + 1);
|
||||
ActiveLayerLine->setText(string);
|
||||
|
||||
IntelliImage* activePicture = paintingArea->getImageOfActiveLayer();
|
||||
if(activePicture){
|
||||
preview = preview.fromImage(activePicture->getImageData());
|
||||
}else{
|
||||
QImage tmp(1,1,QImage::Format_ARGB32);
|
||||
tmp.fill(Qt::transparent);
|
||||
preview = preview.fromImage(tmp);
|
||||
}
|
||||
ActiveLayerImageLine->setPixmap(preview.scaled(Buttonsize));
|
||||
IntelliImage* activePicture = paintingArea->getImageOfActiveLayer();
|
||||
if(activePicture) {
|
||||
preview = preview.fromImage(activePicture->getImageData());
|
||||
}else{
|
||||
QImage tmp(1,1,QImage::Format_ARGB32);
|
||||
tmp.fill(Qt::transparent);
|
||||
preview = preview.fromImage(tmp);
|
||||
}
|
||||
ActiveLayerImageLine->setPixmap(preview.scaled(Buttonsize));
|
||||
|
||||
string = QString("background-color: %1").arg(paintingArea->colorPicker.getFirstColor().name());
|
||||
FirstColorButton->setStyleSheet(string);
|
||||
|
||||
@@ -3,15 +3,15 @@
|
||||
#include <QPainter>
|
||||
|
||||
IntelliImage::IntelliImage(int width, int height, bool fastRendererOn)
|
||||
: imageData(QSize(width, height), fastRendererOn ? QImage::Format_Indexed8 : QImage::Format_ARGB32){
|
||||
if(fastRendererOn){
|
||||
imageData = imageData.convertToFormat(QImage::Format_ARGB32);
|
||||
}
|
||||
imageData.fill(QColor(255,255,255,255));
|
||||
if(fastRendererOn){
|
||||
imageData = imageData.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
this->fastRenderering = fastRendererOn;
|
||||
: imageData(QSize(width, height), fastRendererOn ? QImage::Format_Indexed8 : QImage::Format_ARGB32){
|
||||
if(fastRendererOn) {
|
||||
imageData = imageData.convertToFormat(QImage::Format_ARGB32);
|
||||
}
|
||||
imageData.fill(QColor(255,255,255,255));
|
||||
if(fastRendererOn) {
|
||||
imageData = imageData.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
this->fastRenderering = fastRendererOn;
|
||||
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ bool IntelliImage::loadImage(const QString &filePath){
|
||||
// scaled Image to size of Layer
|
||||
loadedImage = loadedImage.scaled(imageData.size(),Qt::IgnoreAspectRatio);
|
||||
|
||||
imageData = loadedImage.convertToFormat(fastRenderering ? QImage::Format_Indexed8 : QImage::Format_ARGB32);
|
||||
imageData = loadedImage.convertToFormat(fastRenderering ? QImage::Format_Indexed8 : QImage::Format_ARGB32);
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -46,19 +46,19 @@ void IntelliImage::resizeImage(QImage*image, const QSize &newSize){
|
||||
// Draw the image
|
||||
QPainter painter(&newImage);
|
||||
painter.drawImage(QPoint(0, 0), *image);
|
||||
if(fastRenderering){
|
||||
*image = newImage.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
else{
|
||||
*image = newImage;
|
||||
}
|
||||
if(fastRenderering) {
|
||||
*image = newImage.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
else{
|
||||
*image = newImage;
|
||||
}
|
||||
}
|
||||
|
||||
void IntelliImage::drawPixel(const QPoint &p1, const QColor& color){
|
||||
if(fastRenderering){
|
||||
this->imageData = this->imageData.convertToFormat(QImage::Format_ARGB32);
|
||||
}
|
||||
// Used to draw on the widget
|
||||
if(fastRenderering) {
|
||||
this->imageData = this->imageData.convertToFormat(QImage::Format_ARGB32);
|
||||
}
|
||||
// Used to draw on the widget
|
||||
QPainter painter(&imageData);
|
||||
|
||||
// Set the current settings for the pen
|
||||
@@ -66,32 +66,32 @@ void IntelliImage::drawPixel(const QPoint &p1, const QColor& color){
|
||||
|
||||
// Draw a line from the last registered point to the current
|
||||
painter.drawPoint(p1);
|
||||
if(fastRenderering){
|
||||
this->imageData = this->imageData.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
if(fastRenderering) {
|
||||
this->imageData = this->imageData.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
}
|
||||
|
||||
void IntelliImage::drawPoint(const QPoint &p1, const QColor& color, const int& penWidth){
|
||||
if(fastRenderering){
|
||||
this->imageData = this->imageData.convertToFormat(QImage::Format_ARGB32);
|
||||
}
|
||||
// Used to draw on the widget
|
||||
if(fastRenderering) {
|
||||
this->imageData = this->imageData.convertToFormat(QImage::Format_ARGB32);
|
||||
}
|
||||
// Used to draw on the widget
|
||||
QPainter painter(&imageData);
|
||||
|
||||
// Set the current settings for the pen
|
||||
painter.setPen(QPen(color, penWidth, Qt::SolidLine, Qt::RoundCap, Qt::RoundJoin));
|
||||
// Draw a line from the last registered point to the current
|
||||
painter.drawPoint(p1);
|
||||
if(fastRenderering){
|
||||
this->imageData = this->imageData.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
if(fastRenderering) {
|
||||
this->imageData = this->imageData.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
}
|
||||
|
||||
void IntelliImage::drawLine(const QPoint &p1, const QPoint& p2, const QColor& color, const int& penWidth){
|
||||
if(fastRenderering){
|
||||
this->imageData = this->imageData.convertToFormat(QImage::Format_ARGB32);
|
||||
}
|
||||
// Used to draw on the widget
|
||||
if(fastRenderering) {
|
||||
this->imageData = this->imageData.convertToFormat(QImage::Format_ARGB32);
|
||||
}
|
||||
// Used to draw on the widget
|
||||
QPainter painter(&imageData);
|
||||
|
||||
// Set the current settings for the pen
|
||||
@@ -99,53 +99,53 @@ void IntelliImage::drawLine(const QPoint &p1, const QPoint& p2, const QColor& co
|
||||
|
||||
// Draw a line from the last registered point to the current
|
||||
painter.drawLine(p1, p2);
|
||||
if(fastRenderering){
|
||||
this->imageData = this->imageData.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
if(fastRenderering) {
|
||||
this->imageData = this->imageData.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
}
|
||||
|
||||
void IntelliImage::drawPlain(const QColor& color){
|
||||
if(fastRenderering){
|
||||
this->imageData = this->imageData.convertToFormat(QImage::Format_ARGB32);
|
||||
}
|
||||
imageData.fill(color);
|
||||
if(fastRenderering){
|
||||
this->imageData = this->imageData.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
if(fastRenderering) {
|
||||
this->imageData = this->imageData.convertToFormat(QImage::Format_ARGB32);
|
||||
}
|
||||
imageData.fill(color);
|
||||
if(fastRenderering) {
|
||||
this->imageData = this->imageData.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
}
|
||||
|
||||
QColor IntelliImage::getPixelColor(QPoint& point){
|
||||
if(fastRenderering){
|
||||
QImage copy = this->imageData.convertToFormat(QImage::Format_ARGB32);
|
||||
return copy.pixelColor(point);
|
||||
}
|
||||
return imageData.pixelColor(point);
|
||||
if(fastRenderering) {
|
||||
QImage copy = this->imageData.convertToFormat(QImage::Format_ARGB32);
|
||||
return copy.pixelColor(point);
|
||||
}
|
||||
return imageData.pixelColor(point);
|
||||
}
|
||||
|
||||
QImage IntelliImage::getImageData(){
|
||||
QImage copy = imageData;
|
||||
if(fastRenderering){
|
||||
copy = copy.convertToFormat(QImage::Format_ARGB32);
|
||||
}
|
||||
return copy;
|
||||
QImage copy = imageData;
|
||||
if(fastRenderering) {
|
||||
copy = copy.convertToFormat(QImage::Format_ARGB32);
|
||||
}
|
||||
return copy;
|
||||
}
|
||||
|
||||
void IntelliImage::setImageData(const QImage& newData){
|
||||
imageData = newData;
|
||||
if(fastRenderering){
|
||||
this->imageData = imageData.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
else {
|
||||
this->imageData = imageData.convertToFormat(QImage::Format_ARGB32);
|
||||
}
|
||||
imageData = newData;
|
||||
if(fastRenderering) {
|
||||
this->imageData = imageData.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
else {
|
||||
this->imageData = imageData.convertToFormat(QImage::Format_ARGB32);
|
||||
}
|
||||
}
|
||||
|
||||
void IntelliImage::updateRendererSetting(bool fastRendererOn){
|
||||
this->fastRenderering = fastRendererOn;
|
||||
if(fastRenderering){
|
||||
this->imageData = imageData.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
else {
|
||||
this->imageData = imageData.convertToFormat(QImage::Format_ARGB32);
|
||||
}
|
||||
this->fastRenderering = fastRendererOn;
|
||||
if(fastRenderering) {
|
||||
this->imageData = imageData.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
else {
|
||||
this->imageData = imageData.convertToFormat(QImage::Format_ARGB32);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,9 +4,9 @@
|
||||
#include <QDebug>
|
||||
|
||||
IntelliRasterImage::IntelliRasterImage(int width, int height, bool fastRendererOn)
|
||||
: IntelliImage(width, height, fastRendererOn){
|
||||
TypeOfImage = IntelliImage::ImageType::RASTERIMAGE;
|
||||
this->fastRenderering = fastRendererOn;
|
||||
: IntelliImage(width, height, fastRendererOn){
|
||||
TypeOfImage = IntelliImage::ImageType::RASTERIMAGE;
|
||||
this->fastRenderering = fastRendererOn;
|
||||
}
|
||||
|
||||
IntelliRasterImage::~IntelliRasterImage(){
|
||||
@@ -30,9 +30,9 @@ QImage IntelliRasterImage::getDisplayable(int alpha){
|
||||
|
||||
QImage IntelliRasterImage::getDisplayable(const QSize& displaySize, int alpha){
|
||||
QImage copy = imageData;
|
||||
if(fastRenderering){
|
||||
copy = copy.convertToFormat(QImage::Format_ARGB32);
|
||||
}
|
||||
if(fastRenderering) {
|
||||
copy = copy.convertToFormat(QImage::Format_ARGB32);
|
||||
}
|
||||
for(int y = 0; y<copy.height(); y++) {
|
||||
for(int x = 0; x<copy.width(); x++) {
|
||||
QColor clr = copy.pixelColor(x,y);
|
||||
@@ -40,9 +40,9 @@ QImage IntelliRasterImage::getDisplayable(const QSize& displaySize, int alpha){
|
||||
copy.setPixelColor(x,y, clr);
|
||||
}
|
||||
}
|
||||
if(fastRenderering){
|
||||
copy = copy.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
if(fastRenderering) {
|
||||
copy = copy.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
return copy.scaled(displaySize,Qt::IgnoreAspectRatio);
|
||||
}
|
||||
|
||||
|
||||
@@ -5,9 +5,9 @@
|
||||
#include <QDebug>
|
||||
|
||||
IntelliShapedImage::IntelliShapedImage(int width, int height, bool fastRendererOn)
|
||||
: IntelliRasterImage(width, height, fastRendererOn){
|
||||
TypeOfImage = IntelliImage::ImageType::SHAPEDIMAGE;
|
||||
this->fastRenderering = fastRendererOn;
|
||||
: IntelliRasterImage(width, height, fastRendererOn){
|
||||
TypeOfImage = IntelliImage::ImageType::SHAPEDIMAGE;
|
||||
this->fastRenderering = fastRendererOn;
|
||||
}
|
||||
|
||||
IntelliShapedImage::~IntelliShapedImage(){
|
||||
@@ -27,9 +27,9 @@ IntelliImage* IntelliShapedImage::getDeepCopy(){
|
||||
}
|
||||
|
||||
void IntelliShapedImage::calculateVisiblity(){
|
||||
if(fastRenderering){
|
||||
this->imageData = imageData.convertToFormat(QImage::Format_ARGB32);
|
||||
}
|
||||
if(fastRenderering) {
|
||||
this->imageData = imageData.convertToFormat(QImage::Format_ARGB32);
|
||||
}
|
||||
|
||||
if(polygonData.size()<=2) {
|
||||
QColor clr;
|
||||
@@ -40,9 +40,9 @@ void IntelliShapedImage::calculateVisiblity(){
|
||||
imageData.setPixelColor(x,y,clr);
|
||||
}
|
||||
}
|
||||
if(fastRenderering){
|
||||
this->imageData = this->imageData.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
if(fastRenderering) {
|
||||
this->imageData = this->imageData.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
return;
|
||||
}
|
||||
QColor clr;
|
||||
@@ -59,16 +59,16 @@ void IntelliShapedImage::calculateVisiblity(){
|
||||
imageData.setPixelColor(x,y,clr);
|
||||
}
|
||||
}
|
||||
if(fastRenderering){
|
||||
this->imageData = this->imageData.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
if(fastRenderering) {
|
||||
this->imageData = this->imageData.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
}
|
||||
|
||||
QImage IntelliShapedImage::getDisplayable(const QSize& displaySize, int alpha){
|
||||
QImage copy = imageData;
|
||||
if(fastRenderering){
|
||||
copy = copy.convertToFormat(QImage::Format_ARGB32);
|
||||
}
|
||||
if(fastRenderering) {
|
||||
copy = copy.convertToFormat(QImage::Format_ARGB32);
|
||||
}
|
||||
for(int y = 0; y<copy.height(); y++) {
|
||||
for(int x = 0; x<copy.width(); x++) {
|
||||
QColor clr = copy.pixelColor(x,y);
|
||||
@@ -76,9 +76,9 @@ QImage IntelliShapedImage::getDisplayable(const QSize& displaySize, int alpha){
|
||||
copy.setPixelColor(x,y, clr);
|
||||
}
|
||||
}
|
||||
if(fastRenderering){
|
||||
copy = copy.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
if(fastRenderering) {
|
||||
copy = copy.convertToFormat(QImage::Format_Indexed8);
|
||||
}
|
||||
return copy.scaled(displaySize,Qt::IgnoreAspectRatio);
|
||||
}
|
||||
|
||||
|
||||
@@ -6,9 +6,9 @@ IntelliRenderSettings::IntelliRenderSettings()
|
||||
}
|
||||
|
||||
void IntelliRenderSettings::setFastRendering(bool Updatedsetting){
|
||||
this->fastRenderering = Updatedsetting;
|
||||
this->fastRenderering = Updatedsetting;
|
||||
}
|
||||
|
||||
bool IntelliRenderSettings::isFastRenderering(){
|
||||
return fastRenderering;
|
||||
return fastRenderering;
|
||||
}
|
||||
|
||||
@@ -43,12 +43,12 @@ PaintingArea::~PaintingArea(){
|
||||
}
|
||||
|
||||
void PaintingArea::setRenderSettings(bool isFastRenderingOn){
|
||||
if(isFastRenderingOn != renderSettings.isFastRenderering()){
|
||||
renderSettings.setFastRendering(isFastRenderingOn);
|
||||
for(auto& layer : layerBundle){
|
||||
layer.image->updateRendererSetting(isFastRenderingOn);
|
||||
}
|
||||
}
|
||||
if(isFastRenderingOn != renderSettings.isFastRenderering()) {
|
||||
renderSettings.setFastRendering(isFastRenderingOn);
|
||||
for(auto& layer : layerBundle) {
|
||||
layer.image->updateRendererSetting(isFastRenderingOn);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void PaintingArea::setLayerDimensions(int maxWidth, int maxHeight){
|
||||
@@ -68,10 +68,10 @@ int PaintingArea::addLayer(int width, int height, int widthOffset, int heightOff
|
||||
newLayer.height = height;
|
||||
newLayer.widthOffset = widthOffset;
|
||||
newLayer.heightOffset = heightOffset;
|
||||
if(type==IntelliImage::ImageType::RASTERIMAGE) {
|
||||
newLayer.image = new IntelliRasterImage(width,height,renderSettings.isFastRenderering());
|
||||
}else if(type==IntelliImage::ImageType::SHAPEDIMAGE) {
|
||||
newLayer.image = new IntelliShapedImage(width, height, renderSettings.isFastRenderering());
|
||||
if(type==IntelliImage::ImageType::RASTERIMAGE) {
|
||||
newLayer.image = new IntelliRasterImage(width,height,renderSettings.isFastRenderering());
|
||||
}else if(type==IntelliImage::ImageType::SHAPEDIMAGE) {
|
||||
newLayer.image = new IntelliShapedImage(width, height, renderSettings.isFastRenderering());
|
||||
}
|
||||
newLayer.alpha = 255;
|
||||
this->layerBundle.push_back(newLayer);
|
||||
@@ -83,12 +83,12 @@ int PaintingArea::addLayer(int width, int height, int widthOffset, int heightOff
|
||||
void PaintingArea::deleteLayer(int idx){
|
||||
if(idx<static_cast<int>(layerBundle.size())) {
|
||||
this->layerBundle.erase(layerBundle.begin()+idx);
|
||||
if(activeLayer>=idx) {
|
||||
if(activeLayer>=idx) {
|
||||
activeLayer--;
|
||||
}
|
||||
if(activeLayer < 0 && layerBundle.size()){
|
||||
activeLayer=0;
|
||||
}
|
||||
if(activeLayer < 0 && layerBundle.size()) {
|
||||
activeLayer=0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -265,9 +265,9 @@ std::vector<QPoint> PaintingArea::getPolygonDataOfRealLayer(){
|
||||
// left button and if so store the current position
|
||||
// Set that we are currently drawing
|
||||
void PaintingArea::mousePressEvent(QMouseEvent*event){
|
||||
if(this->activeLayer < 0){
|
||||
return;
|
||||
}
|
||||
if(this->activeLayer < 0) {
|
||||
return;
|
||||
}
|
||||
if(Tool == nullptr)
|
||||
return;
|
||||
int x = event->x()-layerBundle[static_cast<unsigned long long>(activeLayer)].widthOffset;
|
||||
@@ -284,9 +284,9 @@ void PaintingArea::mousePressEvent(QMouseEvent*event){
|
||||
// we call the drawline function which draws a line
|
||||
// from the last position to the current
|
||||
void PaintingArea::mouseMoveEvent(QMouseEvent*event){
|
||||
if(this->activeLayer < 0){
|
||||
return;
|
||||
}
|
||||
if(this->activeLayer < 0) {
|
||||
return;
|
||||
}
|
||||
if(Tool == nullptr)
|
||||
return;
|
||||
int x = event->x()-layerBundle[static_cast<unsigned long long>(activeLayer)].widthOffset;
|
||||
@@ -297,9 +297,9 @@ void PaintingArea::mouseMoveEvent(QMouseEvent*event){
|
||||
|
||||
// If the button is released we set variables to stop drawing
|
||||
void PaintingArea::mouseReleaseEvent(QMouseEvent*event){
|
||||
if(this->activeLayer < 0)
|
||||
return;
|
||||
if(Tool == nullptr)
|
||||
if(this->activeLayer < 0)
|
||||
return;
|
||||
if(Tool == nullptr)
|
||||
return;
|
||||
int x = event->x()-layerBundle[static_cast<unsigned long long>(activeLayer)].widthOffset;
|
||||
int y = event->y()-layerBundle[static_cast<unsigned long long>(activeLayer)].heightOffset;
|
||||
@@ -312,9 +312,9 @@ void PaintingArea::mouseReleaseEvent(QMouseEvent*event){
|
||||
}
|
||||
|
||||
void PaintingArea::wheelEvent(QWheelEvent*event){
|
||||
if(this->activeLayer < 0)
|
||||
return;
|
||||
if(this->Tool != nullptr) {
|
||||
if(this->activeLayer < 0)
|
||||
return;
|
||||
if(this->Tool != nullptr) {
|
||||
QPoint numDegrees = event->angleDelta() / 8;
|
||||
if(!numDegrees.isNull()) {
|
||||
QPoint numSteps = numDegrees / 15;
|
||||
@@ -405,9 +405,9 @@ bool PaintingArea::createTempTopLayer(int idx){
|
||||
newLayer.widthOffset = layerBundle[static_cast<unsigned long long>(idx)].widthOffset;
|
||||
newLayer.image = layerBundle[static_cast<unsigned long long>(idx)].image->getDeepCopy();
|
||||
layerBundle.insert(layerBundle.begin()+idx+1,newLayer);
|
||||
return true;
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
return false;
|
||||
}
|
||||
|
||||
IntelliTool* PaintingArea::copyActiveTool(){
|
||||
@@ -428,8 +428,8 @@ int PaintingArea::getNumberOfActiveLayer(){
|
||||
}
|
||||
|
||||
IntelliImage* PaintingArea::getImageOfActiveLayer(){
|
||||
if(activeLayer<0){
|
||||
return nullptr;
|
||||
}
|
||||
if(activeLayer<0) {
|
||||
return nullptr;
|
||||
}
|
||||
return layerBundle[activeLayer].image;
|
||||
}
|
||||
|
||||
@@ -43,142 +43,142 @@ Q_OBJECT
|
||||
friend IntelliTool;
|
||||
friend IntelliPhotoGui;
|
||||
public:
|
||||
/*!
|
||||
* \brief PaintingArea is the constructor of the PaintingArea class, which initiates the working environment
|
||||
* \param maxWidth - The maximum amount of pixles that are inside painting area from left to right (default=600px)
|
||||
* \param maxHeight - The maximum amount of pixles that are inside painting area from top to bottom (default=600px)
|
||||
* \param parent - The parent window of the main window (default=nullptr)
|
||||
*/
|
||||
PaintingArea(int maxWidth=600, int maxHeight=600, QWidget *parent = nullptr);
|
||||
/*!
|
||||
* \brief PaintingArea is the constructor of the PaintingArea class, which initiates the working environment
|
||||
* \param maxWidth - The maximum amount of pixles that are inside painting area from left to right (default=600px)
|
||||
* \param maxHeight - The maximum amount of pixles that are inside painting area from top to bottom (default=600px)
|
||||
* \param parent - The parent window of the main window (default=nullptr)
|
||||
*/
|
||||
PaintingArea(int maxWidth=600, int maxHeight=600, QWidget*parent = nullptr);
|
||||
|
||||
/*!
|
||||
* \brief This deconstructor is used to clear up the memory and remove the currently active window
|
||||
*/
|
||||
~PaintingArea() override;
|
||||
/*!
|
||||
* \brief This deconstructor is used to clear up the memory and remove the currently active window
|
||||
*/
|
||||
~PaintingArea() override;
|
||||
|
||||
// Handles all events
|
||||
// Handles all events
|
||||
|
||||
/*!
|
||||
* \brief setRenderSettings updates all Images to the new Rendersetting.
|
||||
* \param isFastRenderingOn is the new given flag for the FastRenderer.
|
||||
*/
|
||||
void setRenderSettings(bool isFastRenderingOn);
|
||||
/*!
|
||||
* \brief setRenderSettings updates all Images to the new Rendersetting.
|
||||
* \param isFastRenderingOn is the new given flag for the FastRenderer.
|
||||
*/
|
||||
void setRenderSettings(bool isFastRenderingOn);
|
||||
|
||||
/*!
|
||||
* \brief The open method is used for loading a picture into the current layer
|
||||
* \param fileName - Path and filename which are used to determine where the to-be-opened file is stored
|
||||
* \return Returns a boolean variable whether the file was successfully opened or not
|
||||
*/
|
||||
bool open(const QString &filePath);
|
||||
/*!
|
||||
* \brief The save method is used for exporting the current project as one picture
|
||||
* \param fileName
|
||||
* \param fileFormat
|
||||
* \return Returns a boolean variable, true if the file was saved successfully, false if not
|
||||
*/
|
||||
bool save(const QString &filePath, const char *fileFormat);
|
||||
/*!
|
||||
* \brief The open method is used for loading a picture into the current layer
|
||||
* \param fileName - Path and filename which are used to determine where the to-be-opened file is stored
|
||||
* \return Returns a boolean variable whether the file was successfully opened or not
|
||||
*/
|
||||
bool open(const QString &filePath);
|
||||
/*!
|
||||
* \brief The save method is used for exporting the current project as one picture
|
||||
* \param fileName
|
||||
* \param fileFormat
|
||||
* \return Returns a boolean variable, true if the file was saved successfully, false if not
|
||||
*/
|
||||
bool save(const QString &filePath, const char*fileFormat);
|
||||
|
||||
/*!
|
||||
* \brief The addLayer adds a layer to the current project/ painting area
|
||||
* \param width - Width of the layer in pixles
|
||||
* \param height - Height of the layer in pixles
|
||||
* \param widthOffset - Offset of the layer measured to the left border of the painting area in pixles
|
||||
* \param heightOffset - Offset of the layer measured to the top border of the painting area in pixles
|
||||
* \param type - Defining the ImageType of the new layer
|
||||
* \return Returns the number of layers in the project
|
||||
*/
|
||||
int addLayer(int width, int height, int widthOffset=0, int heightOffset=0, IntelliImage::ImageType type = IntelliImage::ImageType::RASTERIMAGE);
|
||||
/*!
|
||||
* \brief The addLayerAt adds a layer to the current project/ painting area at a specific position in the layer stack
|
||||
* \param idx - Index of the position the new layer should be added
|
||||
* \param width - Width of the layer in pixles
|
||||
* \param height - Height of the layer in pixles
|
||||
* \param widthOffset - Offset of the layer measured to the left border of the painting area in pixles
|
||||
* \param heightOffset - Offset of the layer measured to the top border of the painting area in pixles
|
||||
* \param type - Defining the ImageType of the new layer
|
||||
* \return Returns the id of the layer position
|
||||
*/
|
||||
int addLayerAt(int idx, int width, int height, int widthOffset=0, int heightOffset=0, IntelliImage::ImageType type = IntelliImage::ImageType::RASTERIMAGE);
|
||||
/*!
|
||||
* \brief The deleteLayer method removes a layer at a given idx
|
||||
* \param idx - The index of the layer to be removed
|
||||
*/
|
||||
void deleteLayer(int idx);
|
||||
/*!
|
||||
* \brief The setLayerToActive method marks a specific layer as active
|
||||
* \param idx - The index of the layer to be active
|
||||
*/
|
||||
void setLayerActive(int idx);
|
||||
/*!
|
||||
* \brief The setAlphaOfLayer method sets the alpha value of a specific layer
|
||||
* \param idx - The index of the layer where the change should be applied
|
||||
* \param alpha - New alpha value of the layer
|
||||
*/
|
||||
void setLayerAlpha(int idx, int alpha);
|
||||
/*!
|
||||
* \brief The floodFill method fills a the active layer with a given color
|
||||
* \param r - Red value of the color the layer should be filled with
|
||||
* \param g - Green value of the color the layer should be filled with
|
||||
* \param b - Blue value of the color the layer should be filled with
|
||||
* \param a - Alpha value of the color the layer should be filled with
|
||||
*/
|
||||
void floodFill(int r, int g, int b, int a);
|
||||
/*!
|
||||
* \brief The movePositionActive method moves the active layer to certain position
|
||||
* \param x - The x value the new center of the layer should be at
|
||||
* \param y - The y value the new center of the layer should be at
|
||||
*/
|
||||
void movePositionActive(int x, int y);
|
||||
/*!
|
||||
* \brief The moveActiveLayer moves the active layer to a specific position in the layer stack
|
||||
* \param idx - The index of the new position the layer should be in
|
||||
*/
|
||||
void moveActiveLayer(int idx);
|
||||
/*!
|
||||
* \brief The addLayer adds a layer to the current project/ painting area
|
||||
* \param width - Width of the layer in pixles
|
||||
* \param height - Height of the layer in pixles
|
||||
* \param widthOffset - Offset of the layer measured to the left border of the painting area in pixles
|
||||
* \param heightOffset - Offset of the layer measured to the top border of the painting area in pixles
|
||||
* \param type - Defining the ImageType of the new layer
|
||||
* \return Returns the number of layers in the project
|
||||
*/
|
||||
int addLayer(int width, int height, int widthOffset=0, int heightOffset=0, IntelliImage::ImageType type = IntelliImage::ImageType::RASTERIMAGE);
|
||||
/*!
|
||||
* \brief The addLayerAt adds a layer to the current project/ painting area at a specific position in the layer stack
|
||||
* \param idx - Index of the position the new layer should be added
|
||||
* \param width - Width of the layer in pixles
|
||||
* \param height - Height of the layer in pixles
|
||||
* \param widthOffset - Offset of the layer measured to the left border of the painting area in pixles
|
||||
* \param heightOffset - Offset of the layer measured to the top border of the painting area in pixles
|
||||
* \param type - Defining the ImageType of the new layer
|
||||
* \return Returns the id of the layer position
|
||||
*/
|
||||
int addLayerAt(int idx, int width, int height, int widthOffset=0, int heightOffset=0, IntelliImage::ImageType type = IntelliImage::ImageType::RASTERIMAGE);
|
||||
/*!
|
||||
* \brief The deleteLayer method removes a layer at a given idx
|
||||
* \param idx - The index of the layer to be removed
|
||||
*/
|
||||
void deleteLayer(int idx);
|
||||
/*!
|
||||
* \brief The setLayerToActive method marks a specific layer as active
|
||||
* \param idx - The index of the layer to be active
|
||||
*/
|
||||
void setLayerActive(int idx);
|
||||
/*!
|
||||
* \brief The setAlphaOfLayer method sets the alpha value of a specific layer
|
||||
* \param idx - The index of the layer where the change should be applied
|
||||
* \param alpha - New alpha value of the layer
|
||||
*/
|
||||
void setLayerAlpha(int idx, int alpha);
|
||||
/*!
|
||||
* \brief The floodFill method fills a the active layer with a given color
|
||||
* \param r - Red value of the color the layer should be filled with
|
||||
* \param g - Green value of the color the layer should be filled with
|
||||
* \param b - Blue value of the color the layer should be filled with
|
||||
* \param a - Alpha value of the color the layer should be filled with
|
||||
*/
|
||||
void floodFill(int r, int g, int b, int a);
|
||||
/*!
|
||||
* \brief The movePositionActive method moves the active layer to certain position
|
||||
* \param x - The x value the new center of the layer should be at
|
||||
* \param y - The y value the new center of the layer should be at
|
||||
*/
|
||||
void movePositionActive(int x, int y);
|
||||
/*!
|
||||
* \brief The moveActiveLayer moves the active layer to a specific position in the layer stack
|
||||
* \param idx - The index of the new position the layer should be in
|
||||
*/
|
||||
void moveActiveLayer(int idx);
|
||||
|
||||
//change properties of colorPicker
|
||||
/*!
|
||||
* \brief The colorPickerSetFirstColor calls the QTColorPicker to determine the primary drawing color
|
||||
*/
|
||||
void colorPickerSetFirstColor();
|
||||
/*!
|
||||
* \brief The colorPickerSetSecondColor calls the QTColorPicker to determine the secondary drawing color
|
||||
*/
|
||||
void colorPickerSetSecondColor();
|
||||
/*!
|
||||
* \brief The colorPickerSwitchColor swaps the primary color with the secondary drawing color
|
||||
*/
|
||||
void colorPickerSwapColors();
|
||||
//change properties of colorPicker
|
||||
/*!
|
||||
* \brief The colorPickerSetFirstColor calls the QTColorPicker to determine the primary drawing color
|
||||
*/
|
||||
void colorPickerSetFirstColor();
|
||||
/*!
|
||||
* \brief The colorPickerSetSecondColor calls the QTColorPicker to determine the secondary drawing color
|
||||
*/
|
||||
void colorPickerSetSecondColor();
|
||||
/*!
|
||||
* \brief The colorPickerSwitchColor swaps the primary color with the secondary drawing color
|
||||
*/
|
||||
void colorPickerSwapColors();
|
||||
|
||||
// Create tools
|
||||
void createPenTool();
|
||||
void createPlainTool();
|
||||
void createLineTool();
|
||||
void createRectangleTool();
|
||||
void createCircleTool();
|
||||
void createPolygonTool();
|
||||
void createFloodFillTool();
|
||||
// Create tools
|
||||
void createPenTool();
|
||||
void createPlainTool();
|
||||
void createLineTool();
|
||||
void createRectangleTool();
|
||||
void createCircleTool();
|
||||
void createPolygonTool();
|
||||
void createFloodFillTool();
|
||||
|
||||
/*!
|
||||
* \brief The getWidthOfActive gets the horizontal dimensions of the active layer
|
||||
* \return Returns the horizontal pixle count of the active layer
|
||||
*/
|
||||
int getWidthOfActive();
|
||||
/*!
|
||||
* \brief The getHeightOfActive gets the vertical dimensions of the active layer
|
||||
* \return Returns the vertical pixle count of the active layer
|
||||
*/
|
||||
int getHeightOfActive();
|
||||
/*!
|
||||
* \brief The getWidthOfActive gets the horizontal dimensions of the active layer
|
||||
* \return Returns the horizontal pixle count of the active layer
|
||||
*/
|
||||
int getWidthOfActive();
|
||||
/*!
|
||||
* \brief The getHeightOfActive gets the vertical dimensions of the active layer
|
||||
* \return Returns the vertical pixle count of the active layer
|
||||
*/
|
||||
int getHeightOfActive();
|
||||
|
||||
IntelliImage::ImageType getTypeOfImageRealLayer();
|
||||
IntelliImage::ImageType getTypeOfImageRealLayer();
|
||||
|
||||
std::vector<QPoint> getPolygonDataOfRealLayer();
|
||||
std::vector<QPoint> getPolygonDataOfRealLayer();
|
||||
|
||||
int getNumberOfActiveLayer();
|
||||
int getNumberOfActiveLayer();
|
||||
|
||||
IntelliImage* getImageOfActiveLayer();
|
||||
IntelliImage* getImageOfActiveLayer();
|
||||
|
||||
IntelliToolsettings Toolsettings;
|
||||
IntelliColorPicker colorPicker;
|
||||
IntelliToolsettings Toolsettings;
|
||||
IntelliColorPicker colorPicker;
|
||||
|
||||
public slots:
|
||||
// Events to handle
|
||||
@@ -226,8 +226,8 @@ void drawLayers(bool forSaving=false);
|
||||
|
||||
void resizeLayer(QImage*image_res, const QSize &newSize);
|
||||
|
||||
// Helper for Tool
|
||||
bool createTempTopLayer(int idx);
|
||||
// Helper for Tool
|
||||
bool createTempTopLayer(int idx);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -24,10 +24,10 @@ void IntelliTool::onMouseRightReleased(int x, int y){
|
||||
}
|
||||
|
||||
void IntelliTool::onMouseLeftPressed(int x, int y){
|
||||
this->isDrawing=this->createToolLayer();
|
||||
if(isDrawing){
|
||||
Canvas->image->calculateVisiblity();
|
||||
}
|
||||
this->isDrawing=this->createToolLayer();
|
||||
if(isDrawing) {
|
||||
Canvas->image->calculateVisiblity();
|
||||
}
|
||||
}
|
||||
|
||||
void IntelliTool::onMouseLeftReleased(int x, int y){
|
||||
@@ -49,22 +49,22 @@ void IntelliTool::onWheelScrolled(int value){
|
||||
}
|
||||
|
||||
bool IntelliTool::createToolLayer(){
|
||||
if(Area->createTempTopLayer(Area->activeLayer)){
|
||||
this->activeLayer=&Area->layerBundle[static_cast<unsigned long long>(Area->activeLayer)];
|
||||
this->Canvas=&Area->layerBundle[static_cast<unsigned long long>(Area->activeLayer+1)];
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
if(Area->createTempTopLayer(Area->activeLayer)) {
|
||||
this->activeLayer=&Area->layerBundle[static_cast<unsigned long long>(Area->activeLayer)];
|
||||
this->Canvas=&Area->layerBundle[static_cast<unsigned long long>(Area->activeLayer+1)];
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
void IntelliTool::mergeToolLayer(){
|
||||
QColor clr_0;
|
||||
QColor clr_1;
|
||||
QImage updatedImage = activeLayer->image->getImageData();
|
||||
QImage updatedImage = activeLayer->image->getImageData();
|
||||
|
||||
for(int y=0; y<activeLayer->height; y++) {
|
||||
for(int x=0; x<activeLayer->width; x++) {
|
||||
clr_0=updatedImage.pixelColor(x,y);
|
||||
for(int x=0; x<activeLayer->width; x++) {
|
||||
clr_0=updatedImage.pixelColor(x,y);
|
||||
clr_1=Canvas->image->imageData.pixelColor(x,y);
|
||||
float t = static_cast<float>(clr_1.alpha())/255.f;
|
||||
int r =static_cast<int>(static_cast<float>(clr_1.red())*(t)+static_cast<float>(clr_0.red())*(1.f-t)+0.5f);
|
||||
@@ -76,11 +76,11 @@ void IntelliTool::mergeToolLayer(){
|
||||
clr_0.setBlue(b);
|
||||
clr_0.setAlpha(a);
|
||||
|
||||
updatedImage.setPixelColor(x, y, clr_0);
|
||||
updatedImage.setPixelColor(x, y, clr_0);
|
||||
}
|
||||
}
|
||||
activeLayer->image->setImageData(updatedImage);
|
||||
Area->DummyGui->UpdateGui();
|
||||
activeLayer->image->setImageData(updatedImage);
|
||||
Area->DummyGui->UpdateGui();
|
||||
}
|
||||
|
||||
void IntelliTool::deleteToolLayer(){
|
||||
|
||||
@@ -26,7 +26,7 @@ void IntelliToolCircle::drawCircle(int radius){
|
||||
}
|
||||
|
||||
//TODO implement circle drawing algorithm bresenham
|
||||
radius = static_cast<int>(radius +(Toolsettings->getLineWidth()/2.));
|
||||
radius = static_cast<int>(radius +(Toolsettings->getLineWidth()/2.));
|
||||
yMin = (centerPoint.y()-radius);
|
||||
yMax = (centerPoint.y()+radius);
|
||||
for(int i=yMin; i<=yMax; i++) {
|
||||
@@ -56,12 +56,12 @@ void IntelliToolCircle::onMouseRightReleased(int x, int y){
|
||||
|
||||
void IntelliToolCircle::onMouseLeftPressed(int x, int y){
|
||||
IntelliTool::onMouseLeftPressed(x,y);
|
||||
if(this->isDrawing){
|
||||
this->centerPoint=QPoint(x,y);
|
||||
int radius = 1;
|
||||
drawCircle(radius);
|
||||
Canvas->image->calculateVisiblity();
|
||||
}
|
||||
if(this->isDrawing) {
|
||||
this->centerPoint=QPoint(x,y);
|
||||
int radius = 1;
|
||||
drawCircle(radius);
|
||||
Canvas->image->calculateVisiblity();
|
||||
}
|
||||
}
|
||||
|
||||
void IntelliToolCircle::onMouseLeftReleased(int x, int y){
|
||||
|
||||
@@ -49,7 +49,7 @@ void IntelliToolLine::onMouseMoved(int x, int y){
|
||||
QPoint p2 =lineStartingPoint.x() < next.x() ? next : lineStartingPoint;
|
||||
int m = static_cast<int>(static_cast<float>(p2.y()-p1.y())/static_cast<float>(p2.x()-p1.x())+0.5f);
|
||||
int c = lineStartingPoint.y()-lineStartingPoint.x()*m;
|
||||
//TODO implement dotted algorithm
|
||||
//TODO implement dotted algorithm
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user