IntelliPhoto 0.6

Public Slots | Public Member Functions | Public Attributes | Protected Member Functions | List of all members
PaintingArea Class Reference

The PaintingArea class manages the methods and stores information about the current painting area, which is the currently opened project. More...

`#include <PaintingArea.h>`

Inheritance diagram for PaintingArea:

## Public Slots
void | slotActivateLayer (int a)
| The slotActivateLayer method handles the event of selecting one layer as active. More...
void | slotDeleteActiveLayer ()
| The slotDeleteActiveLayer method handles the deletion of the active layer. More...

## Public Member Functions
| PaintingArea (int maxWidth=600, int maxHeight=600, QWidget *parent=nullptr)
| PaintingArea is the constructor of the PaintingArea class, which initiates the working environment. More...
| ~PaintingArea () override
| This deconstructor is used to clear up the memory and remove the currently active window. More...
void | setRenderSettings (bool isFastRenderingOn)
| setRenderSettings updates all Images to the new Rendersetting. More...
bool | getRenderSettings ()
| getRenderSettings updates all Images to the new Rendersetting. More...
bool | open (const QString &filePath)
| The open method is used for loading a picture into the current layer. More...
bool | save (const QString &filePath, const char *fileFormat)
| The save method is used for exporting the current project as one picture. More...
void | deleteAllLayers ()
| deleteAllLayers deletes all layers More...
int | addLayer (int width, int height, int widthOffset=0, int heightOffset=0, int alpha=255, ImageType type=ImageType::RASTERIMAGE)
| The addLayer adds a layer to the current project/ painting area. More...
int | addLayerAt (int idx, int width, int height, int widthOffset=0, int heightOffset=0, ImageType type=ImageType::RASTERIMAGE)
| The addLayerAt adds a layer to the current project/ painting area at a specific position in the layer stack. More...
void | deleteLayer (int idx, bool isTool=false)
| The deleteLayer method removes a layer at a given idx. More...
void | setLayerActive (int idx)
| The setLayerToActive method marks a specific layer as active. More...
void | setLayerAlpha (int idx, int alpha)
| The setAlphaOfLayer method sets the alpha value of a specific layer. More...
void | setPolygon (int idx)
| setPolygon is used for setting polygondata, it only works on RASTER images More...
void | movePositionActive (int x, int y)
| The movePositionActive method moves the active layer to certain position. More...
void | moveActiveLayer (int idx)
| The moveActiveLayer moves the active layer to a specific position in the layer stack. More...
void | colorPickerSetFirstColor ()
| The colorPickerSetFirstColor calls the QTColorPicker to determine the primary drawing color. More...
void | colorPickerSetSecondColor ()
| The colorPickerSetSecondColor calls the QTColorPicker to determine the secondary drawing color. More...
void | colorPickerSwapColors ()
| The colorPickerSwitchColor swaps the primary color with the secondary drawing color. More...
void | createPenTool ()
void | createPlainTool ()
void | createLineTool ()
void | createRectangleTool ()
void | createCircleTool ()
void | createPolygonTool ()
void | createFloodFillTool ()
int | getWidthOfActive ()
| The getWidthOfActive gets the horizontal dimensions of the active layer. More...
int | getHeightOfActive ()
| The getHeightOfActive gets the vertical dimensions of the active layer. More...
int | getMaxWidth ()
int | getMaxHeight ()
ImageType | getTypeOfImageRealLayer ()
std::vector< QPoint > | getPolygonDataOfRealLayer ()
int | getNumberOfActiveLayer ()
IntelliImage * | getImageOfActiveLayer ()
QImage | getImageDataOfActiveLayer ()
| getImageDataOfActiveLayer used to get the currents active imageData (if there isn't any active layer it return a 10*10 white picture) More...
std::vector< LayerObject > * | getLayerBundle ()
| getLayerBundle returns the real active layerbundle (care!) More...
void | historyGoBack ()
void | historyGoForward ()
void | setLayerDimensions (int maxWidth, int maxHeight)
void | setPixelToActive (QColor color, QPoint point)
void | setPolygonDataToActive (std::vector< QPoint > points)

## Public Attributes
IntelliToolsettings | Toolsettings
IntelliColorPicker | colorPicker

## Protected Member Functions
void | mousePressEvent (QMouseEvent *event) override
void | mouseMoveEvent (QMouseEvent *event) override
void | mouseReleaseEvent (QMouseEvent *event) override
void | wheelEvent (QWheelEvent *event) override
void | paintEvent (QPaintEvent *event) override

## Detailed Description

The PaintingArea class manages the methods and stores information about the current painting area, which is the currently opened project.

Definition at line 57 of file PaintingArea.h.

## Constructor & Destructor Documentation

## ◆ PaintingArea()

PaintingArea::PaintingArea | ( | int | maxWidth = `600`,
|  | int | maxHeight = `600`,
|  | QWidget * | parent = `nullptr`
| ) |  |

PaintingArea is the constructor of the PaintingArea class, which initiates the working environment.

Parameters

  maxWidth | - The maximum amount of pixles that are inside painting area from left to right (default=600px)
  maxHeight | - The maximum amount of pixles that are inside painting area from top to bottom (default=600px)
  parent | - The parent window of the main window (default=nullptr)

Definition at line 39 of file PaintingArea.cpp.

## ◆ ~PaintingArea()

PaintingArea::~PaintingArea | ( |  | ) |
| override

This deconstructor is used to clear up the memory and remove the currently active window.

Definition at line 47 of file PaintingArea.cpp.

## Member Function Documentation

## ◆ addLayer()

int PaintingArea::addLayer | ( | int | width,
|  | int | height,
|  | int | widthOffset = `0`,
|  | int | heightOffset = `0`,
|  | int | alpha = `255`,
|  | ImageType | type = `ImageType::RASTERIMAGE`
| ) |  |

The addLayer adds a layer to the current project/ painting area.

Parameters

  width | - Width of the layer in pixles
  height | - Height of the layer in pixles
  widthOffset | - Offset of the layer measured to the left border of the painting area in pixles
  heightOffset | - Offset of the layer measured to the top border of the painting area in pixles
  alpha | - Transparence of the layer
  type | - Defining the ImageType of the new layer

Returns
  Returns the number of layers in the project

Definition at line 94 of file PaintingArea.cpp.

## ◆ addLayerAt()

int PaintingArea::addLayerAt | ( | int | idx,
|  | int | width,
|  | int | height,
|  | int | widthOffset = `0`,
|  | int | heightOffset = `0`,
|  | ImageType | type = `ImageType::RASTERIMAGE`
| ) |  |

The addLayerAt adds a layer to the current project/ painting area at a specific position in the layer stack.

Parameters

  idx | - Index of the position the new layer should be added
  width | - Width of the layer in pixles
  height | - Height of the layer in pixles
  widthOffset | - Offset of the layer measured to the left border of the painting area in pixles
  heightOffset | - Offset of the layer measured to the top border of the painting area in pixles
  type | - Defining the ImageType of the new layer

Returns
  Returns the id of the layer position

## ◆ colorPickerSetFirstColor()

void PaintingArea::colorPickerSetFirstColor | ( |  | ) |

The colorPickerSetFirstColor calls the QTColorPicker to determine the primary drawing color.

Definition at line 230 of file PaintingArea.cpp.

## ◆ colorPickerSetSecondColor()

void PaintingArea::colorPickerSetSecondColor | ( |  | ) |

The colorPickerSetSecondColor calls the QTColorPicker to determine the secondary drawing color.

Definition at line 235 of file PaintingArea.cpp.

## ◆ colorPickerSwapColors()

void PaintingArea::colorPickerSwapColors | ( |  | ) |

The colorPickerSwitchColor swaps the primary color with the secondary drawing color.

Definition at line 240 of file PaintingArea.cpp.

## ◆ createCircleTool()

void PaintingArea::createCircleTool | ( |  | ) |

Definition at line 264 of file PaintingArea.cpp.

## ◆ createFloodFillTool()

void PaintingArea::createFloodFillTool | ( |  | ) |

Definition at line 273 of file PaintingArea.cpp.

## ◆ createLineTool()

void PaintingArea::createLineTool | ( |  | ) |

Definition at line 254 of file PaintingArea.cpp.

## ◆ createPenTool()

void PaintingArea::createPenTool | ( |  | ) |

Definition at line 244 of file PaintingArea.cpp.

## ◆ createPlainTool()

void PaintingArea::createPlainTool | ( |  | ) |

Definition at line 249 of file PaintingArea.cpp.

## ◆ createPolygonTool()

void PaintingArea::createPolygonTool | ( |  | ) |

Definition at line 268 of file PaintingArea.cpp.

## ◆ createRectangleTool()

void PaintingArea::createRectangleTool | ( |  | ) |

Definition at line 259 of file PaintingArea.cpp.

## ◆ deleteAllLayers()

void PaintingArea::deleteAllLayers | ( |  | ) |

deleteAllLayers deletes all layers

Definition at line 174 of file PaintingArea.cpp.

## ◆ deleteLayer()

void PaintingArea::deleteLayer | ( | int | idx,
|  | bool | isTool = `false`
| ) |  |

The deleteLayer method removes a layer at a given idx.

Parameters

  idx | - The index of the layer to be removed
  isTool | - Is the flag for when a tool uses this function.

Definition at line 114 of file PaintingArea.cpp.

## ◆ getHeightOfActive()

int PaintingArea::getHeightOfActive | ( |  | ) |

The getHeightOfActive gets the vertical dimensions of the active layer.

Returns
  Returns the vertical pixle count of the active layer

Definition at line 282 of file PaintingArea.cpp.

## ◆ getImageDataOfActiveLayer()

QImage PaintingArea::getImageDataOfActiveLayer | ( |  | ) |

getImageDataOfActiveLayer used to get the currents active imageData (if there isn't any active layer it return a 10*10 white picture)

Returns
  return the image as an rgba32bit qImage

Definition at line 472 of file PaintingArea.cpp.

## ◆ getImageOfActiveLayer()

IntelliImage * PaintingArea::getImageOfActiveLayer | ( |  | ) |

Definition at line 465 of file PaintingArea.cpp.

## ◆ getLayerBundle()

std::vector< LayerObject > * PaintingArea::getLayerBundle | ( |  | ) |

getLayerBundle returns the real active layerbundle (care!)

Returns
  the reference of the currentLayerBundle

Definition at line 487 of file PaintingArea.cpp.

## ◆ getMaxHeight()

int PaintingArea::getMaxHeight | ( |  | ) |

Definition at line 290 of file PaintingArea.cpp.

## ◆ getMaxWidth()

int PaintingArea::getMaxWidth | ( |  | ) |

Definition at line 286 of file PaintingArea.cpp.

## ◆ getNumberOfActiveLayer()

int PaintingArea::getNumberOfActiveLayer | ( |  | ) |

Definition at line 461 of file PaintingArea.cpp.

## ◆ getPolygonDataOfRealLayer()

std::vector< QPoint > PaintingArea::getPolygonDataOfRealLayer | ( |  | ) |

Definition at line 298 of file PaintingArea.cpp.

## ◆ getRenderSettings()

bool PaintingArea::getRenderSettings | ( |  | ) |

getRenderSettings updates all Images to the new Rendersetting.

Parameters

  isFastRenderingOn | is the new given flag for the FastRenderer.

Definition at line 68 of file PaintingArea.cpp.

## ◆ getTypeOfImageRealLayer()

ImageType PaintingArea::getTypeOfImageRealLayer | ( |  | ) |

Definition at line 294 of file PaintingArea.cpp.

## ◆ getWidthOfActive()

int PaintingArea::getWidthOfActive | ( |  | ) |

The getWidthOfActive gets the horizontal dimensions of the active layer.

Returns
  Returns the horizontal pixle count of the active layer

Definition at line 278 of file PaintingArea.cpp.

## ◆ historyGoBack()

void PaintingArea::historyGoBack | ( |  | ) |

Definition at line 518 of file PaintingArea.cpp.

## ◆ historyGoForward()

void PaintingArea::historyGoForward | ( |  | ) |

Definition at line 527 of file PaintingArea.cpp.

## ◆ mouseMoveEvent()

void PaintingArea::mouseMoveEvent | ( | QMouseEvent * | event | ) |
| override protected

Definition at line 324 of file PaintingArea.cpp.

## ◆ mousePressEvent()

void PaintingArea::mousePressEvent | ( | QMouseEvent * | event | ) |
| override protected

Definition at line 305 of file PaintingArea.cpp.

## ◆ mouseReleaseEvent()

void PaintingArea::mouseReleaseEvent | ( | QMouseEvent * | event | ) |
| override protected

Definition at line 337 of file PaintingArea.cpp.

## ◆ moveActiveLayer()

void PaintingArea::moveActiveLayer | ( | int | idx | ) |

The moveActiveLayer moves the active layer to a specific position in the layer stack.

Parameters

  idx | - The index of the new position the layer should be in

Definition at line 212 of file PaintingArea.cpp.

## ◆ movePositionActive()

void PaintingArea::movePositionActive | ( | int | x,
|  | int | y
| ) |  |

The movePositionActive method moves the active layer to certain position.

Parameters

  x | - The x value the new center of the layer should be at
  y | - The y value the new center of the layer should be at

Definition at line 205 of file PaintingArea.cpp.

## ◆ open()

bool PaintingArea::open | ( | const QString & | filePath | ) |

The open method is used for loading a picture into the current layer.

Parameters

  filePath | - Path and Name which are used to determine where the to-be-opened file is stored.

Returns
  Returns a boolean variable whether the file was successfully opened or not.

Definition at line 163 of file PaintingArea.cpp.

## ◆ paintEvent()

void PaintingArea::paintEvent | ( | QPaintEvent * | event | ) |
| override protected

Definition at line 367 of file PaintingArea.cpp.

## ◆ save()

bool PaintingArea::save | ( | const QString & | filePath,
|  | const char * | fileFormat
| ) |  |

The save method is used for exporting the current project as one picture.

Parameters

  filePath | - Specifies the path and name of the file to create.
  fileFormat | - Specifies the format of the file to create.

Returns
  Returns a boolean variable, true if the file was saved successfully, false if not

Definition at line 182 of file PaintingArea.cpp.

## ◆ setLayerActive()

void PaintingArea::setLayerActive | ( | int | idx | ) |

The setLayerToActive method marks a specific layer as active.

Parameters

  idx | - The index of the layer to be active

Definition at line 137 of file PaintingArea.cpp.

## ◆ setLayerAlpha()

void PaintingArea::setLayerAlpha | ( | int | idx,
|  | int | alpha
| ) |  |

The setAlphaOfLayer method sets the alpha value of a specific layer.

Parameters

  idx | - The index of the layer where the change should be applied
  alpha | - New alpha value of the layer

Definition at line 144 of file PaintingArea.cpp.

## ◆ setLayerDimensions()

void PaintingArea::setLayerDimensions | ( | int | maxWidth,
|  | int | maxHeight
| ) |  |

Definition at line 72 of file PaintingArea.cpp.

## ◆ setPixelToActive()

void PaintingArea::setPixelToActive | ( | QColor | color,
|  | QPoint | point
| ) |  |

Definition at line 86 of file PaintingArea.cpp.

## ◆ setPolygon()

void PaintingArea::setPolygon | ( | int | idx | ) |

setPolygon is used for setting polygondata, it only works on RASTER images

Parameters

  idx | - represents the number of the layer with should be transformed

Definition at line 151 of file PaintingArea.cpp.

## ◆ setPolygonDataToActive()

void PaintingArea::setPolygonDataToActive | ( | std::vector< QPoint > | points | ) |

Definition at line 90 of file PaintingArea.cpp.

## ◆ setRenderSettings()

void PaintingArea::setRenderSettings | ( | bool | isFastRenderingOn | ) |

setRenderSettings updates all Images to the new Rendersetting.

Parameters

  isFastRenderingOn | is the new given flag for the FastRenderer.

Definition at line 51 of file PaintingArea.cpp.

## ◆ slotActivateLayer

void PaintingArea::slotActivateLayer | ( | int | a | ) |
| slot

The slotActivateLayer method handles the event of selecting one layer as active.

Parameters

  a | - idx of the layer to be active

Definition at line 223 of file PaintingArea.cpp.

## ◆ slotDeleteActiveLayer

void PaintingArea::slotDeleteActiveLayer | ( |  | ) |
| slot

The slotDeleteActiveLayer method handles the deletion of the active layer.

Definition at line 129 of file PaintingArea.cpp.

## ◆ wheelEvent()

void PaintingArea::wheelEvent | ( | QWheelEvent * | event | ) |
| override protected

Definition at line 352 of file PaintingArea.cpp.

## Member Data Documentation

## ◆ colorPicker

IntelliColorPicker PaintingArea::colorPicker

Definition at line 223 of file PaintingArea.h.

## ◆ Toolsettings

IntelliToolsettings PaintingArea::Toolsettings

Definition at line 222 of file PaintingArea.h.

The documentation for this class was generated from the following files:

- src/Layer/PaintingArea.h
- src/Layer/PaintingArea.cpp