Warning, /sdk/cutehmi/tools/cutehmi.console.0/README.md is written in an unsupported language. File is not indexed.

0001 # Console
0002 
0003 ![Development status](doc/status-alpha.svg)
0004 
0005 Interactive command line interface, which allows one to browse QML object model and evaluate expressions.
0006 
0007 This tool allows one to execute QML expressions. One specifies an extension and the tool will make an attempt to import that
0008 extension and instantiate `Console` component. If the extension does not provide `Console` component an alternative non-GUI
0009 component may be specified with next positional argument. You can use `--help` command line argument to see a list of all possible
0010 command line options.
0011 
0012 For example following command imports [Console Example](../../extensions/CuteHMI/Examples/Console.0/) extension, which provides
0013 `Console` component allowing for some basic interaction with the tool.
0014 ```
0015 cutehmi.console.0 CuteHMI.Examples.Console.0
0016 ```
0017 
0018 Component `Console` could be specified directly.
0019 ```
0020 cutehmi.console.0 CuteHMI.Examples.Console.0 Console
0021 ```
0022 
0023 After starting the program, a command prompt is shown. Command line interpreter basically works in two modes: console command mode
0024 and QML expression mode. Any string that starts with `\` character is interpreted as console command; everything else is
0025 interpreted as QML expression.
0026 
0027 For example `\quit` string consists of `quit` command prepended by `\` (which by the way is also treated as a command - the one that
0028 enables the console command mode), so it is interpreted as a console command, which quits the console.
0029 ```
0030 # \quit
0031 cutehmi.console.0: See you.
0032 ```
0033 
0034 But the following are QML expressions with the results of evaluation printed below.
0035 ```
0036 # 2+2
0037 cutehmi.console.0: QVariant(int, 4)
0038 # console.info("huhu")
0039 qml: huhu
0040 ```
0041 
0042 The motiviation behind this tool is to make it possible to conveniently set up or configure an extenision, in situations, when no
0043 GUI is available. Creating a schema of a database is an example use case.
0044 
0045 ## Limitations
0046 
0047 Except the obvious limitation like inability to represent GUI features or deficiencies of current version, Console may have
0048 troubles with extensions that use threads. As it does not provide dedicated output window nor customized input, such extensions may
0049 produce glitches in the command line.