Merge branch 'dev-rework' into 'dev'

Started Rework

See merge request creyd/intelliphoto!44
This commit is contained in:
Conrad
2020-01-16 09:59:56 +00:00
35 changed files with 934 additions and 256 deletions

382
conf/intelliphoto_dox Normal file
View File

@@ -0,0 +1,382 @@
# Doxyfile 1.8.16
#---------------------------------------------------------------------------
# Project related configuration options
#---------------------------------------------------------------------------
DOXYFILE_ENCODING = UTF-8
PROJECT_NAME = IntelliPhoto
PROJECT_NUMBER = 0.5
PROJECT_BRIEF =
PROJECT_LOGO =
OUTPUT_DIRECTORY = docs
CREATE_SUBDIRS = NO
ALLOW_UNICODE_NAMES = NO
OUTPUT_LANGUAGE = English
OUTPUT_TEXT_DIRECTION = None
BRIEF_MEMBER_DESC = YES
REPEAT_BRIEF = YES
ABBREVIATE_BRIEF = "The $name class" \
"The $name widget" \
"The $name file" \
is \
provides \
specifies \
contains \
represents \
a \
an \
the
ALWAYS_DETAILED_SEC = NO
INLINE_INHERITED_MEMB = NO
FULL_PATH_NAMES = YES
STRIP_FROM_PATH =
STRIP_FROM_INC_PATH =
SHORT_NAMES = NO
JAVADOC_AUTOBRIEF = NO
JAVADOC_BANNER = NO
QT_AUTOBRIEF = NO
MULTILINE_CPP_IS_BRIEF = NO
INHERIT_DOCS = YES
SEPARATE_MEMBER_PAGES = NO
TAB_SIZE = 4
ALIASES =
TCL_SUBST =
OPTIMIZE_OUTPUT_FOR_C = NO
OPTIMIZE_OUTPUT_JAVA = NO
OPTIMIZE_FOR_FORTRAN = NO
OPTIMIZE_OUTPUT_VHDL = NO
OPTIMIZE_OUTPUT_SLICE = NO
EXTENSION_MAPPING =
MARKDOWN_SUPPORT = YES
TOC_INCLUDE_HEADINGS = 5
AUTOLINK_SUPPORT = YES
BUILTIN_STL_SUPPORT = NO
CPP_CLI_SUPPORT = NO
SIP_SUPPORT = NO
IDL_PROPERTY_SUPPORT = YES
DISTRIBUTE_GROUP_DOC = NO
GROUP_NESTED_COMPOUNDS = NO
SUBGROUPING = YES
INLINE_GROUPED_CLASSES = NO
INLINE_SIMPLE_STRUCTS = NO
TYPEDEF_HIDES_STRUCT = NO
LOOKUP_CACHE_SIZE = 0
#---------------------------------------------------------------------------
# Build related configuration options
#---------------------------------------------------------------------------
EXTRACT_ALL = YES
EXTRACT_PRIVATE = NO
EXTRACT_PRIV_VIRTUAL = NO
EXTRACT_PACKAGE = NO
EXTRACT_STATIC = NO
EXTRACT_LOCAL_CLASSES = YES
EXTRACT_LOCAL_METHODS = NO
EXTRACT_ANON_NSPACES = NO
HIDE_UNDOC_MEMBERS = NO
HIDE_UNDOC_CLASSES = NO
HIDE_FRIEND_COMPOUNDS = NO
HIDE_IN_BODY_DOCS = NO
INTERNAL_DOCS = NO
CASE_SENSE_NAMES = NO
HIDE_SCOPE_NAMES = NO
HIDE_COMPOUND_REFERENCE= NO
SHOW_INCLUDE_FILES = YES
SHOW_GROUPED_MEMB_INC = NO
FORCE_LOCAL_INCLUDES = NO
INLINE_INFO = YES
SORT_MEMBER_DOCS = YES
SORT_BRIEF_DOCS = NO
SORT_MEMBERS_CTORS_1ST = NO
SORT_GROUP_NAMES = NO
SORT_BY_SCOPE_NAME = NO
STRICT_PROTO_MATCHING = NO
GENERATE_TODOLIST = YES
GENERATE_TESTLIST = YES
GENERATE_BUGLIST = YES
GENERATE_DEPRECATEDLIST= YES
ENABLED_SECTIONS =
MAX_INITIALIZER_LINES = 30
SHOW_USED_FILES = YES
SHOW_FILES = YES
SHOW_NAMESPACES = YES
FILE_VERSION_FILTER =
LAYOUT_FILE =
CITE_BIB_FILES =
#---------------------------------------------------------------------------
# Configuration options related to warning and progress messages
#---------------------------------------------------------------------------
QUIET = NO
WARNINGS = YES
WARN_IF_UNDOCUMENTED = YES
WARN_IF_DOC_ERROR = YES
WARN_NO_PARAMDOC = NO
WARN_AS_ERROR = NO
WARN_FORMAT = "$file:$line: $text"
WARN_LOGFILE =
#---------------------------------------------------------------------------
# Configuration options related to the input files
#---------------------------------------------------------------------------
INPUT = src
INPUT_ENCODING = UTF-8
FILE_PATTERNS = *.c \
*.cc \
*.cxx \
*.cpp \
*.c++ \
*.java \
*.ii \
*.ixx \
*.ipp \
*.i++ \
*.inl \
*.idl \
*.ddl \
*.odl \
*.h \
*.hh \
*.hxx \
*.hpp \
*.h++ \
*.cs \
*.d \
*.php \
*.php4 \
*.php5 \
*.phtml \
*.inc \
*.m \
*.markdown \
*.md \
*.mm \
*.dox \
*.py \
*.pyw \
*.f90 \
*.f95 \
*.f03 \
*.f08 \
*.f \
*.for \
*.tcl \
*.vhd \
*.vhdl \
*.ucf \
*.qsf \
*.ice
RECURSIVE = YES
EXCLUDE =
EXCLUDE_SYMLINKS = NO
EXCLUDE_PATTERNS =
EXCLUDE_SYMBOLS =
EXAMPLE_PATH =
EXAMPLE_PATTERNS = *
EXAMPLE_RECURSIVE = NO
IMAGE_PATH =
INPUT_FILTER =
FILTER_PATTERNS =
FILTER_SOURCE_FILES = NO
FILTER_SOURCE_PATTERNS =
USE_MDFILE_AS_MAINPAGE =
#---------------------------------------------------------------------------
# Configuration options related to source browsing
#---------------------------------------------------------------------------
SOURCE_BROWSER = YES
INLINE_SOURCES = NO
STRIP_CODE_COMMENTS = YES
REFERENCED_BY_RELATION = NO
REFERENCES_RELATION = NO
REFERENCES_LINK_SOURCE = YES
SOURCE_TOOLTIPS = YES
USE_HTAGS = NO
VERBATIM_HEADERS = YES
CLANG_ASSISTED_PARSING = NO
CLANG_OPTIONS =
CLANG_DATABASE_PATH =
#---------------------------------------------------------------------------
# Configuration options related to the alphabetical class index
#---------------------------------------------------------------------------
ALPHABETICAL_INDEX = YES
COLS_IN_ALPHA_INDEX = 5
IGNORE_PREFIX =
#---------------------------------------------------------------------------
# Configuration options related to the HTML output
#---------------------------------------------------------------------------
GENERATE_HTML = YES
HTML_OUTPUT = html
HTML_FILE_EXTENSION = .html
HTML_HEADER =
HTML_FOOTER =
HTML_STYLESHEET =
HTML_EXTRA_STYLESHEET =
HTML_EXTRA_FILES =
HTML_COLORSTYLE_HUE = 187
HTML_COLORSTYLE_SAT = 5
HTML_COLORSTYLE_GAMMA = 150
HTML_TIMESTAMP = NO
HTML_DYNAMIC_MENUS = YES
HTML_DYNAMIC_SECTIONS = NO
HTML_INDEX_NUM_ENTRIES = 100
GENERATE_DOCSET = NO
DOCSET_FEEDNAME = "Doxygen generated docs"
DOCSET_BUNDLE_ID = org.doxygen.Project
DOCSET_PUBLISHER_ID = org.doxygen.Publisher
DOCSET_PUBLISHER_NAME = Publisher
GENERATE_HTMLHELP = NO
CHM_FILE =
HHC_LOCATION =
GENERATE_CHI = NO
CHM_INDEX_ENCODING =
BINARY_TOC = NO
TOC_EXPAND = NO
GENERATE_QHP = NO
QCH_FILE =
QHP_NAMESPACE = org.doxygen.Project
QHP_VIRTUAL_FOLDER = doc
QHP_CUST_FILTER_NAME =
QHP_CUST_FILTER_ATTRS =
QHP_SECT_FILTER_ATTRS =
QHG_LOCATION =
GENERATE_ECLIPSEHELP = NO
ECLIPSE_DOC_ID = org.doxygen.Project
DISABLE_INDEX = NO
GENERATE_TREEVIEW = YES
ENUM_VALUES_PER_LINE = 4
TREEVIEW_WIDTH = 250
EXT_LINKS_IN_WINDOW = NO
FORMULA_FONTSIZE = 10
FORMULA_TRANSPARENT = YES
USE_MATHJAX = NO
MATHJAX_FORMAT = HTML-CSS
MATHJAX_RELPATH = https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/
MATHJAX_EXTENSIONS =
MATHJAX_CODEFILE =
SEARCHENGINE = YES
SERVER_BASED_SEARCH = NO
EXTERNAL_SEARCH = NO
SEARCHENGINE_URL =
SEARCHDATA_FILE = searchdata.xml
EXTERNAL_SEARCH_ID =
EXTRA_SEARCH_MAPPINGS =
#---------------------------------------------------------------------------
# Configuration options related to the LaTeX output
#---------------------------------------------------------------------------
GENERATE_LATEX = NO
LATEX_OUTPUT = latex
LATEX_CMD_NAME =
MAKEINDEX_CMD_NAME = makeindex
LATEX_MAKEINDEX_CMD = makeindex
COMPACT_LATEX = NO
PAPER_TYPE = a4
EXTRA_PACKAGES =
LATEX_HEADER =
LATEX_FOOTER =
LATEX_EXTRA_STYLESHEET =
LATEX_EXTRA_FILES =
PDF_HYPERLINKS = YES
USE_PDFLATEX = YES
LATEX_BATCHMODE = NO
LATEX_HIDE_INDICES = NO
LATEX_SOURCE_CODE = NO
LATEX_BIB_STYLE = plain
LATEX_TIMESTAMP = NO
LATEX_EMOJI_DIRECTORY =
#---------------------------------------------------------------------------
# Configuration options related to the RTF output
#---------------------------------------------------------------------------
GENERATE_RTF = NO
RTF_OUTPUT = rtf
COMPACT_RTF = NO
RTF_HYPERLINKS = NO
RTF_STYLESHEET_FILE =
RTF_EXTENSIONS_FILE =
RTF_SOURCE_CODE = NO
#---------------------------------------------------------------------------
# Configuration options related to the man page output
#---------------------------------------------------------------------------
GENERATE_MAN = NO
MAN_OUTPUT = man
MAN_EXTENSION = .3
MAN_SUBDIR =
MAN_LINKS = NO
#---------------------------------------------------------------------------
# Configuration options related to the XML output
#---------------------------------------------------------------------------
GENERATE_XML = NO
XML_OUTPUT = xml
XML_PROGRAMLISTING = YES
XML_NS_MEMB_FILE_SCOPE = NO
#---------------------------------------------------------------------------
# Configuration options related to the DOCBOOK output
#---------------------------------------------------------------------------
GENERATE_DOCBOOK = NO
DOCBOOK_OUTPUT = docbook
DOCBOOK_PROGRAMLISTING = NO
#---------------------------------------------------------------------------
# Configuration options for the AutoGen Definitions output
#---------------------------------------------------------------------------
GENERATE_AUTOGEN_DEF = NO
#---------------------------------------------------------------------------
# Configuration options related to the Perl module output
#---------------------------------------------------------------------------
GENERATE_PERLMOD = NO
PERLMOD_LATEX = NO
PERLMOD_PRETTY = YES
PERLMOD_MAKEVAR_PREFIX =
#---------------------------------------------------------------------------
# Configuration options related to the preprocessor
#---------------------------------------------------------------------------
ENABLE_PREPROCESSING = YES
MACRO_EXPANSION = NO
EXPAND_ONLY_PREDEF = NO
SEARCH_INCLUDES = YES
INCLUDE_PATH =
INCLUDE_FILE_PATTERNS =
PREDEFINED =
EXPAND_AS_DEFINED =
SKIP_FUNCTION_MACROS = YES
#---------------------------------------------------------------------------
# Configuration options related to external references
#---------------------------------------------------------------------------
TAGFILES =
GENERATE_TAGFILE =
ALLEXTERNALS = NO
EXTERNAL_GROUPS = YES
EXTERNAL_PAGES = YES
#---------------------------------------------------------------------------
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
CLASS_DIAGRAMS = YES
DIA_PATH =
HIDE_UNDOC_RELATIONS = YES
HAVE_DOT = NO
DOT_NUM_THREADS = 0
DOT_FONTNAME = Helvetica
DOT_FONTSIZE = 10
DOT_FONTPATH =
CLASS_GRAPH = YES
COLLABORATION_GRAPH = YES
GROUP_GRAPHS = YES
UML_LOOK = NO
UML_LIMIT_NUM_FIELDS = 10
TEMPLATE_RELATIONS = NO
INCLUDE_GRAPH = YES
INCLUDED_BY_GRAPH = YES
CALL_GRAPH = NO
CALLER_GRAPH = NO
GRAPHICAL_HIERARCHY = YES
DIRECTORY_GRAPH = YES
DOT_IMAGE_FORMAT = png
INTERACTIVE_SVG = NO
DOT_PATH =
DOTFILE_DIRS =
MSCFILE_DIRS =
DIAFILE_DIRS =
PLANTUML_JAR_PATH =
PLANTUML_CFG_FILE =
PLANTUML_INCLUDE_PATH =
DOT_GRAPH_MAX_NODES = 50
MAX_DOT_GRAPH_DEPTH = 0
DOT_TRANSPARENT = NO
DOT_MULTI_TARGETS = NO
GENERATE_LEGEND = YES
DOT_CLEANUP = YES

View File

@@ -49,7 +49,7 @@ disable_processing_cmt = " *INDENT-OFF*" # string
enable_processing_cmt = " *INDENT-ON*" # string enable_processing_cmt = " *INDENT-ON*" # string
# Enable parsing of digraphs. # Enable parsing of digraphs.
enable_digraphs = false # true/false enable_digraphs = true # true/false
# Add or remove the UTF-8 BOM (recommend 'remove'). # Add or remove the UTF-8 BOM (recommend 'remove').
utf8_bom = ignore # ignore/add/remove/force utf8_bom = ignore # ignore/add/remove/force
@@ -59,16 +59,16 @@ utf8_bom = ignore # ignore/add/remove/force
utf8_byte = false # true/false utf8_byte = false # true/false
# Force the output encoding to UTF-8. # Force the output encoding to UTF-8.
utf8_force = false # true/false utf8_force = true # true/false
# Add or remove space between 'do' and '{'. # Add or remove space between 'do' and '{'.
sp_do_brace_open = ignore # ignore/add/remove/force sp_do_brace_open = add # ignore/add/remove/force
# Add or remove space between '}' and 'while'. # Add or remove space between '}' and 'while'.
sp_brace_close_while = ignore # ignore/add/remove/force sp_brace_close_while = add # ignore/add/remove/force
# Add or remove space between 'while' and '('. # Add or remove space between 'while' and '('.
sp_while_paren_open = ignore # ignore/add/remove/force sp_while_paren_open = add # ignore/add/remove/force
# #
# Spacing options # Spacing options
@@ -76,70 +76,70 @@ sp_while_paren_open = ignore # ignore/add/remove/force
# Add or remove space around non-assignment symbolic operators ('+', '/', '%', # Add or remove space around non-assignment symbolic operators ('+', '/', '%',
# '<<', and so forth). # '<<', and so forth).
sp_arith = ignore # ignore/add/remove/force sp_arith = add # ignore/add/remove/force
# Add or remove space around arithmetic operators '+' and '-'. # Add or remove space around arithmetic operators '+' and '-'.
# #
# Overrides sp_arith. # Overrides sp_arith.
sp_arith_additive = ignore # ignore/add/remove/force sp_arith_additive = add # ignore/add/remove/force
# Add or remove space around assignment operator '=', '+=', etc. # Add or remove space around assignment operator '=', '+=', etc.
sp_assign = ignore # ignore/add/remove/force sp_assign = add # ignore/add/remove/force
# Add or remove space around '=' in C++11 lambda capture specifications. # Add or remove space around '=' in C++11 lambda capture specifications.
# #
# Overrides sp_assign. # Overrides sp_assign.
sp_cpp_lambda_assign = ignore # ignore/add/remove/force sp_cpp_lambda_assign = add # ignore/add/remove/force
# Add or remove space after the capture specification of a C++11 lambda when # Add or remove space after the capture specification of a C++11 lambda when
# an argument list is present, as in '[] <here> (int x){ ... }'. # an argument list is present, as in '[] <here> (int x){ ... }'.
sp_cpp_lambda_square_paren = ignore # ignore/add/remove/force sp_cpp_lambda_square_paren = add # ignore/add/remove/force
# Add or remove space after the capture specification of a C++11 lambda with # Add or remove space after the capture specification of a C++11 lambda with
# no argument list is present, as in '[] <here> { ... }'. # no argument list is present, as in '[] <here> { ... }'.
sp_cpp_lambda_square_brace = ignore # ignore/add/remove/force sp_cpp_lambda_square_brace = add # ignore/add/remove/force
# Add or remove space after the argument list of a C++11 lambda, as in # Add or remove space after the argument list of a C++11 lambda, as in
# '[](int x) <here> { ... }'. # '[](int x) <here> { ... }'.
sp_cpp_lambda_paren_brace = ignore # ignore/add/remove/force sp_cpp_lambda_paren_brace = add # ignore/add/remove/force
# Add or remove space between a lambda body and its call operator of an # Add or remove space between a lambda body and its call operator of an
# immediately invoked lambda, as in '[]( ... ){ ... } <here> ( ... )'. # immediately invoked lambda, as in '[]( ... ){ ... } <here> ( ... )'.
sp_cpp_lambda_fparen = ignore # ignore/add/remove/force sp_cpp_lambda_fparen = add # ignore/add/remove/force
# Add or remove space around assignment operator '=' in a prototype. # Add or remove space around assignment operator '=' in a prototype.
# #
# If set to ignore, use sp_assign. # If set to ignore, use sp_assign.
sp_assign_default = ignore # ignore/add/remove/force sp_assign_default = add # ignore/add/remove/force
# Add or remove space before assignment operator '=', '+=', etc. # Add or remove space before assignment operator '=', '+=', etc.
# #
# Overrides sp_assign. # Overrides sp_assign.
sp_before_assign = ignore # ignore/add/remove/force sp_before_assign = add # ignore/add/remove/force
# Add or remove space after assignment operator '=', '+=', etc. # Add or remove space after assignment operator '=', '+=', etc.
# #
# Overrides sp_assign. # Overrides sp_assign.
sp_after_assign = ignore # ignore/add/remove/force sp_after_assign = add # ignore/add/remove/force
# Add or remove space in 'NS_ENUM ('. # Add or remove space in 'NS_ENUM ('.
sp_enum_paren = ignore # ignore/add/remove/force sp_enum_paren = add # ignore/add/remove/force
# Add or remove space around assignment '=' in enum. # Add or remove space around assignment '=' in enum.
sp_enum_assign = ignore # ignore/add/remove/force sp_enum_assign = add # ignore/add/remove/force
# Add or remove space before assignment '=' in enum. # Add or remove space before assignment '=' in enum.
# #
# Overrides sp_enum_assign. # Overrides sp_enum_assign.
sp_enum_before_assign = ignore # ignore/add/remove/force sp_enum_before_assign = add # ignore/add/remove/force
# Add or remove space after assignment '=' in enum. # Add or remove space after assignment '=' in enum.
# #
# Overrides sp_enum_assign. # Overrides sp_enum_assign.
sp_enum_after_assign = ignore # ignore/add/remove/force sp_enum_after_assign = add # ignore/add/remove/force
# Add or remove space around assignment ':' in enum. # Add or remove space around assignment ':' in enum.
sp_enum_colon = ignore # ignore/add/remove/force sp_enum_colon = add # ignore/add/remove/force
# Add or remove space around preprocessor '##' concatenation operator. # Add or remove space around preprocessor '##' concatenation operator.
# #

300
cppcheck_config.txt Normal file
View File

@@ -0,0 +1,300 @@
src/GUI/IntelliPhotoGui.h:4:0: information: Include file: <QtWidgets> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/GUI/IntelliPhotoGui.h:5:0: information: Include file: <QPixmap> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/GUI/IntelliPhotoGui.h:6:0: information: Include file: <QList> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/GUI/IntelliPhotoGui.h:7:0: information: Include file: <QMainWindow> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/GUI/IntelliPhotoGui.h:8:0: information: Include file: <QGridLayout> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/GUI/IntelliPhotoGui.h:9:0: information: Include file: <QPushButton> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/GUI/IntelliPhotoGui.h:10:0: information: Include file: <QTextEdit> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/GUI/IntelliPhotoGui.h:11:0: information: Include file: <QLabel> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/GUI/IntelliPhotoGui.h:12:0: information: Include file: <QLineEdit> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/GUI/IntelliPhotoGui.cpp:4:0: information: Include file: "Layer/PaintingArea.h" not found. [missingInclude]
^
src/Image/IntelliImage.cpp:1:0: information: Include file: "Image/IntelliImage.h" not found. [missingInclude]
^
src/Image/IntelliImage.cpp:2:0: information: Include file: <QSize> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Image/IntelliImage.cpp:3:0: information: Include file: <QPainter> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Image/IntelliRasterImage.cpp:1:0: information: Include file: "Image/IntelliRasterImage.h" not found. [missingInclude]
^
src/Image/IntelliRasterImage.cpp:2:0: information: Include file: <QPainter> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Image/IntelliRasterImage.cpp:3:0: information: Include file: <QRect> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Image/IntelliRasterImage.cpp:4:0: information: Include file: <QDebug> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Image/IntelliShapedImage.cpp:1:0: information: Include file: "Image/IntelliShapedImage.h" not found. [missingInclude]
^
src/Image/IntelliShapedImage.cpp:2:0: information: Include file: "IntelliHelper/IntelliTriangulation.h" not found. [missingInclude]
^
src/Image/IntelliShapedImage.cpp:3:0: information: Include file: <QPainter> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Image/IntelliShapedImage.cpp:4:0: information: Include file: <QRect> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Image/IntelliShapedImage.cpp:5:0: information: Include file: <QDebug> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/IntelliHelper/IntelliColorPicker.h:4:0: information: Include file: "QColor" not found. [missingInclude]
^
src/IntelliHelper/IntelliColorPicker.h:5:0: information: Include file: "QPoint" not found. [missingInclude]
^
src/IntelliHelper/IntelliColorPicker.h:6:0: information: Include file: "QColorDialog" not found. [missingInclude]
^
src/IntelliHelper/IntelliToolsettings.cpp:2:0: information: Include file: <QInputDialog> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/IntelliHelper/IntelliTriangulation.h:4:0: information: Include file: <QPoint> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/IntelliHelper/IntelliTriangulation.h:5:0: information: Include file: <vector> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/IntelliHelper/IntelliTriangulation.cpp:2:0: information: Include file: <algorithm> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/IntelliHelper/IntelliTriangulation.cpp:3:0: information: Include file: <queue> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/IntelliHelper/IntelliTriangulation.cpp:4:0: information: Include file: <cmath> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Layer/PaintingArea.cpp:2:0: information: Include file: "string.h" not found. [missingInclude]
^
src/Layer/PaintingArea.cpp:4:0: information: Include file: <vector> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Layer/PaintingArea.cpp:6:0: information: Include file: <QtWidgets> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Layer/PaintingArea.cpp:7:0: information: Include file: <QPoint> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Layer/PaintingArea.cpp:8:0: information: Include file: <QRect> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Layer/PaintingArea.h:5:0: information: Include file: <QColor> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Layer/PaintingArea.h:6:0: information: Include file: <QImage> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Layer/PaintingArea.h:7:0: information: Include file: <QPoint> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Layer/PaintingArea.h:8:0: information: Include file: <QWidget> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Layer/PaintingArea.h:9:0: information: Include file: <QList> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Layer/PaintingArea.h:10:0: information: Include file: "GUI/IntelliPhotoGui.h" not found. [missingInclude]
^
src/Layer/PaintingArea.h:11:0: information: Include file: "Image/IntelliImage.h" not found. [missingInclude]
^
src/Layer/PaintingArea.h:12:0: information: Include file: "Image/IntelliRasterImage.h" not found. [missingInclude]
^
src/Layer/PaintingArea.h:13:0: information: Include file: "Image/IntelliShapedImage.h" not found. [missingInclude]
^
src/Layer/PaintingArea.h:14:0: information: Include file: "Tool/IntelliTool.h" not found. [missingInclude]
^
src/Layer/PaintingArea.h:15:0: information: Include file: "IntelliHelper/IntelliColorPicker.h" not found. [missingInclude]
^
src/Layer/PaintingArea.cpp:11:0: information: Include file: "Image/IntelliRasterImage.h" not found. [missingInclude]
^
src/Layer/PaintingArea.cpp:12:0: information: Include file: "Image/IntelliShapedImage.h" not found. [missingInclude]
^
src/Layer/PaintingArea.cpp:13:0: information: Include file: "Tool/IntelliToolPen.h" not found. [missingInclude]
^
src/Layer/PaintingArea.cpp:14:0: information: Include file: "Tool/IntelliToolPlain.h" not found. [missingInclude]
^
src/Layer/PaintingArea.cpp:15:0: information: Include file: "Tool/IntelliToolLine.h" not found. [missingInclude]
^
src/Layer/PaintingArea.cpp:16:0: information: Include file: "Tool/IntelliToolCircle.h" not found. [missingInclude]
^
src/Layer/PaintingArea.cpp:17:0: information: Include file: "Tool/IntelliToolRectangle.h" not found. [missingInclude]
^
src/Layer/PaintingArea.cpp:18:0: information: Include file: "Tool/IntelliToolFloodFill.h" not found. [missingInclude]
^
src/Layer/PaintingArea.cpp:19:0: information: Include file: "Tool/IntelliToolPolygon.h" not found. [missingInclude]
^
src/Tool/IntelliColorPicker.cpp:1:0: information: Include file: "IntelliColorPicker.h" not found. [missingInclude]
^
src/Tool/IntelliColorPicker.cpp:2:0: information: Include file: "QDebug" not found. [missingInclude]
^
src/Tool/IntelliTool.h:4:0: information: Include file: "IntelliHelper/IntelliColorPicker.h" not found. [missingInclude]
^
src/Tool/IntelliTool.h:5:0: information: Include file: "IntelliHelper/IntelliToolsettings.h" not found. [missingInclude]
^
src/Tool/IntelliTool.h:6:0: information: Include file: <vector> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Tool/IntelliTool.cpp:2:0: information: Include file: "Layer/PaintingArea.h" not found. [missingInclude]
^
src/Tool/IntelliToolCircle.h:5:0: information: Include file: "QColor" not found. [missingInclude]
^
src/Tool/IntelliToolCircle.h:6:0: information: Include file: "QPoint" not found. [missingInclude]
^
src/Tool/IntelliToolCircle.cpp:2:0: information: Include file: "Layer/PaintingArea.h" not found. [missingInclude]
^
src/Tool/IntelliToolCircle.cpp:3:0: information: Include file: "QInputDialog" not found. [missingInclude]
^
src/Tool/IntelliToolCircle.cpp:4:0: information: Include file: <cmath> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Tool/IntelliToolFloodFill.h:5:0: information: Include file: "QColor" not found. [missingInclude]
^
src/Tool/IntelliToolFloodFill.cpp:2:0: information: Include file: "Layer/PaintingArea.h" not found. [missingInclude]
^
src/Tool/IntelliToolFloodFill.cpp:3:0: information: Include file: "QColorDialog" not found. [missingInclude]
^
src/Tool/IntelliToolFloodFill.cpp:4:0: information: Include file: "QInputDialog" not found. [missingInclude]
^
src/Tool/IntelliToolFloodFill.cpp:5:0: information: Include file: <functional> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Tool/IntelliToolFloodFill.cpp:6:0: information: Include file: <queue> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Tool/IntelliToolLine.h:5:0: information: Include file: "QPoint" not found. [missingInclude]
^
src/Tool/IntelliToolLine.cpp:2:0: information: Include file: "Layer/PaintingArea.h" not found. [missingInclude]
^
src/Tool/IntelliToolLine.cpp:3:0: information: Include file: "QColorDialog" not found. [missingInclude]
^
src/Tool/IntelliToolLine.cpp:4:0: information: Include file: "QInputDialog" not found. [missingInclude]
^
src/Tool/IntelliToolPen.h:5:0: information: Include file: "QColor" not found. [missingInclude]
^
src/Tool/IntelliToolPen.h:6:0: information: Include file: "QPoint" not found. [missingInclude]
^
src/Tool/IntelliToolPen.cpp:2:0: information: Include file: "Layer/PaintingArea.h" not found. [missingInclude]
^
src/Tool/IntelliToolPen.cpp:3:0: information: Include file: "QDebug" not found. [missingInclude]
^
src/Tool/IntelliToolPen.cpp:4:0: information: Include file: "QColorDialog" not found. [missingInclude]
^
src/Tool/IntelliToolPen.cpp:5:0: information: Include file: "QInputDialog" not found. [missingInclude]
^
src/Tool/IntelliToolPlain.h:5:0: information: Include file: "QColor" not found. [missingInclude]
^
src/Tool/IntelliToolPlain.cpp:2:0: information: Include file: "Layer/PaintingArea.h" not found. [missingInclude]
^
src/Tool/IntelliToolPlain.cpp:3:0: information: Include file: "QColorDialog" not found. [missingInclude]
^
src/Tool/IntelliToolPolygon.h:5:0: information: Include file: "IntelliHelper/IntelliTriangulation.h" not found. [missingInclude]
^
src/Tool/IntelliToolPolygon.h:6:0: information: Include file: <vector> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Tool/IntelliToolPolygon.h:7:0: information: Include file: <QPoint> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Tool/IntelliToolPolygon.cpp:2:0: information: Include file: "Layer/PaintingArea.h" not found. [missingInclude]
^
src/Tool/IntelliToolPolygon.cpp:3:0: information: Include file: <QCursor> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Tool/IntelliToolPolygon.cpp:4:0: information: Include file: <QInputDialog> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Tool/IntelliToolPolygon.cpp:5:0: information: Include file: <QDebug> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/Tool/IntelliToolRectangle.h:6:0: information: Include file: "QColor" not found. [missingInclude]
^
src/Tool/IntelliToolRectangle.h:7:0: information: Include file: "QPoint" not found. [missingInclude]
^
src/Tool/IntelliToolRectangle.cpp:2:0: information: Include file: "Layer/PaintingArea.h" not found. [missingInclude]
^
src/Tool/IntelliToolRectangle.cpp:3:0: information: Include file: "QInputDialog" not found. [missingInclude]
^
src/main.cpp:2:0: information: Include file: <QApplication> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/main.cpp:3:0: information: Include file: <QDebug> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^
src/main.cpp:4:0: information: Include file: <vector> not found. Please note: Cppcheck does not need standard library headers to get proper results. [missingIncludeSystem]
^

View File

@@ -7,7 +7,7 @@ src/IntelliHelper/IntelliColorPicker.cpp:5:3: performance: Variable 'secondColor
src/IntelliHelper/IntelliTriangulation.cpp:116:63: style: Parameter 'triangles' can be declared with const [constParameter] src/IntelliHelper/IntelliTriangulation.cpp:116:63: style: Parameter 'triangles' can be declared with const [constParameter]
bool IntelliTriangulation::isInPolygon(std::vector<Triangle> &triangles, QPoint &point){ bool IntelliTriangulation::isInPolygon(std::vector<Triangle> &triangles, QPoint &point){
^ ^
src/Layer/PaintingArea.cpp:334:28: style: Redundant condition: If 'activeLayer > 0', the comparison 'activeLayer != -1' is always true. [redundantCondition] src/Layer/PaintingArea.cpp:334:22: style: Redundant condition: If 'activeLayer > 0', the comparison 'activeLayer != -1' is always true. [redundantCondition]
if(activeLayer!=-1 && activeLayer>0) { if(activeLayer!=-1 && activeLayer>0) {
^ ^
src/Tool/IntelliTool.cpp:4:14: warning: Member variable 'IntelliTool::ActiveType' is not initialized in the constructor. [uninitMemberVar] src/Tool/IntelliTool.cpp:4:14: warning: Member variable 'IntelliTool::ActiveType' is not initialized in the constructor. [uninitMemberVar]
@@ -37,9 +37,6 @@ src/Tool/IntelliToolCircle.cpp:18:13: note: Shadowed declaration
src/Tool/IntelliToolCircle.cpp:43:9: note: Shadow variable src/Tool/IntelliToolCircle.cpp:43:9: note: Shadow variable
int yMax = static_cast<int>(centerPoint.y() + sqrt(pow(radius,2) - pow(i - centerPoint.x(),2))); int yMax = static_cast<int>(centerPoint.y() + sqrt(pow(radius,2) - pow(i - centerPoint.x(),2)));
^ ^
src/Tool/IntelliToolLine.cpp:51:13: style: Variable 'c' is assigned a value that is never used. [unreadVariable]
int c = lineStartingPoint.y()-lineStartingPoint.x()*m;
^
src/Tool/IntelliToolPolygon.h:25:6: warning: The class 'IntelliToolPolygon' defines member variable with name 'isDrawing' also defined in its parent class 'IntelliTool'. [duplInheritedMember] src/Tool/IntelliToolPolygon.h:25:6: warning: The class 'IntelliToolPolygon' defines member variable with name 'isDrawing' also defined in its parent class 'IntelliTool'. [duplInheritedMember]
bool isDrawing; bool isDrawing;
^ ^

15
mergeprep.sh Executable file
View File

@@ -0,0 +1,15 @@
# Run CPP Check
echo "Running CPPCheck..."
cppcheck --enable=all --output-file=cppcheck_errors.txt src/
cppcheck --check-config --output-file=cppcheck_config.txt src/
echo "CPPCheck finished"
# Uncrustify Files
echo "Running Uncrustify..."
find . \( -name "*.cpp" -o -name "*.c" -o -name "*.h" \) -exec uncrustify -c conf/uncrustify.cfg --no-backup {} +
echo "Uncrustify finished."
# Adding changes to git
echo "Committing Changes to Git..."
git add '*'
git commit -m "Automated Merge Preparation"
echo "Committed."
echo "Finished."

34
releaseprep.sh Executable file
View File

@@ -0,0 +1,34 @@
# Discarding local changes
echo "This will discard all your uncommited changes and restore the last commit. Continue?"
read
git reset --hard
# Run CPP Check
echo "Running CPPCheck..."
cppcheck --enable=all --output-file=cppcheck_errors.txt src/
cppcheck --check-config --output-file=cppcheck_config.txt src/
echo "CPPCheck finished"
# Uncrustify Files
echo "Running Uncrustify..."
find . \( -name "*.cpp" -o -name "*.c" -o -name "*.h" \) -exec uncrustify -c conf/uncrustify.cfg --no-backup {} +
echo "Uncrustify finished."
# Run Unit Tests
echo "Running unit tests..."
echo "Finished unit testing."
# Remove Overhead Folders/ Files
echo "Cleaning directory..."
rm -r src/build-*
rm -r build-*/
rm -r Examples/
rm src/*.pro.user
echo "Directory cleaned."
# Run Doxygen
echo "Running Doxygen..."
doxygen conf/intelliphoto_dox
echo "Doxygen finished."
# Adding changes to git
echo "Committing Changes to Git..."
git add '*'
git commit -m "Automated Release Preparation"
echo "Committed."
echo "Finished."

View File

@@ -101,13 +101,9 @@ void IntelliPhotoGui::slotCreateNewShapedLayer(){
QInputDialog Input; QInputDialog Input;
Input.setPalette(Palette); Input.setPalette(Palette);
int width = Input.getInt(this, tr("New Layer"), int width = Input.getInt(this, tr("New Layer"), tr("Width:"), 200, 1, 500, 1, &ok1);
tr("Width:"),
200,1, 500, 1, &ok1);
int height = QInputDialog::getInt(this, tr("New Layer"), int height = QInputDialog::getInt(this, tr("New Layer"), tr("Height:"), 200, 1, 500, 1, &ok2);
tr("Height:"),
200,1, 500, 1, &ok2);
// Create New Layer // Create New Layer
if (ok1&&ok2) { if (ok1&&ok2) {
paintingArea->addLayer(width, height, 0, 0, IntelliImage::ImageType::SHAPEDIMAGE); paintingArea->addLayer(width, height, 0, 0, IntelliImage::ImageType::SHAPEDIMAGE);

View File

@@ -11,7 +11,6 @@
#include <QLabel> #include <QLabel>
#include <QLineEdit> #include <QLineEdit>
// PaintingArea used to paint the image
class PaintingArea; class PaintingArea;
class IntelliTool; class IntelliTool;
@@ -19,12 +18,9 @@ class IntelliTool;
class IntelliColorPicker; class IntelliColorPicker;
/*! /*!
* \brief The IntelliPhotoGui class handles the graphical user interface for the intelliPhoto program * \brief The IntelliPhotoGui base class handles the graphical user interface and events for the intelliPhoto program
*/ */
class IntelliPhotoGui : public QMainWindow { class IntelliPhotoGui : public QMainWindow {
// Declares our class as a QObject which is the base class
// for all Qt objects
// QObjects handle events
Q_OBJECT Q_OBJECT
public: public:
/*! /*!
@@ -35,11 +31,12 @@ IntelliPhotoGui();
void UpdateGui(); void UpdateGui();
protected: protected:
// Function used to close an event /*!
* \brief The closeEvent function handles closing events
*/
void closeEvent(QCloseEvent*event) override; void closeEvent(QCloseEvent*event) override;
private slots: private slots:
// meta slots here (need further )
void slotOpen(); void slotOpen();
void slotSave(); void slotSave();
@@ -57,16 +54,13 @@ void slotPositionMoveRight();
void slotMoveLayerUp(); void slotMoveLayerUp();
void slotMoveLayerDown(); void slotMoveLayerDown();
//Rendersetting slots here
void slotUpdateRenderSettingsOn(); void slotUpdateRenderSettingsOn();
void slotUpdateRenderSettingsOff(); void slotUpdateRenderSettingsOff();
// color Picker slots here
void slotSetFirstColor(); void slotSetFirstColor();
void slotSetSecondColor(); void slotSetSecondColor();
void slotSwapColor(); void slotSwapColor();
// tool slots here
void slotCreatePenTool(); void slotCreatePenTool();
void slotCreatePlainTool(); void slotCreatePlainTool();
void slotCreateLineTool(); void slotCreateLineTool();
@@ -75,7 +69,6 @@ void slotCreateCircleTool();
void slotCreatePolygonTool(); void slotCreatePolygonTool();
void slotCreateFloodFillTool(); void slotCreateFloodFillTool();
// slots for dialogs
void slotAboutDialog(); void slotAboutDialog();
void slotEnterPressed(); void slotEnterPressed();
@@ -86,12 +79,10 @@ void slotSetInnerAlpha();
void slotResetTools(); void slotResetTools();
private: private:
// Will tie user actions to functions
void createActions(); void createActions();
void createMenus(); void createMenus();
// setup GUI elements
void createGui(); void createGui();
// set style of the GUI // Set the style of the GUI
void setIntelliStyle(); void setIntelliStyle();
// Will check if changes have occurred since last save // Will check if changes have occurred since last save

View File

@@ -61,4 +61,4 @@ QColor firstColor;
QColor secondColor; QColor secondColor;
}; };
#endif // INTELLITOOLSETCOLORTOOL_H #endif

View File

@@ -22,4 +22,4 @@ private:
bool fastRenderering = true; bool fastRenderering = true;
}; };
#endif // INTELLIRENDERSETTINGS_H #endif

View File

@@ -5,7 +5,6 @@ IntelliToolsettings::IntelliToolsettings()
{ {
lineWidth = 1; lineWidth = 1;
innerAlpha = 255; innerAlpha = 255;
Linestyle = LineStyle::SOLID_LINE;
} }
IntelliToolsettings::~IntelliToolsettings(){ IntelliToolsettings::~IntelliToolsettings(){
@@ -47,7 +46,3 @@ void IntelliToolsettings::setInnerAlpha(int innerAlpha){
} }
this->innerAlpha = innerAlpha; this->innerAlpha = innerAlpha;
} }
IntelliToolsettings::LineStyle IntelliToolsettings::getLinestyle(){
return Linestyle;
}

View File

@@ -3,13 +3,6 @@
class IntelliToolsettings { class IntelliToolsettings {
public: public:
/*!
* \brief The LineStyle enum classifing all ways of drawing a line.
*/
enum class LineStyle {
SOLID_LINE,
DOTTED_LINE
};
IntelliToolsettings(); IntelliToolsettings();
virtual ~IntelliToolsettings(); virtual ~IntelliToolsettings();
int getLineWidth(); int getLineWidth();
@@ -18,12 +11,10 @@ void setLineWidth(int LineWidth);
int getInnerAlpha(); int getInnerAlpha();
void setInnerAlpha(); void setInnerAlpha();
void setInnerAlpha(int innerAlpha); void setInnerAlpha(int innerAlpha);
LineStyle getLinestyle();
private: private:
int lineWidth; int lineWidth;
int innerAlpha; int innerAlpha;
LineStyle Linestyle;
}; };
#endif // INTELLITOOLSETTINGS_H #endif

View File

@@ -36,9 +36,6 @@ struct LayerObject {
*/ */
class PaintingArea : public QWidget class PaintingArea : public QWidget
{ {
// Declares our class as a QObject which is the base class
// for all Qt objects
// QObjects handle events
Q_OBJECT Q_OBJECT
friend IntelliTool; friend IntelliTool;
friend IntelliPhotoGui; friend IntelliPhotoGui;
@@ -56,8 +53,6 @@ PaintingArea(int maxWidth=600, int maxHeight=600, QWidget*parent = nullptr);
*/ */
~PaintingArea() override; ~PaintingArea() override;
// Handles all events
/*! /*!
* \brief setRenderSettings updates all Images to the new Rendersetting. * \brief setRenderSettings updates all Images to the new Rendersetting.
* \param isFastRenderingOn is the new given flag for the FastRenderer. * \param isFastRenderingOn is the new given flag for the FastRenderer.
@@ -133,7 +128,6 @@ void movePositionActive(int x, int y);
*/ */
void moveActiveLayer(int idx); void moveActiveLayer(int idx);
//change properties of colorPicker
/*! /*!
* \brief The colorPickerSetFirstColor calls the QTColorPicker to determine the primary drawing color * \brief The colorPickerSetFirstColor calls the QTColorPicker to determine the primary drawing color
*/ */
@@ -147,7 +141,6 @@ void colorPickerSetSecondColor();
*/ */
void colorPickerSwapColors(); void colorPickerSwapColors();
// Create tools
void createPenTool(); void createPenTool();
void createPlainTool(); void createPlainTool();
void createLineTool(); void createLineTool();
@@ -185,7 +178,6 @@ IntelliToolsettings Toolsettings;
IntelliColorPicker colorPicker; IntelliColorPicker colorPicker;
public slots: public slots:
// Events to handle
/*! /*!
* \brief The slotActivateLayer method handles the event of selecting one layer as active * \brief The slotActivateLayer method handles the event of selecting one layer as active
* \param a - idx of the layer to be active * \param a - idx of the layer to be active
@@ -202,11 +194,9 @@ void mouseMoveEvent(QMouseEvent*event) override;
void mouseReleaseEvent(QMouseEvent*event) override; void mouseReleaseEvent(QMouseEvent*event) override;
void wheelEvent(QWheelEvent*event) override; void wheelEvent(QWheelEvent*event) override;
// Updates the painting area where we are painting
void paintEvent(QPaintEvent*event) override; void paintEvent(QPaintEvent*event) override;
// Makes sure the area we are drawing on remains
// as large as the widget
void resizeEvent(QResizeEvent*event) override; void resizeEvent(QResizeEvent*event) override;
private: private:
@@ -232,10 +222,8 @@ void drawLayers(bool forSaving=false);
void resizeLayer(QImage*image_res, const QSize &newSize); void resizeLayer(QImage*image_res, const QSize &newSize);
// Helper for Tool
bool createTempTopLayer(int idx); bool createTempTopLayer(int idx);
//this function is needed to avoid errors in inputhandeling if a layer has changed
void updateTools(); void updateTools();
}; };

View File

@@ -74,4 +74,4 @@ virtual void onWheelScrolled(int value) override;
virtual void onMouseMoved(int x, int y) override; virtual void onMouseMoved(int x, int y) override;
}; };
#endif // INTELLITOOLCIRCLE_H #endif

View File

@@ -64,4 +64,4 @@ virtual void onWheelScrolled(int value) override;
virtual void onMouseMoved(int x, int y) override; virtual void onMouseMoved(int x, int y) override;
}; };
#endif // INTELLITOOLFLOODFILL_H #endif

View File

@@ -40,18 +40,7 @@ void IntelliToolLine::onMouseMoved(int x, int y){
if(this->isDrawing) { if(this->isDrawing) {
this->Canvas->image->drawPlain(Qt::transparent); this->Canvas->image->drawPlain(Qt::transparent);
QPoint next(x,y); QPoint next(x,y);
switch(Toolsettings->getLinestyle()) {
case IntelliToolsettings::LineStyle::SOLID_LINE:
this->Canvas->image->drawLine(lineStartingPoint,next,colorPicker->getFirstColor(),Toolsettings->getLineWidth()); this->Canvas->image->drawLine(lineStartingPoint,next,colorPicker->getFirstColor(),Toolsettings->getLineWidth());
break;
case IntelliToolsettings::LineStyle::DOTTED_LINE:
QPoint p1 =lineStartingPoint.x() <= next.x() ? lineStartingPoint : next;
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
break;
}
} }
IntelliTool::onMouseMoved(x,y); IntelliTool::onMouseMoved(x,y);
} }

View File

@@ -16,7 +16,7 @@ QPoint lineStartingPoint;
public: public:
/*! /*!
* \brief A constructor setting the general paintingArea and colorPicker. And reading in the lineWidth and lineStyle. * \brief A constructor setting the general paintingArea and colorPicker.
* \param Area - The general paintingArea used by the project. * \param Area - The general paintingArea used by the project.
* \param colorPicker - The general colorPicker used by the project. * \param colorPicker - The general colorPicker used by the project.
*/ */
@@ -69,4 +69,4 @@ virtual void onWheelScrolled(int value) override;
virtual void onMouseMoved(int x, int y) override; virtual void onMouseMoved(int x, int y) override;
}; };
#endif // INTELLITOOLLINE_H #endif

View File

@@ -67,4 +67,4 @@ virtual void onWheelScrolled(int value) override;
virtual void onMouseMoved(int x, int y) override; virtual void onMouseMoved(int x, int y) override;
}; };
#endif // INTELLITOOLPEN_H #endif

View File

@@ -62,4 +62,4 @@ virtual void onMouseMoved(int x, int y) override;
}; };
#endif // INTELLITOOLFLOODFILLTOOL_H #endif

View File

@@ -99,4 +99,4 @@ virtual void onMouseMoved(int x, int y) override;
}; };
#endif // INTELLITOOLPOLYGON_H #endif

View File

@@ -73,4 +73,4 @@ virtual void onWheelScrolled(int value) override;
virtual void onMouseMoved(int x, int y) override; virtual void onMouseMoved(int x, int y) override;
}; };
#endif // INTELLIRECTANGLETOOL_H #endif