Dummy base for Puzzle application.
This commit is contained in:
parent
0483dd508e
commit
732cda4b46
BIN
dist/Puzzle.icns
vendored
Normal file
BIN
dist/Puzzle.icns
vendored
Normal file
Binary file not shown.
30
dist/macx/puzzle/Info.plist
vendored
Executable file
30
dist/macx/puzzle/Info.plist
vendored
Executable file
|
@ -0,0 +1,30 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>NSPrincipalClass</key>
|
||||||
|
<string>NSApplication</string>
|
||||||
|
<key>CFBundleIconFile</key>
|
||||||
|
<string>@ICON@</string>
|
||||||
|
<key>CFBundlePackageType</key>
|
||||||
|
<string>APPL</string>
|
||||||
|
<key>LSMinimumSystemVersion</key>
|
||||||
|
<string>10.6</string>
|
||||||
|
<key>NSHumanReadableCopyright</key>
|
||||||
|
<string>© 2013-2020, Valentina project</string>
|
||||||
|
<key>CFBundleSignature</key>
|
||||||
|
<string>@TYPEINFO@</string>
|
||||||
|
<key>CFBundleExecutable</key>
|
||||||
|
<string>@EXECUTABLE@</string>
|
||||||
|
<key>CFBundleIdentifier</key>
|
||||||
|
<string>io.bitbucket.valentinaproject.@EXECUTABLE@</string>
|
||||||
|
<key>CFBundleShortVersionString</key>
|
||||||
|
<string>0.7.0</string>
|
||||||
|
<key>CFBundleVersion</key>
|
||||||
|
<string>0.7.0.0</string>
|
||||||
|
<key>CFBundleInfoDictionaryVersion</key>
|
||||||
|
<string>6.0</string>
|
||||||
|
<key>NSRequiresAquaSystemAppearance</key>
|
||||||
|
<true/>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
|
@ -1,8 +1,10 @@
|
||||||
TEMPLATE = subdirs
|
TEMPLATE = subdirs
|
||||||
SUBDIRS = \
|
SUBDIRS = \
|
||||||
tape \
|
tape \
|
||||||
valentina
|
valentina \
|
||||||
|
puzzle
|
||||||
|
|
||||||
macx{# For making app bundle tape must exist before valentina.app will be created
|
macx{# For making app bundle tape and puzzle must exist before valentina.app will be created
|
||||||
valentina.depends = tape
|
valentina.depends = tape
|
||||||
|
valentina.depends = puzzle
|
||||||
}
|
}
|
||||||
|
|
38
src/app/puzzle/main.cpp
Normal file
38
src/app/puzzle/main.cpp
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
/************************************************************************
|
||||||
|
**
|
||||||
|
** @file main.cpp
|
||||||
|
** @author Roman Telezhynskyi <dismine(at)gmail.com>
|
||||||
|
** @date 16 2, 2020
|
||||||
|
**
|
||||||
|
** @brief
|
||||||
|
** @copyright
|
||||||
|
** This source code is part of the Valentina project, a pattern making
|
||||||
|
** program, whose allow create and modeling patterns of clothing.
|
||||||
|
** Copyright (C) 2020 Valentina project
|
||||||
|
** <https://gitlab.com/smart-pattern/valentina> All Rights Reserved.
|
||||||
|
**
|
||||||
|
** Valentina is free software: you can redistribute it and/or modify
|
||||||
|
** it under the terms of the GNU General Public License as published by
|
||||||
|
** the Free Software Foundation, either version 3 of the License, or
|
||||||
|
** (at your option) any later version.
|
||||||
|
**
|
||||||
|
** Valentina is distributed in the hope that it will be useful,
|
||||||
|
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
** GNU General Public License for more details.
|
||||||
|
**
|
||||||
|
** You should have received a copy of the GNU General Public License
|
||||||
|
** along with Valentina. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
**
|
||||||
|
*************************************************************************/
|
||||||
|
#include "puzzlemainwindow.h"
|
||||||
|
#include <QApplication>
|
||||||
|
|
||||||
|
int main(int argc, char *argv[])
|
||||||
|
{
|
||||||
|
QApplication a(argc, argv);
|
||||||
|
PuzzleMainWindow w;
|
||||||
|
w.show();
|
||||||
|
|
||||||
|
return a.exec();
|
||||||
|
}
|
15
src/app/puzzle/puzzle.pri
Normal file
15
src/app/puzzle/puzzle.pri
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
# ADD TO EACH PATH $$PWD VARIABLE!!!!!!
|
||||||
|
# This need for corect working file translations.pro
|
||||||
|
|
||||||
|
SOURCES += \
|
||||||
|
$$PWD/main.cpp \
|
||||||
|
$$PWD/puzzlemainwindow.cpp
|
||||||
|
|
||||||
|
*msvc*:SOURCES += $$PWD/stable.cpp
|
||||||
|
|
||||||
|
HEADERS += \
|
||||||
|
$$PWD/puzzlemainwindow.h \
|
||||||
|
$$PWD/stable.h
|
||||||
|
|
||||||
|
FORMS += \
|
||||||
|
$$PWD/puzzlemainwindow.ui
|
335
src/app/puzzle/puzzle.pro
Normal file
335
src/app/puzzle/puzzle.pro
Normal file
|
@ -0,0 +1,335 @@
|
||||||
|
#-------------------------------------------------
|
||||||
|
#
|
||||||
|
# Project created by QtCreator 2020-02-16T17:16:07
|
||||||
|
#
|
||||||
|
#-------------------------------------------------
|
||||||
|
|
||||||
|
# File with common stuff for whole project
|
||||||
|
include(../../../common.pri)
|
||||||
|
|
||||||
|
QT += core gui widgets
|
||||||
|
|
||||||
|
# Name of binary file
|
||||||
|
TARGET = puzzle
|
||||||
|
|
||||||
|
# We want create executable file
|
||||||
|
TEMPLATE = app
|
||||||
|
|
||||||
|
# Use out-of-source builds (shadow builds)
|
||||||
|
CONFIG -= debug_and_release debug_and_release_target
|
||||||
|
|
||||||
|
# Since Q5.12 available support for C++17
|
||||||
|
equals(QT_MAJOR_VERSION, 5):greaterThan(QT_MINOR_VERSION, 11) {
|
||||||
|
CONFIG += c++17
|
||||||
|
} else {
|
||||||
|
CONFIG += c++14
|
||||||
|
}
|
||||||
|
|
||||||
|
# The following define makes your compiler emit warnings if you use
|
||||||
|
# any feature of Qt which has been marked as deprecated (the exact warnings
|
||||||
|
# depend on your compiler). Please consult the documentation of the
|
||||||
|
# deprecated API in order to know how to port your code away from it.
|
||||||
|
DEFINES += QT_DEPRECATED_WARNINGS
|
||||||
|
|
||||||
|
# You can also make your code fail to compile if you use deprecated APIs.
|
||||||
|
# In order to do so, uncomment the following line.
|
||||||
|
# You can also select to disable deprecated APIs only up to a certain version of Qt.
|
||||||
|
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
|
||||||
|
|
||||||
|
# Since Qt 5.4.0 the source code location is recorded only in debug builds.
|
||||||
|
# We need this information also in release builds. For this need define QT_MESSAGELOGCONTEXT.
|
||||||
|
DEFINES += QT_MESSAGELOGCONTEXT
|
||||||
|
|
||||||
|
# Directory for executable file
|
||||||
|
DESTDIR = bin
|
||||||
|
|
||||||
|
# Directory for files created moc
|
||||||
|
MOC_DIR = moc
|
||||||
|
|
||||||
|
# Directory for objecs files
|
||||||
|
OBJECTS_DIR = obj
|
||||||
|
|
||||||
|
# Directory for files created rcc
|
||||||
|
RCC_DIR = rcc
|
||||||
|
|
||||||
|
# Directory for files created uic
|
||||||
|
UI_DIR = uic
|
||||||
|
|
||||||
|
|
||||||
|
# Suport subdirectories. Just better project code tree.
|
||||||
|
include(puzzle.pri)
|
||||||
|
|
||||||
|
RESOURCES += \
|
||||||
|
share/resources/puzzleicon.qrc
|
||||||
|
|
||||||
|
include(../translations.pri)
|
||||||
|
|
||||||
|
# Set "make install" command for Unix-like systems.
|
||||||
|
unix{
|
||||||
|
# Prefix for binary file.
|
||||||
|
isEmpty(PREFIX){
|
||||||
|
PREFIX = $$DEFAULT_PREFIX
|
||||||
|
}
|
||||||
|
|
||||||
|
unix:!macx{
|
||||||
|
DATADIR =$$PREFIX/share
|
||||||
|
DEFINES += DATADIR=\\\"$$DATADIR\\\" PKGDATADIR=\\\"$$PKGDATADIR\\\"
|
||||||
|
|
||||||
|
# Path to bin file after installation
|
||||||
|
target.path = $$PREFIX/bin
|
||||||
|
|
||||||
|
INSTALLS += \
|
||||||
|
target
|
||||||
|
}
|
||||||
|
macx{
|
||||||
|
# Some macx stuff
|
||||||
|
QMAKE_MAC_SDK = macosx
|
||||||
|
|
||||||
|
# QMAKE_MACOSX_DEPLOYMENT_TARGET defined in common.pri
|
||||||
|
|
||||||
|
CONFIG(release, debug|release){
|
||||||
|
QMAKE_RPATHDIR += @executable_path/../Frameworks
|
||||||
|
|
||||||
|
# Path to resources in app bundle
|
||||||
|
#RESOURCES_DIR = "Contents/Resources" defined in translation.pri
|
||||||
|
FRAMEWORKS_DIR = "Contents/Frameworks"
|
||||||
|
MACOS_DIR = "Contents/MacOS"
|
||||||
|
# On macx we will use app bundle. Bundle doesn't need bin directory inside.
|
||||||
|
# See issue #166: Creating OSX Homebrew (Mac OS X package manager) formula.
|
||||||
|
target.path = $$MACOS_DIR
|
||||||
|
|
||||||
|
#languages added inside translations.pri
|
||||||
|
|
||||||
|
# Symlinks also good names for copying. Make will take origin file and copy them with using symlink name.
|
||||||
|
# For bundle this names more then enough. We don't need care much about libraries versions.
|
||||||
|
#libraries.path = $$FRAMEWORKS_DIR
|
||||||
|
#libraries.files += $${OUT_PWD}/../../libs/qmuparser/$${DESTDIR}/libqmuparser.2.dylib
|
||||||
|
#libraries.files += $${OUT_PWD}/../../libs/vpropertyexplorer/$${DESTDIR}/libvpropertyexplorer.1.dylib
|
||||||
|
|
||||||
|
# logo on macx.
|
||||||
|
ICON = $$PWD/../../../dist/Puzzle.icns
|
||||||
|
|
||||||
|
QMAKE_INFO_PLIST = $$PWD/../../../dist/macx/puzzle/Info.plist
|
||||||
|
|
||||||
|
format.path = $$RESOURCES_DIR/
|
||||||
|
format.files += $$PWD/../../../dist/macx/i-measurements.icns
|
||||||
|
format.files += $$PWD/../../../dist/macx/s-measurements.icns
|
||||||
|
|
||||||
|
QMAKE_BUNDLE_DATA += \
|
||||||
|
#libraries \
|
||||||
|
format
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#win32 {
|
||||||
|
# for(DIR, INSTALL_OPENSSL) {
|
||||||
|
# #add these absolute paths to a variable which
|
||||||
|
# #ends up as 'mkcommands = path1 path2 path3 ...'
|
||||||
|
# openssl_path += $${PWD}/$$DIR
|
||||||
|
# }
|
||||||
|
# copyToDestdir($$openssl_path, $$shell_path($${OUT_PWD}/$$DESTDIR))
|
||||||
|
#}
|
||||||
|
|
||||||
|
# Compilation will fail without this files after we added them to this section.
|
||||||
|
OTHER_FILES += \
|
||||||
|
share/resources/puzzleicon/64x64/logo.ico # Puzzle's logo.
|
||||||
|
|
||||||
|
# Set using ccache. Function enable_ccache() defined in common.pri.
|
||||||
|
$$enable_ccache()
|
||||||
|
|
||||||
|
include(warnings.pri)
|
||||||
|
|
||||||
|
CONFIG(release, debug|release){
|
||||||
|
# Release mode
|
||||||
|
!*msvc*:CONFIG += silent
|
||||||
|
DEFINES += V_NO_ASSERT
|
||||||
|
!unix:*g++*{
|
||||||
|
QMAKE_CXXFLAGS += -fno-omit-frame-pointer # Need for exchndl.dll
|
||||||
|
}
|
||||||
|
|
||||||
|
noDebugSymbols{ # For enable run qmake with CONFIG+=noDebugSymbols
|
||||||
|
DEFINES += V_NO_DEBUG
|
||||||
|
} else {
|
||||||
|
# Turn on debug symbols in release mode on Unix systems.
|
||||||
|
# On Mac OS X temporarily disabled. Need find way how to strip binary file.
|
||||||
|
!macx:!*msvc*{
|
||||||
|
QMAKE_CXXFLAGS_RELEASE += -g -gdwarf-3
|
||||||
|
QMAKE_CFLAGS_RELEASE += -g -gdwarf-3
|
||||||
|
QMAKE_LFLAGS_RELEASE =
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
# Breakpoints do not work if debug the app inside of bundle. In debug mode we turn off creating a bundle.
|
||||||
|
# Probably it will breake some dependencies. Version for Mac designed to work inside an app bundle.
|
||||||
|
CONFIG -= app_bundle
|
||||||
|
}
|
||||||
|
|
||||||
|
DVCS_HESH=$$FindBuildRevision()
|
||||||
|
message("Build revision:" $${DVCS_HESH})
|
||||||
|
DEFINES += "BUILD_REVISION=$${DVCS_HESH}" # Make available build revision number in sources.
|
||||||
|
|
||||||
|
# Path to recource file.
|
||||||
|
win32:RC_FILE = share/resources/puzzle.rc
|
||||||
|
|
||||||
|
noRunPath{ # For enable run qmake with CONFIG+=noRunPath
|
||||||
|
# do nothing
|
||||||
|
} else {
|
||||||
|
unix:!macx{
|
||||||
|
# suppress the default RPATH
|
||||||
|
# helps to run the program without Qt Creator
|
||||||
|
# see problem with path to libqmuparser and libpropertybrowser
|
||||||
|
QMAKE_LFLAGS_RPATH =
|
||||||
|
QMAKE_LFLAGS += "-Wl,-rpath,\'\$$ORIGIN\' -Wl,-rpath,$${OUT_PWD}/../../libs/qmuparser/$${DESTDIR} -Wl,-rpath,$${OUT_PWD}/../../libs/vpropertyexplorer/$${DESTDIR}"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# When the GNU linker sees a library, it discards all symbols that it doesn't need.
|
||||||
|
# Dependent library go first.
|
||||||
|
|
||||||
|
#VTools static library (depend on VWidgets, VMisc, VPatternDB)
|
||||||
|
#unix|win32: LIBS += -L$$OUT_PWD/../../libs/vtools/$${DESTDIR}/ -lvtools
|
||||||
|
|
||||||
|
#INCLUDEPATH += $$PWD/../../libs/vtools
|
||||||
|
#INCLUDEPATH += $$OUT_PWD/../../libs/vtools/$${UI_DIR} # For UI files
|
||||||
|
#DEPENDPATH += $$PWD/../../libs/vtools
|
||||||
|
|
||||||
|
#win32:!win32-g++: PRE_TARGETDEPS += $$OUT_PWD/../../libs/vtools/$${DESTDIR}/vtools.lib
|
||||||
|
#else:unix|win32-g++: PRE_TARGETDEPS += $$OUT_PWD/../../libs/vtools/$${DESTDIR}/libvtools.a
|
||||||
|
|
||||||
|
##VWidgets static library
|
||||||
|
#unix|win32: LIBS += -L$$OUT_PWD/../../libs/vwidgets/$${DESTDIR}/ -lvwidgets
|
||||||
|
|
||||||
|
#INCLUDEPATH += $$PWD/../../libs/vwidgets
|
||||||
|
#DEPENDPATH += $$PWD/../../libs/vwidgets
|
||||||
|
|
||||||
|
#win32:!win32-g++: PRE_TARGETDEPS += $$OUT_PWD/../../libs/vwidgets/$${DESTDIR}/vwidgets.lib
|
||||||
|
#else:unix|win32-g++: PRE_TARGETDEPS += $$OUT_PWD/../../libs/vwidgets/$${DESTDIR}/libvwidgets.a
|
||||||
|
|
||||||
|
## VFormat static library (depend on VPatternDB, IFC)
|
||||||
|
#unix|win32: LIBS += -L$$OUT_PWD/../../libs/vformat/$${DESTDIR}/ -lvformat
|
||||||
|
|
||||||
|
#INCLUDEPATH += $$PWD/../../libs/vformat
|
||||||
|
#DEPENDPATH += $$PWD/../../libs/vformat
|
||||||
|
|
||||||
|
#win32:!win32-g++: PRE_TARGETDEPS += $$OUT_PWD/../../libs/vformat/$${DESTDIR}/vformat.lib
|
||||||
|
#else:unix|win32-g++: PRE_TARGETDEPS += $$OUT_PWD/../../libs/vformat/$${DESTDIR}/libvformat.a
|
||||||
|
|
||||||
|
##VPatternDB static library (depend on vgeometry, vmisc, VLayout)
|
||||||
|
#unix|win32: LIBS += -L$$OUT_PWD/../../libs/vpatterndb/$${DESTDIR} -lvpatterndb
|
||||||
|
|
||||||
|
#INCLUDEPATH += $$PWD/../../libs/vpatterndb
|
||||||
|
#DEPENDPATH += $$PWD/../../libs/vpatterndb
|
||||||
|
|
||||||
|
#win32:!win32-g++: PRE_TARGETDEPS += $$OUT_PWD/../../libs/vpatterndb/$${DESTDIR}/vpatterndb.lib
|
||||||
|
#else:unix|win32-g++: PRE_TARGETDEPS += $$OUT_PWD/../../libs/vpatterndb/$${DESTDIR}/libvpatterndb.a
|
||||||
|
|
||||||
|
## Fervor static library (depend on VMisc, IFC)
|
||||||
|
#unix|win32: LIBS += -L$$OUT_PWD/../../libs/fervor/$${DESTDIR}/ -lfervor
|
||||||
|
|
||||||
|
#INCLUDEPATH += $$PWD/../../libs/fervor
|
||||||
|
#DEPENDPATH += $$PWD/../../libs/fervor
|
||||||
|
|
||||||
|
#win32:!win32-g++: PRE_TARGETDEPS += $$OUT_PWD/../../libs/fervor/$${DESTDIR}/fervor.lib
|
||||||
|
#else:unix|win32-g++: PRE_TARGETDEPS += $$OUT_PWD/../../libs/fervor/$${DESTDIR}/libfervor.a
|
||||||
|
|
||||||
|
## IFC static library (depend on QMuParser, VMisc)
|
||||||
|
#unix|win32: LIBS += -L$$OUT_PWD/../../libs/ifc/$${DESTDIR}/ -lifc
|
||||||
|
|
||||||
|
#INCLUDEPATH += $$PWD/../../libs/ifc
|
||||||
|
#DEPENDPATH += $$PWD/../../libs/ifc
|
||||||
|
|
||||||
|
#win32:!win32-g++: PRE_TARGETDEPS += $$OUT_PWD/../../libs/ifc/$${DESTDIR}/ifc.lib
|
||||||
|
#else:unix|win32-g++: PRE_TARGETDEPS += $$OUT_PWD/../../libs/ifc/$${DESTDIR}/libifc.a
|
||||||
|
|
||||||
|
##VMisc static library
|
||||||
|
#unix|win32: LIBS += -L$$OUT_PWD/../../libs/vmisc/$${DESTDIR}/ -lvmisc
|
||||||
|
|
||||||
|
#INCLUDEPATH += $$PWD/../../libs/vmisc
|
||||||
|
#DEPENDPATH += $$PWD/../../libs/vmisc
|
||||||
|
|
||||||
|
#win32:!win32-g++: PRE_TARGETDEPS += $$OUT_PWD/../../libs/vmisc/$${DESTDIR}/vmisc.lib
|
||||||
|
#else:unix|win32-g++: PRE_TARGETDEPS += $$OUT_PWD/../../libs/vmisc/$${DESTDIR}/libvmisc.a
|
||||||
|
|
||||||
|
## VLayout static library (depend on VGeometry)
|
||||||
|
#unix|win32: LIBS += -L$$OUT_PWD/../../libs/vlayout/$${DESTDIR}/ -lvlayout
|
||||||
|
|
||||||
|
#INCLUDEPATH += $$PWD/../../libs/vlayout
|
||||||
|
#DEPENDPATH += $$PWD/../../libs/vlayout
|
||||||
|
|
||||||
|
#win32:!win32-g++: PRE_TARGETDEPS += $$OUT_PWD/../../libs/vlayout/$${DESTDIR}/vlayout.lib
|
||||||
|
#else:unix|win32-g++: PRE_TARGETDEPS += $$OUT_PWD/../../libs/vlayout/$${DESTDIR}/libvlayout.a
|
||||||
|
|
||||||
|
## VGeometry static library (depend on ifc)
|
||||||
|
#unix|win32: LIBS += -L$$OUT_PWD/../../libs/vgeometry/$${DESTDIR}/ -lvgeometry
|
||||||
|
|
||||||
|
#INCLUDEPATH += $$PWD/../../libs/vgeometry
|
||||||
|
#DEPENDPATH += $$PWD/../../libs/vgeometry
|
||||||
|
|
||||||
|
#win32:!win32-g++: PRE_TARGETDEPS += $$OUT_PWD/../../libs/vgeometry/$${DESTDIR}/vgeometry.lib
|
||||||
|
#else:unix|win32-g++: PRE_TARGETDEPS += $$OUT_PWD/../../libs/vgeometry/$${DESTDIR}/libvgeometry.a
|
||||||
|
|
||||||
|
## QMuParser library
|
||||||
|
#win32:CONFIG(release, debug|release): LIBS += -L$${OUT_PWD}/../../libs/qmuparser/$${DESTDIR} -lqmuparser2
|
||||||
|
#else:win32:CONFIG(debug, debug|release): LIBS += -L$${OUT_PWD}/../../libs/qmuparser/$${DESTDIR} -lqmuparser2
|
||||||
|
#else:unix: LIBS += -L$${OUT_PWD}/../../libs/qmuparser/$${DESTDIR} -lqmuparser
|
||||||
|
|
||||||
|
#INCLUDEPATH += $${PWD}/../../libs/qmuparser
|
||||||
|
#DEPENDPATH += $${PWD}/../../libs/qmuparser
|
||||||
|
|
||||||
|
## VPropertyExplorer library
|
||||||
|
#win32:CONFIG(release, debug|release): LIBS += -L$${OUT_PWD}/../../libs/vpropertyexplorer/$${DESTDIR} -lvpropertyexplorer
|
||||||
|
#else:win32:CONFIG(debug, debug|release): LIBS += -L$${OUT_PWD}/../../libs/vpropertyexplorer/$${DESTDIR} -lvpropertyexplorer
|
||||||
|
#else:unix: LIBS += -L$${OUT_PWD}/../../libs/vpropertyexplorer/$${DESTDIR} -lvpropertyexplorer
|
||||||
|
|
||||||
|
#INCLUDEPATH += $${PWD}/../../libs/vpropertyexplorer
|
||||||
|
#DEPENDPATH += $${PWD}/../../libs/vpropertyexplorer
|
||||||
|
|
||||||
|
contains(DEFINES, APPIMAGE) {
|
||||||
|
unix:!macx: LIBS += -licudata -licui18n -licuuc
|
||||||
|
}
|
||||||
|
|
||||||
|
CONFIG(release, debug|release){
|
||||||
|
noStripDebugSymbols {
|
||||||
|
# do nothing
|
||||||
|
} else {
|
||||||
|
!macx:!*msvc*{
|
||||||
|
noDebugSymbols{ # For enable run qmake with CONFIG+=noDebugSymbols
|
||||||
|
win32:!*msvc*{
|
||||||
|
# Strip debug symbols.
|
||||||
|
QMAKE_POST_LINK += objcopy --strip-debug bin/${TARGET}
|
||||||
|
}
|
||||||
|
|
||||||
|
unix:!macx{
|
||||||
|
# Strip after you link all libaries.
|
||||||
|
QMAKE_POST_LINK += objcopy --strip-debug ${TARGET}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
win32:!*msvc*{
|
||||||
|
# Strip debug symbols.
|
||||||
|
QMAKE_POST_LINK += objcopy --only-keep-debug bin/${TARGET} bin/${TARGET}.dbg &&
|
||||||
|
QMAKE_POST_LINK += objcopy --strip-debug bin/${TARGET} &&
|
||||||
|
QMAKE_POST_LINK += objcopy --add-gnu-debuglink="bin/${TARGET}.dbg" bin/${TARGET}
|
||||||
|
|
||||||
|
QMAKE_DISTCLEAN += bin/${TARGET}.dbg
|
||||||
|
}
|
||||||
|
|
||||||
|
unix:!macx{
|
||||||
|
# Strip debug symbols.
|
||||||
|
QMAKE_POST_LINK += objcopy --only-keep-debug ${TARGET} ${TARGET}.dbg &&
|
||||||
|
QMAKE_POST_LINK += objcopy --strip-debug ${TARGET} &&
|
||||||
|
QMAKE_POST_LINK += objcopy --add-gnu-debuglink="${TARGET}.dbg" ${TARGET}
|
||||||
|
|
||||||
|
QMAKE_DISTCLEAN += ${TARGET}.dbg
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
CONFIG(release, debug|release){
|
||||||
|
macx{
|
||||||
|
# run macdeployqt to include all qt libraries in packet
|
||||||
|
QMAKE_POST_LINK += $$[QT_INSTALL_BINS]/macdeployqt $${OUT_PWD}/$${DESTDIR}/$${TARGET}.app
|
||||||
|
}
|
||||||
|
}
|
41
src/app/puzzle/puzzlemainwindow.cpp
Normal file
41
src/app/puzzle/puzzlemainwindow.cpp
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
/************************************************************************
|
||||||
|
**
|
||||||
|
** @file puzzlemainwindow.cpp
|
||||||
|
** @author Roman Telezhynskyi <dismine(at)gmail.com>
|
||||||
|
** @date 16 2, 2020
|
||||||
|
**
|
||||||
|
** @brief
|
||||||
|
** @copyright
|
||||||
|
** This source code is part of the Valentina project, a pattern making
|
||||||
|
** program, whose allow create and modeling patterns of clothing.
|
||||||
|
** Copyright (C) 2020 Valentina project
|
||||||
|
** <https://gitlab.com/smart-pattern/valentina> All Rights Reserved.
|
||||||
|
**
|
||||||
|
** Valentina is free software: you can redistribute it and/or modify
|
||||||
|
** it under the terms of the GNU General Public License as published by
|
||||||
|
** the Free Software Foundation, either version 3 of the License, or
|
||||||
|
** (at your option) any later version.
|
||||||
|
**
|
||||||
|
** Valentina is distributed in the hope that it will be useful,
|
||||||
|
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
** GNU General Public License for more details.
|
||||||
|
**
|
||||||
|
** You should have received a copy of the GNU General Public License
|
||||||
|
** along with Valentina. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
**
|
||||||
|
*************************************************************************/
|
||||||
|
#include "puzzlemainwindow.h"
|
||||||
|
#include "ui_puzzlemainwindow.h"
|
||||||
|
|
||||||
|
PuzzleMainWindow::PuzzleMainWindow(QWidget *parent) :
|
||||||
|
QMainWindow(parent),
|
||||||
|
ui(new Ui::PuzzleMainWindow)
|
||||||
|
{
|
||||||
|
ui->setupUi(this);
|
||||||
|
}
|
||||||
|
|
||||||
|
PuzzleMainWindow::~PuzzleMainWindow()
|
||||||
|
{
|
||||||
|
delete ui;
|
||||||
|
}
|
50
src/app/puzzle/puzzlemainwindow.h
Normal file
50
src/app/puzzle/puzzlemainwindow.h
Normal file
|
@ -0,0 +1,50 @@
|
||||||
|
/************************************************************************
|
||||||
|
**
|
||||||
|
** @file puzzlemainwindow.h
|
||||||
|
** @author Roman Telezhynskyi <dismine(at)gmail.com>
|
||||||
|
** @date 16 2, 2020
|
||||||
|
**
|
||||||
|
** @brief
|
||||||
|
** @copyright
|
||||||
|
** This source code is part of the Valentina project, a pattern making
|
||||||
|
** program, whose allow create and modeling patterns of clothing.
|
||||||
|
** Copyright (C) 2020 Valentina project
|
||||||
|
** <https://gitlab.com/smart-pattern/valentina> All Rights Reserved.
|
||||||
|
**
|
||||||
|
** Valentina is free software: you can redistribute it and/or modify
|
||||||
|
** it under the terms of the GNU General Public License as published by
|
||||||
|
** the Free Software Foundation, either version 3 of the License, or
|
||||||
|
** (at your option) any later version.
|
||||||
|
**
|
||||||
|
** Valentina is distributed in the hope that it will be useful,
|
||||||
|
** but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
** GNU General Public License for more details.
|
||||||
|
**
|
||||||
|
** You should have received a copy of the GNU General Public License
|
||||||
|
** along with Valentina. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
**
|
||||||
|
*************************************************************************/
|
||||||
|
#ifndef PUZZLEMAINWINDOW_H
|
||||||
|
#define PUZZLEMAINWINDOW_H
|
||||||
|
|
||||||
|
#include <QMainWindow>
|
||||||
|
|
||||||
|
namespace Ui {
|
||||||
|
class PuzzleMainWindow;
|
||||||
|
}
|
||||||
|
|
||||||
|
class PuzzleMainWindow : public QMainWindow
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
|
||||||
|
public:
|
||||||
|
explicit PuzzleMainWindow(QWidget *parent = nullptr);
|
||||||
|
virtual ~PuzzleMainWindow();
|
||||||
|
|
||||||
|
private:
|
||||||
|
Q_DISABLE_COPY(PuzzleMainWindow)
|
||||||
|
Ui::PuzzleMainWindow *ui;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // PUZZLEMAINWINDOW_H
|
24
src/app/puzzle/puzzlemainwindow.ui
Normal file
24
src/app/puzzle/puzzlemainwindow.ui
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
<ui version="4.0">
|
||||||
|
<class>PuzzleMainWindow</class>
|
||||||
|
<widget class="QMainWindow" name="PuzzleMainWindow" >
|
||||||
|
<property name="geometry" >
|
||||||
|
<rect>
|
||||||
|
<x>0</x>
|
||||||
|
<y>0</y>
|
||||||
|
<width>400</width>
|
||||||
|
<height>300</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<property name="windowTitle" >
|
||||||
|
<string>PuzzleMainWindow</string>
|
||||||
|
</property>
|
||||||
|
<widget class="QMenuBar" name="menuBar" />
|
||||||
|
<widget class="QToolBar" name="mainToolBar" />
|
||||||
|
<widget class="QWidget" name="centralWidget" />
|
||||||
|
<widget class="QStatusBar" name="statusBar" />
|
||||||
|
</widget>
|
||||||
|
<layoutDefault spacing="6" margin="11" />
|
||||||
|
<pixmapfunction></pixmapfunction>
|
||||||
|
<resources/>
|
||||||
|
<connections/>
|
||||||
|
</ui>
|
80
src/app/puzzle/share/resources/puzzle.rc
Normal file
80
src/app/puzzle/share/resources/puzzle.rc
Normal file
|
@ -0,0 +1,80 @@
|
||||||
|
IDI_ICON1 ICON DISCARDABLE "puzzleicon/64x64/logo.ico"
|
||||||
|
|
||||||
|
#include <windows.h>
|
||||||
|
#include "../../version.h"
|
||||||
|
|
||||||
|
VS_VERSION_INFO VERSIONINFO
|
||||||
|
FILEVERSION VER_FILEVERSION
|
||||||
|
PRODUCTVERSION VER_PRODUCTVERSION
|
||||||
|
|
||||||
|
// normally found in <winver.h> included by <windows.h>
|
||||||
|
// FILEFLAGS
|
||||||
|
#define VS_FF_NORMAL 0x00000000L // ok I made this one up
|
||||||
|
#ifndef VS_FF_DEBUG
|
||||||
|
#define VS_FF_DEBUG 0x00000001L
|
||||||
|
#endif
|
||||||
|
#ifndef VS_FF_PRERELEASE
|
||||||
|
#define VS_FF_PRERELEASE 0x00000002L
|
||||||
|
#endif
|
||||||
|
// FILEOS
|
||||||
|
#ifndef VOS_NT
|
||||||
|
#define VOS_NT 0x00040000L
|
||||||
|
#endif
|
||||||
|
#ifndef VOS__WINDOWS32
|
||||||
|
#define VOS__WINDOWS32 0x00000004L
|
||||||
|
#endif
|
||||||
|
#ifndef VOS_NT_WINDOWS32
|
||||||
|
#define VOS_NT_WINDOWS32 0x00040004L
|
||||||
|
#endif
|
||||||
|
// FILETYPE
|
||||||
|
#ifndef VFT_APP
|
||||||
|
#define VFT_APP 0x00000001L
|
||||||
|
#endif
|
||||||
|
#ifndef VFT_DLL
|
||||||
|
#define VFT_DLL 0x00000002L
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef V_PRERELEASE
|
||||||
|
|
||||||
|
#ifdef V_NO_DEBUG
|
||||||
|
FILEFLAGS (VS_FF_PRERELEASE)
|
||||||
|
#else
|
||||||
|
FILEFLAGS (VS_FF_DEBUG|VS_FF_PRERELEASE)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
#ifdef V_NO_DEBUG
|
||||||
|
FILEFLAGS (VS_FF_NORMAL)
|
||||||
|
#else
|
||||||
|
FILEFLAGS (VS_FF_DEBUG|VS_FF_NORMAL)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
FILEOS VOS_NT_WINDOWS32
|
||||||
|
FILETYPE VFT_APP
|
||||||
|
FILESUBTYPE VFT2_UNKNOWN
|
||||||
|
BEGIN
|
||||||
|
BLOCK "StringFileInfo"
|
||||||
|
BEGIN
|
||||||
|
BLOCK "040904E4"
|
||||||
|
BEGIN
|
||||||
|
VALUE "CompanyName", VER_COMPANYNAME_STR
|
||||||
|
VALUE "FileDescription", VER_FILEDESCRIPTION_STR
|
||||||
|
VALUE "FileVersion", VER_FILEVERSION_STR
|
||||||
|
VALUE "InternalName", VER_INTERNALNAME_STR
|
||||||
|
VALUE "LegalCopyright", VER_LEGALCOPYRIGHT_STR
|
||||||
|
VALUE "LegalTrademarks1", VER_LEGALTRADEMARKS1_STR
|
||||||
|
VALUE "LegalTrademarks2", VER_LEGALTRADEMARKS2_STR
|
||||||
|
VALUE "OriginalFilename", VER_ORIGINALFILENAME_STR
|
||||||
|
VALUE "ProductName", VER_PRODUCTNAME_STR
|
||||||
|
VALUE "ProductVersion", VER_PRODUCTVERSION_STR
|
||||||
|
END
|
||||||
|
END
|
||||||
|
|
||||||
|
BLOCK "VarFileInfo"
|
||||||
|
BEGIN
|
||||||
|
VALUE "Translation", 0x0409, 0x04E4 //U.S. English
|
||||||
|
END
|
||||||
|
END
|
5
src/app/puzzle/share/resources/puzzleicon.qrc
Normal file
5
src/app/puzzle/share/resources/puzzleicon.qrc
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
<RCC>
|
||||||
|
<qresource prefix="/">
|
||||||
|
<file>puzzleicon/64x64/logo.png</file>
|
||||||
|
</qresource>
|
||||||
|
</RCC>
|
BIN
src/app/puzzle/share/resources/puzzleicon/64x64/logo.ico
Normal file
BIN
src/app/puzzle/share/resources/puzzleicon/64x64/logo.ico
Normal file
Binary file not shown.
After Width: | Height: | Size: 17 KiB |
BIN
src/app/puzzle/share/resources/puzzleicon/64x64/logo.png
Normal file
BIN
src/app/puzzle/share/resources/puzzleicon/64x64/logo.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.5 KiB |
85
src/app/puzzle/warnings.pri
Normal file
85
src/app/puzzle/warnings.pri
Normal file
|
@ -0,0 +1,85 @@
|
||||||
|
#Turn on compilers warnings.
|
||||||
|
unix {
|
||||||
|
*g++*{
|
||||||
|
QMAKE_CXXFLAGS += \
|
||||||
|
# Key -isystem disable checking errors in system headers.
|
||||||
|
-isystem "$${OUT_PWD}/$${UI_DIR}" \
|
||||||
|
-isystem "$${OUT_PWD}/$${MOC_DIR}" \
|
||||||
|
-isystem "$${OUT_PWD}/$${RCC_DIR}" \
|
||||||
|
$$GCC_DEBUG_CXXFLAGS # See common.pri for more details.
|
||||||
|
|
||||||
|
checkWarnings{ # For enable run qmake with CONFIG+=checkWarnings
|
||||||
|
QMAKE_CXXFLAGS += -Werror
|
||||||
|
}
|
||||||
|
|
||||||
|
noAddressSanitizer{ # For enable run qmake with CONFIG+=noAddressSanitizer
|
||||||
|
# do nothing
|
||||||
|
} else {
|
||||||
|
CONFIG(debug, debug|release){
|
||||||
|
# Debug mode
|
||||||
|
#gcc’s 4.8.0 Address Sanitizer
|
||||||
|
#http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/
|
||||||
|
QMAKE_CXXFLAGS += -fsanitize=address -fno-omit-frame-pointer
|
||||||
|
QMAKE_CFLAGS += -fsanitize=address -fno-omit-frame-pointer
|
||||||
|
QMAKE_LFLAGS += -fsanitize=address
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
gccUbsan{ # For enable run qmake with CONFIG+=gccUbsan
|
||||||
|
CONFIG(debug, debug|release){
|
||||||
|
# Debug mode
|
||||||
|
#gcc’s 4.9.0 Undefined Behavior Sanitizer (ubsan)
|
||||||
|
QMAKE_CXXFLAGS += -fsanitize=undefined
|
||||||
|
QMAKE_CFLAGS += -fsanitize=undefined
|
||||||
|
QMAKE_LFLAGS += -fsanitize=undefined
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
*clang*{
|
||||||
|
QMAKE_CXXFLAGS += \
|
||||||
|
# Key -isystem disable checking errors in system headers.
|
||||||
|
-isystem "$${OUT_PWD}/$${UI_DIR}" \
|
||||||
|
-isystem "$${OUT_PWD}/$${MOC_DIR}" \
|
||||||
|
-isystem "$${OUT_PWD}/$${RCC_DIR}" \
|
||||||
|
$$CLANG_DEBUG_CXXFLAGS # See common.pri for more details.
|
||||||
|
|
||||||
|
checkWarnings{ # For enable run qmake with CONFIG+=checkWarnings
|
||||||
|
QMAKE_CXXFLAGS += -Werror
|
||||||
|
}
|
||||||
|
|
||||||
|
# -isystem key works only for headers. In some cases it's not enough. But we can't delete this warnings and
|
||||||
|
# want them in global list. Compromise decision delete them from local list.
|
||||||
|
QMAKE_CXXFLAGS -= \
|
||||||
|
-Wundefined-reinterpret-cast \
|
||||||
|
-Wmissing-prototypes # rcc folder
|
||||||
|
}
|
||||||
|
|
||||||
|
*-icc-*{
|
||||||
|
QMAKE_CXXFLAGS += \
|
||||||
|
-isystem "$${OUT_PWD}/$${UI_DIR}" \
|
||||||
|
-isystem "$${OUT_PWD}/$${MOC_DIR}" \
|
||||||
|
-isystem "$${OUT_PWD}/$${RCC_DIR}" \
|
||||||
|
$$ICC_DEBUG_CXXFLAGS
|
||||||
|
|
||||||
|
checkWarnings{ # For enable run qmake with CONFIG+=checkWarnings
|
||||||
|
QMAKE_CXXFLAGS += -Werror
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else { # Windows
|
||||||
|
*g++*{
|
||||||
|
QMAKE_CXXFLAGS += $$GCC_DEBUG_CXXFLAGS # See common.pri for more details.
|
||||||
|
|
||||||
|
checkWarnings{ # For enable run qmake with CONFIG+=checkWarnings
|
||||||
|
QMAKE_CXXFLAGS += -Werror
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
*msvc*{
|
||||||
|
QMAKE_CXXFLAGS += $$MSVC_DEBUG_CXXFLAGS # See common.pri for more details.
|
||||||
|
|
||||||
|
checkWarnings{ # For enable run qmake with CONFIG+=checkWarnings
|
||||||
|
QMAKE_CXXFLAGS += -WX
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user