Merge remote-tracking branch 'origin/11.0' into qds/dev

Conflicts: src/plugins/qmldesigner/designercore/metainfo/metainfo.cpp
  src/plugins/qmlprojectmanager/cmakegen/generatecmakelists.cpp
  tests/auto/qml/qmlprojectmanager/fileformat/fileformat.qbs
  tests/auto/qml/qmlprojectmanager/fileformat/tst_fileformat.cpp

Change-Id: I257f1908917bcc58805619b53b6866f2f73ca544
This commit is contained in:
Tim Jenssen
2023-06-02 21:23:26 +02:00
2486 changed files with 100472 additions and 44365 deletions

View File

@@ -35,12 +35,9 @@ set(resource_files
debugger/libcpp_stdtypes.py
debugger/stdtypes.py
debugger/utils.py
debugger/loadorder.txt
)
if (APPLE)
set(resource_directories ${resource_directories} scripts)
endif()
# copy resource directories during build
qtc_copy_to_builddir(copy_share_to_builddir
DIRECTORIES ${resource_directories}

View File

@@ -235,7 +235,7 @@ def qdump__Utils__Port(d, value):
def qdump__Utils__Environment(d, value):
def x_qdump__Utils__Environment(d, value):
qdump__Utils__NameValueDictionary(d, value)
@@ -243,7 +243,7 @@ def qdump__Utils__DictKey(d, value):
d.putStringValue(value["name"])
def qdump__Utils__NameValueDictionary(d, value):
def x_qdump__Utils__NameValueDictionary(d, value):
dptr = d.extractPointer(value)
if d.qtVersion() >= 0x60000:
if dptr == 0:

View File

@@ -106,7 +106,7 @@ class Children():
self.d.putNumChild(0)
if self.d.currentMaxNumChild is not None:
if self.d.currentMaxNumChild < self.d.currentNumChild:
self.d.put('{name="<incomplete>",value="",type="",numchild="0"},')
self.d.put('{name="<load more>",value="",type="",numchild="1"},')
self.d.currentChildType = self.savedChildType
self.d.currentChildNumChild = self.savedChildNumChild
self.d.currentNumChild = self.savedNumChild
@@ -195,10 +195,16 @@ class DumperBase():
self.childrenPrefix = 'children=['
self.childrenSuffix = '],'
self.dumpermodules = [
os.path.splitext(os.path.basename(p))[0] for p in
glob.glob(os.path.join(os.path.dirname(__file__), '*types.py'))
]
self.dumpermodules = []
try:
# Fails in the piping case
self.dumpermodules = [
os.path.splitext(os.path.basename(p))[0] for p in
glob.glob(os.path.join(os.path.dirname(__file__), '*types.py'))
]
except:
pass
# These values are never used, but the variables need to have
# some value base for the swapping logic in Children.__enter__()
@@ -215,7 +221,7 @@ class DumperBase():
def setVariableFetchingOptions(self, args):
self.resultVarName = args.get('resultvarname', '')
self.expandedINames = set(args.get('expanded', []))
self.expandedINames = args.get('expanded', {})
self.stringCutOff = int(args.get('stringcutoff', 10000))
self.displayStringLimit = int(args.get('displaystringlimit', 100))
self.typeformats = args.get('typeformats', {})
@@ -298,6 +304,11 @@ class DumperBase():
return range(0, self.currentNumChild)
return range(min(self.currentMaxNumChild, self.currentNumChild))
def maxArrayCount(self):
if self.currentIName in self.expandedINames:
return self.expandedINames[self.currentIName]
return 100
def enterSubItem(self, item):
if self.useTimeStamps:
item.startTime = time.time()
@@ -872,7 +883,7 @@ class DumperBase():
self.output.append(stuff)
def takeOutput(self):
res = '\n'.join(self.output)
res = ''.join(self.output)
self.output = []
return res
@@ -2233,7 +2244,7 @@ class DumperBase():
res = self.currentValue
return res # The 'short' display.
def putArrayData(self, base, n, innerType, childNumChild=None, maxNumChild=10000):
def putArrayData(self, base, n, innerType, childNumChild=None):
self.checkIntType(base)
self.checkIntType(n)
addrBase = base
@@ -2241,6 +2252,7 @@ class DumperBase():
self.putNumChild(n)
#DumperBase.warn('ADDRESS: 0x%x INNERSIZE: %s INNERTYPE: %s' % (addrBase, innerSize, innerType))
enc = innerType.simpleEncoding()
maxNumChild = self.maxArrayCount()
if enc:
self.put('childtype="%s",' % innerType.name)
self.put('addrbase="0x%x",' % addrBase)
@@ -2248,7 +2260,7 @@ class DumperBase():
self.put('arrayencoding="%s",' % enc)
self.put('endian="%s",' % self.packCode)
if n > maxNumChild:
self.put('childrenelided="%s",' % n) # FIXME: Act on that in frontend
self.put('childrenelided="%s",' % n)
n = maxNumChild
self.put('arraydata="')
self.put(self.readMemory(addrBase, n * innerSize))
@@ -2282,7 +2294,7 @@ class DumperBase():
def putPlotData(self, base, n, innerType, maxNumChild=1000 * 1000):
self.putPlotDataHelper(base, n, innerType, maxNumChild=maxNumChild)
if self.isExpanded():
self.putArrayData(base, n, innerType, maxNumChild=maxNumChild)
self.putArrayData(base, n, innerType)
def putSpecialArgv(self, value):
"""

View File

@@ -870,6 +870,7 @@ class Dumper(DumperBase):
self.startMode_ = args.get('startmode', 1)
self.breakOnMain_ = args.get('breakonmain', 0)
self.useTerminal_ = args.get('useterminal', 0)
self.firstStop_ = True
pargs = self.hexdecode(args.get('processargs', ''))
self.processArgs_ = pargs.split('\0') if len(pargs) else []
self.environment_ = args.get('environment', [])
@@ -930,6 +931,8 @@ class Dumper(DumperBase):
if self.startMode_ == DebuggerStartMode.AttachExternal:
attach_info = lldb.SBAttachInfo(self.attachPid_)
if self.breakOnMain_:
self.createBreakpointAtMain()
self.process = self.target.Attach(attach_info, error)
if not error.Success():
self.reportState('enginerunfailed')
@@ -1474,6 +1477,12 @@ class Dumper(DumperBase):
self.reportState("inferiorstopok")
else:
self.reportState("stopped")
if self.firstStop_:
self.firstStop_ = False
if self.useTerminal_:
# When using a terminal, the process will be interrupted on startup.
# We therefore need to continue it here.
self.process.Continue()
else:
self.reportState(self.stateName(state))
@@ -2120,7 +2129,7 @@ class SummaryDumper(Dumper, LogMixin):
# Expand variable if we need synthetic children
oldExpanded = self.expandedINames
self.expandedINames = [value.name] if expanded else []
self.expandedINames = {value.name: 100} if expanded else {}
savedOutput = self.output
self.output = []

View File

@@ -0,0 +1,13 @@
utils
gdbtracepoint
dumper
***bridge***
boosttypes
creatortypes
libcpp_stdtypes
misctypes
opencvtypes
personaltypes
qttypes
stdtypes
android_stdtypes

View File

@@ -1445,7 +1445,7 @@ class QtcInternalDumper():
self.updateData(args)
def updateData(self, args):
self.expandedINames = __builtins__.set(args.get('expanded', []))
self.expandedINames = args.get('expanded', {})
self.typeformats = args.get('typeformats', {})
self.formats = args.get('formats', {})
self.output = ''

View File

@@ -4,6 +4,7 @@
# Debugger start modes. Keep in sync with DebuggerStartMode in debuggerconstants.h
# MT: Why does this not match (anymore?) to debuggerconstants.h : DebuggerStartMode ?
class DebuggerStartMode():
(
NoStartMode,

View File

@@ -199,6 +199,29 @@
"QtQuick.Controls.Styles 1.2",
"QtQuick.Controls.Styles 1.3",
"QtQuick.Controls.Styles 1.4",
"QtQuick.Controls.Basic 2.0",
"QtQuick.Controls.Basic 2.1",
"QtQuick.Controls.Basic 2.2",
"QtQuick.Controls.Basic 2.3",
"QtQuick.Controls.Basic 2.12",
"QtQuick.Controls.Basic 2.13",
"QtQuick.Controls.Basic 2.14",
"QtQuick.Controls.Basic 2.15",
"QtQuick.Controls.Fusion 2.0",
"QtQuick.Controls.Fusion 2.1",
"QtQuick.Controls.Fusion 2.2",
"QtQuick.Controls.Fusion 2.3",
"QtQuick.Controls.Fusion 2.12",
"QtQuick.Controls.Fusion 2.13",
"QtQuick.Controls.Fusion 2.14",
"QtQuick.Controls.Imagine 2.0",
"QtQuick.Controls.Imagine 2.1",
"QtQuick.Controls.Imagine 2.2",
"QtQuick.Controls.Imagine 2.3",
"QtQuick.Controls.Imagine 2.12",
"QtQuick.Controls.Imagine 2.13",
"QtQuick.Controls.Imagine 2.14",
"QtQuick.Controls.Imagine 2.15",
"QtQuick.Dialogs 1.0",
"QtQuick.Dialogs 1.1",
"QtQuick.Dialogs 1.2",

View File

@@ -0,0 +1,10 @@
{
"name": "QtQuickControlsMacOS",
"searchPaths": [],
"installPaths": [],
"implicitImports": [],
"supportedImports": [
"QtQuick.Controls.macOS",
"QtQuick.Controls.iOS"
]
}

View File

@@ -0,0 +1,9 @@
{
"name": "QtQuickControlsWin",
"searchPaths": [],
"installPaths": [],
"implicitImports": [],
"supportedImports": [
"QtQuick.Controls.Windows"
]
}

View File

@@ -1,44 +1,36 @@
cmake_minimum_required(VERSION 3.21.1)
set(BUILD_QDS_COMPONENTS ON CACHE BOOL "Build design studio components")
option(LINK_INSIGHT "Link Qt Insight Tracker library" ON)
option(BUILD_QDS_COMPONENTS "Build design studio components" ON)
project(%{ProjectName}App LANGUAGES CXX)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOMOC ON)
find_package(QT NAMES Qt6 COMPONENTS Gui Qml Quick)
find_package(Qt6 REQUIRED COMPONENTS Core Qml Quick)
find_package(Qt6 6.2 REQUIRED COMPONENTS Core Gui Qml Quick)
# To build this application you need Qt 6.2.0 or higher
if (Qt6_VERSION VERSION_LESS 6.2.0)
message(FATAL_ERROR "You need Qt 6.2.0 or newer to build the application.")
if (Qt6_VERSION VERSION_GREATER_EQUAL 6.3)
qt_standard_project_setup()
endif()
qt_add_executable(${CMAKE_PROJECT_NAME} src/main.cpp)
qt_add_executable(%{ProjectName}App src/main.cpp)
# qt_standard_project_setup() requires Qt 6.3 or higher. See https://doc.qt.io/qt-6/qt-standard-project-setup.html for details.
if (${QT_VERSION_MINOR} GREATER_EQUAL 3)
qt6_standard_project_setup()
endif()
qt_add_resources(${CMAKE_PROJECT_NAME} "configuration"
qt_add_resources(%{ProjectName}App "configuration"
PREFIX "/"
FILES
qtquickcontrols2.conf
)
target_link_libraries(${CMAKE_PROJECT_NAME} PRIVATE
Qt${QT_VERSION_MAJOR}::Core
Qt${QT_VERSION_MAJOR}::Gui
Qt${QT_VERSION_MAJOR}::Quick
Qt${QT_VERSION_MAJOR}::Qml
target_link_libraries(%{ProjectName}App PRIVATE
Qt6::Core
Qt6::Gui
Qt6::Qml
Qt6::Quick
)
if (${BUILD_QDS_COMPONENTS})
if (BUILD_QDS_COMPONENTS)
include(${CMAKE_CURRENT_SOURCE_DIR}/qmlcomponents)
endif ()
endif()
include(${CMAKE_CURRENT_SOURCE_DIR}/qmlmodules)
@@ -46,6 +38,8 @@ if (LINK_INSIGHT)
include(${CMAKE_CURRENT_SOURCE_DIR}/insight)
endif ()
install(TARGETS ${CMAKE_PROJECT_NAME}
install(TARGETS %{ProjectName}App
BUNDLE DESTINATION .
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
)

View File

@@ -1,112 +0,0 @@
#!/usr/bin/env python3
# Copyright (C) 2018 The Qt Company Ltd.
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
import os
import pipes
import stat
import subprocess
import sys
from tempfile import NamedTemporaryFile
def quote_shell(arg):
return pipes.quote(arg)
def clean_environment_script():
# keep some basic environment settings to ensure functioning terminal and config files
env_to_keep = ' '.join(['_', 'HOME', 'LOGNAME', 'PWD', 'SHELL', 'TMPDIR', 'USER', 'TERM',
'TERM_PROGRAM', 'TERM_PROGRAM_VERSION', 'TERM_SESSION_CLASS_ID',
'TERM_SESSION_ID'])
return r'''
function ignore() {
local keys=(''' + env_to_keep + ''')
local v=$1
for e in "${keys[@]}"; do [[ "$e" == "$v" ]] && return 0; done
}
while read -r line; do
key=$(echo $line | /usr/bin/cut -d '=' -f 1)
ignore $key || unset $key
done < <(env)
'''
def system_login_script_bash():
return r'''
[ -r /etc/profile ] && source /etc/profile
# fake behavior of /etc/profile as if BASH was set. It isn't for non-interactive shell
export PS1='\h:\W \u\$ '
[ -r /etc/bashrc ] && source /etc/bashrc
'''
def login_script_bash():
return r'''
if [ -f $HOME/.bash_profile ]; then
source $HOME/.bash_profile
elif [ -f $HOME/.bash_login ]; then
source $HOME/.bash_login ]
elif [ -f $HOME/.profile ]; then
source $HOME/.profile
fi
'''
def system_login_script_zsh():
return '[ -r /etc/profile ] && source /etc/profile\n'
def login_script_zsh():
return r'''
[ -r $HOME/.zprofile ] && source $HOME/.zprofile
[ -r $HOME/.zshrc ] && source $HOME/.zshrc
[ -r $HOME/.zlogin ] && source $HOME/.zlogin
'''
def environment_script():
return ''.join(['export ' + quote_shell(key + '=' + os.environ[key]) + '\n'
for key in os.environ])
def zsh_setup(shell):
return (shell,
system_login_script_zsh,
login_script_zsh,
shell + ' -c',
shell + ' -d -f')
def bash_setup(shell):
bash = shell if shell is not None and shell.endswith('/bash') else '/bin/bash'
return (bash,
system_login_script_bash,
login_script_bash,
bash + ' -c',
bash + ' --noprofile -l')
def main():
# create temporary file to be sourced into bash that deletes itself
with NamedTemporaryFile(mode='wt', delete=False) as shell_script:
shell = os.environ.get('SHELL')
shell, system_login_script, login_script, non_interactive_shell, interactive_shell = (
zsh_setup(shell) if shell is not None and shell.endswith('/zsh')
else bash_setup(shell))
commands = ('#!' + shell + '\n' +
'rm ' + quote_shell(shell_script.name) + '\n' +
clean_environment_script() +
system_login_script() + # /etc/(z)profile by default resets the path, so do first
environment_script() +
login_script() +
'cd ' + quote_shell(os.getcwd()) + '\n' +
('exec ' + non_interactive_shell + ' ' +
quote_shell(' '.join([quote_shell(arg) for arg in sys.argv[1:]])) + '\n'
if len(sys.argv) > 1 else 'exec ' + interactive_shell + '\n')
)
shell_script.write(commands)
shell_script.flush()
os.chmod(shell_script.name, stat.S_IXUSR | stat.S_IRUSR | stat.S_IWUSR)
# TODO /usr/bin/open doesn't work with notarized app in macOS 13,
# use osascript instead (QTCREATORBUG-28683).
# This has the disadvantage that the Terminal windows doesn't close
# automatically anymore.
# subprocess.call(['/usr/bin/open', '-a', 'Terminal', shell_script.name])
subprocess.call(['/usr/bin/osascript', '-e', 'tell app "Terminal" to activate'])
subprocess.call(['/usr/bin/osascript', '-e', 'tell app "Terminal" to do script "' + shell_script.name + '"'])
if __name__ == "__main__":
main()

View File

@@ -204,5 +204,5 @@ case $value$:
default:
break;
}</snippet>
<snippet group="C++" trigger="Q_PROPERTY" id="cpp_q_property" complement="(type name READ name WRITE setName NOTIFY nameChanged)">Q_PROPERTY($type$ $name$ READ $name$ WRITE set$name:c$ NOTIFY $name$Changed)</snippet>
<snippet group="C++" trigger="Q_PROPERTY" id="cpp_q_property" complement="(type name READ name WRITE setName NOTIFY nameChanged FINAL)">Q_PROPERTY($type$ $name$ READ $name$ WRITE set$name:c$ NOTIFY $name$Changed FINAL)</snippet>
</snippets>

View File

@@ -10,5 +10,3 @@ QList<QDesignerCustomWidgetInterface*> @COLLECTION_PLUGIN_CLASS@::customWidgets(
{
return m_widgets;
}
@COLLECTION_PLUGIN_EXPORT@

View File

@@ -15,9 +15,9 @@ class @COLLECTION_PLUGIN_CLASS@ : public QObject, public QDesignerCustomWidgetCo
@COLLECTION_PLUGIN_METADATA@
public:
explicit @COLLECTION_PLUGIN_CLASS@(QObject *parent = 0);
explicit @COLLECTION_PLUGIN_CLASS@(QObject *parent = nullptr);
virtual QList<QDesignerCustomWidgetInterface*> customWidgets() const;
QList<QDesignerCustomWidgetInterface*> customWidgets() const override;
private:
QList<QDesignerCustomWidgetInterface*> m_widgets;

View File

@@ -7,11 +7,7 @@ SOURCES =@PLUGIN_SOURCES@
RESOURCES = @PLUGIN_RESOURCES@
LIBS += -L. @WIDGET_LIBS@
greaterThan(QT_MAJOR_VERSION, 4) {
QT += designer
} else {
CONFIG += designer
}
QT += designer
target.path = $$[QT_INSTALL_PLUGINS]/designer
INSTALLS += target

View File

@@ -6,7 +6,6 @@
@PLUGIN_CLASS@::@PLUGIN_CLASS@(QObject *parent)
: QObject(parent)
{
m_initialized = false;
}
void @PLUGIN_CLASS@::initialize(QDesignerFormEditorInterface * /* core */)
@@ -61,11 +60,10 @@ bool @PLUGIN_CLASS@::isContainer() const
QString @PLUGIN_CLASS@::domXml() const
{
return QLatin1String("@WIDGET_DOMXML@");
return QLatin1String(@WIDGET_DOMXML@);
}
QString @PLUGIN_CLASS@::includeFile() const
{
return QLatin1String("@WIDGET_HEADER@");
}
@SINGLE_PLUGIN_EXPORT@

View File

@@ -14,22 +14,22 @@ class @PLUGIN_CLASS@ : public QObject, public QDesignerCustomWidgetInterface
@SINGLE_PLUGIN_METADATA@
public:
@PLUGIN_CLASS@(QObject *parent = 0);
explicit @PLUGIN_CLASS@(QObject *parent = nullptr);
bool isContainer() const;
bool isInitialized() const;
QIcon icon() const;
QString domXml() const;
QString group() const;
QString includeFile() const;
QString name() const;
QString toolTip() const;
QString whatsThis() const;
QWidget *createWidget(QWidget *parent);
void initialize(QDesignerFormEditorInterface *core);
bool isContainer() const override;
bool isInitialized() const override;
QIcon icon() const override;
QString domXml() const override;
QString group() const override;
QString includeFile() const override;
QString name() const override;
QString toolTip() const override;
QString whatsThis() const override;
QWidget *createWidget(QWidget *parent) override;
void initialize(QDesignerFormEditorInterface *core) override;
private:
bool m_initialized;
bool m_initialized = false;
};
@if ! '%{Cpp:PragmaOnce}'

View File

@@ -12,7 +12,7 @@ class @WIDGET_CLASS@ : public @WIDGET_BASE_CLASS@
Q_OBJECT
public:
@WIDGET_CLASS@(QWidget *parent = 0);
explicit @WIDGET_CLASS@(QWidget *parent = nullptr);
};
@if ! '%{Cpp:PragmaOnce}'

View File

@@ -70,6 +70,35 @@ isEmpty(BOOST_INCLUDE_DIR): {
SOURCES += \\
%{MainCppName}
@endif
@if "%{TestFrameWork}" == "BoostTest_dyn"
TEMPLATE = app
CONFIG -= qt
CONFIG -= app_bundle
CONFIG += console
isEmpty(BOOST_INSTALL_DIR): BOOST_INSTALL_DIR=$$(BOOST_INSTALL_DIR)
@if "%{BoostInstallDir}" != ""
# set by Qt Creator wizard
isEmpty(BOOST_INSTALL_DIR): BOOST_INSTALL_DIR="%{BoostInstallDir}"
@endif
!isEmpty(BOOST_INSTALL_DIR) {
win32: INCLUDEPATH *= $${BOOST_INSTALL_DIR}
else: INCLUDEPATH *= $${BOOST_INSTALL_DIR}/include
}
# Windows: adapt to name scheme, e.g. lib64-msvc-14.2
!isEmpty(BOOST_INSTALL_DIR): LIBS *= -L$${BOOST_INSTALL_DIR}/lib
# Windows: adapt to name scheme, e.g. boost_unit_test_framework-vc142-mt-gd-x64-1_80
LIBS *= -lboost_unit_test_framework
DEFINES *= BOOST_UNIT_TEST_FRAMEWORK_DYN_LINK
isEmpty(BOOST_INSTALL_DIR): {
message("BOOST_INSTALL_DIR is not set, assuming Boost can be found automatically in your system")
}
SOURCES += \\
%{MainCppName} \\
%{TestCaseFileWithCppSuffix}
@endif
@if "%{TestFrameWork}" == "Catch2"
TEMPLATE = app
@if "%{Catch2NeedsQt}" == "true"

View File

@@ -7,6 +7,11 @@ import "googlecommon.js" as googleCommon
import qbs.Environment
import qbs.File
@endif
@if "%{TestFrameWork}" == "BoostTest_dyn"
import qbs.Environment
import qbs.File
import qbs.FileInfo
@endif
@if "%{TestFrameWork}" == "Catch2"
import qbs.Environment
import qbs.File
@@ -116,6 +121,40 @@ CppApplication {
files: [ "%{MainCppName}" ]
@endif
@if "%{TestFrameWork}" == "BoostTest_dyn"
type: "application"
property string boostInstallDir: {
if (typeof Environment.getEnv("BOOST_INSTALL_DIR") !== 'undefined')
return Environment.getEnv("BOOST_INSTALL_DIR");
return "%{BoostInstallDir}"; // set by Qt Creator wizard
}
Properties {
condition: boostInstallDir && File.exists(boostInstallDir)
cpp.includePaths: base.concat([qbs.hostOS.contains("windows")
? boostInstallDir
: FileInfo.joinPaths(boostInstallDir, "include")])
// Windows: adapt to different directory layout, e.g. "lib64-msvc-14.2"
cpp.libraryPaths: base.concat([FileInfo.joinPaths(boostInstallDir, "lib")])
}
cpp.defines: base.concat("BOOST_UNIT_TEST_FRAMEWORK_DYN_LINK")
// Windows: adapt to name scheme, e.g. "boost_unit_test_framework-vc142-mt-gd-x64-1_80"
cpp.dynamicLibraries: ["boost_unit_test_framework"]
condition: {
if (!boostInstallDir)
console.log("BOOST_INSTALL_DIR is not set, assuming Boost can be "
+ "found automatically in your system");
return true;
}
files: [
"%{MainCppName}",
"%{TestCaseFileWithCppSuffix}",
]
@endif
@if "%{TestFrameWork}" == "Catch2"
type: "application"

View File

@@ -133,6 +133,33 @@ elseif (EXISTS ${BOOST_INCLUDE_DIR})
include_directories(${BOOST_INCLUDE_DIR})
endif ()
@endif
@if "%{TestFrameWork}" == "BoostTest_dyn"
set(Boost_USE_STATIC_LIBS OFF)
set(Boost_USE_MULTITHREADED ON)
set(Boost_USE_STATIC_RUNTIME OFF)
if (DEFINED ENV{BOOST_INSTALL_DIR})
set(BOOST_INSTALL_DIR $ENV{BOOST_INSTALL_DIR})
else ()
set(BOOST_INSTALL_DIR "%{BoostInstallDir}") # set by Qt Creator wizard
endif ()
if (BOOST_INSTALL_DIR STREQUAL "")
message("BOOST_INSTALL_DIR not set, assuming Boost can be found automatically in your system")
elseif (EXISTS ${BOOST_INSTALL_DIR})
set(BOOST_ROOT ${BOOST_INSTALL_DIR})
endif ()
find_package(Boost COMPONENTS unit_test_framework REQUIRED)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
add_executable(%{TestCaseName} %{MainCppName} %{TestCaseFileGTestWithCppSuffix})
add_test(NAME %{TestCaseName} COMMAND %{TestCaseName})
if (Boost_FOUND)
include_directories(${Boost_INCLUDE_DIRS})
target_link_libraries(%{TestCaseName} PUBLIC ${Boost_UNIT_TEST_FRAMEWORK_LIBRARY})
endif ()
@endif
@if "%{TestFrameWork}" == "Catch2"
SET(CMAKE_CXX_STANDARD 11)

View File

@@ -21,13 +21,22 @@ int main(int argc, char *argv[])
}
@endif
@if "%{TestFrameWork}" == "BoostTest"
#define BOOST_TEST_MODULE %{TestSuiteName}
#define BOOST_TEST_MODULE My test module
#include <boost/test/included/unit_test.hpp>
BOOST_AUTO_TEST_SUITE( %{TestSuiteName} )
BOOST_AUTO_TEST_CASE( %{TestCaseName} )
{
BOOST_TEST( true /* test assertion */ );
}
BOOST_AUTO_TEST_SUITE_END()
@endif
@if "%{TestFrameWork}" == "BoostTest_dyn"
#define BOOST_TEST_DYN_LINK
#define BOOST_TEST_MODULE My test module
#include <boost/test/unit_test.hpp>
@endif
@if "%{TestFrameWork}" == "Catch2"
@if "%{Catch2NeedsQt}" == "true"

View File

@@ -0,0 +1,13 @@
%{Cpp:LicenseTemplate}\
@if "%{TestFrameWork}" == "BoostTest_dyn"
#define BOOST_TEST_DYN_LINK
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_SUITE( %{TestSuiteName} )
BOOST_AUTO_TEST_CASE( %{TestCaseName} )
{
BOOST_TEST( true /* test assertion */ );
}
BOOST_AUTO_TEST_SUITE_END()

View File

@@ -90,9 +90,13 @@
"value": "QtQuickTest"
},
{
"trKey": "Boost Test",
"trKey": "Boost Test (header only)",
"value": "BoostTest"
},
{
"trKey": "Boost Test (shared libraries)",
"value": "BoostTest_dyn"
},
{
"trKey": "Catch2",
"value": "Catch2"
@@ -113,7 +117,7 @@
{
"name": "TestSuiteName",
"trDisplayName": "Test suite name:",
"visible": "%{JS: ['BoostTest', 'GTest'].indexOf(value('TestFrameWork')) >= 0}",
"visible": "%{JS: ['BoostTest', 'BoostTest_dyn', 'GTest'].indexOf(value('TestFrameWork')) >= 0}",
"mandatory": true,
"type": "LineEdit",
"data": { "validator": "^[a-zA-Z_0-9]+$" }
@@ -181,6 +185,16 @@
"kind": "existingDirectory"
}
},
{
"name": "BoostInstallDir",
"trDisplayName": "Boost install directory (optional):",
"visible": "%{JS: value('TestFrameWork') == 'BoostTest_dyn'}",
"mandatory": false,
"type": "PathChooser",
"data": {
"kind": "existingDirectory"
}
},
{
"name": "CatchIncDir",
"trDisplayName": "Catch2 include directory (optional):",
@@ -300,9 +314,14 @@
{
"source": "files/tst_main.cpp",
"target": "%{MainCppName}",
"condition": "%{JS: ['GTest', 'QtQuickTest', 'BoostTest', 'Catch2'].indexOf(value('TestFrameWork')) >= 0}",
"condition": "%{JS: ['GTest', 'QtQuickTest', 'BoostTest', 'BoostTest_dyn', 'Catch2'].indexOf(value('TestFrameWork')) >= 0}",
"openInEditor": true
},
{
"source": "files/tst_src_boost.cpp",
"target": "%{TestCaseFileWithCppSuffix}",
"condition": "%{JS: value('TestFrameWork') === 'BoostTest_dyn'}"
},
{
"source": "files/tst_qml.tmpl",
"target": "%{TestCaseFileWithQmlSuffix}",

View File

@@ -3,7 +3,7 @@
"supportedProjectTypes": [ "CMakeProjectManager.CMakeProject" ],
"id": "Z.Snippet",
"category": "H.Project",
"trDescription": "Creates a CMake-based test project for which a code snippet can be entered.",
"trDescription": "Creates a CMake-based test project where you can enter a code snippet to compile and check it.",
"trDisplayName": "Code Snippet",
"trDisplayCategory": "Other Project",
"featuresRequired": [ "QtSupport.Wizards.FeatureQt" ],

View File

@@ -0,0 +1,51 @@
# First Level Heading
Paragraph.
## Second Level Heading
Paragraph.
- bullet
+ other bullet
* another bullet
* child bullet
1. ordered
2. next ordered
### Third Level Heading
Some *italic* and **bold** text and `inline code`.
An empty line starts a new paragraph.
Use two spaces at the end
to force a line break.
A horizontal ruler follows:
---
Add links inline like [this link to the Qt homepage](https://www.qt.io),
or with a reference like [this other link to the Qt homepage][1].
Add code blocks with
four spaces at the front.
> A blockquote
> starts with >
>
> and has the same paragraph rules as normal text.
First Level Heading in Alternate Style
======================================
Paragraph.
Second Level Heading in Alternate Style
---------------------------------------
Paragraph.
[1]: https://www.qt.io

View File

@@ -0,0 +1,42 @@
{
"version": 1,
"supportedProjectTypes": [ ],
"id": "E.Markdown",
"category": "U.General",
"trDescription": "Creates a markdown file.",
"trDisplayName": "Markdown File",
"trDisplayCategory": "General",
"iconText": "md",
"platformIndependent": true,
"enabled": "%{JS: value('Plugins').indexOf('TextEditor') >= 0}",
"options": [
{ "key": "FileName", "value": "%{JS: Util.fileName(value('TargetPath'), 'md')}" }
],
"pages" :
[
{
"trDisplayName": "Location",
"trShortTitle": "Location",
"typeId": "File"
},
{
"trDisplayName": "Project Management",
"trShortTitle": "Summary",
"typeId": "Summary"
}
],
"generators" :
[
{
"typeId": "File",
"data":
{
"source": "file.md",
"target": "%{FileName}",
"openInEditor": true
}
}
]
}

View File

@@ -0,0 +1,35 @@
%{Cpp:LicenseTemplate}
@if "%{TestFrameWork}" == "GTest"
#include <gtest/gtest.h>
#include <gmock/gmock-matchers.h>
using namespace testing;
TEST(%{TestSuiteName}, %{TestCaseName})
{
EXPECT_EQ(1, 1);
ASSERT_THAT(0, Eq(0));
}
@endif
@if "%{TestFrameWork}" == "BoostTest"
#define BOOST_TEST_DYN_LINK
#include <boost/test/unit_test.hpp>
BOOST_AUTO_TEST_SUITE( %{TestSuiteName} )
BOOST_AUTO_TEST_CASE( %{TestCaseName} )
{
BOOST_TEST( true /* test assertion */ );
}
BOOST_AUTO_TEST_SUITE_END()
@endif
@if "%{TestFrameWork}" == "Catch2"
#include <catch2/catch.hpp>
TEST_CASE("Another test with Catch2", "[fancy]")
{
REQUIRE(0 == 0);
}
@endif

View File

@@ -0,0 +1,146 @@
{
"version": 1,
"supportedProjectTypes": [ ],
"id": "M.TestCase",
"category": "X.Testing",
"trDescription": "Creates a source file that you can add to an existing test project.",
"trDisplayName": "Test Case",
"trDisplayCategory": "Test Case",
"icon": "../../autotest/autotest.png",
"iconKind": "Themed",
"enabled": "%{JS: value('Plugins').indexOf('AutoTest') >= 0}",
"options": [
{ "key": "TargetPath", "value": "%{Path}" },
{ "key": "QmlFileName", "value": "%{JS: Util.fileName(value('QmlSrcFile').startsWith('tst_') ? value('QmlSrcFile') : 'tst_' + value('QmlSrcFile'), '.qml')}" },
{ "key": "CppFileName", "value": "%{JS: Util.fileName(value('CppSrcFile'), Util.preferredSuffix('text/x-c++src'))}" }
],
"pages" :
[
{
"trDisplayName": "Test Information",
"trShortTitle": "Details",
"typeId": "Fields",
"data":
[
{
"name": "info",
"type": "Label",
"data":
{
"wordWrap": true,
"trText": "You must tell Qt Creator which test framework is used inside the project.\n\nYou should not mix multiple test frameworks in a project."
}
},
{
"name": "TestFrameWork",
"trDisplayName": "Test framework:",
"type": "ComboBox",
"data":
{
"index": 0,
"items":
[
{
"trKey": "Google Test",
"value": "GTest"
},
{
"trKey": "Qt Quick Test",
"value": "QtQuickTest"
},
{
"trKey": "Boost Test",
"value": "BoostTest"
},
{
"trKey": "Catch2",
"value": "Catch2"
}
]
}
},
{
"name": "TestSuiteName",
"trDisplayName": "Test suite name:",
"visible": "%{JS: ['BoostTest', 'GTest'].indexOf(value('TestFrameWork')) >= 0}",
"mandatory": true,
"type": "LineEdit",
"data": { "validator": "^[a-zA-Z_0-9]+$" }
},
{
"name": "TestCaseName",
"trDisplayName": "Test case name:",
"mandatory": true,
"type": "LineEdit",
"data": { "validator": "^[a-zA-Z_0-9]+$" }
},
{
"name": "GenerateInitAndCleanup",
"trDisplayName": "Generate initialization and cleanup code",
"visible": "%{JS: value('TestFrameWork') === 'QtQuickTest' }",
"type": "CheckBox",
"data": {
"checked": false
}
},
{
"name": "CppSrcFile",
"type": "LineEdit",
"trDisplayName": "Source file:",
"mandatory": true,
"visible": "%{JS: value('TestFrameWork') !== 'QtQuickTest' }",
"data": { "trText": "%{JS: 'tst_' + value('TestCaseName').toLowerCase() + '.' + Util.preferredSuffix('text/x-c++src')}" }
},
{
"name": "QmlSrcFile",
"type": "LineEdit",
"trDisplayName": "Source file:",
"mandatory": true,
"visible": "%{JS: value('TestFrameWork') === 'QtQuickTest' }",
"data": { "trText": "%{JS: 'tst_' + value('TestCaseName').toLowerCase() + '.qml'}" }
},
{
"name": "Path",
"type": "PathChooser",
"trDisplayName": "Path:",
"mandatory": true,
"data":
{
"kind": "directory",
"basePath": "%{InitialPath}",
"path": "%{InitialPath}"
}
}
]
},
{
"trDisplayName": "Project Management",
"trShortTitle": "Summary",
"typeId": "Summary"
}
],
"generators" :
[
{
"typeId": "File",
"data":
[
{
"source": "file.cpp",
"target": "%{CppFileName}",
"condition": "%{JS: value('TestFrameWork') !== 'QtQuickTest'}",
"openInEditor": true,
"options": { "key": "Cpp:License:FileName", "value": "%{CppFileName}" }
},
{
"source": "../../autotest/files/tst_qml.tmpl",
"target": "%{QmlFileName}",
"condition": "%{JS: value('TestFrameWork') === 'QtQuickTest'}",
"openInEditor": true
}
]
}
]
}

View File

@@ -3,7 +3,7 @@
"supportedProjectTypes": [ "MesonProjectManager.MesonProject", "CMakeProjectManager.CMakeProject", "Qbs.QbsProject", "Qt4ProjectManager.Qt4Project" ],
"id": "E.QtCore",
"category": "D.ApplicationQt",
"trDescription": "Creates a project containing a single main.cpp file with a stub implementation.\n\nPreselects a desktop Qt for building the application if available.",
"trDescription": "Creates a project containing a single main.cpp file with a stub implementation and no graphical UI.\n\nPreselects a desktop Qt for building the application if available.",
"trDisplayName": "Qt Console Application",
"trDisplayCategory": "Application (Qt)",
"icon": "../../global/consoleapplication.png",

View File

@@ -3,7 +3,7 @@
"supportedProjectTypes": [ "MesonProjectManager.MesonProject", "CMakeProjectManager.CMakeProject", "Qbs.QbsProject", "Qt4ProjectManager.Qt4Project" ],
"id": "H.CppLibrary",
"category": "G.Library",
"trDescription": "Creates a C++ library. This can be used to create:<ul><li>a shared C++ library for use with <tt>QPluginLoader</tt> and runtime (Plugins)</li><li>a shared or static C++ library for use with another project at linktime</li></ul>",
"trDescription": "Creates a C++ library. You can create:<ul><li>a shared C++ library for use with <tt>QPluginLoader</tt> and runtime (Plugins)</li><li>a shared or static C++ library for use with another project at linktime</li></ul>",
"trDisplayName": "C++ Library",
"trDisplayCategory": "Library",
"icon": "../../global/lib.png",

View File

@@ -26,20 +26,28 @@
{
"trDisplayName": "Define Project Details",
"trShortTitle": "Details",
"typeId": "Fields",
"data" :
[
{
"name": "PySideVersion",
"trDisplayName": "PySide version:",
"type": "ComboBox",
"data":
"typeId": "PythonConfiguration",
"data":
{
"index": 0,
"items":
[
{
"index": 1,
"items": [ "PySide2", "PySide6" ]
"trKey": "PySide 6",
"value":
{
"PySideVersion": "PySide6"
}
},
{
"trKey": "PySide 2",
"value":
{
"PySideVersion": "PySide2"
}
}
}
]
]
}
},
{
"trDisplayName": "Project Management",

View File

@@ -30,16 +30,6 @@
"typeId": "Fields",
"data" :
[
{
"name": "PySideVersion",
"trDisplayName": "PySide version:",
"type": "ComboBox",
"data":
{
"index": 1,
"items": [ "PySide2", "PySide6" ]
}
},
{
"name": "Class",
"trDisplayName": "Class name:",
@@ -77,6 +67,32 @@
}
]
},
{
"trDisplayName": "Define Project Details",
"trShortTitle": "Details",
"typeId": "PythonConfiguration",
"data":
{
"index": 0,
"items":
[
{
"trKey": "PySide 6",
"value":
{
"PySideVersion": "PySide6"
}
},
{
"trKey": "PySide 2",
"value":
{
"PySideVersion": "PySide2"
}
}
]
}
},
{
"trDisplayName": "Project Management",
"trShortTitle": "Summary",

View File

@@ -30,67 +30,59 @@
{
"trDisplayName": "Define Project Details",
"trShortTitle": "Details",
"typeId": "Fields",
"typeId": "PythonConfiguration",
"data":
[
{
"name": "QtVersion",
"trDisplayName": "PySide version:",
"type": "ComboBox",
"data":
{
"index": 0,
"items":
[
{
"index": 0,
"items":
[
{
"trKey": "PySide 6",
"value":
{
"QtQuickVersion": "",
"QtQuickWindowVersion": "",
"PySideVersion": "PySide6"
}
},
{
"trKey": "PySide 5.15",
"value":
{
"QtQuickVersion": "2.15",
"QtQuickWindowVersion": "2.15",
"PySideVersion": "PySide2"
}
},
{
"trKey": "PySide 5.14",
"value":
{
"QtQuickVersion": "2.14",
"QtQuickWindowVersion": "2.14",
"PySideVersion": "PySide2"
}
},
{
"trKey": "PySide 5.13",
"value":
{
"QtQuickVersion": "2.13",
"QtQuickWindowVersion": "2.13",
"PySideVersion": "PySide2"
}
},
{
"trKey": "PySide 5.12",
"value":
{
"QtQuickVersion": "2.12",
"QtQuickWindowVersion": "2.12",
"PySideVersion": "PySide2"
}
}
]
"trKey": "PySide 6",
"value":
{
"QtQuickVersion": "",
"QtQuickWindowVersion": "",
"PySideVersion": "PySide6"
}
},
{
"trKey": "PySide 5.15",
"value":
{
"QtQuickVersion": "2.15",
"QtQuickWindowVersion": "2.15",
"PySideVersion": "PySide2"
}
},
{
"trKey": "PySide 5.14",
"value":
{
"QtQuickVersion": "2.14",
"QtQuickWindowVersion": "2.14",
"PySideVersion": "PySide2"
}
},
{
"trKey": "PySide 5.13",
"value":
{
"QtQuickVersion": "2.13",
"QtQuickWindowVersion": "2.13",
"PySideVersion": "PySide2"
}
},
{
"trKey": "PySide 5.12",
"value":
{
"QtQuickVersion": "2.12",
"QtQuickWindowVersion": "2.12",
"PySideVersion": "PySide2"
}
}
}
]
]
}
},
{
"trDisplayName": "Project Management",

View File

@@ -3,7 +3,7 @@
"supportedProjectTypes": [ "PythonProject" ],
"id": "F.QtForPythonApplicationWindowWidget",
"category": "F.ApplicationPySide",
"trDescription": "Creates a Qt for Python application that includes a Qt Designer-based widget (ui file) - Requires .ui to Python conversion",
"trDescription": "Creates a Qt for Python application that includes a Qt Designer-based widget (ui file). Requires .ui to Python conversion.",
"trDisplayName": "Window UI",
"trDisplayCategory": "Application (Qt for Python)",
"icon": "../icons/icon.png",
@@ -30,16 +30,6 @@
"typeId": "Fields",
"data" :
[
{
"name": "PySideVersion",
"trDisplayName": "PySide version:",
"type": "ComboBox",
"data":
{
"index": 1,
"items": [ "PySide2", "PySide6" ]
}
},
{
"name": "Class",
"trDisplayName": "Class name:",
@@ -77,6 +67,32 @@
}
]
},
{
"trDisplayName": "Define Python Interpreter",
"trShortTitle": "Interpreter",
"typeId": "PythonConfiguration",
"data":
{
"index": 0,
"items":
[
{
"trKey": "PySide 6",
"value":
{
"PySideVersion": "PySide6"
}
},
{
"trKey": "PySide 2",
"value":
{
"PySideVersion": "PySide2"
}
}
]
}
},
{
"trDisplayName": "Project Management",
"trShortTitle": "Summary",

View File

@@ -1,21 +0,0 @@
import qbs
CppApplication {
@if "%{UseVirtualKeyboard}" == "true"
Depends { name: "Qt"; submodules: ["quick", "virtualkeyboard"] }
@else
Depends { name: "Qt.quick" }
@endif
install: true
// Additional import path used to resolve QML modules in Qt Creator's code model
property pathList qmlImportPaths: []
files: [
"%{MainCppFileName}",
]
Group {
Qt.core.resourcePrefix: "%{ProjectName}/"
fileTags: ["qt.qml.qml", "qt.core.resource_data"]
files: ["Main.qml"]
}
}

View File

@@ -1,28 +1,27 @@
{
"version": 1,
"supportedProjectTypes": [ "CMakeProjectManager.CMakeProject", "QbsProjectManager.QbsProject" ],
"supportedProjectTypes": [ "CMakeProjectManager.CMakeProject" ],
"id": "U.QtQuickApplicationEmpty",
"category": "D.ApplicationQt",
"trDescription": "Creates a Qt Quick application that contains an empty window. Optionally, you can create a Qt Design Studio project.",
"trDescription": "Creates a Qt Quick application that can have both QML and C++ code. You can build the application and deploy it to desktop, embedded, and mobile target platforms.\n\nYou can select an option to create a project that you can open in Qt Design Studio, which has a visual editor for Qt Quick UIs.",
"trDisplayName": "Qt Quick Application",
"trDisplayCategory": "Application (Qt)",
"icon": "icon.png",
"iconKind": "Themed",
"featuresRequired": [ "QtSupport.Wizards.FeatureQtQmlCMakeApi" ],
"enabled": "%{JS: value('Plugins').indexOf('CMakeProjectManager') >= 0 || value('Plugins').indexOf('QbsProjectManager') >= 0 }",
"enabled": "%{JS: value('Plugins').indexOf('CMakeProjectManager') >= 0 }",
"options":
[
{ "key": "ProjectFile", "value": "%{JS: value('BuildSystem') === 'cmake' ? '%{ProjectDirectory}/CMakeLists.txt' : '%{ProjectDirectory}/' + '%{ProjectName}'.toLowerCase() + '.qbs' }" },
{ "key": "ProjectFile", "value": "%{ProjectDirectory}/CMakeLists.txt" },
{ "key": "MainCppFileName", "value": "%{JS: 'main.' + Util.preferredSuffix('text/x-c++src') }" },
{ "key": "UseVirtualKeyboardByDefault", "value": "%{JS: value('Plugins').indexOf('Boot2Qt') >= 0 || value('Plugins').indexOf('Boot2QtQdb') >= 0 }" },
{ "key": "TargetName", "value": "%{JS: 'app' + value('ProjectName') }" },
{ "key": "HasQSPSetup", "value": "%{JS: value('MinimumSupportedQtVersion') > '6.2' }"},
{ "key": "HasFailureSignal", "value": "%{JS: value('MinimumSupportedQtVersion') > '6.3' }"},
{ "key": "UsesAutoResourcePrefix", "value": "%{JS: value('MinimumSupportedQtVersion') > '6.4' && value('BuildSystem') === 'cmake' }"},
{ "key": "UsesAutoResourcePrefix", "value": "%{JS: value('MinimumSupportedQtVersion') > '6.4' }"},
{ "key": "HasLoadFromModule", "value": "%{JS: value('MinimumSupportedQtVersion') > '6.4' && value('UsesAutoResourcePrefix') }"},
{ "key": "QdsWizardPath", "value": "%{IDE:ResourcePath}/qmldesigner/studio_templates/projects" },
{ "key": "QdsProjectStyle", "value": "%{JS: value('BuildSystem') === 'cmake' ? %{QdsProjectStyleInput} : false }" },
{ "key": "NoQdsProjectStyle", "value": "%{JS: !%{QdsProjectStyle} }" },
{ "key": "ImportModuleName", "value": "%{ProjectName}" },
@@ -47,38 +46,6 @@
"trShortTitle": "Location",
"typeId": "Project"
},
{
"trDisplayName": "Define Build System",
"trShortTitle": "Build System",
"typeId": "Fields",
"enabled": "%{JS: ! %{IsSubproject}}",
"data":
[
{
"name": "BuildSystem",
"trDisplayName": "Build system:",
"type": "ComboBox",
"persistenceKey": "BuildSystemType",
"data":
{
"index": 0,
"items":
[
{
"trKey": "CMake",
"value": "cmake",
"condition": "%{JS: value('Plugins').indexOf('CMakeProjectManager') >= 0}"
},
{
"trKey": "Qbs",
"value": "qbs",
"condition": "%{JS: value('Plugins').indexOf('QbsProjectManager') >= 0}"
}
]
}
}
]
},
{
"trDisplayName": "Define Project Details",
"trShortTitle": "Details",
@@ -86,12 +53,11 @@
"data":
[
{
"name": "QdsProjectStyleInput",
"trDisplayName": "Create a project that you can open in Qt Design Studio",
"trToolTip": "Create a project with a structure that is compatible both with Qt Design Studio (via .qmlproject) and with Qt Creator (via CMakeLists.txt). It contains a .ui.qml form that you can visually edit in Qt Design Studio.",
"name": "QdsProjectStyle",
"trDisplayName": "Creates a project that you can open in Qt Design Studio.",
"trToolTip": "Creates a project with a structure that is compatible both with Qt Design Studio (via .qmlproject) and with Qt Creator (via CMakeLists.txt). It contains a .ui.qml form that you can visually edit in Qt Design Studio.",
"type": "CheckBox",
"span": true,
"visible": "%{JS: value('BuildSystem') === 'cmake'}",
"persistenceKey": "QtQuick.QdsProjectStyle",
"data":
{
@@ -111,11 +77,15 @@
},
{
"name": "MinimumSupportedQtVersion",
"trDisplayName": "The minimum version of Qt you want to build the application for",
"trDisplayName": "The minimum version of Qt you want to build the application for.",
"type": "ComboBox",
"data":
{
"items": [ "6.2", "6.4", "6.5" ],
"items": [
{ "trKey": "Qt 6.2", "value": "6.2" },
{ "trKey": "Qt 6.4", "value": "6.4" },
{ "trKey": "Qt 6.5", "value": "6.5" }
],
"index": 1
}
}
@@ -146,13 +116,7 @@
{
"source": "CMakeLists.txt",
"openAsProject": true,
"condition": "%{JS: %{NoQdsProjectStyle} && value('BuildSystem') === 'cmake' }"
},
{
"source": "tmpl.qbs",
"target": "%{ProjectFile}",
"openAsProject": true,
"condition": "%{JS: value('BuildSystem') === 'qbs' }"
"condition": "%{NoQdsProjectStyle}"
},
{
"source": "main.cpp",

View File

@@ -3,7 +3,7 @@
"supportedProjectTypes": [ "QmlProjectManager.QmlProject" ],
"id": "QA.QtQuickUi",
"category": "H.Project",
"trDescription": "Creates a Qt Quick 2 UI project with a QML entry point. To use it, you need to have a QML runtime environment.\n\nUse this only if you are prototyping. You cannot create a full application with this. Consider using a Qt Quick Application project instead.",
"trDescription": "Creates a Qt Quick UI project for previewing and prototyping designs.\n\nTo develop a full application, create a Qt Quick Application project instead.",
"trDisplayName": "Qt Quick UI Prototype",
"trDisplayCategory": "Other Project",
"icon": "qtquickuiprototype.png",

View File

@@ -3,7 +3,7 @@
"supportedProjectTypes": [ "MesonProjectManager.MesonProject","CMakeProjectManager.CMakeProject", "Qt4ProjectManager.Qt4Project", "Qbs.QbsProject" ],
"id": "C.QtWidgets",
"category": "D.ApplicationQt",
"trDescription": "Creates a widget-based Qt application that contains a Qt Designer-based main window.\n\nPreselects a desktop Qt for building the application if available.",
"trDescription": "Creates a widget-based Qt application that contains a Qt Designer-based main window and C++ source and header files to implement the application logic.\n\nPreselects a desktop Qt for building the application if available.",
"trDisplayName": "Qt Widgets Application",
"trDisplayCategory": "Application (Qt)",
"icon": "../../global/guiapplication.png",

View File

@@ -22,6 +22,23 @@ find_package(QtCreator REQUIRED COMPONENTS Core)
find_package(QT NAMES Qt6 Qt5 REQUIRED COMPONENTS Widgets)
set(QtX Qt${QT_VERSION_MAJOR})
# Add a CMake option that enables building your plugin with tests.
# You don't want your released plugin binaries to contain tests,
# so make that default to 'NO'.
# Enable tests by passing -DWITH_TESTS=ON to CMake.
option(WITH_TESTS "Builds with tests" NO)
if(WITH_TESTS)
# Look for QtTest
find_package(${QtX} REQUIRED COMPONENTS Test)
# Tell CMake functions like add_qtc_plugin about the QtTest component.
set(IMPLICIT_DEPENDS Qt::Test)
# Enable ctest for auto tests.
enable_testing()
endif()
add_qtc_plugin(%{PluginName}
PLUGIN_DEPENDS
QtCreator::Core

View File

@@ -6,6 +6,8 @@
#define %{GLOBAL_GUARD}
@endif
#include <qglobal.h>
#if defined(%{LibraryDefine})
# define %{LibraryExport} Q_DECL_EXPORT
#else

View File

@@ -240,7 +240,6 @@ BadgeLabelBackgroundColorChecked=normalBackground
BadgeLabelBackgroundColorUnchecked=selectedBackground
BadgeLabelTextColorChecked=text
BadgeLabelTextColorUnchecked=text
CanceledSearchTextColor=ff0000
ComboBoxArrowColor=text
ComboBoxArrowColorDisabled=text
ComboBoxTextColor=text
@@ -441,6 +440,27 @@ QmlDesigner_FormeditorBackgroundColor=qmlDesignerButtonColor
QmlDesigner_AlternateBackgroundColor=qmlDesignerButtonColor
QmlDesigner_ScrollBarHandleColor=ff505050
TerminalForeground=ffffffff
TerminalBackground=normalBackground
TerminalSelection=7fffffff
TerminalFindMatch=7fffff00
TerminalAnsi0=000000
TerminalAnsi1=8b1b10
TerminalAnsi2=4aa32e
TerminalAnsi3=9a9a2f
TerminalAnsi4=0058D1
TerminalAnsi5=a320ac
TerminalAnsi6=49a3b0
TerminalAnsi7=bfbfbf
TerminalAnsi8=666666
TerminalAnsi9=d22d1f
TerminalAnsi10=62d63f
TerminalAnsi11=e5e54b
TerminalAnsi12=003EFF
TerminalAnsi13=d22dde
TerminalAnsi14=69e2e4
TerminalAnsi15=e5e5e6
[Flags]
ComboBoxDrawTextShadow=false
DerivePaletteFromTheme=true

View File

@@ -232,7 +232,6 @@ BadgeLabelBackgroundColorChecked=ffe0e0e0
BadgeLabelBackgroundColorUnchecked=ff808080
BadgeLabelTextColorChecked=ff606060
BadgeLabelTextColorUnchecked=ffffffff
CanceledSearchTextColor=ffff0000
ComboBoxArrowColor=ffb8b5b2
ComboBoxArrowColorDisabled=ffdcdcdc
ComboBoxTextColor=ffffffff
@@ -410,6 +409,27 @@ QmlDesigner_FormeditorBackgroundColor=qmlDesignerButtonColor
QmlDesigner_AlternateBackgroundColor=qmlDesignerButtonColor
QmlDesigner_ScrollBarHandleColor=ff7a7a7a
TerminalForeground=ff000000
TerminalBackground=ffffffff
TerminalSelection=3f000000
TerminalFindMatch=7fffff00
TerminalAnsi0=000000
TerminalAnsi1=8b1b10
TerminalAnsi2=4aa32e
TerminalAnsi3=9a9a2f
TerminalAnsi4=0000ab
TerminalAnsi5=a320ac
TerminalAnsi6=49a3b0
TerminalAnsi7=bfbfbf
TerminalAnsi8=666666
TerminalAnsi9=d22d1f
TerminalAnsi10=62d63f
TerminalAnsi11=dac911
TerminalAnsi12=0000fe
TerminalAnsi13=d22dde
TerminalAnsi14=69e2e4
TerminalAnsi15=e5e5e6
[Flags]
ComboBoxDrawTextShadow=true
DerivePaletteFromTheme=false

View File

@@ -243,7 +243,6 @@ BadgeLabelBackgroundColorChecked=ffe0e0e0
BadgeLabelBackgroundColorUnchecked=ff808080
BadgeLabelTextColorChecked=ff606060
BadgeLabelTextColorUnchecked=ffffffff
CanceledSearchTextColor=ff0000
ComboBoxArrowColor=toolBarItem
ComboBoxArrowColorDisabled=toolBarItemDisabled
ComboBoxTextColor=fancyBarsNormalTextColor
@@ -451,6 +450,27 @@ PaletteWindowTextDisabled=textDisabled
PaletteBaseDisabled=backgroundColorDisabled
PaletteTextDisabled=textDisabled
TerminalForeground=ff000000
TerminalBackground=normalBackground
TerminalSelection=3f000000
TerminalFindMatch=7fffff00
TerminalAnsi0=000000
TerminalAnsi1=8b1b10
TerminalAnsi2=4aa32e
TerminalAnsi3=9a9a2f
TerminalAnsi4=0000ab
TerminalAnsi5=a320ac
TerminalAnsi6=49a3b0
TerminalAnsi7=bfbfbf
TerminalAnsi8=666666
TerminalAnsi9=d22d1f
TerminalAnsi10=62d63f
TerminalAnsi11=dac911
TerminalAnsi12=0000fe
TerminalAnsi13=d22dde
TerminalAnsi14=69e2e4
TerminalAnsi15=e5e5e6
[Flags]
ComboBoxDrawTextShadow=false
DerivePaletteFromTheme=true

View File

@@ -246,7 +246,6 @@ BadgeLabelBackgroundColorChecked=ffe0e0e0
BadgeLabelBackgroundColorUnchecked=ff808080
BadgeLabelTextColorChecked=ff606060
BadgeLabelTextColorUnchecked=ffffffff
CanceledSearchTextColor=ff0000
ComboBoxArrowColor=toolBarItem
ComboBoxArrowColorDisabled=toolBarItemDisabled
ComboBoxTextColor=fancyBarsNormalTextColor
@@ -499,6 +498,27 @@ PaletteTextDisabled=textDisabled
PaletteMid=ffafafaf
PalettePlaceholderText=ff808081
TerminalForeground=ffffffff
TerminalBackground=normalBackground
TerminalSelection=7fffffff
TerminalFindMatch=7fffff00
TerminalAnsi0=000000
TerminalAnsi1=8b1b10
TerminalAnsi2=4aa32e
TerminalAnsi3=9a9a2f
TerminalAnsi4=0058D1
TerminalAnsi5=a320ac
TerminalAnsi6=49a3b0
TerminalAnsi7=bfbfbf
TerminalAnsi8=666666
TerminalAnsi9=d22d1f
TerminalAnsi10=62d63f
TerminalAnsi11=e5e54b
TerminalAnsi12=003EFF
TerminalAnsi13=d22dde
TerminalAnsi14=69e2e4
TerminalAnsi15=e5e5e6
[Flags]
ComboBoxDrawTextShadow=false
DerivePaletteFromTheme=true

View File

@@ -243,7 +243,6 @@ BadgeLabelBackgroundColorChecked=ffe0e0e0
BadgeLabelBackgroundColorUnchecked=ff808080
BadgeLabelTextColorChecked=ff606060
BadgeLabelTextColorUnchecked=ffffffff
CanceledSearchTextColor=ff0000
ComboBoxArrowColor=toolBarItem
ComboBoxArrowColorDisabled=toolBarItemDisabled
ComboBoxTextColor=fancyBarsNormalTextColor
@@ -444,6 +443,27 @@ PaletteTextDisabled=textDisabled
PaletteMid=ffa0a0a0
PalettePlaceholderText=ff7f7f80
TerminalForeground=ffffffff
TerminalBackground=normalBackground
TerminalSelection=7fffffff
TerminalFindMatch=7fffff00
TerminalAnsi0=000000
TerminalAnsi1=8b1b10
TerminalAnsi2=4aa32e
TerminalAnsi3=9a9a2f
TerminalAnsi4=0058D1
TerminalAnsi5=a320ac
TerminalAnsi6=49a3b0
TerminalAnsi7=bfbfbf
TerminalAnsi8=666666
TerminalAnsi9=d22d1f
TerminalAnsi10=62d63f
TerminalAnsi11=e5e54b
TerminalAnsi12=003EFF
TerminalAnsi13=d22dde
TerminalAnsi14=69e2e4
TerminalAnsi15=e5e5e6
[Flags]
ComboBoxDrawTextShadow=false
DerivePaletteFromTheme=true

View File

@@ -242,7 +242,6 @@ BadgeLabelBackgroundColorChecked=ffe0e0e0
BadgeLabelBackgroundColorUnchecked=ff808080
BadgeLabelTextColorChecked=ff606060
BadgeLabelTextColorUnchecked=ffffffff
CanceledSearchTextColor=ff0000
ComboBoxArrowColor=toolBarItem
ComboBoxArrowColorDisabled=toolBarItemDisabled
ComboBoxTextColor=fancyBarsNormalTextColor
@@ -420,6 +419,27 @@ QmlDesigner_FormeditorBackgroundColor=qmlDesignerButtonColor
QmlDesigner_AlternateBackgroundColor=qmlDesignerButtonColor
QmlDesigner_ScrollBarHandleColor=ffcccccc
TerminalForeground=ff000000
TerminalBackground=normalBackground
TerminalSelection=3f000000
TerminalFindMatch=7fffff00
TerminalAnsi0=000000
TerminalAnsi1=8b1b10
TerminalAnsi2=4aa32e
TerminalAnsi3=9a9a2f
TerminalAnsi4=0000ab
TerminalAnsi5=a320ac
TerminalAnsi6=49a3b0
TerminalAnsi7=bfbfbf
TerminalAnsi8=666666
TerminalAnsi9=d22d1f
TerminalAnsi10=62d63f
TerminalAnsi11=dac911
TerminalAnsi12=0000fe
TerminalAnsi13=d22dde
TerminalAnsi14=69e2e4
TerminalAnsi15=e5e5e6
[Flags]
ComboBoxDrawTextShadow=false
DerivePaletteFromTheme=false

View File

@@ -237,7 +237,6 @@ BadgeLabelBackgroundColorChecked=ffe0e0e0
BadgeLabelBackgroundColorUnchecked=ff808080
BadgeLabelTextColorChecked=ff606060
BadgeLabelTextColorUnchecked=ffffffff
CanceledSearchTextColor=ff0000
ComboBoxArrowColor=toolBarItem
ComboBoxArrowColorDisabled=toolBarItemDisabled
ComboBoxTextColor=fancyBarsNormalTextColor
@@ -415,6 +414,27 @@ QmlDesigner_FormeditorBackgroundColor=qmlDesignerButtonColor
QmlDesigner_AlternateBackgroundColor=qmlDesignerButtonColor
QmlDesigner_ScrollBarHandleColor=ff595b5c
TerminalForeground=ff000000
TerminalBackground=normalBackground
TerminalSelection=3f000000
TerminalFindMatch=7fffff00
TerminalAnsi0=000000
TerminalAnsi1=8b1b10
TerminalAnsi2=4aa32e
TerminalAnsi3=9a9a2f
TerminalAnsi4=0000ab
TerminalAnsi5=a320ac
TerminalAnsi6=49a3b0
TerminalAnsi7=bfbfbf
TerminalAnsi8=666666
TerminalAnsi9=d22d1f
TerminalAnsi10=62d63f
TerminalAnsi11=dac911
TerminalAnsi12=0000fe
TerminalAnsi13=d22dde
TerminalAnsi14=69e2e4
TerminalAnsi15=e5e5e6
[Flags]
ComboBoxDrawTextShadow=false
DerivePaletteFromTheme=false

View File

@@ -9719,10 +9719,6 @@ se projektu &apos;%2&apos; nepodařilo přidat.</translation>
<source>Clone Session</source>
<translation type="obsolete">Zdvojit sezení</translation>
</message>
<message>
<source>&lt;a href=&quot;qthelp://org.qt-project.qtcreator/doc/creator-quick-tour.html#session-management-in-qt-creator&quot;&gt;What is a Session?&lt;/a&gt;</source>
<translation type="obsolete">&lt;a href=&quot;qthelp://org.qt-project.qtcreator/doc/creator-quick-tour.html#session-management-in-qt-creator&quot;&gt;Co je to sezení?&lt;/a&gt;</translation>
</message>
<message>
<source>Switch to session</source>
<translation type="obsolete">Přepnout na sezení</translation>
@@ -9748,8 +9744,8 @@ se projektu &apos;%2&apos; nepodařilo přidat.</translation>
<translation>&amp;Otevřít</translation>
</message>
<message>
<source>&lt;a href=&quot;qthelp://org.qt-project.qtcreator/doc/creator-project-managing-sessions.html&quot;&gt;What is a Session?&lt;/a&gt;</source>
<translation>&lt;a href=&quot;qthelp://org.qt-project.qtcreator/doc/creator-project-managing-sessions.html&quot;&gt;Co je sezení?&lt;/a&gt;</translation>
<source>What is a Session?</source>
<translation>Co je sezení?</translation>
</message>
<message>
<source>New session name</source>
@@ -10551,8 +10547,8 @@ přidat do správy verzí (%2)?</translation>
<translation>Při ukládání sezení se vyskytla chyba</translation>
</message>
<message>
<source>Could not save session to file %1</source>
<translation>Sezení se nepodařilo uložit do souboru %1</translation>
<source>Could not save session to file &quot;%1&quot;</source>
<translation>Sezení se nepodařilo uložit do souboru &quot;%1&quot;</translation>
</message>
<message>
<source>Untitled</source>
@@ -28918,8 +28914,8 @@ Server: %2.</translation>
<translation>Rozdíly pro &quot;%1&quot;</translation>
</message>
<message>
<source>ALT+Z,Alt+D</source>
<translation>ALT+Z,Alt+D</translation>
<source>Alt+Z,Alt+D</source>
<translation>Alt+Z,Alt+D</translation>
</message>
<message>
<source>Meta+Z,Meta+D</source>
@@ -28934,8 +28930,8 @@ Server: %2.</translation>
<translation>Záznamy pro &quot;%1&quot;</translation>
</message>
<message>
<source>ALT+Z,Alt+L</source>
<translation>ALT+Z,Alt+L</translation>
<source>Alt+Z,Alt+L</source>
<translation>Alt+Z,Alt+L</translation>
</message>
<message>
<source>Meta+Z,Meta+L</source>
@@ -28950,8 +28946,8 @@ Server: %2.</translation>
<translation>Stav &quot;%1&quot;</translation>
</message>
<message>
<source>ALT+Z,Alt+S</source>
<translation>ALT+Z,Alt+S</translation>
<source>Alt+Z,Alt+S</source>
<translation>Alt+Z,Alt+S</translation>
</message>
<message>
<source>Meta+Z,Meta+S</source>
@@ -29015,8 +29011,8 @@ Server: %2.</translation>
<translation>Zapsat-odevzdat (commit)...</translation>
</message>
<message>
<source>ALT+Z,Alt+C</source>
<translation>ALT+Z,Alt+C</translation>
<source>Alt+Z,Alt+C</source>
<translation>Alt+Z,Alt+C</translation>
</message>
<message>
<source>Meta+Z,Meta+C</source>

View File

@@ -2709,8 +2709,8 @@ Lokale commits pushes ikke til master-grenen inden en normal commit udføres.</t
<translation>Meta+Z,Meta+D</translation>
</message>
<message>
<source>ALT+Z,Alt+D</source>
<translation>ALT+Z,Alt+D</translation>
<source>Alt+Z,Alt+D</source>
<translation>Alt+Z,Alt+D</translation>
</message>
<message>
<source>Log Current File</source>
@@ -2725,8 +2725,8 @@ Lokale commits pushes ikke til master-grenen inden en normal commit udføres.</t
<translation>Meta+Z,Meta+L</translation>
</message>
<message>
<source>ALT+Z,Alt+L</source>
<translation>ALT+Z,Alt+L</translation>
<source>Alt+Z,Alt+L</source>
<translation>Alt+Z,Alt+L</translation>
</message>
<message>
<source>Status Current File</source>
@@ -2741,8 +2741,8 @@ Lokale commits pushes ikke til master-grenen inden en normal commit udføres.</t
<translation>Meta+Z,Meta+S</translation>
</message>
<message>
<source>ALT+Z,Alt+S</source>
<translation>ALT+Z,Alt+S</translation>
<source>Alt+Z,Alt+S</source>
<translation>Alt+Z,Alt+S</translation>
</message>
<message>
<source>Add</source>
@@ -2805,8 +2805,8 @@ Lokale commits pushes ikke til master-grenen inden en normal commit udføres.</t
<translation>Meta+Z,Meta+C</translation>
</message>
<message>
<source>ALT+Z,Alt+C</source>
<translation>ALT+Z,Alt+C</translation>
<source>Alt+Z,Alt+C</source>
<translation>Alt+Z,Alt+C</translation>
</message>
<message>
<source>Uncommit...</source>
@@ -7810,8 +7810,8 @@ Vil du dræbe den?</translation>
<translation>Patch-kommandoen konfigureret i de generelle &quot;Miljø&quot;-indstillinger findes ikke.</translation>
</message>
<message>
<source>Running in %1: %2 %3</source>
<translation>Kører om %1: %2 %3</translation>
<source>Running in &quot;%1&quot;: %2 %3.</source>
<translation>Kører om &quot;%1&quot;: %2 %3.</translation>
</message>
<message>
<source>Unable to launch &quot;%1&quot;: %2</source>
@@ -22723,8 +22723,8 @@ til projektet &quot;%2&quot;.</translation>
<translation>Genskab sidste session ved opstart</translation>
</message>
<message>
<source>&lt;a href=&quot;qthelp://org.qt-project.qtcreator/doc/creator-project-managing-sessions.html&quot;&gt;What is a Session?&lt;/a&gt;</source>
<translation>&lt;a href=&quot;qthelp://org.qt-project.qtcreator/doc/creator-project-managing-sessions.html&quot;&gt;Hvad er en session?&lt;/a&gt;</translation>
<source>What is a Session?</source>
<translation>Hvad er en session?</translation>
</message>
<message>
<source>Session</source>
@@ -24940,8 +24940,8 @@ Disse filer bevares.</numerusform>
<translation>Fejl ved gemning af session</translation>
</message>
<message>
<source>Could not save session to file %1</source>
<translation>Kunne ikke gemme session til filen %1</translation>
<source>Could not save session to file &quot;%1&quot;</source>
<translation>Kunne ikke gemme session til filen &quot;%1&quot;</translation>
</message>
<message>
<source>Untitled</source>
@@ -38022,8 +38022,8 @@ skal være et repository krævet SSH-autentifikation (se dokumentation på SSH o
<translation>Kører: %1 %2</translation>
</message>
<message>
<source>Running in %1: %2 %3</source>
<translation>Kører om %1: %2 %3</translation>
<source>Running in %1: %2 %3.</source>
<translation>Kører om %1: %2 %3.</translation>
</message>
</context>
<context>
@@ -39042,8 +39042,8 @@ skal være et repository krævet SSH-autentifikation (se dokumentation på SSH o
<context>
<name>QtC::CppEditor</name>
<message>
<source>For appropriate options, consult the GCC or Clang manual pages or the &lt;a href=&quot;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html&quot;&gt;GCC online documentation&lt;/a&gt;.</source>
<translation>For passende valgmuligheder, konsulter GCC- eller Clang-manualsiderne eller &lt;a href=&quot;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html&quot;&gt;GCC online dokumentationen&lt;/a&gt;.</translation>
<source>For appropriate options, consult the GCC or Clang manual pages or the [GCC online documentation](%1).</source>
<translation>For passende valgmuligheder, konsulter GCC- eller Clang-manualsiderne eller [GCC online dokumentationen](%1).</translation>
</message>
<message>
<source>Each level adds checks to the previous level. For more information, see &lt;a href=&quot;https://github.com/KDE/clazy&quot;&gt;clazy&apos;s homepage&lt;/a&gt;.</source>

File diff suppressed because it is too large Load Diff

View File

@@ -7179,8 +7179,8 @@ al control de versiones (%2)?</translation>
<translation>Error guardando sesión</translation>
</message>
<message>
<source>Could not save session to file %1</source>
<translation>No se pudo guardar la sesion al archivo %1</translation>
<source>Could not save session to file &quot;%1&quot;</source>
<translation>No se pudo guardar la sesion al archivo &quot;%1&quot;</translation>
</message>
<message>
<source>Qt Creator</source>

View File

@@ -9879,10 +9879,6 @@ francis : voila une nouvelle suggestion :)</translatorcomment>
<source>Rename session</source>
<translation>Renommer la session</translation>
</message>
<message>
<source>&lt;a href=&quot;qthelp://com.nokia.qtcreator/doc/creator-project-managing-sessions.html&quot;&gt;What is a Session?&lt;/a&gt;</source>
<translation type="obsolete">&lt;a href=&quot;qthelp://com.nokia.qtcreator/doc/creator-project-managing-sessions.html&quot;&gt;Qu&apos;est-ce qu&apos;une session?&lt;/a&gt;</translation>
</message>
<message>
<source>Automatically restore the last session when Qt Creator is started.</source>
<translation>Restaurer automatiquement la dernière session quand Qt Creator est démarré. </translation>
@@ -9892,8 +9888,8 @@ francis : voila une nouvelle suggestion :)</translatorcomment>
<translation>Restaurer la dernière session au démarrage</translation>
</message>
<message>
<source>&lt;a href=&quot;qthelp://org.qt-project.qtcreator/doc/creator-project-managing-sessions.html&quot;&gt;What is a Session?&lt;/a&gt;</source>
<translation>&lt;a href=&quot;qthelp://org.qt-project.qtcreator/doc/creator-project-managing-sessions.html&quot;&gt;Qu&apos;est-ce qu&apos;une session ?&lt;/a&gt;</translation>
<source>What is a Session?</source>
<translation>Qu&apos;est-ce qu&apos;une session ?</translation>
</message>
<message>
<source>Custom Process Step</source>
@@ -10841,8 +10837,8 @@ au système de gestion de version (%2) ?</translation>
<translation>Erreur lors de l&apos;enregistrement de la session</translation>
</message>
<message>
<source>Could not save session to file %1</source>
<translation>Impossible d&apos;enregistrer la session dans le fichier %1</translation>
<source>Could not save session to file &quot;%1&quot;</source>
<translation>Impossible d&apos;enregistrer la session dans le fichier &quot;%1&quot;</translation>
</message>
<message>
<source>Untitled</source>
@@ -28509,8 +28505,8 @@ Les version de Qt précédentes ont des limitations lors de la compilation des f
<translation>Faire un diff de &quot;%1&quot;</translation>
</message>
<message>
<source>ALT+Z,Alt+D</source>
<translation>ALT+Z, Alt+D</translation>
<source>Alt+Z,Alt+D</source>
<translation>Alt+Z, Alt+D</translation>
</message>
<message>
<source>Meta+Z,Meta+D</source>
@@ -28525,8 +28521,8 @@ Les version de Qt précédentes ont des limitations lors de la compilation des f
<translation>Réaliser un log de &quot;%1&quot;</translation>
</message>
<message>
<source>ALT+Z,Alt+L</source>
<translation>ALT+Z, Alt+L</translation>
<source>Alt+Z,Alt+L</source>
<translation>Alt+Z,Alt+L</translation>
</message>
<message>
<source>Meta+Z,Meta+L</source>
@@ -28541,8 +28537,8 @@ Les version de Qt précédentes ont des limitations lors de la compilation des f
<translation>Statut &quot;%1&quot;</translation>
</message>
<message>
<source>ALT+Z,Alt+S</source>
<translation>ALT+Z, Alt+S</translation>
<source>Alt+Z,Alt+S</source>
<translation>Alt+Z,Alt+S</translation>
</message>
<message>
<source>Meta+Z,Meta+S</source>
@@ -28605,8 +28601,8 @@ Les version de Qt précédentes ont des limitations lors de la compilation des f
<translation>Commit...</translation>
</message>
<message>
<source>ALT+Z,Alt+C</source>
<translation>ALT+Z, Alt+C</translation>
<source>Alt+Z,Alt+C</source>
<translation>Alt+Z,Alt+C</translation>
</message>
<message>
<source>Meta+Z,Meta+C</source>

View File

@@ -2809,8 +2809,8 @@ p, li { white-space: pre-wrap; }
<translation>Dodatne C++ predprocesorske direktive za %1:</translation>
</message>
<message>
<source>For appropriate options, consult the GCC or Clang manual pages or the &lt;a href=&quot;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html&quot;&gt;GCC online documentation&lt;/a&gt;.</source>
<translation>Odgovarajuće opcije potraži na stranicama GCC ili Clang priručnika ili na &lt;a href=&quot;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html&quot;&gt;GCC online dokumentaciji&lt;/a&gt;.</translation>
<source>For appropriate options, consult the GCC or Clang manual pages or the [GCC online documentation](%1).</source>
<translation>Odgovarajuće opcije potraži na stranicama GCC ili Clang priručnika ili na [GCC online dokumentaciji](%1).</translation>
</message>
<message>
<source>Use diagnostic flags from build system</source>
@@ -5588,8 +5588,8 @@ Greška: %5</translation>
<translation>Vrati izvorno stanje posljednje sesije prilikom pokretanja programa</translation>
</message>
<message>
<source>&lt;a href=&quot;qthelp://org.qt-project.qtcreator/doc/creator-project-managing-sessions.html&quot;&gt;What is a Session?&lt;/a&gt;</source>
<translation>&lt;a href=&quot;qthelp://org.qt-project.qtcreator/doc/creator-project-managing-sessions.html&quot;&gt;Što je sesija?&lt;/a&gt;</translation>
<source>What is a Session?</source>
<translation>Što je sesija?</translation>
</message>
</context>
<context>
@@ -10705,8 +10705,8 @@ will also disable the following plugins:
<translation>Očekivana vrsta %1, ali vrijednost je sadržavala %2</translation>
</message>
<message>
<source>Could not parse JSON message &quot;%1&quot;.</source>
<translation>Nije moguće obraditi JSON poruku &quot;%1&quot;.</translation>
<source>Could not parse JSON message: &quot;%1&quot;.</source>
<translation>Nije moguće obraditi JSON poruku: &quot;%1&quot;.</translation>
</message>
<message>
<source>Expected a JSON object, but got a JSON &quot;%1&quot;.</source>
@@ -14932,8 +14932,8 @@ Check the test environment.</source>
<translation>Meta+Z,Meta+D</translation>
</message>
<message>
<source>ALT+Z,Alt+D</source>
<translation>ALT+Z,Alt+D</translation>
<source>Alt+Z,Alt+D</source>
<translation>Alt+Z,Alt+D</translation>
</message>
<message>
<source>Log Current File</source>
@@ -14948,8 +14948,8 @@ Check the test environment.</source>
<translation>Meta+Z,Meta+L</translation>
</message>
<message>
<source>ALT+Z,Alt+L</source>
<translation>ALT+Z,Alt+L</translation>
<source>Alt+Z,Alt+L</source>
<translation>Alt+Z,Alt+L</translation>
</message>
<message>
<source>Status Current File</source>
@@ -14964,8 +14964,8 @@ Check the test environment.</source>
<translation>Meta+Z,Meta+S</translation>
</message>
<message>
<source>ALT+Z,Alt+S</source>
<translation>ALT+Z,Alt+S</translation>
<source>Alt+Z,Alt+S</source>
<translation>Alt+Z,Alt+S</translation>
</message>
<message>
<source>Add</source>
@@ -15028,8 +15028,8 @@ Check the test environment.</source>
<translation>Meta+Z,Meta+C</translation>
</message>
<message>
<source>ALT+Z,Alt+C</source>
<translation>ALT+Z,Alt+C</translation>
<source>Alt+Z,Alt+C</source>
<translation>Alt+Z,Alt+C</translation>
</message>
<message>
<source>Uncommit...</source>
@@ -18572,8 +18572,8 @@ Do you want to kill it?</source>
<translation>U općim postavkama za Okruženje konfigurirana zakrpna naredba ne postoji.</translation>
</message>
<message>
<source>Running in %1: %2 %3</source>
<translation>Pokrenuto u %1: %2 %3</translation>
<source>Running in &quot;%1&quot;: %2 %3.</source>
<translation>Pokrenuto u &quot;%1&quot;: %2 %3.</translation>
</message>
<message>
<source>Unable to launch &quot;%1&quot;: %2</source>
@@ -35830,8 +35830,8 @@ What do you want to do?</source>
<translation>Radi: %1 %2</translation>
</message>
<message>
<source>Running in %1: %2 %3</source>
<translation>Radi u %1: %2 %3</translation>
<source>Running in &quot;%1&quot;: %2 %3.</source>
<translation>Radi u &quot;%1&quot;: %2 %3.</translation>
</message>
<message>
<source>Name of the version control system in use by the current project.</source>

View File

@@ -11592,8 +11592,8 @@ a verziókövetőhöz (%2)?</translation>
<translation>Hiba történt a szakasz mentése közben</translation>
</message>
<message>
<source>Could not save session to file %1</source>
<translation>Nem sikerült a szakasz %1 fájlba mentése</translation>
<source>Could not save session to file &quot;%1&quot;</source>
<translation>Nem sikerült a szakasz &quot;%1&quot; fájlba mentése</translation>
</message>
<message>
<source>Qt Creator</source>

View File

@@ -7033,8 +7033,8 @@ al VCS (%2)?</translation>
<translation>Errore durante il salvataggio della sessione</translation>
</message>
<message>
<source>Could not save session to file %1</source>
<translation>Impossibile salvare la sessione sul file %1</translation>
<source>Could not save session to file &quot;%1&quot;</source>
<translation>Impossibile salvare la sessione sul file &quot;%1&quot;</translation>
</message>
<message>
<source>Qt Creator</source>

View File

@@ -4403,8 +4403,8 @@ Add, modify, and remove document filters, which determine the documentation set
<translation></translation>
</message>
<message>
<source>&lt;a href=&quot;qthelp://org.qt-project.qtcreator/doc/creator-project-managing-sessions.html&quot;&gt;What is a Session?&lt;/a&gt;</source>
<translation>&lt;a href=&quot;qthelp://org.qt-project.qtcreator/doc/creator-project-managing-sessions.html&quot;&gt;セッションとは?&lt;/a&gt;</translation>
<source>What is a Session?</source>
<translation></translation>
</message>
<message>
<source>Automatically restores the last session when Qt Creator is started.</source>
@@ -9342,8 +9342,8 @@ will also disable the following plugins:
<translation></translation>
</message>
<message>
<source>Nested inline components are not supported</source>
<translation></translation>
<source>Nested inline components are not supported.</source>
<translation></translation>
</message>
<message>
<source>&apos;int&apos; or &apos;real&apos;</source>
@@ -11816,8 +11816,8 @@ in the system&apos;s browser for manual download.</source>
<translation>Meta+Z,Meta+D</translation>
</message>
<message>
<source>ALT+Z,Alt+D</source>
<translation>ALT+Z,Alt+D</translation>
<source>Alt+Z,Alt+D</source>
<translation>Alt+Z,Alt+D</translation>
</message>
<message>
<source>Log Current File</source>
@@ -11832,8 +11832,8 @@ in the system&apos;s browser for manual download.</source>
<translation>Meta+Z,Meta+L</translation>
</message>
<message>
<source>ALT+Z,Alt+L</source>
<translation>ALT+Z,Alt+L</translation>
<source>Alt+Z,Alt+L</source>
<translation>Alt+Z,Alt+L</translation>
</message>
<message>
<source>Status Current File</source>
@@ -11848,8 +11848,8 @@ in the system&apos;s browser for manual download.</source>
<translation>Meta+Z,Meta+S</translation>
</message>
<message>
<source>ALT+Z,Alt+S</source>
<translation>ALT+Z,Alt+S</translation>
<source>Alt+Z,Alt+S</source>
<translation>Alt+Z,Alt+S</translation>
</message>
<message>
<source>Add</source>
@@ -11912,8 +11912,8 @@ in the system&apos;s browser for manual download.</source>
<translation>Meta+Z,Meta+C</translation>
</message>
<message>
<source>ALT+Z,Alt+C</source>
<translation>ALT+Z,Alt+C</translation>
<source>Alt+Z,Alt+C</source>
<translation>Alt+Z,Alt+C</translation>
</message>
<message>
<source>Uncommit...</source>
@@ -24418,8 +24418,8 @@ to project &quot;%2&quot;.</source>
<translation> %1 </translation>
</message>
<message>
<source>Could not save session to file %1</source>
<translation> %1 </translation>
<source>Could not save session to file &quot;%1&quot;</source>
<translation> &quot;%1&quot; </translation>
</message>
<message>
<source>Untitled</source>
@@ -33563,8 +33563,8 @@ Android 5 ではローカルの Qt ライブラリをデプロイできません
<translation></translation>
</message>
<message>
<source>For appropriate options, consult the GCC or Clang manual pages or the &lt;a href=&quot;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html&quot;&gt;GCC online documentation&lt;/a&gt;.</source>
<translation> GCC Clang &lt;a href=&quot;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html&quot;&gt;GCC のオンラインドキュメント&lt;/a&gt; を参照してください。</translation>
<source>For appropriate options, consult the GCC or Clang manual pages or the [GCC online documentation](%1).</source>
<translation> GCC Clang [GCC ](%1) </translation>
</message>
<message>
<source>Copy Diagnostic Configuration</source>
@@ -42568,14 +42568,12 @@ Output:
<translation></translation>
</message>
<message>
<source>Delete workspace %1?</source>
<translation> %1 </translation>
<source>Delete workspace &quot;%1&quot;?</source>
<translation> &quot;%1&quot; </translation>
</message>
<message>
<source>Delete these workspaces?
%1</source>
<translation>
%1</translation>
<source>Delete these workspaces?</source>
<translation></translation>
</message>
<message>
<source>Cannot Restore Workspace</source>

View File

@@ -903,8 +903,8 @@
<translation>&amp;Otwórz</translation>
</message>
<message>
<source>&lt;a href=&quot;qthelp://org.qt-project.qtcreator/doc/creator-project-managing-sessions.html&quot;&gt;What is a Session?&lt;/a&gt;</source>
<translation>&lt;a href=&quot;qthelp://org.qt-project.qtcreator/doc/creator-project-managing-sessions.html&quot;&gt;Co to jest sesja?&lt;/a&gt;</translation>
<source>What is a Session?</source>
<translation>Co to jest sesja?</translation>
</message>
<message>
<source>Restore last session on startup</source>
@@ -7967,8 +7967,8 @@ do projektu &quot;%2&quot;.</translation>
<translation>Błąd podczas zachowywania sesji</translation>
</message>
<message>
<source>Could not save session to file %1</source>
<translation>Nie można zachować sesji w pliku %1</translation>
<source>Could not save session to file &quot;%1&quot;</source>
<translation>Nie można zachować sesji w pliku &quot;%1&quot;</translation>
</message>
<message>
<source>Untitled</source>
@@ -13881,8 +13881,8 @@ Local pulls are not applied to the master branch.</source>
<translation>Pokaż różnice w &quot;%1&quot;</translation>
</message>
<message>
<source>ALT+Z,Alt+D</source>
<translation>ALT+Z,Alt+D</translation>
<source>Alt+Z,Alt+D</source>
<translation>Alt+Z,Alt+D</translation>
</message>
<message>
<source>Meta+Z,Meta+D</source>
@@ -13897,8 +13897,8 @@ Local pulls are not applied to the master branch.</source>
<translation>Log &quot;%1&quot;</translation>
</message>
<message>
<source>ALT+Z,Alt+L</source>
<translation>ALT+Z,Alt+L</translation>
<source>Alt+Z,Alt+L</source>
<translation>Alt+Z,Alt+L</translation>
</message>
<message>
<source>Meta+Z,Meta+L</source>
@@ -13913,8 +13913,8 @@ Local pulls are not applied to the master branch.</source>
<translation>Stan &quot;%1&quot;</translation>
</message>
<message>
<source>ALT+Z,Alt+S</source>
<translation>ALT+Z,Alt+S</translation>
<source>Alt+Z,Alt+S</source>
<translation>Alt+Z,Alt+S</translation>
</message>
<message>
<source>Meta+Z,Meta+S</source>
@@ -13977,8 +13977,8 @@ Local pulls are not applied to the master branch.</source>
<translation>Utwórz poprawkę...</translation>
</message>
<message>
<source>ALT+Z,Alt+C</source>
<translation>ALT+Z,Alt+C</translation>
<source>Alt+Z,Alt+C</source>
<translation>Alt+Z,Alt+C</translation>
</message>
<message>
<source>Meta+Z,Meta+C</source>
@@ -28622,8 +28622,8 @@ Do you want to check them out now?</source>
<translation>Brak skonfigurowanej komendy &quot;patch&quot; w głównych ustawieniach środowiska.</translation>
</message>
<message>
<source>Running in %1: %2 %3</source>
<translation>Uruchamianie w %1: %2 %3</translation>
<source>Running in &quot;%1&quot;: %2 %3.</source>
<translation>Uruchamianie w &quot;%1&quot;: %2 %3.</translation>
</message>
<message>
<source>Unable to launch &quot;%1&quot;: %2</source>
@@ -31184,8 +31184,8 @@ Pliki z katalogu źródłowego pakietu Android są kopiowane do katalogu budowan
<translation>Uruchamianie: %1 %2</translation>
</message>
<message>
<source>Running in %1: %2 %3</source>
<translation>Uruchamianie w %1: %2 %3</translation>
<source>Running in &quot;%1&quot;: %2 %3.</source>
<translation>Uruchamianie w &quot;%1&quot;: %2 %3.</translation>
</message>
</context>
<context>
@@ -34259,8 +34259,8 @@ Te pliki są zabezpieczone.</numerusform>
<translation>Usuń</translation>
</message>
<message>
<source>For appropriate options, consult the GCC or Clang manual pages or the &lt;a href=&quot;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html&quot;&gt;GCC online documentation&lt;/a&gt;.</source>
<translation>Sposoby konfigurowania opisane w podręczniku GCC lub Clang lub w &lt;a href=&quot;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html&quot;&gt;dokumentacji online GCC&lt;/a&gt;.</translation>
<source>For appropriate options, consult the GCC or Clang manual pages or the [GCC online documentation](%1).</source>
<translation>Sposoby konfigurowania opisane w podręczniku GCC lub Clang lub w [dokumentacji online GCC](%1).</translation>
</message>
<message>
<source>Copy Diagnostic Configuration</source>

View File

@@ -32,14 +32,12 @@
<translation>Удалить сессии</translation>
</message>
<message>
<source>Delete workspace %1?</source>
<translation>Удалить сессию %1?</translation>
<source>Delete workspace &quot;%1&quot;?</source>
<translation>Удалить сессию &quot;%1&quot;?</translation>
</message>
<message>
<source>Delete these workspaces?
%1</source>
<translation>Удалить следующие сессии?
%1</translation>
<source>Delete these workspaces?</source>
<translation>Удалить следующие сессии?</translation>
</message>
<message>
<source>Cannot Restore Workspace</source>
@@ -4182,7 +4180,7 @@ Local commits are not pushed to the master branch until a normal commit is perfo
<translation>Состояние «%1»</translation>
</message>
<message>
<source>ALT+Z,Alt+D</source>
<source>Alt+Z,Alt+D</source>
<translation></translation>
</message>
<message>
@@ -4190,7 +4188,7 @@ Local commits are not pushed to the master branch until a normal commit is perfo
<translation>Meta+Z,Meta+D</translation>
</message>
<message>
<source>ALT+Z,Alt+L</source>
<source>Alt+Z,Alt+L</source>
<translation></translation>
</message>
<message>
@@ -4198,7 +4196,7 @@ Local commits are not pushed to the master branch until a normal commit is perfo
<translation>Meta+Z,Meta+L</translation>
</message>
<message>
<source>ALT+Z,Alt+S</source>
<source>Alt+Z,Alt+S</source>
<translation></translation>
</message>
<message>
@@ -4262,7 +4260,7 @@ Local commits are not pushed to the master branch until a normal commit is perfo
<translation>Фиксировать...</translation>
</message>
<message>
<source>ALT+Z,Alt+C</source>
<source>Alt+Z,Alt+C</source>
<translation></translation>
</message>
<message>
@@ -10566,8 +10564,8 @@ Double-click to edit item.</source>
<translation>Команда patch, настроенная в общих настройках «Среды», отсутствует.</translation>
</message>
<message>
<source>Running in %1: %2 %3</source>
<translation>Выполняется в %1: %2 %3</translation>
<source>Running in &quot;%1&quot;: %2 %3.</source>
<translation>Выполняется в &quot;%1&quot;: %2 %3.</translation>
</message>
<message>
<source>Unable to launch &quot;%1&quot;: %2</source>
@@ -11170,8 +11168,8 @@ to version control (%2)
<translation>Имя класса.</translation>
</message>
<message>
<source>For appropriate options, consult the GCC or Clang manual pages or the &lt;a href=&quot;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html&quot;&gt;GCC online documentation&lt;/a&gt;.</source>
<translation>Описание параметров можно найти страницах man GCC или Clang или в &lt;a href=&quot;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html&quot;&gt;Документации GCC&lt;/a&gt;.</translation>
<source>For appropriate options, consult the GCC or Clang manual pages or the [GCC online documentation](%1).</source>
<translation>Описание параметров можно найти страницах man GCC или Clang или в [Документации GCC](%1).</translation>
</message>
<message>
<source>Use diagnostic flags from build system</source>
@@ -29153,8 +29151,8 @@ to project &quot;%2&quot;.</source>
<translation>&amp;Удалить</translation>
</message>
<message>
<source>&lt;a href=&quot;qthelp://org.qt-project.qtcreator/doc/creator-project-managing-sessions.html&quot;&gt;What is a Session?&lt;/a&gt;</source>
<translation>&lt;a href=&quot;qthelp://org.qt-project.qtcreator/doc/creator-project-managing-sessions.html&quot;&gt;Что такое сессия?&lt;/a&gt;</translation>
<source>What is a Session?</source>
<translation>Что такое сессия?</translation>
</message>
<message>
<source>Restore last session on startup</source>
@@ -32162,8 +32160,8 @@ These files are preserved.</source>
<translation>Ошибка при сохранении сессии</translation>
</message>
<message>
<source>Could not save session to file %1</source>
<translation>Не удалось сохранить сессию %1</translation>
<source>Could not save session to file &quot;%1&quot;</source>
<translation>Не удалось сохранить сессию &quot;%1&quot;</translation>
</message>
<message>
<source>Untitled</source>
@@ -47662,8 +47660,8 @@ What do you want to do?</source>
<translation>Исполнение: %1 %2</translation>
</message>
<message>
<source>Running in %1: %2 %3</source>
<translation>Исполнение в %1: %2 %3</translation>
<source>Running in &quot;%1&quot;: %2 %3.</source>
<translation>Исполнение в &quot;%1&quot;: %2 %3.</translation>
</message>
<message>
<source>&amp;Undo</source>

View File

@@ -6772,8 +6772,8 @@ enojen »Vstopi« za oddajo signala pa vas bo privedel neposredno do ustrezne pr
<translation>&amp;Odpri</translation>
</message>
<message>
<source>&lt;a href=&quot;qthelp://org.qt-project.qtcreator/doc/creator-project-managing-sessions.html&quot;&gt;What is a Session?&lt;/a&gt;</source>
<translation>&lt;a href=&quot;qthelp://org.qt-project.qtcreator/doc/creator-project-managing-sessions.html&quot;&gt;Kaj je seja?&lt;/a&gt;</translation>
<source>What is a Session?</source>
<translation>Kaj je seja?</translation>
</message>
<message>
<source>New session name</source>
@@ -7426,8 +7426,8 @@ v sistem za nadzor različic (%2)?</translation>
<translation>Napaka med shranjevanjem seje</translation>
</message>
<message>
<source>Could not save session to file %1</source>
<translation>Ni bilo moč shraniti seje v datoteko %1</translation>
<source>Could not save session to file &quot;%1&quot;</source>
<translation>Ni bilo moč shraniti seje v datoteko &quot;%1&quot;</translation>
</message>
<message>
<source>Untitled</source>
@@ -19894,8 +19894,8 @@ Seznam za strežnik je: %2.</translation>
<translation>Razlike v »%1«</translation>
</message>
<message>
<source>ALT+Z,Alt+D</source>
<translation>ALT+Z,Alt+D</translation>
<source>Alt+Z,Alt+D</source>
<translation>Alt+Z,Alt+D</translation>
</message>
<message>
<source>Log Current File</source>
@@ -19906,8 +19906,8 @@ Seznam za strežnik je: %2.</translation>
<translation>Dnevnik za »%1«</translation>
</message>
<message>
<source>ALT+Z,Alt+L</source>
<translation>ALT+Z,Alt+L</translation>
<source>Alt+Z,Alt+L</source>
<translation>Alt+Z,Alt+L</translation>
</message>
<message>
<source>Status Current File</source>
@@ -19918,8 +19918,8 @@ Seznam za strežnik je: %2.</translation>
<translation>Stanje za »%1«</translation>
</message>
<message>
<source>ALT+Z,Alt+S</source>
<translation>ALT+Z,Alt+S</translation>
<source>Alt+Z,Alt+S</source>
<translation>Alt+Z,Alt+S</translation>
</message>
<message>
<source>Add</source>
@@ -19978,8 +19978,8 @@ Seznam za strežnik je: %2.</translation>
<translation>Zapiši ...</translation>
</message>
<message>
<source>ALT+Z,Alt+C</source>
<translation>ALT+Z,Alt+C</translation>
<source>Alt+Z,Alt+C</source>
<translation>Alt+Z,Alt+C</translation>
</message>
<message>
<source>Create Repository...</source>

View File

@@ -456,8 +456,8 @@ Local commits are not pushed to the master branch until a normal commit is perfo
<translation>Зміни в &quot;%1&quot;</translation>
</message>
<message>
<source>ALT+Z,Alt+D</source>
<translation>ALT+Z,Alt+D</translation>
<source>Alt+Z,Alt+D</source>
<translation>Alt+Z,Alt+D</translation>
</message>
<message>
<source>Meta+Z,Meta+D</source>
@@ -472,8 +472,8 @@ Local commits are not pushed to the master branch until a normal commit is perfo
<translation>Історія &quot;%1&quot;</translation>
</message>
<message>
<source>ALT+Z,Alt+L</source>
<translation>ALT+Z,Alt+L</translation>
<source>Alt+Z,Alt+L</source>
<translation>Alt+Z,Alt+L</translation>
</message>
<message>
<source>Meta+Z,Meta+L</source>
@@ -488,8 +488,8 @@ Local commits are not pushed to the master branch until a normal commit is perfo
<translation type="unfinished"></translation>
</message>
<message>
<source>ALT+Z,Alt+S</source>
<translation>ALT+Z,Alt+S</translation>
<source>Alt+Z,Alt+S</source>
<translation>Alt+Z,Alt+S</translation>
</message>
<message>
<source>Meta+Z,Meta+S</source>
@@ -552,8 +552,8 @@ Local commits are not pushed to the master branch until a normal commit is perfo
<translation type="unfinished"></translation>
</message>
<message>
<source>ALT+Z,Alt+C</source>
<translation>ALT+Z,Alt+C</translation>
<source>Alt+Z,Alt+C</source>
<translation>Alt+Z,Alt+C</translation>
</message>
<message>
<source>Meta+Z,Meta+C</source>
@@ -14143,8 +14143,8 @@ Reason: %2</source>
<translation>Помилка при збереженні сесії</translation>
</message>
<message>
<source>Could not save session to file %1</source>
<translation>Не вдалось зберегти сесію до файлу %1</translation>
<source>Could not save session to file &quot;%1&quot;</source>
<translation>Не вдалось зберегти сесію до файлу &quot;%1&quot;</translation>
</message>
<message>
<source>Untitled</source>
@@ -42730,8 +42730,8 @@ the program.</source>
<translation>Видалити</translation>
</message>
<message>
<source>For appropriate options, consult the GCC or Clang manual pages or the &lt;a href=&quot;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html&quot;&gt;GCC online documentation&lt;/a&gt;.</source>
<translation>Для відповідних опцій, переглянть сторінки man до GCC або Clang або ж &lt;a href=&quot;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html&quot;&gt;документацію GCC в мережі&lt;/a&gt;.</translation>
<source>For appropriate options, consult the GCC or Clang manual pages or the [GCC online documentation](%1).</source>
<translation>Для відповідних опцій, переглянть сторінки man до GCC або Clang або ж [документацію GCC в мережі](%1).</translation>
</message>
<message>
<source>Copy Diagnostic Configuration</source>

View File

@@ -32,14 +32,12 @@
<translation></translation>
</message>
<message>
<source>Delete workspace %1?</source>
<translation> %1 </translation>
<source>Delete workspace &quot;%1&quot;?</source>
<translation> &quot;%1&quot; </translation>
</message>
<message>
<source>Delete these workspaces?
%1</source>
<translation>
%1</translation>
<source>Delete these workspaces?</source>
<translation></translation>
</message>
<message>
<source>Cannot Restore Workspace</source>
@@ -4480,8 +4478,8 @@ This flag will allow push to proceed.</source>
<translation>Diff &quot;%1&quot;</translation>
</message>
<message>
<source>ALT+Z,Alt+D</source>
<translation>ALT+Z,Alt+D</translation>
<source>Alt+Z,Alt+D</source>
<translation>Alt+Z,Alt+D</translation>
</message>
<message>
<source>Meta+Z,Meta+D</source>
@@ -4496,8 +4494,8 @@ This flag will allow push to proceed.</source>
<translation>Log &quot;%1&quot;</translation>
</message>
<message>
<source>ALT+Z,Alt+L</source>
<translation>ALT+Z,Alt+L</translation>
<source>Alt+Z,Alt+L</source>
<translation>Alt+Z,Alt+L</translation>
</message>
<message>
<source>Meta+Z,Meta+L</source>
@@ -4512,8 +4510,8 @@ This flag will allow push to proceed.</source>
<translation>Status &quot;%1&quot;</translation>
</message>
<message>
<source>ALT+Z,Alt+S</source>
<translation>ALT+Z,Alt+S</translation>
<source>Alt+Z,Alt+S</source>
<translation>Alt+Z,Alt+S</translation>
</message>
<message>
<source>Meta+Z,Meta+S</source>
@@ -4576,8 +4574,8 @@ This flag will allow push to proceed.</source>
<translation>...</translation>
</message>
<message>
<source>ALT+Z,Alt+C</source>
<translation>ALT+Z,Alt+C</translation>
<source>Alt+Z,Alt+C</source>
<translation>Alt+Z,Alt+C</translation>
</message>
<message>
<source>Meta+Z,Meta+C</source>
@@ -28222,8 +28220,8 @@ to project &quot;%2&quot;.</source>
<translation>(&amp;S)</translation>
</message>
<message>
<source>&lt;a href=&quot;qthelp://org.qt-project.qtcreator/doc/creator-project-managing-sessions.html&quot;&gt;What is a Session?&lt;/a&gt;</source>
<translation>&lt;a href=&quot;qthelp://org.qt-project.qtcreator/doc/creator-quick-tour.html#session-management-in-qt-creator&quot;&gt;什么是会话?&lt;/a&gt;</translation>
<source>What is a Session?</source>
<translation>?</translation>
</message>
<message>
<source>Restore last session on startup</source>
@@ -30031,8 +30029,8 @@ These files are preserved.</source>
<translation></translation>
</message>
<message>
<source>Could not save session to file %1</source>
<translation> %1 </translation>
<source>Could not save session to file &quot;%1&quot;</source>
<translation> &quot;%1&quot; </translation>
</message>
<message>
<source>Untitled</source>

View File

@@ -6500,8 +6500,8 @@ Add, modify, and remove document filters, which determine the documentation set
<translation></translation>
</message>
<message>
<source>&lt;a href=&quot;qthelp://org.qt-project.qtcreator/doc/creator-project-managing-sessions.html&quot;&gt;What is a Session?&lt;/a&gt;</source>
<translation>&lt;a href=&quot;qthelp://org.qt-project.qtcreator/doc/creator-project-managing-sessions.html&quot;&gt;什麼是工作階段?&lt;/a&gt;</translation>
<source>What is a Session?</source>
<translation></translation>
</message>
<message>
<source>Automatically restore the last session when Qt Creator is started.</source>
@@ -7218,8 +7218,8 @@ to version control (%2)?</source>
<translation></translation>
</message>
<message>
<source>Could not save session to file %1</source>
<translation> %1 </translation>
<source>Could not save session to file &quot;%1&quot;</source>
<translation> &quot;%1&quot; </translation>
</message>
<message>
<source>Untitled</source>
@@ -17607,8 +17607,8 @@ Local pulls are not applied to the master branch.</source>
<translation> &quot;%1&quot;</translation>
</message>
<message>
<source>ALT+Z,Alt+D</source>
<translation>ALT+Z,Alt+D</translation>
<source>Alt+Z,Alt+D</source>
<translation>Alt+Z,Alt+D</translation>
</message>
<message>
<source>Meta+Z,Meta+D</source>
@@ -17623,8 +17623,8 @@ Local pulls are not applied to the master branch.</source>
<translation>&quot;%1&quot; </translation>
</message>
<message>
<source>ALT+Z,Alt+L</source>
<translation>ALT+Z,Alt+L</translation>
<source>Alt+Z,Alt+L</source>
<translation>Alt+Z,Alt+L</translation>
</message>
<message>
<source>Meta+Z,Meta+L</source>
@@ -17639,8 +17639,8 @@ Local pulls are not applied to the master branch.</source>
<translation>&quot;%1&quot; </translation>
</message>
<message>
<source>ALT+Z,Alt+S</source>
<translation>ALT+Z,Alt+S</translation>
<source>Alt+Z,Alt+S</source>
<translation>Alt+Z,Alt+S</translation>
</message>
<message>
<source>Meta+Z,Meta+S</source>
@@ -17703,8 +17703,8 @@ Local pulls are not applied to the master branch.</source>
<translation>...</translation>
</message>
<message>
<source>ALT+Z,Alt+C</source>
<translation>ALT+Z,Alt+C</translation>
<source>Alt+Z,Alt+C</source>
<translation>Alt+Z,Alt+C</translation>
</message>
<message>
<source>Meta+Z,Meta+C</source>