You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/art-lang/index.html
+2-1Lines changed: 2 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -1820,7 +1820,8 @@ <h2 id="textual-and-graphical-notations">Textual and Graphical Notations</h2>
1820
1820
<p>The Art language is a textual language, but many parts of it also have a graphical notation. For example, a state machine can be shown using a graphical state diagram, and the composite structure of a capsule can be shown in a structure diagram. Relationships between capsules, protocols and classes, such as inheritance, can be shown in class diagrams.</p>
1821
1821
<p>Below are examples of these three kinds of diagrams:</p>
1822
1822
<p><imgalt="" src="images/diagrams.png" /></p>
1823
-
<p>Diagrams are automatically updated when the corresponding Art file is modified. They use automatic layout to avoid the need for manual tidy-up of diagrams when something changes. This also significantly reduces the need for storing diagram specific properties in the Art files, such as coordinates or symbol dimensions. However, there are some properties used when rendering diagrams that are stored in the Art file. For example, if you assign a custom <ahref="#color">color</a> to a state symbol it will be stored as a <ahref="#property">property</a> on the state.</p>
1823
+
<p>Diagrams are automatically updated when the corresponding Art file is modified. By default diagrams are rendered using automatic layout to avoid the need for manual tidy-up of diagrams when something changes. However, it's also possible to use manual diagram layout. See <ahref="../working-with-art/diagrams/#automatic-vs-manual-layout">Automatic vs Manual Layout</a> for more information.</p>
1824
+
<p>To avoid cluttering an Art file with too much non-semantic information, most properties related to diagrams are stored in separate JSON files. The main exception is the <ahref="#color">color</a> property which allows to specify a custom color for Art elements, which will be used when showing the element in a diagram. For example, to colorize a state specify a custom color for it like this:</p>
1824
1825
<pre><codeclass="language-art">capsule Cap {
1825
1826
statemachine {
1826
1827
state ColorfulState[[rt::properties(color="#b40e0e")]];
<li>Manual layout of diagrams is now supported. This means you can move symbols around to manually decide their positions on a diagram. This is currently an EXPERIMENTAL feature. To try it out, mark the checkbox "Manual" under "Layout" in the properties view of any diagram. Read more about this feature <ahref="https://secure-dev-ops.github.io/code-realtime/working-with-art/diagrams/#automatic-vs-manual-layout">here</a>.</li>
1203
+
<li>It's now possible to use log streams for logging messages from your application. They have a number of benefits compared to using log ports. For example, you can use them from anywhere (not just from a capsule), standard C++ stream manipulators can be used (for formatting etc) and you can use them either for logging to <code>stdout</code> or <code>stderr</code>. Compound log messages can be printed in a thread-safe way by locking the log streams to avoid interleaved log messages from other threads. Read more about this feature <ahref="https://secure-dev-ops.github.io/code-realtime/target-rts/logging/#log-stream">here</a>.</li>
1204
+
<li>The generated make file now gets include paths for all folders of prerequisites that contain at least one header file. Previously this only worked for local folders. This means you can now use such header files without having to include them with their full paths.</li>
1205
+
<li>The C++ code generator now implements a more accurate analysis of C++ code snippets in order to conclude if C++ classes declared in code snippets are abstract or not. For example, it now correctly handles situations of class inheritance across different Art files.</li>
1206
+
<li>A new context menu command <code>Export as SVG</code> is provided for Art files in the Explorer view. It exports multiple diagrams to SVG in one go. This feature is also available as a command <code>Export Diagrams as SVG</code> in the palette, and can also be used for exporting all diagrams of an element that has focus in an open Art editor.</li>
1207
+
<li>Code RealTime can now be run as a web application within <ahref="https://www.ibm.com/devops-automation">DevOps Automation</a> - a Kubernetes based tool suite that also comprises many other tools used during the development lifecycle of software applications. The part of DevOps Automation that contains Code RealTime is called <strong>DevOps Code</strong> and works by launching a dev container that provides everything necessary for using Code RealTime from a web browser.</li>
1208
+
<li>Version 1.0.2 of the Art Exporter is now available. It provides a number of improvements in how Model RealTime data types are exported to Art files. See <ahref="https://model-realtime.hcldoc.com/help/topic/com.ibm.xtools.rsarte.webdoc/Utilities/Art%20Exporter.html">this page</a> for the full list of improvements.</li>
<li>It's now possible to export diagrams as SVG. This allows to use diagrams in reports, presentations or other documents where SVG files can be embedded. To export a diagram to SVG you first need to open it and adjust it the way you want it to appear (e.g. expanding or collapsing symbols). Then click the new toolbar button <code>Export as SVG</code> in the Properties view or use the new command <code>Export as SVG</code> from the Command Palette.</li>
0 commit comments