Application¶
Description¶
The Application object is the root object for all other objects and represents the application instance. It provides properties for global settings such as country, language, timeZone and measurementSystem. The application also has meta data properties such as name, description and version.
› Inherits: | ObjectArray |
---|
Properties¶
commandLineArguments¶
This property holds the arguments passed to the application when run manually at the command line. This can be used to implement simple CLI applications, e.g. for testing purposes.
This property was introduced in InCore 1.1.
› Type: | StringList |
---|---|
› Signal: | commandLineArgumentsChanged() |
› Attributes: | Readonly |
country¶
This property holds the country the application is configured for. This information is used for localization purposes and influences how numbers and dates are formatted.
› Type: | Country |
---|---|
› Default: | Application.Germany |
› Signal: | countryChanged() |
› Attributes: | Writable |
customCaCertificates¶
This property holds a list of paths to custom CA certificate files which to use in addition to the list of default CAs installed provided by the operating system. Use this if you have to establish encrypted network connections to services which use SSL/TLS certificates generated by an internal CA.
This property was introduced in InCore 2.5.
› Type: | StringList |
---|---|
› Signal: | customCaCertificatesChanged() |
› Attributes: | Writable |
debug¶
This property holds whether to log internal debug messages to the console. When enabled additionally all errors occurring in any object are logged to the console automatically.
› Type: | Boolean |
---|---|
› Default: | false |
› Signal: | debugChanged() |
› Attributes: | Writable, Optional |
description¶
This property holds a description for the application. It currently does not serve any special purposes but can be used to document and describe the application in a program-accessible manner.
› Type: | String |
---|---|
› Signal: | descriptionChanged() |
› Attributes: | Writable, Optional |
language¶
This property holds the language the application is configured for. Changing this property from Application.English to a different language may - depending on the current translation and language support state - make the individual InCore objects return translated messages and error strings.
› Type: | Language |
---|---|
› Default: | Application.German |
› Signal: | languageChanged() |
› Attributes: | Writable |
measurementSystem¶
This property holds the measurement system the application is configured for. Objects derived from the Measurement object may depend on this setting and return values converted for the appropriate measurement system. For example a temperature object could provide the formatted temperature in the Measurement.displayString property. It is converted to °F if measurementSystem is set to Measurement.ImperialUSSystem.
› Type: | Measurement.System |
---|---|
› Default: | Measurement.MetricSystem |
› Signal: | measurementSystemChanged() |
› Attributes: | Writable |
messageLoggingFilterRules¶
This property holds rules for filtering log messages based on their respective logging category. To disable all debug messages but e.g. networking-related ones, set this property to *.debug=false
foundation.network=true
. The logging categories of a message can be found at the beginning of a message per default. It can be changed through the messageLoggingPattern property.
This property was introduced in InCore 2.0.
› Type: | String |
---|---|
› Signal: | messageLoggingFilterRulesChanged() |
› Attributes: | Writable, Optional |
messageLoggingPattern¶
This property holds a pattern including placeholders which can be used for customizing the log message format and content. See the Qt documentation on message patterns for details and all supported placeholders.
This property was introduced in InCore 2.0.
› Type: | String |
---|---|
› Default: | %{if-category}%{category}.%{type}: %{endif}%{message} |
› Signal: | messageLoggingPatternChanged() |
› Attributes: | Writable, Optional |
name¶
This property holds the name of the application. This property is used to determine settings and storage paths and should therefore consist of alphanumeric characters only.
› Type: | String |
---|---|
› Default: | Default App |
› Signal: | nameChanged() |
› Attributes: | Writable |
processEnvironment¶
This property holds the environment variables for the current process set by the system.
This property was introduced in InCore 2.5.
› Type: | Map |
---|---|
› Signal: | processEnvironmentChanged() |
› Attributes: | Readonly |
standardInput¶
This property holds the standard input channel for the current process.
This property was introduced in InCore 2.5.
› Type: | IoDevice |
---|---|
› Signal: | standardInputChanged() |
› Attributes: | Readonly |
system¶
This property holds a global instance of a System object. It’s available for convenience so that no separate instances have to be defined manually.
› Type: | System |
---|---|
› Signal: | systemChanged() |
› Attributes: | Readonly |
timeZone¶
This property holds the timezone for the location at which the application or device is running. Setting this property affects all DateTime objects which do not have the DateTime.timezone property set explicitely.
› Type: | String |
---|---|
› Default: | UTC |
› Signal: | timeZoneChanged() |
› Attributes: | Writable |
trace¶
This property holds whether to log internal trace messages to the console. This allows analysing internal function call sequences more closely.
› Type: | Boolean |
---|---|
› Default: | false |
› Signal: | traceChanged() |
› Attributes: | Writable, Optional |
translate¶
This property holds whether to load a translation file based on the language setting. When enabled, the file <TWO-LETTER-ISO-639-LANGUAGE-CODE>.qm
is loaded from the application directory.
This property was introduced in InCore 2.4.
› Type: | Boolean |
---|---|
› Default: | false |
› Signal: | translateChanged() |
› Attributes: | Writable |
trapErrors¶
This property holds whether to immediately exit the application on any occurring error. This can ease debugging in case a huge number of messages are printed to the console during runtime.
This property was introduced in InCore 2.5.
› Type: | Boolean |
---|---|
› Default: | false |
› Signal: | trapErrorsChanged() |
› Attributes: | Writable |
url¶
This property holds a URL of the application or the application vendor. It currently is not evaluated within the InCore framework.
› Type: | String |
---|---|
› Default: | https://inhub.de |
› Signal: | urlChanged() |
› Attributes: | Writable, Optional |
vendor¶
This property holds the name of the application vendor. It may be formatted arbitrarily and currently is not evaluated within the InCore framework.
› Type: | String |
---|---|
› Default: | in.hub GmbH |
› Signal: | vendorChanged() |
› Attributes: | Writable, Optional |
version¶
This property holds a version string for the application. It may be formatted arbitrarily and currently is not evaluated within the InCore framework.
› Type: | String |
---|---|
› Signal: | versionChanged() |
› Attributes: | Writable, Optional |
Methods¶
dumpBacktrace()¶
This method dumps an internal function call backtrace to the console. Except for troubleshooting in contact with the InCore developers you’ll never need to call this function.
Enumerations¶
Country¶
This enumeration is used to specify a country.
Name | Value | Description |
---|---|---|
Application.AnyCountry |
0 |
|
Application.Argentina |
10 |
|
Application.Australia |
13 |
|
Application.Austria |
14 |
|
Application.Belgium |
21 |
|
Application.Brazil |
30 |
|
Application.Canada |
38 |
|
Application.China |
44 |
|
Application.CzechRepublic |
57 |
|
Application.Denmark |
58 |
|
Application.Estonia |
68 |
|
Application.Finland |
73 |
|
Application.France |
74 |
|
Application.Germany |
82 |
|
Application.India |
100 |
|
Application.Indonesia |
101 |
|
Application.Iran |
102 |
|
Application.Italy |
106 |
|
Application.Japan |
108 |
|
Application.Latvia |
118 |
|
Application.Lithuania |
124 |
|
Application.Luxembourg |
125 |
|
Application.Mexico |
139 |
|
Application.Netherlands |
151 |
|
Application.Norway |
161 |
|
Application.Pakistan |
163 |
|
Application.Poland |
172 |
|
Application.Portugal |
173 |
|
Application.Russia |
178 |
|
Application.Spain |
197 |
|
Application.Sweden |
205 |
|
Application.Switzerland |
206 |
|
Application.Turkey |
217 |
|
Application.Ukraine |
222 |
|
Application.UnitedKingdom |
224 |
|
Application.UnitedStates |
225 |
|
Application.Vietnam |
232 |
Language¶
This enumeration is used to specify a language.
Name | Value | Description |
---|---|---|
Application.AnyLanguage |
0 |
|
Application.Arabic |
8 |
|
Application.Chinese |
25 |
|
Application.Czech |
28 |
|
Application.Danish |
29 |
|
Application.Dutch |
30 |
|
Application.English |
31 |
|
Application.Estonian |
33 |
|
Application.Finnish |
36 |
|
Application.French |
37 |
|
Application.German |
42 |
|
Application.Hebrew |
48 |
|
Application.Hindi |
49 |
|
Application.Indonesian |
52 |
|
Application.Italian |
58 |
|
Application.Japanese |
59 |
|
Application.Latvian |
71 |
|
Application.Lithuanian |
73 |
|
Application.Persian |
89 |
|
Application.Polish |
90 |
|
Application.Portuguese |
91 |
|
Application.Russian |
96 |
|
Application.Spanish |
111 |
|
Application.Swedish |
114 |
|
Application.Ukrainian |
129 |
|
Application.Urdu |
130 |
|
Application.Vietnamese |
132 |
Example¶
import InCore.Foundation 2.5
Application {
id: app
// populate metadata
name: "example"
version: "1.2.3"
description: "Simple application example"
url: "https://incore.readthedocs.io"
vendor: "in.hub GmbH"
// global settings
country: Application.Germany
language: Application.German
timeZone: "Europe/Berlin"
// print message when finished loading
onCompleted: console.log("Example app ready")
}