diff --git a/dist/macx/tape/Info.plist b/dist/macx/tape/Info.plist
new file mode 100755
index 000000000..9b2067329
--- /dev/null
+++ b/dist/macx/tape/Info.plist
@@ -0,0 +1,57 @@
+
+
+
+
+ NSPrincipalClass
+ NSApplication
+ CFBundleIconFile
+ @ICON@
+ CFBundlePackageType
+ APPL
+ NSHumanReadableCopyright
+ © 2013-2015, Valentina project
+ CFBundleSignature
+ @TYPEINFO@
+ CFBundleExecutable
+ @EXECUTABLE@
+ CFBundleIdentifier
+ org.valentinaproject.@EXECUTABLE@
+ CFBundleShortVersionString
+ @SHORT_VERSION@
+ CFBundleVersion
+ @FULL_VERSION@
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundleDocumentTypes
+
+
+ CFBundleTypeRole
+ Editor
+ CFBundleTypeIconFile
+ measurements
+ LSItemContentTypes
+
+ org.valentinaproject.vit
+
+ CFBundleTypeName
+ Valentina individual measurements
+ LSHandlerRank
+ Owner
+
+
+ CFBundleTypeRole
+ Editor
+ CFBundleTypeIconFile
+ measurements
+ LSItemContentTypes
+
+ org.valentinaproject.vst
+
+ CFBundleTypeName
+ Valentina standard measurements
+ LSHandlerRank
+ Owner
+
+
+
+
diff --git a/dist/macx/Info.plist b/dist/macx/valentina/Info.plist
similarity index 100%
rename from dist/macx/Info.plist
rename to dist/macx/valentina/Info.plist
diff --git a/src/app/valentina/share/resources/tables/standard/GOST_man_ru.vst b/src/app/share/tables/standard/GOST_man_ru.vst
similarity index 100%
rename from src/app/valentina/share/resources/tables/standard/GOST_man_ru.vst
rename to src/app/share/tables/standard/GOST_man_ru.vst
diff --git a/src/app/tape/share/resources/templates/template_all_measurements.vit b/src/app/share/tables/templates/template_all_measurements.vit
similarity index 100%
rename from src/app/tape/share/resources/templates/template_all_measurements.vit
rename to src/app/share/tables/templates/template_all_measurements.vit
diff --git a/src/app/tables.pri b/src/app/tables.pri
new file mode 100644
index 000000000..972cc3db8
--- /dev/null
+++ b/src/app/tables.pri
@@ -0,0 +1,7 @@
+# Keep path to all files with standard measurements we support right now
+INSTALL_STANDARD_MEASHUREMENTS += $$PWD/share/tables/standard/GOST_man_ru.vst
+
+# Keep path to all template files we have right now
+INSTALL_STANDARD_TEMPLATES += $$PWD/share/tables/templates/template_all_measurements.vit
+
+copyToDestdir($$INSTALL_STANDARD_MEASHUREMENTS, $$shell_path($${OUT_PWD}/$$DESTDIR/tables/standard))
diff --git a/src/app/tape/mapplication.cpp b/src/app/tape/mapplication.cpp
index 0649aff8f..258b924b4 100644
--- a/src/app/tape/mapplication.cpp
+++ b/src/app/tape/mapplication.cpp
@@ -396,72 +396,6 @@ VTapeSettings *MApplication::TapeSettings()
return qobject_cast(settings);
}
-//---------------------------------------------------------------------------------------------------------------------
-/**
- * @brief translationsPath This function is implementation of the method VAbstractApplication::translationsPath.
- */
-QString MApplication::translationsPath(const QString &locale) const
-{
- const QString trPath = QStringLiteral("/translations");
-#ifdef Q_OS_WIN
- Q_UNUSED(locale)
- QDir dir(QApplication::applicationDirPath() + trPath);
- if (dir.exists())
- {
- return dir.absolutePath();
- }
- else
- {
- return QApplication::applicationDirPath() + "/../../valentina/bin" + trPath;
- }
-#elif defined(Q_OS_MAC)
- QString mainPath;
- if (locale.isEmpty())
- {
- mainPath = QApplication::applicationDirPath() + QLatin1Literal("/../Resources") + trPath;
- }
- else
- {
- mainPath = QApplication::applicationDirPath() + QLatin1Literal("/../Resources") + trPath + QLatin1Literal("/")
- + locale + QLatin1Literal(".lproj");
- }
- QDir dirBundle(mainPath);
- if (dirBundle.exists())
- {
- return dirBundle.absolutePath();
- }
- else
- {
- QDir dir(QApplication::applicationDirPath() + trPath);
- if (dir.exists())
- {
- return dir.absolutePath();
- }
- else
- {
- return QStringLiteral("/usr/share/valentina/translations");
- }
- }
-#else // Unix
- Q_UNUSED(locale)
- QDir dir1(QApplication::applicationDirPath() + trPath);
- if (dir1.exists())
- {
- return dir1.absolutePath();
- }
-
- QDir dir2(QApplication::applicationDirPath() + QLatin1Literal("/../../valentina/bin") + trPath);
- if (dir2.exists())
- {
- return dir2.absolutePath();
- }
- else
- {
- return QStringLiteral("/usr/share/valentina/translations");
- }
-#endif
-}
-
//---------------------------------------------------------------------------------------------------------------------
QString MApplication::diagramsPath() const
{
diff --git a/src/app/tape/mapplication.h b/src/app/tape/mapplication.h
index c7517b37c..a257e27c7 100644
--- a/src/app/tape/mapplication.h
+++ b/src/app/tape/mapplication.h
@@ -71,7 +71,6 @@ public:
virtual void OpenSettings() Q_DECL_OVERRIDE;
VTapeSettings *TapeSettings();
- virtual QString translationsPath(const QString &locale = QString()) const Q_DECL_OVERRIDE;
QString diagramsPath() const;
void ShowDataBase();
diff --git a/src/app/tape/tape.pro b/src/app/tape/tape.pro
index 445a5c7e4..6945ed87c 100644
--- a/src/app/tape/tape.pro
+++ b/src/app/tape/tape.pro
@@ -18,10 +18,6 @@ TEMPLATE = app
# Use out-of-source builds (shadow builds)
CONFIG -= debug_and_release debug_and_release_target
-macx { # No bundle for tape
- CONFIG -= app_bundle
-}
-
# We use C++11 standard
CONFIG += c++11
@@ -44,11 +40,6 @@ RCC_DIR = rcc
# Directory for files created uic
UI_DIR = uic
-macx{
- # logo on macx.
- ICON = ../../../dist/Tape.icns
-}
-
# Suport subdirectories. Just better project code tree.
include(tape.pri)
@@ -57,6 +48,178 @@ RESOURCES += \
DATA_RESOURCE = share/resources/diagrams.qrc # External Binary Resource
+# The list helps to check that all files are exist.
+# Don't forget to convert text to curves.
+DIAGRAMS += \
+ $${PWD}/share/resources/diagrams/Ap1.svg \
+ $${PWD}/share/resources/diagrams/Ap2.svg \
+ $${PWD}/share/resources/diagrams/Bp1.svg \
+ $${PWD}/share/resources/diagrams/Bp2.svg \
+ $${PWD}/share/resources/diagrams/Cp1.svg \
+ $${PWD}/share/resources/diagrams/Cp2.svg \
+ $${PWD}/share/resources/diagrams/Dp1.svg \
+ $${PWD}/share/resources/diagrams/Dp2.svg \
+ $${PWD}/share/resources/diagrams/Dp3.svg \
+ $${PWD}/share/resources/diagrams/Ep1.svg \
+ $${PWD}/share/resources/diagrams/Ep2.svg \
+ $${PWD}/share/resources/diagrams/Fp1.svg \
+ $${PWD}/share/resources/diagrams/Fp2.svg \
+ $${PWD}/share/resources/diagrams/Fp3.svg \
+ $${PWD}/share/resources/diagrams/Gp1.svg \
+ $${PWD}/share/resources/diagrams/Gp2.svg \
+ $${PWD}/share/resources/diagrams/Gp3.svg \
+ $${PWD}/share/resources/diagrams/Gp4.svg \
+ $${PWD}/share/resources/diagrams/Gp5.svg \
+ $${PWD}/share/resources/diagrams/Gp6.svg \
+ $${PWD}/share/resources/diagrams/Gp7.svg \
+ $${PWD}/share/resources/diagrams/Gp8.svg \
+ $${PWD}/share/resources/diagrams/Gp9.svg \
+ $${PWD}/share/resources/diagrams/Hp1.svg \
+ $${PWD}/share/resources/diagrams/Hp2.svg \
+ $${PWD}/share/resources/diagrams/Hp3.svg \
+ $${PWD}/share/resources/diagrams/Hp4.svg \
+ $${PWD}/share/resources/diagrams/Hp5.svg \
+ $${PWD}/share/resources/diagrams/Hp6.svg \
+ $${PWD}/share/resources/diagrams/Hp7.svg \
+ $${PWD}/share/resources/diagrams/Hp8.svg \
+ $${PWD}/share/resources/diagrams/Hp9.svg \
+ $${PWD}/share/resources/diagrams/Hp10.svg \
+ $${PWD}/share/resources/diagrams/Hp11.svg \
+ $${PWD}/share/resources/diagrams/Hp12.svg \
+ $${PWD}/share/resources/diagrams/Hp13.svg \
+ $${PWD}/share/resources/diagrams/Ip1.svg \
+ $${PWD}/share/resources/diagrams/Ip2.svg \
+ $${PWD}/share/resources/diagrams/Ip3.svg \
+ $${PWD}/share/resources/diagrams/Ip4.svg \
+ $${PWD}/share/resources/diagrams/Ip5.svg \
+ $${PWD}/share/resources/diagrams/Ip6.svg \
+ $${PWD}/share/resources/diagrams/Ip7.svg \
+ $${PWD}/share/resources/diagrams/Jp1.svg \
+ $${PWD}/share/resources/diagrams/Jp2.svg \
+ $${PWD}/share/resources/diagrams/Jp3.svg \
+ $${PWD}/share/resources/diagrams/Jp4.svg \
+ $${PWD}/share/resources/diagrams/Jp5.svg \
+ $${PWD}/share/resources/diagrams/Kp1.svg \
+ $${PWD}/share/resources/diagrams/Kp2.svg \
+ $${PWD}/share/resources/diagrams/Kp3.svg \
+ $${PWD}/share/resources/diagrams/Kp4.svg \
+ $${PWD}/share/resources/diagrams/Kp5.svg \
+ $${PWD}/share/resources/diagrams/Kp6.svg \
+ $${PWD}/share/resources/diagrams/Kp7.svg \
+ $${PWD}/share/resources/diagrams/Kp8.svg \
+ $${PWD}/share/resources/diagrams/Kp9.svg \
+ $${PWD}/share/resources/diagrams/Kp10.svg \
+ $${PWD}/share/resources/diagrams/Kp11.svg \
+ $${PWD}/share/resources/diagrams/Lp1.svg \
+ $${PWD}/share/resources/diagrams/Lp2.svg \
+ $${PWD}/share/resources/diagrams/Lp3.svg \
+ $${PWD}/share/resources/diagrams/Lp4.svg \
+ $${PWD}/share/resources/diagrams/Lp5.svg \
+ $${PWD}/share/resources/diagrams/Lp6.svg \
+ $${PWD}/share/resources/diagrams/Lp7.svg \
+ $${PWD}/share/resources/diagrams/Lp8.svg \
+ $${PWD}/share/resources/diagrams/Lp9.svg \
+ $${PWD}/share/resources/diagrams/Lp10.svg \
+ $${PWD}/share/resources/diagrams/Mp1.svg \
+ $${PWD}/share/resources/diagrams/Mp2.svg \
+ $${PWD}/share/resources/diagrams/Mp3.svg \
+ $${PWD}/share/resources/diagrams/Np1.svg \
+ $${PWD}/share/resources/diagrams/Np2.svg \
+ $${PWD}/share/resources/diagrams/Np3.svg \
+ $${PWD}/share/resources/diagrams/Np4.svg \
+ $${PWD}/share/resources/diagrams/Np5.svg \
+ $${PWD}/share/resources/diagrams/Op1.svg \
+ $${PWD}/share/resources/diagrams/Op2.svg \
+ $${PWD}/share/resources/diagrams/Op3.svg \
+ $${PWD}/share/resources/diagrams/Op4.svg \
+ $${PWD}/share/resources/diagrams/Op5.svg \
+ $${PWD}/share/resources/diagrams/Op6.svg \
+ $${PWD}/share/resources/diagrams/Op7.svg \
+ $${PWD}/share/resources/diagrams/Op8.svg \
+ $${PWD}/share/resources/diagrams/Op9.svg \
+ $${PWD}/share/resources/diagrams/Op10.svg \
+ $${PWD}/share/resources/diagrams/Op11.svg \
+ $${PWD}/share/resources/diagrams/Pp1.svg \
+ $${PWD}/share/resources/diagrams/Pp2.svg \
+ $${PWD}/share/resources/diagrams/Pp3.svg \
+ $${PWD}/share/resources/diagrams/Pp4.svg \
+ $${PWD}/share/resources/diagrams/Pp5.svg \
+ $${PWD}/share/resources/diagrams/Pp6.svg \
+ $${PWD}/share/resources/diagrams/Pp7.svg \
+ $${PWD}/share/resources/diagrams/Pp8.svg \
+ $${PWD}/share/resources/diagrams/Pp9.svg \
+ $${PWD}/share/resources/diagrams/Pp10.svg \
+ $${PWD}/share/resources/diagrams/Pp11.svg \
+ $${PWD}/share/resources/diagrams/Pp12.svg \
+ $${PWD}/share/resources/diagrams/Qp1.svg \
+ $${PWD}/share/resources/diagrams/Qp2.svg \
+ $${PWD}/share/resources/diagrams/Qp3.svg
+
+diagrams.name = resource diagrams
+diagrams.CONFIG += no_link target_predeps
+diagrams.depends = $$DIAGRAMS # expects a list of files
+diagrams.input = DATA_RESOURCE # expects the name of a variable
+diagrams.output = ${QMAKE_FILE_BASE}.rcc
+diagrams.commands = $$shell_path($$[QT_INSTALL_BINS]/rcc) --binary --no-compress ${QMAKE_FILE_IN} -o $${OUT_PWD}/$${DESTDIR}/${QMAKE_FILE_OUT}
+
+QMAKE_EXTRA_COMPILERS += diagrams
+
+QMAKE_CLEAN += $${OUT_PWD}/$${DESTDIR}/diagrams.rcc
+
+# INSTALL_STANDARD_MEASHUREMENTS and INSTALL_STANDARD_TEMPLATES inside tables.pri
+include(../tables.pri)
+copyToDestdir($$INSTALL_STANDARD_TEMPLATES, $$shell_path($${OUT_PWD}/$${DESTDIR}/tables/templates))
+include(../translations.pri)
+
+macx{
+ # Some macx stuff
+ QMAKE_MAC_SDK = macosx
+
+ QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.6
+ # 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/Tape.icns
+
+ QMAKE_INFO_PLIST = $$PWD/../../../dist/macx/tape/Info.plist
+
+ # Copy to bundle standard measurements files
+ standard.path = $$RESOURCES_DIR/tables/standard/
+ standard.files = $$INSTALL_STANDARD_MEASHUREMENTS
+
+ # Copy to bundle templates files
+ templates.path = $$RESOURCES_DIR/tables/templates/
+ templates.files = $$INSTALL_STANDARD_TEMPLATES
+
+ # Copy to bundle standard measurements files
+ diagrams.path = $$RESOURCES_DIR/
+ diagrams.files = $${OUT_PWD}/$${DESTDIR}/diagrams.rcc
+
+ format.path = $$RESOURCES_DIR/
+ format.files = $$PWD/../../../dist/macx/measurements.icns
+
+ QMAKE_BUNDLE_DATA += \
+ templates \
+ standard \
+ libraries \
+ diagrams \
+ format
+}
+
# Compilation will fail without this files after we added them to this section.
OTHER_FILES += \
share/resources/tapeicon/64x64/logo.ico \ # Tape's logo.
@@ -258,124 +421,6 @@ else:unix: LIBS += -L$${OUT_PWD}/../../libs/vpropertyexplorer/$${DESTDIR} -lvpro
INCLUDEPATH += $${PWD}/../../libs/vpropertyexplorer
DEPENDPATH += $${PWD}/../../libs/vpropertyexplorer
-# The list helps to check that all files are exist.
-# Don't forget to convert text to curves.
-DIAGRAMS += \
- $${PWD}/share/resources/diagrams/Ap1.svg \
- $${PWD}/share/resources/diagrams/Ap2.svg \
- $${PWD}/share/resources/diagrams/Bp1.svg \
- $${PWD}/share/resources/diagrams/Bp2.svg \
- $${PWD}/share/resources/diagrams/Cp1.svg \
- $${PWD}/share/resources/diagrams/Cp2.svg \
- $${PWD}/share/resources/diagrams/Dp1.svg \
- $${PWD}/share/resources/diagrams/Dp2.svg \
- $${PWD}/share/resources/diagrams/Dp3.svg \
- $${PWD}/share/resources/diagrams/Ep1.svg \
- $${PWD}/share/resources/diagrams/Ep2.svg \
- $${PWD}/share/resources/diagrams/Fp1.svg \
- $${PWD}/share/resources/diagrams/Fp2.svg \
- $${PWD}/share/resources/diagrams/Fp3.svg \
- $${PWD}/share/resources/diagrams/Gp1.svg \
- $${PWD}/share/resources/diagrams/Gp2.svg \
- $${PWD}/share/resources/diagrams/Gp3.svg \
- $${PWD}/share/resources/diagrams/Gp4.svg \
- $${PWD}/share/resources/diagrams/Gp5.svg \
- $${PWD}/share/resources/diagrams/Gp6.svg \
- $${PWD}/share/resources/diagrams/Gp7.svg \
- $${PWD}/share/resources/diagrams/Gp8.svg \
- $${PWD}/share/resources/diagrams/Gp9.svg \
- $${PWD}/share/resources/diagrams/Hp1.svg \
- $${PWD}/share/resources/diagrams/Hp2.svg \
- $${PWD}/share/resources/diagrams/Hp3.svg \
- $${PWD}/share/resources/diagrams/Hp4.svg \
- $${PWD}/share/resources/diagrams/Hp5.svg \
- $${PWD}/share/resources/diagrams/Hp6.svg \
- $${PWD}/share/resources/diagrams/Hp7.svg \
- $${PWD}/share/resources/diagrams/Hp8.svg \
- $${PWD}/share/resources/diagrams/Hp9.svg \
- $${PWD}/share/resources/diagrams/Hp10.svg \
- $${PWD}/share/resources/diagrams/Hp11.svg \
- $${PWD}/share/resources/diagrams/Hp12.svg \
- $${PWD}/share/resources/diagrams/Hp13.svg \
- $${PWD}/share/resources/diagrams/Ip1.svg \
- $${PWD}/share/resources/diagrams/Ip2.svg \
- $${PWD}/share/resources/diagrams/Ip3.svg \
- $${PWD}/share/resources/diagrams/Ip4.svg \
- $${PWD}/share/resources/diagrams/Ip5.svg \
- $${PWD}/share/resources/diagrams/Ip6.svg \
- $${PWD}/share/resources/diagrams/Ip7.svg \
- $${PWD}/share/resources/diagrams/Jp1.svg \
- $${PWD}/share/resources/diagrams/Jp2.svg \
- $${PWD}/share/resources/diagrams/Jp3.svg \
- $${PWD}/share/resources/diagrams/Jp4.svg \
- $${PWD}/share/resources/diagrams/Jp5.svg \
- $${PWD}/share/resources/diagrams/Kp1.svg \
- $${PWD}/share/resources/diagrams/Kp2.svg \
- $${PWD}/share/resources/diagrams/Kp3.svg \
- $${PWD}/share/resources/diagrams/Kp4.svg \
- $${PWD}/share/resources/diagrams/Kp5.svg \
- $${PWD}/share/resources/diagrams/Kp6.svg \
- $${PWD}/share/resources/diagrams/Kp7.svg \
- $${PWD}/share/resources/diagrams/Kp8.svg \
- $${PWD}/share/resources/diagrams/Kp9.svg \
- $${PWD}/share/resources/diagrams/Kp10.svg \
- $${PWD}/share/resources/diagrams/Kp11.svg \
- $${PWD}/share/resources/diagrams/Lp1.svg \
- $${PWD}/share/resources/diagrams/Lp2.svg \
- $${PWD}/share/resources/diagrams/Lp3.svg \
- $${PWD}/share/resources/diagrams/Lp4.svg \
- $${PWD}/share/resources/diagrams/Lp5.svg \
- $${PWD}/share/resources/diagrams/Lp6.svg \
- $${PWD}/share/resources/diagrams/Lp7.svg \
- $${PWD}/share/resources/diagrams/Lp8.svg \
- $${PWD}/share/resources/diagrams/Lp9.svg \
- $${PWD}/share/resources/diagrams/Lp10.svg \
- $${PWD}/share/resources/diagrams/Mp1.svg \
- $${PWD}/share/resources/diagrams/Mp2.svg \
- $${PWD}/share/resources/diagrams/Mp3.svg \
- $${PWD}/share/resources/diagrams/Np1.svg \
- $${PWD}/share/resources/diagrams/Np2.svg \
- $${PWD}/share/resources/diagrams/Np3.svg \
- $${PWD}/share/resources/diagrams/Np4.svg \
- $${PWD}/share/resources/diagrams/Np5.svg \
- $${PWD}/share/resources/diagrams/Op1.svg \
- $${PWD}/share/resources/diagrams/Op2.svg \
- $${PWD}/share/resources/diagrams/Op3.svg \
- $${PWD}/share/resources/diagrams/Op4.svg \
- $${PWD}/share/resources/diagrams/Op5.svg \
- $${PWD}/share/resources/diagrams/Op6.svg \
- $${PWD}/share/resources/diagrams/Op7.svg \
- $${PWD}/share/resources/diagrams/Op8.svg \
- $${PWD}/share/resources/diagrams/Op9.svg \
- $${PWD}/share/resources/diagrams/Op10.svg \
- $${PWD}/share/resources/diagrams/Op11.svg \
- $${PWD}/share/resources/diagrams/Pp1.svg \
- $${PWD}/share/resources/diagrams/Pp2.svg \
- $${PWD}/share/resources/diagrams/Pp3.svg \
- $${PWD}/share/resources/diagrams/Pp4.svg \
- $${PWD}/share/resources/diagrams/Pp5.svg \
- $${PWD}/share/resources/diagrams/Pp6.svg \
- $${PWD}/share/resources/diagrams/Pp7.svg \
- $${PWD}/share/resources/diagrams/Pp8.svg \
- $${PWD}/share/resources/diagrams/Pp9.svg \
- $${PWD}/share/resources/diagrams/Pp10.svg \
- $${PWD}/share/resources/diagrams/Pp11.svg \
- $${PWD}/share/resources/diagrams/Pp12.svg \
- $${PWD}/share/resources/diagrams/Qp1.svg \
- $${PWD}/share/resources/diagrams/Qp2.svg \
- $${PWD}/share/resources/diagrams/Qp3.svg
-
-diagrams.name = resource diagrams
-diagrams.CONFIG += no_link target_predeps
-diagrams.depends = $$DIAGRAMS # expects a list of files
-diagrams.input = DATA_RESOURCE # expects the name of a variable
-diagrams.output = ${QMAKE_FILE_BASE}.rcc
-diagrams.commands = $$shell_path($$[QT_INSTALL_BINS]/rcc) --binary --no-compress ${QMAKE_FILE_IN} -o $${OUT_PWD}/$${DESTDIR}/${QMAKE_FILE_OUT}
-
-QMAKE_EXTRA_COMPILERS += diagrams
-
-QMAKE_CLEAN += $${OUT_PWD}/$${DESTDIR}/diagrams.rcc
-
noDebugSymbols{ # For enable run qmake with CONFIG+=noDebugSymbols
# do nothing
} else {
@@ -404,3 +449,8 @@ noDebugSymbols{ # For enable run qmake with CONFIG+=noDebugSymbols
}
}
}
+
+macx{
+ # run macdeployqt to include all qt libraries in packet
+ QMAKE_POST_LINK += $$[QT_INSTALL_BINS]/macdeployqt $${OUT_PWD}/$${DESTDIR}/$${TARGET}.app
+}
diff --git a/src/app/valentina/translations.pri b/src/app/translations.pri
similarity index 95%
rename from src/app/valentina/translations.pri
rename to src/app/translations.pri
index 497ad8f75..b2dd2c44c 100755
--- a/src/app/valentina/translations.pri
+++ b/src/app/translations.pri
@@ -1,4 +1,4 @@
-TRANSLATIONS_PATH = ../../../share/translations
+TRANSLATIONS_PATH = $${PWD}/../../share/translations
# Add to this variable all translation files that you want install with program.
# For generation *.qm file first you need create *.ts.
@@ -46,8 +46,8 @@ for(_translation_name, INSTALL_TRANSLATIONS) {
_translation_name_qm = $$basename(_translation_name)
_translation_name_ts = $$section(_translation_name_qm, ".", 0, 0).ts
- !exists($${PWD}/$$_translation_name) {
- system($$shell_path($$[QT_INSTALL_BINS]/$$LRELEASE) $$shell_path($${PWD}/$${TRANSLATIONS_PATH}/$$_translation_name_ts) -qm $$shell_path($${PWD}/$$_translation_name))
+ !exists($$_translation_name) {
+ system($$shell_path($$[QT_INSTALL_BINS]/$$LRELEASE) $$shell_path($${TRANSLATIONS_PATH}/$$_translation_name_ts) -qm $$shell_path($$_translation_name))
unix {
exists($${OUT_PWD}/$$DESTDIR/valentina) {
system(rm -fv $${OUT_PWD}/$$DESTDIR/valentina) # force to call linking
@@ -57,15 +57,8 @@ for(_translation_name, INSTALL_TRANSLATIONS) {
}
}
-for(DIR, INSTALL_TRANSLATIONS) {
- #add these absolute paths to a variable which
- #ends up as 'mkcommands = path1 path2 path3 ...'
-
- tr_path += $${PWD}/$$DIR
-}
-
# Make possible run program even you do not install it. Seek files in local directory.
-forceCopyToDestdir($$tr_path, $$shell_path($${OUT_PWD}/$$DESTDIR/translations))
+forceCopyToDestdir($$INSTALL_TRANSLATIONS, $$shell_path($${OUT_PWD}/$$DESTDIR/translations))
macx{
RESOURCES_DIR = "Contents/Resources"
diff --git a/src/app/valentina/core/vapplication.cpp b/src/app/valentina/core/vapplication.cpp
index 0e63fe33f..d57f0b52a 100644
--- a/src/app/valentina/core/vapplication.cpp
+++ b/src/app/valentina/core/vapplication.cpp
@@ -363,58 +363,6 @@ bool VApplication::notify(QObject *receiver, QEvent *event)
return false;
}
-//---------------------------------------------------------------------------------------------------------------------
-/**
- * @brief translationsPath This function is implementation of the method VAbstractApplication::translationsPath.
- */
-QString VApplication::translationsPath(const QString &locale) const
-{
- const QString trPath = QStringLiteral("/translations");
-#ifdef Q_OS_WIN
- Q_UNUSED(locale)
- return QApplication::applicationDirPath() + trPath;
-#elif defined(Q_OS_MAC)
- QString mainPath;
- if (locale.isEmpty())
- {
- mainPath = QApplication::applicationDirPath() + QLatin1Literal("/../Resources") + trPath;
- }
- else
- {
- mainPath = QApplication::applicationDirPath() + QLatin1Literal("/../Resources") + trPath + QLatin1Literal("/")
- + locale + QLatin1Literal(".lproj");
- }
- QDir dirBundle(mainPath);
- if (dirBundle.exists())
- {
- return dirBundle.absolutePath();
- }
- else
- {
- QDir dir(QApplication::applicationDirPath() + trPath);
- if (dir.exists())
- {
- return dir.absolutePath();
- }
- else
- {
- return QStringLiteral("/usr/share/valentina/translations");
- }
- }
-#else // Unix
- Q_UNUSED(locale)
- QDir dir(QApplication::applicationDirPath() + trPath);
- if (dir.exists())
- {
- return dir.absolutePath();
- }
- else
- {
- return QStringLiteral("/usr/share/valentina/translations");
- }
-#endif
-}
-
//---------------------------------------------------------------------------------------------------------------------
QString VApplication::TapeFilePath() const
{
@@ -455,15 +403,15 @@ QString VApplication::TapeFilePath() const
}
else
{
- QFileInfo tapeFile(QApplication::applicationDirPath() + "/" + tape);
- if (tapeFile.exists())
- {
- return tapeFile.absoluteFilePath();
- }
- else
- {
- return tape;
- }
+ QFileInfo tapeFile(QApplication::applicationDirPath() + "/" + tape);
+ if (tapeFile.exists())
+ {
+ return tapeFile.absoluteFilePath();
+ }
+ else
+ {
+ return tape;
+ }
}
#endif
}
diff --git a/src/app/valentina/core/vapplication.h b/src/app/valentina/core/vapplication.h
index 8c0b1e5ed..6be7f6c29 100644
--- a/src/app/valentina/core/vapplication.h
+++ b/src/app/valentina/core/vapplication.h
@@ -61,7 +61,6 @@ public:
void InitOptions();
- virtual QString translationsPath(const QString &locale = QString()) const Q_DECL_OVERRIDE;
QString TapeFilePath() const;
QTimer *getAutoSaveTimer() const;
diff --git a/src/app/valentina/valentina.pro b/src/app/valentina/valentina.pro
index 6a91f0995..3a85f841c 100644
--- a/src/app/valentina/valentina.pro
+++ b/src/app/valentina/valentina.pro
@@ -183,18 +183,14 @@ message(Examples: $$[QT_INSTALL_EXAMPLES])
# Path to recource file.
win32:RC_FILE = share/resources/valentina.rc
-# Keep path to all files with standard measurements we support right now
-INSTALL_STANDARD_MEASHUREMENTS += share/resources/tables/standard/GOST_man_ru.vst
-
-# Keep path to all template files we have right now
-INSTALL_STANDARD_TEMPLATES += ../tape/share/resources/templates/template_all_measurements.vit
+# INSTALL_STANDARD_MEASHUREMENTS and INSTALL_STANDARD_TEMPLATES inside tables.pri
+include(../tables.pri)
win32 {
INSTALL_PDFTOPS += ../../../dist/win/pdftops.exe
}
-# TRANSLATIONS_PATH defined inside translations.pri
-include(translations.pri)
+include(../translations.pri)
# Set "make install" command for Unix-like systems.
unix{
@@ -274,7 +270,7 @@ unix{
# logo on macx.
ICON = ../../../dist/Valentina.icns
- QMAKE_INFO_PLIST = $$PWD/../../../dist/macx/Info.plist
+ QMAKE_INFO_PLIST = $$PWD/../../../dist/macx/valentina/Info.plist
# Copy to bundle standard measurements files
standard.path = $$RESOURCES_DIR/tables/standard/
@@ -455,22 +451,6 @@ win32:*-g++ {
}
}
-for(DIR, INSTALL_STANDARD_MEASHUREMENTS) {
- #add these absolute paths to a variable which
- #ends up as 'mkcommands = path1 path2 path3 ...'
- st_path += $${PWD}/$$DIR
-}
-
-copyToDestdir($$st_path, $$shell_path($${OUT_PWD}/$$DESTDIR/tables/standard))
-
-for(DIR, INSTALL_STANDARD_TEMPLATES) {
- #add these absolute paths to a variable which
- #ends up as 'mkcommands = path1 path2 path3 ...'
- t_path += $${PWD}/$$DIR
-}
-
-copyToDestdir($$t_path, $$shell_path($${OUT_PWD}/../tape/$${DESTDIR}/tables/templates))
-
win32 {
for(DIR, INSTALL_PDFTOPS) {
#add these absolute paths to a variable which
@@ -627,5 +607,5 @@ noDebugSymbols{ # For enable run qmake with CONFIG+=noDebugSymbols
macx{
# run macdeployqt to include all qt libraries in packet
- QMAKE_POST_LINK += $$[QT_INSTALL_BINS]/macdeployqt $${OUT_PWD}/$${DESTDIR}/$${TARGET}.app -executable=$${OUT_PWD}/$${DESTDIR}/$${TARGET}.app/$$MACOS_DIR/tape
+ QMAKE_POST_LINK += $$[QT_INSTALL_BINS]/macdeployqt $${OUT_PWD}/$${DESTDIR}/$${TARGET}.app
}
diff --git a/src/libs/vmisc/vabstractapplication.cpp b/src/libs/vmisc/vabstractapplication.cpp
index 0d5b42492..9b6044b7e 100644
--- a/src/libs/vmisc/vabstractapplication.cpp
+++ b/src/libs/vmisc/vabstractapplication.cpp
@@ -29,6 +29,7 @@
#include "vabstractapplication.h"
#include "../vmisc/def.h"
+#include
#include
#include
#include
@@ -75,6 +76,61 @@ VAbstractApplication::VAbstractApplication(int &argc, char **argv)
VAbstractApplication::~VAbstractApplication()
{}
+//---------------------------------------------------------------------------------------------------------------------
+/**
+ * @brief translationsPath return path to the root directory that contain QM files.
+ * @param locale used only in Mac OS. If empty return path to the root directory. If not - return path to locale
+ * subdirectory inside an app bundle.
+ * @return path to a directory that contain QM files.
+ */
+QString VAbstractApplication::translationsPath(const QString &locale) const
+{
+ const QString trPath = QStringLiteral("/translations");
+#ifdef Q_OS_WIN
+ Q_UNUSED(locale)
+ return QApplication::applicationDirPath() + trPath;
+#elif defined(Q_OS_MAC)
+ QString mainPath;
+ if (locale.isEmpty())
+ {
+ mainPath = QApplication::applicationDirPath() + QLatin1Literal("/../Resources") + trPath;
+ }
+ else
+ {
+ mainPath = QApplication::applicationDirPath() + QLatin1Literal("/../Resources") + trPath + QLatin1Literal("/")
+ + locale + QLatin1Literal(".lproj");
+ }
+ QDir dirBundle(mainPath);
+ if (dirBundle.exists())
+ {
+ return dirBundle.absolutePath();
+ }
+ else
+ {
+ QDir dir(QApplication::applicationDirPath() + trPath);
+ if (dir.exists())
+ {
+ return dir.absolutePath();
+ }
+ else
+ {
+ return QStringLiteral("/usr/share/valentina/translations");
+ }
+ }
+#else // Unix
+ Q_UNUSED(locale)
+ QDir dir(QApplication::applicationDirPath() + trPath);
+ if (dir.exists())
+ {
+ return dir.absolutePath();
+ }
+ else
+ {
+ return QStringLiteral("/usr/share/valentina/translations");
+ }
+#endif
+}
+
//---------------------------------------------------------------------------------------------------------------------
MeasurementsType VAbstractApplication::patternType() const
{
diff --git a/src/libs/vmisc/vabstractapplication.h b/src/libs/vmisc/vabstractapplication.h
index f1e54e06e..d51d1ef48 100644
--- a/src/libs/vmisc/vabstractapplication.h
+++ b/src/libs/vmisc/vabstractapplication.h
@@ -56,13 +56,8 @@ public:
virtual ~VAbstractApplication() Q_DECL_OVERRIDE;
virtual const VTranslateVars *TrVars()=0;
- /**
- * @brief translationsPath return path to the root directory that contain QM files.
- * @param locale used only in Mac OS. If empty return path to the root directory. If not - return path to locale
- * subdirectory inside an app bundle.
- * @return path to a directory that contain QM files.
- */
- virtual QString translationsPath(const QString &locale = QString()) const=0;
+
+ QString translationsPath(const QString &locale = QString()) const;
void LoadTranslation(const QString &locale);
diff --git a/src/libs/vmisc/vcommonsettings.cpp b/src/libs/vmisc/vcommonsettings.cpp
index 0a1540184..2093f1b50 100644
--- a/src/libs/vmisc/vcommonsettings.cpp
+++ b/src/libs/vmisc/vcommonsettings.cpp
@@ -71,6 +71,47 @@ VCommonSettings::VCommonSettings(Format format, Scope scope, const QString &orga
:QSettings(format, scope, organization, application, parent)
{}
+//---------------------------------------------------------------------------------------------------------------------
+QString VCommonSettings::StandardTablesPath() const
+{
+ const QString stPath = QStringLiteral("/tables/standard");
+#ifdef Q_OS_WIN
+ return QApplication::applicationDirPath() + stPath;
+#elif defined(Q_OS_MAC)
+ QDir dirBundle(QApplication::applicationDirPath() + QStringLiteral("/../Resources") + stPath);
+ if (dirBundle.exists())
+ {
+ return dirBundle.absolutePath();
+ }
+ else
+ {
+ QDir dir(QApplication::applicationDirPath() + stPath);
+ if (dir.exists())
+ {
+ return dir.absolutePath();
+ }
+ else
+ {
+ return QStringLiteral("/usr/share/valentina/tables/standard");
+ }
+ }
+#else // Unix
+ #ifdef QT_DEBUG
+ return QApplication::applicationDirPath() + stPath;
+ #else
+ QDir dir(QApplication::applicationDirPath() + stPath);
+ if (dir.exists())
+ {
+ return dir.absolutePath();
+ }
+ else
+ {
+ return QStringLiteral("/usr/share/valentina/tables/standard");
+ }
+ #endif
+#endif
+}
+
//---------------------------------------------------------------------------------------------------------------------
QString VCommonSettings::GetPathIndividualMeasurements() const
{
diff --git a/src/libs/vmisc/vcommonsettings.h b/src/libs/vmisc/vcommonsettings.h
index 99ec159ad..8cc2092de 100644
--- a/src/libs/vmisc/vcommonsettings.h
+++ b/src/libs/vmisc/vcommonsettings.h
@@ -39,7 +39,7 @@ public:
VCommonSettings(Format format, Scope scope, const QString &organization, const QString &application = QString(),
QObject *parent = 0);
- virtual QString StandardTablesPath()const=0 ;
+ QString StandardTablesPath() const;
QString TemplatesPath() const;
QString GetPathIndividualMeasurements() const;
diff --git a/src/libs/vmisc/vsettings.cpp b/src/libs/vmisc/vsettings.cpp
index e115e05d6..a0e94e241 100644
--- a/src/libs/vmisc/vsettings.cpp
+++ b/src/libs/vmisc/vsettings.cpp
@@ -560,44 +560,3 @@ void VSettings::SetIgnoreAllFields(bool value)
{
setValue(SettingIgnoreFields, value);
}
-
-//---------------------------------------------------------------------------------------------------------------------
-QString VSettings::StandardTablesPath() const
-{
- const QString stPath = QStringLiteral("/tables/standard");
-#ifdef Q_OS_WIN
- return QApplication::applicationDirPath() + stPath;
-#elif defined(Q_OS_MAC)
- QDir dirBundle(QApplication::applicationDirPath() + QStringLiteral("/../Resources") + stPath);
- if (dirBundle.exists())
- {
- return dirBundle.absolutePath();
- }
- else
- {
- QDir dir(QApplication::applicationDirPath() + stPath);
- if (dir.exists())
- {
- return dir.absolutePath();
- }
- else
- {
- return QStringLiteral("/usr/share/valentina/tables/standard");
- }
- }
-#else // Unix
- #ifdef QT_DEBUG
- return QApplication::applicationDirPath() + stPath;
- #else
- QDir dir(QApplication::applicationDirPath() + stPath);
- if (dir.exists())
- {
- return dir.absolutePath();
- }
- else
- {
- return QStringLiteral("/usr/share/valentina/tables/standard");
- }
- #endif
-#endif
-}
diff --git a/src/libs/vmisc/vsettings.h b/src/libs/vmisc/vsettings.h
index 176d0df09..ade568104 100644
--- a/src/libs/vmisc/vsettings.h
+++ b/src/libs/vmisc/vsettings.h
@@ -41,8 +41,6 @@ public:
VSettings(Format format, Scope scope, const QString &organization, const QString &application = QString(),
QObject *parent = 0);
- virtual QString StandardTablesPath() const Q_DECL_OVERRIDE;
-
QString GetLabelLanguage() const;
void SetLabelLanguage(const QString &value);
diff --git a/src/libs/vmisc/vtapesettings.cpp b/src/libs/vmisc/vtapesettings.cpp
index cc796986a..11f1023ee 100644
--- a/src/libs/vmisc/vtapesettings.cpp
+++ b/src/libs/vmisc/vtapesettings.cpp
@@ -40,75 +40,6 @@ VTapeSettings::VTapeSettings(Format format, Scope scope, const QString &organiza
{
}
-//---------------------------------------------------------------------------------------------------------------------
-QString VTapeSettings::StandardTablesPath() const
-{
- const QString stPath = QStringLiteral("/tables/standard");
-#ifdef Q_OS_WIN
- QDir dir(QApplication::applicationDirPath() + stPath);
- if (dir.exists())
- {
- return dir.absolutePath();
- }
- else
- {
- return QApplication::applicationDirPath() + "../../valentina/bin" + stPath;
- }
-#elif defined(Q_OS_MAC)
- QDir dirBundle(QApplication::applicationDirPath() + QStringLiteral("/../Resources") + stPath);
- if (dirBundle.exists())
- {
- return dirBundle.absolutePath();
- }
- else
- {
- QDir dir1(QApplication::applicationDirPath() + stPath);
- if (dir1.exists())
- {
- return dir1.absolutePath();
- }
-
- QDir dir2(QApplication::applicationDirPath() + "../../valentina/bin" + stPath);
- if (dir2.exists())
- {
- return dir2.absolutePath();
- }
- else
- {
- return QStringLiteral("/usr/share/valentina/tables/standard");
- }
- }
-#else // Unix
- #ifdef QT_DEBUG
- QDir dir(QApplication::applicationDirPath() + stPath);
- if (dir.exists())
- {
- return dir.absolutePath();
- }
- else
- {
- return QApplication::applicationDirPath() + "../../valentina/bin" + stPath;
- }
- #else
- QDir dir1(QApplication::applicationDirPath() + stPath);
- if (dir1.exists())
- {
- return dir1.absolutePath();
- }
-
- QDir dir2(QApplication::applicationDirPath() + "../../valentina/bin" + stPath);
- if (dir2.exists())
- {
- return dir2.absolutePath();
- }
- else
- {
- return QStringLiteral("/usr/share/valentina/tables/standard");
- }
- #endif
-#endif
-}
-
//---------------------------------------------------------------------------------------------------------------------
QByteArray VTapeSettings::GetDataBaseGeometry() const
{
diff --git a/src/libs/vmisc/vtapesettings.h b/src/libs/vmisc/vtapesettings.h
index f13e8f82a..275e09b73 100644
--- a/src/libs/vmisc/vtapesettings.h
+++ b/src/libs/vmisc/vtapesettings.h
@@ -38,8 +38,6 @@ public:
VTapeSettings(Format format, Scope scope, const QString &organization, const QString &application = QString(),
QObject *parent = 0);
- virtual QString StandardTablesPath()const Q_DECL_OVERRIDE;
-
QByteArray GetDataBaseGeometry() const;
void SetDataBaseGeometry(const QByteArray &value);