diff options
author | Shawn Rutledge <shawn.rutledge@qt.io> | 2016-06-10 08:19:39 +0200 |
---|---|---|
committer | Shawn Rutledge <shawn.rutledge@qt.io> | 2016-06-10 07:36:47 +0000 |
commit | 988fe90f5006a174e815d0e3e80a17d7ccdb7853 (patch) | |
tree | 0c430bb924041259326bf4cac56c226c3ce843ab | |
parent | cf744b55a3fe252b8284956d18d61f46467dd721 (diff) |
install QML for viewing Sequence diagrams; remove uq script
Now you can simply view the diagram QML with the qml runtime.
The module is now renamed to Qt.labs.UmlQuick, with the Sequence
(MessageTrace) diagram components being in Qt.labs.UmlQuick.Sequence
and the trace instrumentation being in Qt.labs.UmlQuick.Trace.
The diagram in UML terminology is called simply a Sequence diagram,
whereas the act of generating one is to trace messages.
Change-Id: I4d7db9eecc32af8b57c2c4242bb7d4568b777e28
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
-rw-r--r-- | README | 10 | ||||
-rw-r--r-- | examples/traces/flickable.qml | 2 | ||||
-rw-r--r-- | examples/traces/mpta.qml | 2 | ||||
-rw-r--r-- | imports/UmlQuick/Sequence/Message.qml (renamed from imports/Diagrams/UmlSequence/Message.qml) | 0 | ||||
-rw-r--r-- | imports/UmlQuick/Sequence/MessageRepeated.qml (renamed from imports/Diagrams/UmlSequence/MessageRepeated.qml) | 0 | ||||
-rw-r--r-- | imports/UmlQuick/Sequence/ObjectInstance.qml (renamed from imports/Diagrams/UmlSequence/ObjectInstance.qml) | 0 | ||||
-rw-r--r-- | imports/UmlQuick/Sequence/Return.qml (renamed from imports/Diagrams/UmlSequence/Return.qml) | 0 | ||||
-rw-r--r-- | imports/UmlQuick/Sequence/UmlSequenceDiagram.qml (renamed from imports/Diagrams/UmlSequence/UmlSequenceDiagram.qml) | 0 | ||||
-rw-r--r-- | imports/UmlQuick/Sequence/qmldir (renamed from imports/Diagrams/UmlSequence/qmldir) | 0 | ||||
-rw-r--r-- | imports/UmlQuick/UmlQuick.pro | 12 | ||||
-rw-r--r-- | imports/UmlQuick/common/images/hdash5.png (renamed from imports/Diagrams/common/images/hdash5.png) | bin | 99 -> 99 bytes | |||
-rw-r--r-- | imports/UmlQuick/common/images/vdash5.png (renamed from imports/Diagrams/common/images/vdash5.png) | bin | 103 -> 103 bytes | |||
-rw-r--r-- | imports/imports.pro | 2 | ||||
-rw-r--r-- | src/trace/qmlmessagetrace.cpp | 4 | ||||
-rw-r--r-- | umlquick.pro | 2 | ||||
-rwxr-xr-x | uq | 3 |
16 files changed, 24 insertions, 13 deletions
@@ -1,7 +1,7 @@ The initial goal of the UmlQuick project is to automatically generate -message trace diagrams via a declarative QML form by instrumenting the -code being traced. Perhaps other types of diagrams could be created in -QML too. It was inspired by the UMLGraph project +Sequence (message trace) diagrams via a declarative QML form by +instrumenting the code being traced. Perhaps other types of diagrams +could be created in QML too. It was inspired by the UMLGraph project http://www.umlgraph.org/doc/seq-intro.html but rewritten because I wanted to try to use QML instead of gnu pic macros. @@ -11,6 +11,4 @@ examples: how to generate the trace, and examples of complete traces. It should work with Qt 5.7 or newer (due to some limited usage of QtQuick.Controls 2). -uq is a script which simply runs qml with your given (possibly -generated) qml file containing the declarative UML diagram. It can -optionally be added to your path. +Simply run qmake and make install. Then try the examples. diff --git a/examples/traces/flickable.qml b/examples/traces/flickable.qml index 2079fbd..00eab8d 100644 --- a/examples/traces/flickable.qml +++ b/examples/traces/flickable.qml @@ -39,7 +39,7 @@ ** ****************************************************************************/ import QtQuick 2.0 -import Diagrams.UmlSequence 1.0 +import Qt.labs.UmlQuick.Sequence 1.0 UmlSequenceDiagram { ObjectInstance { id: objdDFafA; objectName: "objdDFafA"; objectClass: "QXcbConnection" } diff --git a/examples/traces/mpta.qml b/examples/traces/mpta.qml index a0932c0..1b4afba 100644 --- a/examples/traces/mpta.qml +++ b/examples/traces/mpta.qml @@ -39,7 +39,7 @@ ** ****************************************************************************/ import QtQuick 2.0 -import Diagrams.UmlSequence 1.0 +import Qt.labs.UmlQuick.Sequence 1.0 UmlSequenceDiagram { ObjectInstance { id: objBJdeDeA; objectName: "objBJdeDeA"; objectClass: "QXcbConnection" } diff --git a/imports/Diagrams/UmlSequence/Message.qml b/imports/UmlQuick/Sequence/Message.qml index 5b0ca94..5b0ca94 100644 --- a/imports/Diagrams/UmlSequence/Message.qml +++ b/imports/UmlQuick/Sequence/Message.qml diff --git a/imports/Diagrams/UmlSequence/MessageRepeated.qml b/imports/UmlQuick/Sequence/MessageRepeated.qml index 2b90ee3..2b90ee3 100644 --- a/imports/Diagrams/UmlSequence/MessageRepeated.qml +++ b/imports/UmlQuick/Sequence/MessageRepeated.qml diff --git a/imports/Diagrams/UmlSequence/ObjectInstance.qml b/imports/UmlQuick/Sequence/ObjectInstance.qml index a2b45f3..a2b45f3 100644 --- a/imports/Diagrams/UmlSequence/ObjectInstance.qml +++ b/imports/UmlQuick/Sequence/ObjectInstance.qml diff --git a/imports/Diagrams/UmlSequence/Return.qml b/imports/UmlQuick/Sequence/Return.qml index 91d98e4..91d98e4 100644 --- a/imports/Diagrams/UmlSequence/Return.qml +++ b/imports/UmlQuick/Sequence/Return.qml diff --git a/imports/Diagrams/UmlSequence/UmlSequenceDiagram.qml b/imports/UmlQuick/Sequence/UmlSequenceDiagram.qml index 42c89f2..42c89f2 100644 --- a/imports/Diagrams/UmlSequence/UmlSequenceDiagram.qml +++ b/imports/UmlQuick/Sequence/UmlSequenceDiagram.qml diff --git a/imports/Diagrams/UmlSequence/qmldir b/imports/UmlQuick/Sequence/qmldir index 72dd5a2..72dd5a2 100644 --- a/imports/Diagrams/UmlSequence/qmldir +++ b/imports/UmlQuick/Sequence/qmldir diff --git a/imports/UmlQuick/UmlQuick.pro b/imports/UmlQuick/UmlQuick.pro new file mode 100644 index 0000000..5c6ff7b --- /dev/null +++ b/imports/UmlQuick/UmlQuick.pro @@ -0,0 +1,12 @@ +TEMPLATE = aux +TARGETPATH = Qt/labs +IMPORT_VERSION = 1.0 + +sequence.files = Sequence/*.qml Sequence/qmldir +sequence.path = $$[QT_INSTALL_QML]/$$TARGETPATH/UmlQuick/Sequence/ + +images.files = common/images/* +images.path = $$[QT_INSTALL_QML]/$$TARGETPATH/UmlQuick/common/images/ + +OTHER_FILES += Sequence/*.qml +INSTALLS += images sequence diff --git a/imports/Diagrams/common/images/hdash5.png b/imports/UmlQuick/common/images/hdash5.png Binary files differindex ce30f89..ce30f89 100644 --- a/imports/Diagrams/common/images/hdash5.png +++ b/imports/UmlQuick/common/images/hdash5.png diff --git a/imports/Diagrams/common/images/vdash5.png b/imports/UmlQuick/common/images/vdash5.png Binary files differindex 0cd48a2..0cd48a2 100644 --- a/imports/Diagrams/common/images/vdash5.png +++ b/imports/UmlQuick/common/images/vdash5.png diff --git a/imports/imports.pro b/imports/imports.pro new file mode 100644 index 0000000..6ef674c --- /dev/null +++ b/imports/imports.pro @@ -0,0 +1,2 @@ +TEMPLATE = subdirs +SUBDIRS = UmlQuick diff --git a/src/trace/qmlmessagetrace.cpp b/src/trace/qmlmessagetrace.cpp index 477ca48..771f839 100644 --- a/src/trace/qmlmessagetrace.cpp +++ b/src/trace/qmlmessagetrace.cpp @@ -64,7 +64,7 @@ Trace diagram. When the trace is completed, simply run the qml output file with the qml - runtime tool. It will import components from Diagrams.UmlSequence, which + runtime tool. It will import components from Qt.labs.UmlQuick.Sequence, which should be installed already if you have built this module properly. For example, to trace hover events in a QML application, create a file @@ -491,7 +491,7 @@ void QmlMessageTrace::writeQml() MT_DEBUG("-> %s\n", qPrintable(filePath)); QFile f(filePath); if (f.open(QFile::WriteOnly)) { - f.write("import QtQuick 2.0\nimport Diagrams.UmlSequence 1.0\n\nUmlSequenceDiagram {\n"); + f.write("import QtQuick 2.0\nimport Qt.labs.UmlQuick.Sequence 1.0\n\nUmlSequenceDiagram {\n"); QSet<void *> objectsWritten; QSet<QString> ufosWritten; for (Message &m : m_messages) { diff --git a/umlquick.pro b/umlquick.pro new file mode 100644 index 0000000..856d402 --- /dev/null +++ b/umlquick.pro @@ -0,0 +1,2 @@ +TEMPLATE = subdirs +SUBDIRS += src imports @@ -1,3 +0,0 @@ -#!/bin/sh -dir=`dirname $0` -qml -I ${dir}/imports $1 |