diff --git a/src/libs/3rdparty/modeling/qmt/config/configcontroller.cpp b/src/libs/3rdparty/modeling/qmt/config/configcontroller.cpp index d315f95b565..988c95b2dbf 100644 --- a/src/libs/3rdparty/modeling/qmt/config/configcontroller.cpp +++ b/src/libs/3rdparty/modeling/qmt/config/configcontroller.cpp @@ -42,7 +42,6 @@ #include - namespace qmt { class ConfigController::ConfigControllerPrivate diff --git a/src/libs/3rdparty/modeling/qmt/config/configcontroller.h b/src/libs/3rdparty/modeling/qmt/config/configcontroller.h index e012c7a3537..57e059cf37e 100644 --- a/src/libs/3rdparty/modeling/qmt/config/configcontroller.h +++ b/src/libs/3rdparty/modeling/qmt/config/configcontroller.h @@ -40,35 +40,24 @@ class StereotypeController; class StereotypeIcon; class Toolbar; - class QMT_EXPORT ConfigController : public QObject { Q_OBJECT - class ConfigControllerPrivate; public: - explicit ConfigController(QObject *parent = 0); - ~ConfigController(); -public: - void setStereotypeController(StereotypeController *stereotypeController); -public: - void readStereotypeDefinitions(const QString &path); private slots: - void onStereotypeIconParsed(const StereotypeIcon &stereotypeIcon); - void onToolbarParsed(const Toolbar &toolbar); private: - ConfigControllerPrivate *d; }; diff --git a/src/libs/3rdparty/modeling/qmt/config/sourcepos.h b/src/libs/3rdparty/modeling/qmt/config/sourcepos.h index 34f9cf37c1b..412877e6023 100644 --- a/src/libs/3rdparty/modeling/qmt/config/sourcepos.h +++ b/src/libs/3rdparty/modeling/qmt/config/sourcepos.h @@ -38,21 +38,13 @@ namespace qmt { class QMT_EXPORT SourcePos { public: - SourcePos(); - SourcePos(int sourceId, int lineNumber, int columnNumber = -1); -public: - bool isValid() const { return m_sourceId >= 0 && m_lineNumber >= 0; } - int sourceId() const { return m_sourceId; } - int lineNumber() const { return m_lineNumber; } - bool hasColumnNumber() const { return m_columnNumber >= 0; } - int columnNumber() const { return m_columnNumber; } private: diff --git a/src/libs/3rdparty/modeling/qmt/config/stereotypedefinitionparser.cpp b/src/libs/3rdparty/modeling/qmt/config/stereotypedefinitionparser.cpp index a7d52c12c19..d3204207d9a 100644 --- a/src/libs/3rdparty/modeling/qmt/config/stereotypedefinitionparser.cpp +++ b/src/libs/3rdparty/modeling/qmt/config/stereotypedefinitionparser.cpp @@ -87,26 +87,22 @@ static const int OPERATOR_COMMA = 3; static const int OPERATOR_PERIOD = 4; static const int OPERATOR_MINUS = 5; - template QHash operator<<(QHash hash, QPair pair) { hash.insert(pair.first, pair.second); return hash; } - StereotypeDefinitionParserError::StereotypeDefinitionParserError(const QString &errorMsg, const SourcePos &sourcePos) : Exception(errorMsg), m_sourcePos(sourcePos) { - } StereotypeDefinitionParserError::~StereotypeDefinitionParserError() { } - class StereotypeDefinitionParser::StereotypeDefinitionParserPrivate { public: @@ -119,7 +115,6 @@ public: }; - class StereotypeDefinitionParser::IconCommandParameter { public: @@ -133,7 +128,6 @@ public: ShapeValueF::Origin m_origin; }; - StereotypeDefinitionParser::StereotypeDefinitionParser(QObject *parent) : QObject(parent), d(new StereotypeDefinitionParserPrivate) @@ -204,43 +198,38 @@ void StereotypeDefinitionParser::parseFile() { for (;;) { Token token = readNextToken(); - if (token.type() == Token::TokenEndOfInput) { + if (token.type() == Token::TokenEndOfInput) break; - } else if (token.type() != Token::TokenKeyword || token.subtype() == KEYWORD_ICON) { + else if (token.type() != Token::TokenKeyword || token.subtype() == KEYWORD_ICON) parseIcon(); - } else if (token.type() != Token::TokenKeyword || token.subtype() == KEYWORD_TOOLBAR) { + else if (token.type() != Token::TokenKeyword || token.subtype() == KEYWORD_TOOLBAR) parseToolbar(); - } else { + else throw StereotypeDefinitionParserError(QStringLiteral("Expected 'icon' or 'toolbar'."), token.sourcePos()); - } token = d->m_scanner->read(); - if (token.type() == Token::TokenOperator && token.subtype() == OPERATOR_PERIOD) { + if (token.type() == Token::TokenOperator && token.subtype() == OPERATOR_PERIOD) break; - } else if (token.type() != Token::TokenOperator || token.subtype() != OPERATOR_SEMICOLON) { + else if (token.type() != Token::TokenOperator || token.subtype() != OPERATOR_SEMICOLON) d->m_scanner->unread(token); - } } } void StereotypeDefinitionParser::parseIcon() { Token token = d->m_scanner->read(); - if (token.type() != Token::TokenIdentifier && token.type() != Token::TokenKeyword) { + if (token.type() != Token::TokenIdentifier && token.type() != Token::TokenKeyword) throw StereotypeDefinitionParserError(QStringLiteral("Expected identifier."), token.sourcePos()); - } QString id = token.text(); StereotypeIcon stereotypeIcon; stereotypeIcon.setId(id); parseIconProperties(&stereotypeIcon); token = readNextToken(); - if (token.type() != Token::TokenKeyword || token.subtype() != KEYWORD_BEGIN) { + if (token.type() != Token::TokenKeyword || token.subtype() != KEYWORD_BEGIN) throw StereotypeDefinitionParserError(QStringLiteral("Expected token 'begin'."), token.sourcePos()); - } parseIconCommands(&stereotypeIcon); token = readNextToken(); - if (token.type() != Token::TokenKeyword || token.subtype() != KEYWORD_END) { + if (token.type() != Token::TokenKeyword || token.subtype() != KEYWORD_END) throw StereotypeDefinitionParserError(QStringLiteral("Expected token 'end'."), token.sourcePos()); - } emit iconParsed(stereotypeIcon); } @@ -271,9 +260,8 @@ void StereotypeDefinitionParser::parseIconProperties(StereotypeIcon *stereotypeI << qMakePair(QString(QStringLiteral("diagram")), StereotypeIcon::ElementDiagram) << qMakePair(QString(QStringLiteral("item")), StereotypeIcon::ElementItem); QString elementName = identifier.toLower(); - if (!elementNames.contains(elementName)) { + if (!elementNames.contains(elementName)) throw StereotypeDefinitionParserError(QString(QStringLiteral("Unexpected value \"%1\" for element.")).arg(identifier), token.sourcePos()); - } elements.insert(elementNames.value(elementName)); } expectSemicolonOrEndOfLine(); @@ -369,22 +357,19 @@ void StereotypeDefinitionParser::parseIconProperties(StereotypeIcon *stereotypeI void StereotypeDefinitionParser::parseToolbar() { Token token = d->m_scanner->read(); - if (token.type() != Token::TokenIdentifier && token.type() != Token::TokenKeyword) { + if (token.type() != Token::TokenIdentifier && token.type() != Token::TokenKeyword) throw StereotypeDefinitionParserError(QStringLiteral("Expected identifier."), token.sourcePos()); - } QString id = token.text(); Toolbar toolbar; toolbar.setId(id); parseToolbarProperties(&toolbar); token = readNextToken(); - if (token.type() != Token::TokenKeyword || token.subtype() != KEYWORD_BEGIN) { + if (token.type() != Token::TokenKeyword || token.subtype() != KEYWORD_BEGIN) throw StereotypeDefinitionParserError(QStringLiteral("Expected token 'begin'."), token.sourcePos()); - } parseToolbarCommands(&toolbar); token = readNextToken(); - if (token.type() != Token::TokenKeyword || token.subtype() != KEYWORD_END) { + if (token.type() != Token::TokenKeyword || token.subtype() != KEYWORD_END) throw StereotypeDefinitionParserError(QStringLiteral("Expected token 'end'."), token.sourcePos()); - } emit toolbarParsed(toolbar); } @@ -564,22 +549,20 @@ QList StereotypeDefinitionParser::parseIconCommandParameters(const QList values; Token token; for (;;) { - if (values.count() <= parameters.count()) { + if (values.count() <= parameters.count()) values << ShapeValueF(parseFloatExpression(), parameters.at(values.count()).m_unit, parameters.at(values.count()).m_origin); - } else { + else values << ShapeValueF(parseFloatExpression()); - } token = d->m_scanner->read(); if (token.type() != Token::TokenOperator || token.subtype() != OPERATOR_COMMA) { d->m_scanner->unread(token); break; } } - if (values.count() < parameters.count()) { + if (values.count() < parameters.count()) throw StereotypeDefinitionParserError(QStringLiteral("More parameters expected."), token.sourcePos()); - } else if (values.count() > parameters.count()) { + else if (values.count() > parameters.count()) throw StereotypeDefinitionParserError(QStringLiteral("Too many parameters given."), token.sourcePos()); - } return values; } @@ -607,13 +590,11 @@ void StereotypeDefinitionParser::parseToolbarCommands(Toolbar *toolbar) << QStringLiteral("annotation") << QStringLiteral("boundary"); QString elementName = element.toLower(); - if (!elementNames.contains(elementName)) { + if (!elementNames.contains(elementName)) throw StereotypeDefinitionParserError(QString(QStringLiteral("Unexpected value \"%1\" for element.")).arg(element), token.sourcePos()); - } QString stereotype; - if (nextIsComma()) { + if (nextIsComma()) stereotype = parseStringExpression(); - } tools.append(Toolbar::Tool(toolName, element, stereotype)); expectSemicolonOrEndOfLine(); break; @@ -635,9 +616,8 @@ void StereotypeDefinitionParser::parseToolbarCommands(Toolbar *toolbar) QString StereotypeDefinitionParser::parseStringExpression() { Token token = d->m_scanner->read(); - if (token.type() != Token::TokenString) { + if (token.type() != Token::TokenString) throw StereotypeDefinitionParserError(QStringLiteral("Expected string constant."), token.sourcePos()); - } return token.text(); } @@ -684,9 +664,8 @@ int StereotypeDefinitionParser::parseIntExpression() QString StereotypeDefinitionParser::parseIdentifierExpression() { Token token = d->m_scanner->read(); - if (token.type() != Token::TokenIdentifier && token.type() != Token::TokenKeyword) { + if (token.type() != Token::TokenIdentifier && token.type() != Token::TokenKeyword) throw StereotypeDefinitionParserError(QStringLiteral("Expected identifier."), token.sourcePos()); - } return token.text(); } @@ -695,11 +674,10 @@ bool StereotypeDefinitionParser::parseBoolExpression() Token token = d->m_scanner->read(); if (token.type() == Token::TokenIdentifier) { QString value = token.text().toLower(); - if (value == QStringLiteral("yes") || value == QStringLiteral("true")) { + if (value == QStringLiteral("yes") || value == QStringLiteral("true")) return true; - } else if (value == QStringLiteral("no") || value == QStringLiteral("false")) { + else if (value == QStringLiteral("no") || value == QStringLiteral("false")) return false; - } } throw StereotypeDefinitionParserError(QStringLiteral("Expected 'yes', 'no', 'true' or 'false'."), token.sourcePos()); } @@ -723,26 +701,23 @@ Token StereotypeDefinitionParser::readNextToken() Token token; for (;;) { token = d->m_scanner->read(); - if (token.type() != Token::TokenEndOfLine) { + if (token.type() != Token::TokenEndOfLine) return token; - } } } qreal StereotypeDefinitionParser::expectAbsoluteValue(const ShapeValueF &value, const SourcePos &sourcePos) { - if (value.unit() != ShapeValueF::UnitAbsolute || value.origin() != ShapeValueF::OriginSmart) { + if (value.unit() != ShapeValueF::UnitAbsolute || value.origin() != ShapeValueF::OriginSmart) throw StereotypeDefinitionParserError(QStringLiteral("Expected absolute value"), sourcePos); - } return value.value(); } void StereotypeDefinitionParser::expectSemicolonOrEndOfLine() { Token token = d->m_scanner->read(); - if (token.type() != Token::TokenEndOfLine && (token.type() != Token::TokenOperator || token.subtype() != OPERATOR_SEMICOLON)) { + if (token.type() != Token::TokenEndOfLine && (token.type() != Token::TokenOperator || token.subtype() != OPERATOR_SEMICOLON)) throw StereotypeDefinitionParserError(QStringLiteral("Expected ';' or end-of-line."), token.sourcePos()); - } } bool StereotypeDefinitionParser::nextIsComma() @@ -758,9 +733,8 @@ bool StereotypeDefinitionParser::nextIsComma() void StereotypeDefinitionParser::expectOperator(int op, const QString &opName) { Token token = d->m_scanner->read(); - if (token.type() != Token::TokenOperator || token.subtype() != op) { + if (token.type() != Token::TokenOperator || token.subtype() != op) throw StereotypeDefinitionParserError(QString(QStringLiteral("Expected '%1'.")).arg(opName), token.sourcePos()); - } } void StereotypeDefinitionParser::expectComma() @@ -773,4 +747,4 @@ void StereotypeDefinitionParser::expectColon() expectOperator(OPERATOR_COLON, QStringLiteral(":")); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/config/stereotypedefinitionparser.h b/src/libs/3rdparty/modeling/qmt/config/stereotypedefinitionparser.h index 5f78b447bc9..57cf3fd79b3 100644 --- a/src/libs/3rdparty/modeling/qmt/config/stereotypedefinitionparser.h +++ b/src/libs/3rdparty/modeling/qmt/config/stereotypedefinitionparser.h @@ -36,7 +36,6 @@ #include "sourcepos.h" - namespace qmt { class ITextSource; @@ -45,111 +44,74 @@ class StereotypeIcon; class Toolbar; class ShapeValueF; -class QMT_EXPORT StereotypeDefinitionParserError : - public Exception +class QMT_EXPORT StereotypeDefinitionParserError : public Exception { public: - StereotypeDefinitionParserError(const QString &errorMsg, const SourcePos &sourcePos); - ~StereotypeDefinitionParserError(); -public: - SourcePos sourcePos() const { return m_sourcePos; } private: SourcePos m_sourcePos; }; - class QMT_EXPORT StereotypeDefinitionParser : public QObject { Q_OBJECT - class StereotypeDefinitionParserPrivate; - class IconCommandParameter; public: - explicit StereotypeDefinitionParser(QObject *parent = 0); - ~StereotypeDefinitionParser(); signals: - void iconParsed(const StereotypeIcon &stereotypeIcon); - void toolbarParsed(const Toolbar &toolbar); public: - void parse(ITextSource *source); private: - void parseFile(); - void parseIcon(); - void parseIconProperties(StereotypeIcon *stereotypeIcon); - void parseToolbar(); - void parseToolbarProperties(Toolbar *toolbar); QString parseStringProperty(); - int parseIntProperty(); - qreal parseFloatProperty(); - QString parseIdentifierProperty(); - QList parseIdentifierListProperty(); - bool parseBoolProperty(); - QColor parseColorProperty(); void parseIconCommands(StereotypeIcon *stereotypeIcon); - QList parseIconCommandParameters(const QList ¶meters); void parseToolbarCommands(Toolbar *toolbar); QString parseStringExpression(); - qreal parseFloatExpression(); - int parseIntExpression(); - QString parseIdentifierExpression(); - bool parseBoolExpression(); - QColor parseColorExpression(); Token readNextToken(); qreal expectAbsoluteValue(const ShapeValueF &value, const SourcePos &sourcePos); - void expectSemicolonOrEndOfLine(); - bool nextIsComma(); - void expectOperator(int op, const QString &opName); - void expectComma(); - void expectColon(); -private: - StereotypeDefinitionParserPrivate *d; }; -} +} // namespace qmt #endif // QMT_STEREOTYPEDEFINITIONPARSER_H diff --git a/src/libs/3rdparty/modeling/qmt/config/stringtextsource.cpp b/src/libs/3rdparty/modeling/qmt/config/stringtextsource.cpp index db4a45cb7cb..e152e26959e 100644 --- a/src/libs/3rdparty/modeling/qmt/config/stringtextsource.cpp +++ b/src/libs/3rdparty/modeling/qmt/config/stringtextsource.cpp @@ -67,9 +67,8 @@ SourceChar StringTextSource::readNextChar() QMT_CHECK(m_lineNumber >= 0); QMT_CHECK(m_columnNumber >= 0); - if (m_index >= m_text.length()) { + if (m_index >= m_text.length()) return SourceChar(QChar(), SourcePos(m_sourceId, m_lineNumber, m_columnNumber)); - } SourcePos pos(m_sourceId, m_lineNumber, m_columnNumber); QChar ch(m_text.at(m_index)); diff --git a/src/libs/3rdparty/modeling/qmt/config/stringtextsource.h b/src/libs/3rdparty/modeling/qmt/config/stringtextsource.h index aa118e84588..2416d53f4c5 100644 --- a/src/libs/3rdparty/modeling/qmt/config/stringtextsource.h +++ b/src/libs/3rdparty/modeling/qmt/config/stringtextsource.h @@ -37,37 +37,25 @@ namespace qmt { -class QMT_EXPORT StringTextSource : - public ITextSource +class QMT_EXPORT StringTextSource : public ITextSource { public: - StringTextSource(); ~StringTextSource(); public: - void setText(const QString &text); - int sourceId() const { return m_sourceId; } - void setSourceId(int sourceId); // ITextSource interface -public: - SourceChar readNextChar(); private: - QString m_text; - int m_sourceId; - int m_index; - int m_lineNumber; - int m_columnNumber; }; diff --git a/src/libs/3rdparty/modeling/qmt/config/textscanner.cpp b/src/libs/3rdparty/modeling/qmt/config/textscanner.cpp index 78308d9c5c1..78942374223 100644 --- a/src/libs/3rdparty/modeling/qmt/config/textscanner.cpp +++ b/src/libs/3rdparty/modeling/qmt/config/textscanner.cpp @@ -88,9 +88,8 @@ TextScanner::~TextScanner() void TextScanner::setKeywords(const QList > &keywords) { d->m_keywordToSubtypeMap.clear(); - foreach (const DefTuple &tuple, keywords) { + foreach (const DefTuple &tuple, keywords) d->m_keywordToSubtypeMap.insert(tuple.first.toLower(), tuple.second); - } } void TextScanner::setOperators(const QList > &operators) @@ -102,13 +101,11 @@ void TextScanner::setOperators(const QList > &operators) foreach (const DefTuple &tuple, operators) { QString op = tuple.first; d->m_operatorToSubtypeMap.insert(op, tuple.second); - if (op.length() > d->m_maxOperatorLength) { + if (op.length() > d->m_maxOperatorLength) d->m_maxOperatorLength = op.length(); - } d->m_operatorFirstCharsSet.insert(op.at(0)); - foreach (const QChar ch, op) { + foreach (const QChar ch, op) d->m_operatorCharsSet.insert(ch); - } } } @@ -124,28 +121,26 @@ SourcePos TextScanner::sourcePos() const Token TextScanner::read() { - if (!d->m_unreadTokens.isEmpty()) { + if (!d->m_unreadTokens.isEmpty()) return d->m_unreadTokens.pop(); - } skipWhitespaces(); SourceChar sourceChar = readChar(); - if (sourceChar.ch == QLatin1Char('\'') || sourceChar.ch == QLatin1Char('\"')) { + if (sourceChar.ch == QLatin1Char('\'') || sourceChar.ch == QLatin1Char('\"')) return scanString(sourceChar); - } else if (sourceChar.ch.isDigit()) { + else if (sourceChar.ch.isDigit()) return scanNumber(sourceChar); - } else if (sourceChar.ch.isLetter() || sourceChar.ch == QLatin1Char('_')) { + else if (sourceChar.ch.isLetter() || sourceChar.ch == QLatin1Char('_')) return scanIdentifier(sourceChar); - } else if (sourceChar.ch == QLatin1Char('#')) { + else if (sourceChar.ch == QLatin1Char('#')) return scanColorIdentifier(sourceChar); - } else if (sourceChar.ch == QChar::LineFeed || sourceChar.ch == QChar::CarriageReturn) { + else if (sourceChar.ch == QChar::LineFeed || sourceChar.ch == QChar::CarriageReturn) return Token(Token::TokenEndOfLine, QString(), sourceChar.pos); - } else if (sourceChar.ch.isNull()) { + else if (sourceChar.ch.isNull()) return Token(Token::TokenEndOfInput, QString(), sourceChar.pos); - } else if (d->m_operatorFirstCharsSet.contains(sourceChar.ch)) { + else if (d->m_operatorFirstCharsSet.contains(sourceChar.ch)) return scanOperator(sourceChar); - } else { + else throw TextScannerError(QStringLiteral("Unexpected character."), sourceChar.pos); - } } void TextScanner::unread(const Token &token) @@ -156,11 +151,10 @@ void TextScanner::unread(const Token &token) SourceChar TextScanner::readChar() { SourceChar ch; - if (!d->m_unreadSourceChars.isEmpty()) { + if (!d->m_unreadSourceChars.isEmpty()) ch = d->m_unreadSourceChars.pop(); - } else { + else ch = d->m_source->readNextChar(); - } d->m_lastSourcePos = ch.pos; return ch; } @@ -179,9 +173,8 @@ void TextScanner::skipWhitespaces() if (secondSourceChar.ch == QLatin1Char('/')) { for (;;) { SourceChar commentChar = readChar(); - if (commentChar.ch.isNull() || commentChar.ch == QChar::LineFeed || commentChar.ch == QChar::CarriageReturn) { + if (commentChar.ch.isNull() || commentChar.ch == QChar::LineFeed || commentChar.ch == QChar::CarriageReturn) break; - } } } else { unreadChar(secondSourceChar); @@ -203,19 +196,18 @@ Token TextScanner::scanString(const SourceChar &delimiterChar) return Token(Token::TokenString, text, delimiterChar.pos); } else if (sourceChar.ch == QLatin1Char('\\')) { sourceChar = readChar(); - if (sourceChar.ch == QLatin1Char('n')) { + if (sourceChar.ch == QLatin1Char('n')) text += QLatin1Char('\n'); - } else if (sourceChar.ch == QLatin1Char('\\')) { + else if (sourceChar.ch == QLatin1Char('\\')) text += QLatin1Char('\\'); - } else if (sourceChar.ch == QLatin1Char('t')) { + else if (sourceChar.ch == QLatin1Char('t')) text += QLatin1Char('\t'); - } else if (sourceChar.ch == QLatin1Char('\"')) { + else if (sourceChar.ch == QLatin1Char('\"')) text += QLatin1Char('\"'); - } else if (sourceChar.ch == QLatin1Char('\'')) { + else if (sourceChar.ch == QLatin1Char('\'')) text += QLatin1Char('\''); - } else { + else throw TextScannerError(QStringLiteral("Unexpected character after '\\' in string constant."), sourceChar.pos); - } } else if (sourceChar.ch == QChar::LineFeed || sourceChar.ch == QChar::CarriageReturn) { throw TextScannerError(QStringLiteral("Unexpected end of line in string constant."), sourceChar.pos); } else { @@ -230,18 +222,16 @@ Token TextScanner::scanNumber(const SourceChar &firstDigit) SourceChar sourceChar; for (;;) { sourceChar = readChar(); - if (!sourceChar.ch.isDigit()) { + if (!sourceChar.ch.isDigit()) break; - } text += sourceChar.ch; } if (sourceChar.ch == QLatin1Char('.')) { text += sourceChar.ch; for (;;) { sourceChar = readChar(); - if (!sourceChar.ch.isDigit()) { + if (!sourceChar.ch.isDigit()) break; - } text += sourceChar.ch; } unreadChar(sourceChar); @@ -261,9 +251,8 @@ Token TextScanner::scanIdentifier(const SourceChar &firstChar) if (!sourceChar.ch.isLetterOrNumber() && sourceChar.ch != QLatin1Char('_')) { unreadChar(sourceChar); QString keyword = text.toLower(); - if (d->m_keywordToSubtypeMap.contains(keyword)) { + if (d->m_keywordToSubtypeMap.contains(keyword)) return Token(Token::TokenKeyword, d->m_keywordToSubtypeMap.value(keyword), text, firstChar.pos); - } return Token(Token::TokenIdentifier, text, firstChar.pos); } text += sourceChar.ch; diff --git a/src/libs/3rdparty/modeling/qmt/config/textscanner.h b/src/libs/3rdparty/modeling/qmt/config/textscanner.h index 6db9f5884d5..0768df4275d 100644 --- a/src/libs/3rdparty/modeling/qmt/config/textscanner.h +++ b/src/libs/3rdparty/modeling/qmt/config/textscanner.h @@ -43,75 +43,47 @@ class ITextSource; class SourceChar; class Token; -class QMT_EXPORT TextScannerError : - public Exception +class QMT_EXPORT TextScannerError : public Exception { public: - TextScannerError(const QString &errorMsg, const SourcePos &sourcePos); - ~TextScannerError(); -public: - SourcePos sourcePos() const { return m_sourcePos; } private: SourcePos m_sourcePos; }; - class QMT_EXPORT TextScanner : public QObject { Q_OBJECT - class TextScannerPrivate; public: explicit TextScanner(QObject *parent = 0); - ~TextScanner(); -signals: - -public: - void setKeywords(const QList > &keywords); - void setOperators(const QList > &operators); - void setSource(ITextSource *textSource); - SourcePos sourcePos() const; -public: - Token read(); - void unread(const Token &token); private: - SourceChar readChar(); - void unreadChar(const SourceChar &sourceChar); - void skipWhitespaces(); Token scanString(const SourceChar &delimiterChar); - Token scanNumber(const SourceChar &firstDigit); - Token scanIdentifier(const SourceChar &firstChar); - Token scanColorIdentifier(const SourceChar &firstChar); - Token scanOperator(const SourceChar &firstChar); -private: - TextScannerPrivate *d; - }; } // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/config/textsource.h b/src/libs/3rdparty/modeling/qmt/config/textsource.h index 122895c0234..56c3c9903e9 100644 --- a/src/libs/3rdparty/modeling/qmt/config/textsource.h +++ b/src/libs/3rdparty/modeling/qmt/config/textsource.h @@ -35,7 +35,6 @@ #include - namespace qmt { class SourceChar @@ -55,13 +54,11 @@ public: class ITextSource { public: - virtual ~ITextSource() { } virtual SourceChar readNextChar() = 0; - }; -} +} // namespace qmt #endif // QMT_TEXTSOURCE_H diff --git a/src/libs/3rdparty/modeling/qmt/config/token.h b/src/libs/3rdparty/modeling/qmt/config/token.h index a54ce7bb0ef..47d779d4597 100644 --- a/src/libs/3rdparty/modeling/qmt/config/token.h +++ b/src/libs/3rdparty/modeling/qmt/config/token.h @@ -40,7 +40,6 @@ namespace qmt { class Token { public: - enum Type { TokenUndefined, TokenEndOfInput, @@ -54,28 +53,18 @@ public: TokenColor }; -public: Token(); Token(Type type, const QString &text, const SourcePos &sourcePos); Token(Type type, int subtype, const QString &text, const SourcePos &sourcePos); ~Token(); -public: - Type type() const { return m_type; } - void setType(Type type); - int subtype() const { return m_subtype; } - void setSubtype(int subtype); - QString text() const { return m_text; } - void setText(const QString &text); - SourcePos sourcePos() const { return m_sourcePos; } - void setSourcePos(const SourcePos &sourcePos); private: diff --git a/src/libs/3rdparty/modeling/qmt/controller/container.h b/src/libs/3rdparty/modeling/qmt/controller/container.h index d3f7852e44d..fba12502e9d 100644 --- a/src/libs/3rdparty/modeling/qmt/controller/container.h +++ b/src/libs/3rdparty/modeling/qmt/controller/container.h @@ -39,9 +39,7 @@ template class Container { protected: - Container() { } - Container(const Container &rhs) : m_elements(rhs.m_elements) { @@ -49,14 +47,11 @@ protected: } public: - ~Container() { qDeleteAll(m_elements); } -public: - Container &operator=(const Container &rhs) { if (this != &rhs) { @@ -67,12 +62,8 @@ public: return *this; } -public: - bool isEmpty() const { return m_elements.empty(); } - int size() const { return m_elements.size(); } - QList elements() const { return m_elements; } QList takeElements() const @@ -100,10 +91,9 @@ public: } private: - mutable QList m_elements; }; -} +} // namespace qmt #endif // QMT_CONTAINER_H diff --git a/src/libs/3rdparty/modeling/qmt/controller/namecontroller.cpp b/src/libs/3rdparty/modeling/qmt/controller/namecontroller.cpp index a6a659716a3..fb99bca57f7 100644 --- a/src/libs/3rdparty/modeling/qmt/controller/namecontroller.cpp +++ b/src/libs/3rdparty/modeling/qmt/controller/namecontroller.cpp @@ -42,7 +42,6 @@ NameController::NameController(QObject *parent) NameController::~NameController() { - } QString NameController::convertFileNameToElementName(const QString &fileName) @@ -116,11 +115,10 @@ QString NameController::calcRelativePath(const QString &absoluteFileName, const } else if (i >= absoluteFileName.size()) { // absoluteFileName is a substring of anchor path. if (slashIndex == i - 1) { - if (secondLastSlashIndex < 0) { + if (secondLastSlashIndex < 0) relativePath = absoluteFileName; - } else { + else relativePath = absoluteFileName.mid(secondLastSlashIndex + 1); - } } else { relativePath = absoluteFileName.mid(slashIndex + 1); } @@ -135,9 +133,8 @@ QString NameController::calcElementNameSearchId(const QString &elementName) { QString searchId; foreach (const QChar &c, elementName) { - if (c.isLetterOrNumber()) { + if (c.isLetterOrNumber()) searchId += c.toLower(); - } } return searchId; } @@ -148,9 +145,8 @@ QList NameController::buildElementsPath(const QString &filePath, bool i QStringList splitted = filePath.split(QStringLiteral("/")); QStringList::const_iterator splittedEnd = splitted.end(); - if (ignoreLastFilePathPart || splitted.last().isEmpty()) { + if (ignoreLastFilePathPart || splitted.last().isEmpty()) splittedEnd = --splittedEnd; - } for (QStringList::const_iterator it = splitted.cbegin(); it != splittedEnd; ++it) { QString packageName = qmt::NameController::convertFileNameToElementName(*it); relativeElements.append(packageName); @@ -158,5 +154,4 @@ QList NameController::buildElementsPath(const QString &filePath, bool i return relativeElements; } - -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/controller/namecontroller.h b/src/libs/3rdparty/modeling/qmt/controller/namecontroller.h index 73fd66633e5..ea0a853f08c 100644 --- a/src/libs/3rdparty/modeling/qmt/controller/namecontroller.h +++ b/src/libs/3rdparty/modeling/qmt/controller/namecontroller.h @@ -39,32 +39,22 @@ namespace qmt { -class QMT_EXPORT NameController : - public QObject +class QMT_EXPORT NameController : public QObject { Q_OBJECT private: NameController(QObject *parent = 0); - ~NameController(); public: - static QString convertFileNameToElementName(const QString &fileName); - static QString convertElementNameToBaseFileName(const QString &elementName); - static QString calcRelativePath(const QString &absoluteFileName, const QString &anchorPath); - static QString calcElementNameSearchId(const QString &elementName); - static QList buildElementsPath(const QString &filePath, bool ignoreLastFilePathPart); - -private: - }; -} +} // namespace qmt #endif // QMT_NAMECONTROLLER_H diff --git a/src/libs/3rdparty/modeling/qmt/controller/references.h b/src/libs/3rdparty/modeling/qmt/controller/references.h index f3de6bc5641..cf18e4933b5 100644 --- a/src/libs/3rdparty/modeling/qmt/controller/references.h +++ b/src/libs/3rdparty/modeling/qmt/controller/references.h @@ -42,28 +42,19 @@ protected: References() { } public: - ~References() { } -public: - bool isEmpty() const { return m_elements.empty(); } - int size() const { return m_elements.size(); } - QList elements() const { return m_elements; } - void setElements(const QList &elements) { m_elements = elements; } - void clear() { m_elements.clear(); } - void append(T *element) { m_elements.append(element); } private: - QList m_elements; }; -} +} // namespace qmt #endif // QMT_REFERENCES_H diff --git a/src/libs/3rdparty/modeling/qmt/controller/selection.cpp b/src/libs/3rdparty/modeling/qmt/controller/selection.cpp index c4768894d45..bb01d333048 100644 --- a/src/libs/3rdparty/modeling/qmt/controller/selection.cpp +++ b/src/libs/3rdparty/modeling/qmt/controller/selection.cpp @@ -60,4 +60,4 @@ void Selection::append(const Uid &elementKey, const Uid &ownerKey) append(Index(elementKey, ownerKey)); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/controller/selection.h b/src/libs/3rdparty/modeling/qmt/controller/selection.h index a4c518ea1a2..dc85ef79538 100644 --- a/src/libs/3rdparty/modeling/qmt/controller/selection.h +++ b/src/libs/3rdparty/modeling/qmt/controller/selection.h @@ -35,15 +35,14 @@ #include - namespace qmt { class QMT_EXPORT Selection { public: - class Index { + class Index + { public: - Index(const Uid &elementKey, const Uid &ownerKey) : m_elementKey(elementKey), m_ownerKey(ownerKey) @@ -51,46 +50,31 @@ public: } Uid elementKey() const { return m_elementKey; } - Uid ownerKey() const { return m_ownerKey; } private: - Uid m_elementKey; - Uid m_ownerKey; }; protected: - Selection(); public: - ~Selection(); -public: - bool isEmpty() const { return m_indices.isEmpty(); } - QList indices() const { return m_indices; } - void setIndices(const QList &indices); -public: - void clear(); - void append(const Index &index); - void append(const Uid &elementKey, const Uid &ownerKey); private: - QList m_indices; }; -} - +} // namespace qmt #endif // QMT_SELECTION_H diff --git a/src/libs/3rdparty/modeling/qmt/controller/undocommand.cpp b/src/libs/3rdparty/modeling/qmt/controller/undocommand.cpp index 007b35f84b6..03bc6e545db 100644 --- a/src/libs/3rdparty/modeling/qmt/controller/undocommand.cpp +++ b/src/libs/3rdparty/modeling/qmt/controller/undocommand.cpp @@ -58,12 +58,10 @@ void UndoCommand::setDoNotMerge(bool doNotMerge) bool UndoCommand::mergeWith(const QUndoCommand *other) { const UndoCommand *otherCommand = dynamic_cast(other); - if (!otherCommand) { + if (!otherCommand) return false; - } - if (otherCommand->m_doNotMerge) { + if (otherCommand->m_doNotMerge) return false; - } return mergeWith(otherCommand); } @@ -86,4 +84,4 @@ void UndoCommand::redo() m_canRedo = false; } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/controller/undocommand.h b/src/libs/3rdparty/modeling/qmt/controller/undocommand.h index c30285baf74..a3037f50de7 100644 --- a/src/libs/3rdparty/modeling/qmt/controller/undocommand.h +++ b/src/libs/3rdparty/modeling/qmt/controller/undocommand.h @@ -34,42 +34,29 @@ #include #include "qmt/infrastructure/qmt_global.h" - namespace qmt { -class QMT_EXPORT UndoCommand : - public QUndoCommand +class QMT_EXPORT UndoCommand : public QUndoCommand { public: explicit UndoCommand(const QString &text); - ~UndoCommand(); -public: - bool canRedo() const { return m_canRedo; } - int id() const; - void setDoNotMerge(bool doNotMerge); -public: - bool mergeWith(const QUndoCommand *other); - virtual bool mergeWith(const UndoCommand *other); void undo(); - void redo(); private: - bool m_canRedo; - bool m_doNotMerge; }; -} +} // namespace qmt #endif // QMT_UNDOCOMMAND_H diff --git a/src/libs/3rdparty/modeling/qmt/controller/undocontroller.cpp b/src/libs/3rdparty/modeling/qmt/controller/undocontroller.cpp index d80b275bbcb..c341d05ecbc 100644 --- a/src/libs/3rdparty/modeling/qmt/controller/undocontroller.cpp +++ b/src/libs/3rdparty/modeling/qmt/controller/undocontroller.cpp @@ -74,4 +74,4 @@ void UndoController::doNotMerge() m_doNotMerge = true; } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/controller/undocontroller.h b/src/libs/3rdparty/modeling/qmt/controller/undocontroller.h index a47d633ab02..829a317487b 100644 --- a/src/libs/3rdparty/modeling/qmt/controller/undocontroller.h +++ b/src/libs/3rdparty/modeling/qmt/controller/undocontroller.h @@ -38,51 +38,34 @@ QT_BEGIN_NAMESPACE class QUndoStack; QT_END_NAMESPACE - namespace qmt { class UndoCommand; - -class QMT_EXPORT UndoController : - public QObject +class QMT_EXPORT UndoController : public QObject { Q_OBJECT public: - explicit UndoController(QObject *parent = 0); - ~UndoController(); -signals: - -public: - QUndoStack *undoStack() const { return m_undoStack; } public slots: - void push(UndoCommand *cmd); - void beginMergeSequence(const QString &text); - void endMergeSequence(); public: - void reset(); - void doNotMerge(); private: - QUndoStack *m_undoStack; - bool m_doNotMerge; - }; -} +} // namespace qmt #endif // QMT_UNDOCONTROLLER_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram/dannotation.cpp b/src/libs/3rdparty/modeling/qmt/diagram/dannotation.cpp index 5a6f3d6895f..2ea717bc5f8 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/dannotation.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram/dannotation.cpp @@ -104,4 +104,4 @@ void DAnnotation::accept(DConstVisitor *visitor) const visitor->visitDAnnotation(this); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram/dannotation.h b/src/libs/3rdparty/modeling/qmt/diagram/dannotation.h index f0a970a285c..290c4e0760f 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/dannotation.h +++ b/src/libs/3rdparty/modeling/qmt/diagram/dannotation.h @@ -38,11 +38,9 @@ namespace qmt { -class QMT_EXPORT DAnnotation : - public DElement +class QMT_EXPORT DAnnotation : public DElement { public: - enum VisualRole { RoleNormal, RoleTitle, @@ -52,62 +50,35 @@ public: RoleFootnote }; -public: - DAnnotation(); - DAnnotation(const DAnnotation &); - ~DAnnotation(); -public: - DAnnotation &operator=(const DAnnotation &); -public: - Uid modelUid() const { return Uid::invalidUid(); } - QString text() const { return m_text; } - void setText(const QString &text); - QPointF pos() const { return m_pos; } - void setPos(const QPointF &pos); - QRectF rect() const { return m_rect; } - void setRect(const QRectF &rect); - VisualRole visualRole() const { return m_visualRole; } - void setVisualRole(VisualRole visualRole); - bool isAutoSized() const { return m_isAutoSized; } - void setAutoSized(bool autoSized); -public: - virtual void accept(DVisitor *visitor); - virtual void accept(DConstVisitor *visitor) const; private: - QString m_text; - QPointF m_pos; - QRectF m_rect; - VisualRole m_visualRole; - bool m_isAutoSized; - }; -} +} // namespace qmt #endif // QMT_DANNOTATION_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram/dassociation.cpp b/src/libs/3rdparty/modeling/qmt/diagram/dassociation.cpp index ab32222cb78..be55437d1b8 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/dassociation.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram/dassociation.cpp @@ -33,7 +33,6 @@ #include "dvisitor.h" #include "dconstvisitor.h" - namespace qmt { DAssociationEnd::DAssociationEnd() @@ -68,9 +67,8 @@ void DAssociationEnd::setKind(MAssociationEnd::Kind kind) bool operator==(const DAssociationEnd &lhs, const DAssociationEnd &rhs) { - if (&lhs == &rhs) { + if (&lhs == &rhs) return true; - } return lhs.name() == rhs.name() && lhs.cardinality() == rhs.cardinality() && lhs.kind() == rhs.kind() @@ -82,8 +80,6 @@ bool operator!=(const DAssociationEnd &lhs, const DAssociationEnd &rhs) return !operator==(lhs, rhs); } - - DAssociation::DAssociation() : m_associationClassUid(Uid::invalidUid()) { @@ -118,4 +114,4 @@ void DAssociation::accept(DConstVisitor *visitor) const visitor->visitDAssociation(this); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram/dassociation.h b/src/libs/3rdparty/modeling/qmt/diagram/dassociation.h index a134e8d0262..ff86904e560 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/dassociation.h +++ b/src/libs/3rdparty/modeling/qmt/diagram/dassociation.h @@ -35,88 +35,56 @@ #include "qmt/model/massociation.h" - namespace qmt { class QMT_EXPORT DAssociationEnd { public: DAssociationEnd(); - ~DAssociationEnd(); -public: - QString name() const { return m_name; } - void setName(const QString &name); - QString cardinality() const { return m_cardinality; } - void setCardinatlity(const QString &cardinality); - MAssociationEnd::Kind kind() const { return m_kind; } - void setKind(MAssociationEnd::Kind kind); - bool isNavigable() const { return m_isNavigable; } - void setNavigable(bool navigable); private: - QString m_name; - QString m_cardinality; - MAssociationEnd::Kind m_kind; - bool m_isNavigable; }; bool operator==(const DAssociationEnd &lhs, const DAssociationEnd &rhs); - bool operator!=(const DAssociationEnd &lhs, const DAssociationEnd &rhs); - -class QMT_EXPORT DAssociation : - public DRelation +class QMT_EXPORT DAssociation : public DRelation { public: DAssociation(); - ~DAssociation(); -public: - DAssociationEnd endA() const { return m_endA; } - void setEndA(const DAssociationEnd &endA); - DAssociationEnd endB() const { return m_endB; } - void setEndB(const DAssociationEnd &endB); - Uid assoicationClassUid() const { return m_associationClassUid; } - void setAssociationClassUid(const Uid &uid); -public: - virtual void accept(DVisitor *visitor); - virtual void accept(DConstVisitor *visitor) const; private: - DAssociationEnd m_endA; - DAssociationEnd m_endB; - Uid m_associationClassUid; }; -} +} // namespace qmt #endif // QMT_DASSOCIATION_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram/dboundary.cpp b/src/libs/3rdparty/modeling/qmt/diagram/dboundary.cpp index eae1ce388fe..6b4fac8a6a0 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/dboundary.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram/dboundary.cpp @@ -88,4 +88,4 @@ void DBoundary::accept(DConstVisitor *visitor) const visitor->visitDBoundary(this); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram/dboundary.h b/src/libs/3rdparty/modeling/qmt/diagram/dboundary.h index 75a7b2d1023..700ff7d46cf 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/dboundary.h +++ b/src/libs/3rdparty/modeling/qmt/diagram/dboundary.h @@ -36,55 +36,34 @@ #include #include - namespace qmt { -class QMT_EXPORT DBoundary : - public DElement +class QMT_EXPORT DBoundary : public DElement { public: DBoundary(); - DBoundary(const DBoundary &rhs); - ~DBoundary(); -public: - DBoundary &operator=(const DBoundary &rhs); -public: - Uid modelUid() const { return Uid::invalidUid(); } - QString text() const { return m_text; } - void setText(const QString &text); - QPointF pos() const { return m_pos; } - void setPos(const QPointF &pos); - QRectF rect() const { return m_rect; } - void setRect(const QRectF &rect); -public: - virtual void accept(DVisitor *visitor); - virtual void accept(DConstVisitor *visitor) const; private: - QString m_text; - QPointF m_pos; - QRectF m_rect; - }; -} +} // namespace qmt #endif // QMT_DBOUNDARY_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram/dclass.cpp b/src/libs/3rdparty/modeling/qmt/diagram/dclass.cpp index d24b735d91b..c47cac8fe11 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/dclass.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram/dclass.cpp @@ -33,7 +33,6 @@ #include "dvisitor.h" #include "dconstvisitor.h" - namespace qmt { DClass::DClass() @@ -82,4 +81,4 @@ void DClass::accept(DConstVisitor *visitor) const visitor->visitDClass(this); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram/dclass.h b/src/libs/3rdparty/modeling/qmt/diagram/dclass.h index b4e7f8e8260..417978a9cf9 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/dclass.h +++ b/src/libs/3rdparty/modeling/qmt/diagram/dclass.h @@ -36,70 +36,44 @@ #include - namespace qmt { -class QMT_EXPORT DClass : - public DObject +class QMT_EXPORT DClass : public DObject { public: - enum TemplateDisplay { TemplateSmart, TemplateBox, TemplateName }; -public: DClass(); -public: - QString umlNamespace() const { return m_umlNamespace; } - void setUmlNamespace(const QString ¨Namespace); - QList templateParameters() const { return m_templateParameters; } - void setTemplateParameters(const QList &templateParameters); - QList members() const { return m_members; } - void setMembers(const QList &members); - QSet visibleMembers() const { return m_visibleMembers; } - void setVisibleMembers(const QSet &visibleMembers); - TemplateDisplay templateDisplay() const { return m_templateDisplay; } - void setTemplateDisplay(TemplateDisplay templateDisplay); - bool showAllMembers() const { return m_showAllMembers; } - void setShowAllMembers(bool showAllMembers); -public: - virtual void accept(DVisitor *visitor); - virtual void accept(DConstVisitor *visitor) const; private: - QString m_umlNamespace; - QList m_templateParameters; - QList m_members; - QSet m_visibleMembers; - TemplateDisplay m_templateDisplay; - bool m_showAllMembers; }; -} +} // namespace qmt #endif // QMT_DCLASS_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram/dcomponent.cpp b/src/libs/3rdparty/modeling/qmt/diagram/dcomponent.cpp index 43aee19cd20..c782720cebf 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/dcomponent.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram/dcomponent.cpp @@ -33,7 +33,6 @@ #include "dvisitor.h" #include "dconstvisitor.h" - namespace qmt { DComponent::DComponent() @@ -57,4 +56,4 @@ void DComponent::accept(DConstVisitor *visitor) const visitor->visitDComponent(this); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram/dcomponent.h b/src/libs/3rdparty/modeling/qmt/diagram/dcomponent.h index 70b5362a691..14ad43680de 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/dcomponent.h +++ b/src/libs/3rdparty/modeling/qmt/diagram/dcomponent.h @@ -33,32 +33,23 @@ #include "dobject.h" - namespace qmt { -class QMT_EXPORT DComponent : - public DObject +class QMT_EXPORT DComponent : public DObject { public: DComponent(); -public: - bool isPlainShape() const { return m_isPlainShape; } - void setPlainShape(bool planeShape); -public: - virtual void accept(DVisitor *visitor); - virtual void accept(DConstVisitor *visitor) const; private: - bool m_isPlainShape; }; -} +} // namespace qmt #endif // QMT_DCOMPONENT_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram/dconstvisitor.h b/src/libs/3rdparty/modeling/qmt/diagram/dconstvisitor.h index 686e6e84c52..2a1c396f623 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/dconstvisitor.h +++ b/src/libs/3rdparty/modeling/qmt/diagram/dconstvisitor.h @@ -47,39 +47,26 @@ class DAssociation; class DAnnotation; class DBoundary; - class DConstVisitor { public: virtual ~DConstVisitor() { } virtual void visitDElement(const DElement *element) = 0; - virtual void visitDObject(const DObject *object) = 0; - virtual void visitDPackage(const DPackage *package) = 0; - virtual void visitDClass(const DClass *klass) = 0; - virtual void visitDComponent(const DComponent *component) = 0; - virtual void visitDDiagram(const DDiagram *diagram) = 0; - virtual void visitDItem(const DItem *item) = 0; - virtual void visitDRelation(const DRelation *relation) = 0; - virtual void visitDInheritance(const DInheritance *inheritance) = 0; - virtual void visitDDependency(const DDependency *dependency) = 0; - virtual void visitDAssociation(const DAssociation *association) = 0; - virtual void visitDAnnotation(const DAnnotation *annotation) = 0; - virtual void visitDBoundary(const DBoundary *boundary) = 0; }; -} +} // namespace qmt #endif // QMT_DCONSTVISITOR_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram/ddependency.cpp b/src/libs/3rdparty/modeling/qmt/diagram/ddependency.cpp index 01f55baae60..016542cf009 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/ddependency.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram/ddependency.cpp @@ -33,7 +33,6 @@ #include "dvisitor.h" #include "dconstvisitor.h" - namespace qmt { DDependency::DDependency() @@ -80,4 +79,4 @@ void DDependency::accept(DConstVisitor *visitor) const visitor->visitDDependency(this); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram/ddependency.h b/src/libs/3rdparty/modeling/qmt/diagram/ddependency.h index ded22e2a210..690817c4a4c 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/ddependency.h +++ b/src/libs/3rdparty/modeling/qmt/diagram/ddependency.h @@ -35,46 +35,30 @@ #include "qmt/model/mdependency.h" - namespace qmt { class DObject; - -class QMT_EXPORT DDependency : - public DRelation +class QMT_EXPORT DDependency : public DRelation { public: DDependency(); - ~DDependency(); -public: - Uid source() const; - void setSource(const Uid &source); - Uid target() const; - void setTarget(const Uid &target); - MDependency::Direction direction() const { return m_direction; } - void setDirection(MDependency::Direction direction); -public: - virtual void accept(DVisitor *visitor); - virtual void accept(DConstVisitor *visitor) const; private: - MDependency::Direction m_direction; - }; -} +} // namespace qmt #endif // QMT_DDEPENDENCY_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram/ddiagram.cpp b/src/libs/3rdparty/modeling/qmt/diagram/ddiagram.cpp index b4b720ca23b..0c33680e383 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/ddiagram.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram/ddiagram.cpp @@ -33,7 +33,6 @@ #include "dvisitor.h" #include "dconstvisitor.h" - namespace qmt { DDiagram::DDiagram() @@ -50,4 +49,4 @@ void DDiagram::accept(DConstVisitor *visitor) const visitor->visitDDiagram(this); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram/ddiagram.h b/src/libs/3rdparty/modeling/qmt/diagram/ddiagram.h index 6ac97eb8f94..a5df33f8230 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/ddiagram.h +++ b/src/libs/3rdparty/modeling/qmt/diagram/ddiagram.h @@ -35,20 +35,15 @@ namespace qmt { -class QMT_EXPORT DDiagram : - public DObject +class QMT_EXPORT DDiagram : public DObject { public: DDiagram(); -public: - virtual void accept(DVisitor *visitor); - virtual void accept(DConstVisitor *visitor) const; - }; -} +} // namespace qmt #endif // QMT_DDIAGRAM_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram/delement.cpp b/src/libs/3rdparty/modeling/qmt/diagram/delement.cpp index 89dd97376d8..63d036e6aa3 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/delement.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram/delement.cpp @@ -33,14 +33,12 @@ #include "dconstvisitor.h" #include "dvisitor.h" - namespace qmt { DElement::DElement() { } - DElement::~DElement() { } @@ -65,4 +63,4 @@ void DElement::accept(DConstVisitor *visitor) const visitor->visitDElement(this); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram/delement.h b/src/libs/3rdparty/modeling/qmt/diagram/delement.h index 93f83bf933c..01b2555d647 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/delement.h +++ b/src/libs/3rdparty/modeling/qmt/diagram/delement.h @@ -35,40 +35,29 @@ #include - namespace qmt { class DVisitor; class DConstVisitor; - class QMT_EXPORT DElement { public: DElement(); - virtual ~DElement(); -public: Uid uid() const { return m_uid; } - void setUid(const Uid &uid); - void renewUid(); - virtual Uid modelUid() const = 0; -public: - virtual void accept(DVisitor *visitor); - virtual void accept(DConstVisitor *visitor) const; private: - Uid m_uid; }; -} +} // namespace qmt #endif // QMT_DELEMENT_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram/dinheritance.cpp b/src/libs/3rdparty/modeling/qmt/diagram/dinheritance.cpp index a82ebe6f7c0..b9916a14451 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/dinheritance.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram/dinheritance.cpp @@ -34,7 +34,6 @@ #include "dvisitor.h" #include "dconstvisitor.h" - namespace qmt { DInheritance::DInheritance() @@ -72,4 +71,4 @@ void DInheritance::accept(DConstVisitor *visitor) const visitor->visitDInheritance(this); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram/dinheritance.h b/src/libs/3rdparty/modeling/qmt/diagram/dinheritance.h index 43a12f541e7..37a7810a1d2 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/dinheritance.h +++ b/src/libs/3rdparty/modeling/qmt/diagram/dinheritance.h @@ -33,36 +33,24 @@ #include "drelation.h" - namespace qmt { class DClass; - -class QMT_EXPORT DInheritance : - public DRelation +class QMT_EXPORT DInheritance : public DRelation { public: DInheritance(); -public: - Uid derived() const; - void setDerived(const Uid &derived); - Uid base() const; - void setBase(const Uid &base); -public: - virtual void accept(DVisitor *visitor); - virtual void accept(DConstVisitor *visitor) const; - }; -} +} // namespace qmt #endif // QMT_DINHERITANCE_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram/ditem.cpp b/src/libs/3rdparty/modeling/qmt/diagram/ditem.cpp index d253c08af71..81305566b65 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/ditem.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram/ditem.cpp @@ -33,7 +33,6 @@ #include "dvisitor.h" #include "dconstvisitor.h" - namespace qmt { DItem::DItem() diff --git a/src/libs/3rdparty/modeling/qmt/diagram/ditem.h b/src/libs/3rdparty/modeling/qmt/diagram/ditem.h index f553a5bbe81..faad6524e9a 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/ditem.h +++ b/src/libs/3rdparty/modeling/qmt/diagram/ditem.h @@ -33,46 +33,28 @@ #include "dobject.h" - namespace qmt { -class QMT_EXPORT DItem : - public DObject +class QMT_EXPORT DItem : public DObject { public: - DItem(); - ~DItem(); -public: - QString variety() const { return m_variety; } - void setVariety(const QString &variety); - QString shape() const { return m_shape; } - void setShape(const QString &shape); - bool isShapeEditable() const { return m_isShapeEditable; } - void setShapeEditable(bool shapeEditable); -public: - virtual void accept(DVisitor *visitor); - virtual void accept(DConstVisitor *visitor) const; private: - QString m_variety; - QString m_shape; - bool m_isShapeEditable; - }; } // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram/dobject.cpp b/src/libs/3rdparty/modeling/qmt/diagram/dobject.cpp index f62b8fa0bfe..caebdd56e3d 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/dobject.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram/dobject.cpp @@ -158,4 +158,4 @@ void DObject::accept(DConstVisitor *visitor) const visitor->visitDObject(this); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram/dobject.h b/src/libs/3rdparty/modeling/qmt/diagram/dobject.h index c05d0d18a00..9624ea7f1cd 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/dobject.h +++ b/src/libs/3rdparty/modeling/qmt/diagram/dobject.h @@ -39,17 +39,13 @@ #include #include - namespace qmt { class MObject; - -class QMT_EXPORT DObject : - public DElement +class QMT_EXPORT DObject : public DElement { public: - enum VisualPrimaryRole { PrimaryRoleNormal, DeprecatedPrimaryRoleLighter, @@ -79,100 +75,55 @@ public: StereotypeSmart }; -public: DObject(); - DObject(const DObject &); - ~DObject(); -public: - DObject &operator=(const DObject &rhs); -public: - Uid modelUid() const { return m_modelUid; } - void setModelUid(const Uid &uid); - QList stereotypes() const { return m_stereotypes; } - void setStereotypes(const QList &stereotypes); - QString context() const { return m_context; } - void setContext(const QString &context); - QString name() const { return m_name; } - void setName(const QString &name); - QPointF pos() const { return m_pos; } - void setPos(const QPointF &pos); - QRectF rect() const { return m_rect; } - void setRect(const QRectF &rect); - int depth() const { return m_depth; } - void setDepth(int depth); - VisualPrimaryRole visualPrimaryRole() const { return m_visualPrimaryRole; } - void setVisualPrimaryRole(VisualPrimaryRole visualPrimaryRole); - VisualSecondaryRole visualSecondaryRole() const { return m_visualSecondaryRole; } - void setVisualSecondaryRole(VisualSecondaryRole visualSecondaryRole); - StereotypeDisplay stereotypeDisplay() const { return m_stereotypeDisplay; } - void setStereotypeDisplay(StereotypeDisplay stereotypeDisplay); - bool isAutoSized() const { return m_isAutoSized; } - void setAutoSized(bool autoSized); - bool isVisualEmphasized() const { return m_isVisualEmphasized; } - void setVisualEmphasized(bool visualEmphasized); -public: - virtual void accept(DVisitor *visitor); - virtual void accept(DConstVisitor *visitor) const; private: - Uid m_modelUid; - QList m_stereotypes; - QString m_context; - QString m_name; - QPointF m_pos; - QRectF m_rect; - int m_depth; - VisualPrimaryRole m_visualPrimaryRole; - VisualSecondaryRole m_visualSecondaryRole; - StereotypeDisplay m_stereotypeDisplay; - bool m_isAutoSized; - bool m_isVisualEmphasized; }; -} +} // namespace qmt #endif // QMT_DOBJECT_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram/dpackage.cpp b/src/libs/3rdparty/modeling/qmt/diagram/dpackage.cpp index 64363d434be..88a4d83d9b9 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/dpackage.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram/dpackage.cpp @@ -33,7 +33,6 @@ #include "dvisitor.h" #include "dconstvisitor.h" - namespace qmt { DPackage::DPackage() @@ -50,4 +49,4 @@ void DPackage::accept(DConstVisitor *visitor) const visitor->visitDPackage(this); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram/dpackage.h b/src/libs/3rdparty/modeling/qmt/diagram/dpackage.h index aa6f1709903..02bc0bd2035 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/dpackage.h +++ b/src/libs/3rdparty/modeling/qmt/diagram/dpackage.h @@ -35,20 +35,15 @@ namespace qmt { -class QMT_EXPORT DPackage : - public DObject +class QMT_EXPORT DPackage : public DObject { public: DPackage(); -public: - virtual void accept(DVisitor *visitor); - virtual void accept(DConstVisitor *visitor) const; - }; -} +} // namespace qmt #endif // QMT_DPACKAGE_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram/drelation.cpp b/src/libs/3rdparty/modeling/qmt/diagram/drelation.cpp index 668e21f4b63..664abcb4b8d 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/drelation.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram/drelation.cpp @@ -33,7 +33,6 @@ #include "dvisitor.h" #include "dconstvisitor.h" - namespace qmt { DRelation::IntermediatePoint::IntermediatePoint(const QPointF &pos) @@ -51,7 +50,6 @@ bool operator==(const DRelation::IntermediatePoint &lhs, const DRelation::Interm return lhs.pos() == rhs.pos(); } - DRelation::DRelation() : DElement(), m_modelUid(Uid::invalidUid()), @@ -94,4 +92,4 @@ void DRelation::setIntermediatePoints(const QList m_intermediatePoints = intermediatePoints; } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram/drelation.h b/src/libs/3rdparty/modeling/qmt/diagram/drelation.h index fe3c2facdd4..fda51a11893 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/drelation.h +++ b/src/libs/3rdparty/modeling/qmt/diagram/drelation.h @@ -36,84 +36,53 @@ #include #include - namespace qmt { - class DObject; - -class QMT_EXPORT DRelation : - public DElement +class QMT_EXPORT DRelation : public DElement { - public: - - class IntermediatePoint { + class IntermediatePoint + { public: - explicit IntermediatePoint(const QPointF &pos = QPointF()); QPointF pos() const { return m_pos; } - void setPos(const QPointF &pos); private: QPointF m_pos; }; -public: DRelation(); - ~DRelation(); -public: - Uid modelUid() const { return m_modelUid; } - void setModelUid(const Uid &uid); - QList stereotypes() const { return m_stereotypes; } - void setStereotypes(const QList &stereotypes); - Uid endAUid() const { return m_endAUid; } - void setEndAUid(const Uid &uid); - Uid endBUid() const { return m_endBUid; } - void setEndBUid(const Uid &uid); - QString name() const { return m_name; } - void setName(const QString &name); - QList intermediatePoints() const { return m_intermediatePoints; } - void setIntermediatePoints(const QList &intermediatePoints); private: - Uid m_modelUid; - QList m_stereotypes; - Uid m_endAUid; - Uid m_endBUid; - QString m_name; - QList m_intermediatePoints; - }; bool operator==(const DRelation::IntermediatePoint &lhs, const DRelation::IntermediatePoint &rhs); - inline bool operator!=(const DRelation::IntermediatePoint &lhs, const DRelation::IntermediatePoint &rhs) { return !(lhs == rhs); } -} - +} // namespace qmt #endif // QMT_DRELATION_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram/dvisitor.h b/src/libs/3rdparty/modeling/qmt/diagram/dvisitor.h index d83b37deb94..8e90f1546bd 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram/dvisitor.h +++ b/src/libs/3rdparty/modeling/qmt/diagram/dvisitor.h @@ -53,32 +53,20 @@ public: virtual ~DVisitor() { } virtual void visitDElement(DElement *element) = 0; - virtual void visitDObject(DObject *object) = 0; - virtual void visitDPackage(DPackage *package) = 0; - virtual void visitDClass(DClass *klass) = 0; - virtual void visitDComponent(DComponent *component) = 0; - virtual void visitDDiagram(DDiagram *diagram) = 0; - virtual void visitDItem(DItem *item) = 0; - virtual void visitDRelation(DRelation *relation) = 0; - virtual void visitDInheritance(DInheritance *inheritance) = 0; - virtual void visitDDependency(DDependency *dependency) = 0; - virtual void visitDAssociation(DAssociation *association) = 0; - virtual void visitDAnnotation(DAnnotation *annotation) = 0; - virtual void visitDBoundary(DBoundary *boundary) = 0; }; -} +} // namespace qmt #endif // QMT_DVISITOR_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_controller/dclonevisitor.cpp b/src/libs/3rdparty/modeling/qmt/diagram_controller/dclonevisitor.cpp index db3c32f70ad..f619073565c 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_controller/dclonevisitor.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_controller/dclonevisitor.cpp @@ -45,10 +45,8 @@ #include "qmt/diagram/dboundary.h" #include "qmt/infrastructure/qmtassert.h" - namespace qmt { - DCloneVisitor::DCloneVisitor() : m_cloned(0) { @@ -68,41 +66,36 @@ void DCloneVisitor::visitDObject(const DObject *object) void DCloneVisitor::visitDPackage(const DPackage *package) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new DPackage(*package); - } visitDObject(package); } void DCloneVisitor::visitDClass(const DClass *klass) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new DClass(*klass); - } visitDObject(klass); } void DCloneVisitor::visitDComponent(const DComponent *component) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new DComponent(*component); - } visitDObject(component); } void DCloneVisitor::visitDDiagram(const DDiagram *diagram) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new DDiagram(*diagram); - } visitDObject(diagram); } void DCloneVisitor::visitDItem(const DItem *item) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new DItem(*item); - } visitDObject(item); } @@ -115,45 +108,39 @@ void DCloneVisitor::visitDRelation(const DRelation *relation) void DCloneVisitor::visitDInheritance(const DInheritance *inheritance) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new DInheritance(*inheritance); - } visitDRelation(inheritance); } void DCloneVisitor::visitDDependency(const DDependency *dependency) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new DDependency(*dependency); - } visitDRelation(dependency); } void DCloneVisitor::visitDAssociation(const DAssociation *association) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new DAssociation(*association); - } visitDRelation(association); } void DCloneVisitor::visitDAnnotation(const DAnnotation *annotation) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new DAnnotation(*annotation); - } visitDElement(annotation); } void DCloneVisitor::visitDBoundary(const DBoundary *boundary) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new DBoundary(*boundary); - } visitDElement(boundary); } - DCloneDeepVisitor::DCloneDeepVisitor() : m_cloned(0) { @@ -173,41 +160,36 @@ void DCloneDeepVisitor::visitDObject(const DObject *object) void DCloneDeepVisitor::visitDPackage(const DPackage *package) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new DPackage(*package); - } visitDObject(package); } void DCloneDeepVisitor::visitDClass(const DClass *klass) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new DClass(*klass); - } visitDObject(klass); } void DCloneDeepVisitor::visitDComponent(const DComponent *component) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new DComponent(*component); - } visitDObject(component); } void DCloneDeepVisitor::visitDDiagram(const DDiagram *diagram) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new DDiagram(*diagram); - } visitDObject(diagram); } void DCloneDeepVisitor::visitDItem(const DItem *item) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new DItem(*item); - } visitDObject(item); } @@ -219,42 +201,37 @@ void DCloneDeepVisitor::visitDRelation(const DRelation *relation) void DCloneDeepVisitor::visitDInheritance(const DInheritance *inheritance) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new DInheritance(*inheritance); - } visitDRelation(inheritance); } void DCloneDeepVisitor::visitDDependency(const DDependency *dependency) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new DDependency(*dependency); - } visitDRelation(dependency); } void DCloneDeepVisitor::visitDAssociation(const DAssociation *association) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new DAssociation(*association); - } visitDRelation(association); } void DCloneDeepVisitor::visitDAnnotation(const DAnnotation *annotation) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new DAnnotation(*annotation); - } visitDElement(annotation); } void DCloneDeepVisitor::visitDBoundary(const DBoundary *boundary) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new DBoundary(*boundary); - } visitDElement(boundary); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_controller/dclonevisitor.h b/src/libs/3rdparty/modeling/qmt/diagram_controller/dclonevisitor.h index ad022277820..d54e4f9fdf3 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_controller/dclonevisitor.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_controller/dclonevisitor.h @@ -34,91 +34,58 @@ #include "qmt/diagram/dconstvisitor.h" #include "qmt/infrastructure/qmt_global.h" -#include - namespace qmt { -class QMT_EXPORT DCloneVisitor : - public DConstVisitor +class QMT_EXPORT DCloneVisitor : public DConstVisitor { public: DCloneVisitor(); -public: DElement *cloned() const { return m_cloned; } void visitDElement(const DElement *element); - void visitDObject(const DObject *object); - void visitDPackage(const DPackage *package); - void visitDClass(const DClass *klass); - void visitDComponent(const DComponent *component); - void visitDDiagram(const DDiagram *diagram); - void visitDItem(const DItem *item); - void visitDRelation(const DRelation *relation); - void visitDInheritance(const DInheritance *inheritance); - void visitDDependency(const DDependency *dependency); - void visitDAssociation(const DAssociation *association); - void visitDAnnotation(const DAnnotation *annotation); - void visitDBoundary(const DBoundary *boundary); private: - DElement *m_cloned; }; - -class QMT_EXPORT DCloneDeepVisitor : - public DConstVisitor +class QMT_EXPORT DCloneDeepVisitor : public DConstVisitor { public: DCloneDeepVisitor(); -public: DElement *cloned() const { return m_cloned; } void visitDElement(const DElement *element); - void visitDObject(const DObject *object); - void visitDPackage(const DPackage *package); - void visitDClass(const DClass *klass); - void visitDComponent(const DComponent *component); - void visitDDiagram(const DDiagram *diagram); - void visitDItem(const DItem *item); - void visitDRelation(const DRelation *relation); - void visitDInheritance(const DInheritance *inheritance); - void visitDDependency(const DDependency *dependency); - void visitDAssociation(const DAssociation *association); - void visitDAnnotation(const DAnnotation *annotation); - void visitDBoundary(const DBoundary *boundary); private: - DElement *m_cloned; }; -} +} // namespace qmt #endif // QMT_DCLONEVISITOR_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_controller/dcontainer.h b/src/libs/3rdparty/modeling/qmt/diagram_controller/dcontainer.h index 6f9d6c9d457..a9e0ed6b989 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_controller/dcontainer.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_controller/dcontainer.h @@ -34,14 +34,12 @@ #include "qmt/controller/container.h" #include "qmt/diagram/delement.h" - namespace qmt { -class QMT_EXPORT DContainer : - public Container +class QMT_EXPORT DContainer : public Container { }; -} +} // namespace qmt #endif // QMT_DCONTAINER_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_controller/dfactory.cpp b/src/libs/3rdparty/modeling/qmt/diagram_controller/dfactory.cpp index 9153f995f31..ec3f6ebc494 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_controller/dfactory.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_controller/dfactory.cpp @@ -55,7 +55,6 @@ #include "qmt/model/mdependency.h" #include "qmt/model/minheritance.h" - namespace qmt { DFactory::DFactory() @@ -155,4 +154,4 @@ void DFactory::visitMAssociation(const MAssociation *association) visitMRelation(association); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_controller/dfactory.h b/src/libs/3rdparty/modeling/qmt/diagram_controller/dfactory.h index acaaecbe95c..bddeccd1e56 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_controller/dfactory.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_controller/dfactory.h @@ -34,53 +34,34 @@ #include "qmt/model/mconstvisitor.h" #include "qmt/infrastructure/qmt_global.h" -#include - namespace qmt { class DElement; -class QMT_EXPORT DFactory : - public MConstVisitor +class QMT_EXPORT DFactory : public MConstVisitor { public: DFactory(); -public: - DElement *product() const { return m_product; } -public: - void visitMElement(const MElement *element); - void visitMObject(const MObject *object); - void visitMPackage(const MPackage *package); - void visitMClass(const MClass *klass); - void visitMComponent(const MComponent *component); - void visitMDiagram(const MDiagram *diagram); - void visitMCanvasDiagram(const MCanvasDiagram *diagram); - void visitMItem(const MItem *item); - void visitMRelation(const MRelation *relation); - void visitMDependency(const MDependency *dependency); - void visitMInheritance(const MInheritance *inheritance); - void visitMAssociation(const MAssociation *association); private: - DElement *m_product; }; -} +} // namespace qmt #endif // QMT_DFACTORY_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_controller/dflatassignmentvisitor.cpp b/src/libs/3rdparty/modeling/qmt/diagram_controller/dflatassignmentvisitor.cpp index e15bf510232..d40c54e480c 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_controller/dflatassignmentvisitor.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_controller/dflatassignmentvisitor.cpp @@ -169,4 +169,4 @@ void DFlatAssignmentVisitor::visitDBoundary(const DBoundary *boundary) target->setRect(boundary->rect()); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_controller/dflatassignmentvisitor.h b/src/libs/3rdparty/modeling/qmt/diagram_controller/dflatassignmentvisitor.h index bdf2688d134..66820b92280 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_controller/dflatassignmentvisitor.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_controller/dflatassignmentvisitor.h @@ -34,49 +34,31 @@ #include "qmt/diagram/dconstvisitor.h" #include "qmt/infrastructure/qmt_global.h" - namespace qmt { -class QMT_EXPORT DFlatAssignmentVisitor : - public DConstVisitor +class QMT_EXPORT DFlatAssignmentVisitor : public DConstVisitor { public: DFlatAssignmentVisitor(DElement *target); -public: - void visitDElement(const DElement *element); - void visitDObject(const DObject *object); - void visitDPackage(const DPackage *package); - void visitDClass(const DClass *klass); - void visitDComponent(const DComponent *component); - void visitDDiagram(const DDiagram *diagram); - void visitDItem(const DItem *item); - void visitDRelation(const DRelation *relation); - void visitDInheritance(const DInheritance *inheritance); - void visitDDependency(const DDependency *dependency); - void visitDAssociation(const DAssociation *association); - void visitDAnnotation(const DAnnotation *annotation); - void visitDBoundary(const DBoundary *boundary); private: - DElement *m_target; - }; -} +} // namespace qmt #endif // QMT_DFLATASSIGNMENTVISITOR_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_controller/diagramcontroller.cpp b/src/libs/3rdparty/modeling/qmt/diagram_controller/diagramcontroller.cpp index 7086a6ae813..8fe50560c85 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_controller/diagramcontroller.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_controller/diagramcontroller.cpp @@ -51,7 +51,6 @@ #include "qmt/model/mdiagram.h" #include "qmt/model/mrelation.h" - namespace qmt { class DiagramController::Clone @@ -69,11 +68,9 @@ DiagramController::Clone::Clone() { } -class DiagramController::DiagramUndoCommand : - public UndoCommand +class DiagramController::DiagramUndoCommand : public UndoCommand { public: - DiagramUndoCommand(DiagramController *diagramController, const Uid &diagramKey, const QString &text) : UndoCommand(text), m_diagramController(diagramController), @@ -82,7 +79,6 @@ public: } protected: - DiagramController *diagramController() const { return m_diagramController; @@ -98,15 +94,11 @@ protected: } private: - DiagramController *m_diagramController; - Uid m_diagramKey; }; - -class DiagramController::UpdateElementCommand : - public DiagramUndoCommand +class DiagramController::UpdateElementCommand : public DiagramUndoCommand { public: UpdateElementCommand(DiagramController *diagramController, const Uid &diagramKey, DElement *element, @@ -127,12 +119,10 @@ public: bool mergeWith(const UndoCommand *other) { const UpdateElementCommand *otherUpdateCommand = dynamic_cast(other); - if (!otherUpdateCommand) { + if (!otherUpdateCommand) return false; - } - if (diagramKey() != otherUpdateCommand->diagramKey()) { + if (diagramKey() != otherUpdateCommand->diagramKey()) return false; - } if (m_updateAction == DiagramController::UpdateMajor || otherUpdateCommand->m_updateAction == DiagramController::UpdateMajor || m_updateAction != otherUpdateCommand->m_updateAction) { return false; @@ -189,16 +179,11 @@ private: diagramController->diagramModified(diagram); } -private: - DiagramController::UpdateAction m_updateAction; - QHash m_clonedElements; }; - -class DiagramController::AbstractAddRemCommand : - public DiagramUndoCommand +class DiagramController::AbstractAddRemCommand : public DiagramUndoCommand { protected: AbstractAddRemCommand(DiagramController *diagramController, const Uid &diagramKey, const QString &commandLabel) @@ -208,9 +193,8 @@ protected: ~AbstractAddRemCommand() { - foreach (const Clone &clone, m_clonedElements) { + foreach (const Clone &clone, m_clonedElements) delete clone.m_clonedElement; - } } void remove() @@ -233,9 +217,8 @@ protected: emit diagramController->endRemoveElement(clone.m_indexOfElement, diagram); removed = true; } - if (removed) { + if (removed) diagramController->diagramModified(diagram); - } } void insert() @@ -253,19 +236,14 @@ protected: emit diagramController->endInsertElement(clone.m_indexOfElement, diagram); inserted = true; } - if (inserted) { + if (inserted) diagramController->diagramModified(diagram); - } - } -protected: QList m_clonedElements; - }; -class DiagramController::AddElementsCommand : - public AbstractAddRemCommand +class DiagramController::AddElementsCommand : public AbstractAddRemCommand { public: AddElementsCommand(DiagramController *diagramController, const Uid &diagramKey, const QString &commandLabel) @@ -296,9 +274,7 @@ public: } }; - -class DiagramController::RemoveElementsCommand : - public AbstractAddRemCommand +class DiagramController::RemoveElementsCommand : public AbstractAddRemCommand { public: RemoveElementsCommand(DiagramController *diagramController, const Uid &diagramKey, const QString &commandLabel) @@ -336,12 +312,9 @@ public: } }; - -class DiagramController::FindDiagramsVisitor : - public MChildrenVisitor +class DiagramController::FindDiagramsVisitor : public MChildrenVisitor { public: - FindDiagramsVisitor(QList *allDiagrams) : m_allDiagrams(allDiagrams) { @@ -354,11 +327,9 @@ public: } private: - QList *m_allDiagrams; }; - DiagramController::DiagramController(QObject *parent) : QObject(parent), m_modelController(0), @@ -456,9 +427,8 @@ DElement *DiagramController::findDelegate(const MElement *modelElement, const MD { // PERFORM use map to increase performance foreach (DElement *diagramElement, diagram->diagramElements()) { - if (diagramElement->modelUid().isValid() && diagramElement->modelUid() == modelElement->uid()) { + if (diagramElement->modelUid().isValid() && diagramElement->modelUid() == modelElement->uid()) return diagramElement; - } } return 0; } @@ -466,20 +436,17 @@ DElement *DiagramController::findDelegate(const MElement *modelElement, const MD void DiagramController::startUpdateElement(DElement *element, MDiagram *diagram, UpdateAction updateAction) { emit beginUpdateElement(diagram->diagramElements().indexOf(element), diagram); - if (m_undoController) { + if (m_undoController) m_undoController->push(new UpdateElementCommand(this, diagram->uid(), element, updateAction)); - } } void DiagramController::finishUpdateElement(DElement *element, MDiagram *diagram, bool cancelled) { - if (!cancelled) { + if (!cancelled) updateElementFromModel(element, diagram, false); - } emit endUpdateElement(diagram->diagramElements().indexOf(element), diagram); - if (!cancelled) { + if (!cancelled) diagramModified(diagram); - } } void DiagramController::breakUndoChain() @@ -528,13 +495,11 @@ void DiagramController::pasteElements(const DContainer &diagramContainer, MDiagr // fix all keys referencing between pasting elements foreach(DElement *clonedElement, clonedElements) { DRelation *relation = dynamic_cast(clonedElement); - if (relation) { + if (relation) updateRelationKeys(relation, renewedKeys); - } } - if (m_undoController) { + if (m_undoController) m_undoController->beginMergeSequence(tr("Paste")); - } // insert all elements bool added = false; foreach (DElement *clonedElement, clonedElements) { @@ -566,12 +531,10 @@ void DiagramController::pasteElements(const DContainer &diagramContainer, MDiagr added = true; } } - if (added) { + if (added) diagramModified(diagram); - } - if (m_undoController) { + if (m_undoController) m_undoController->endMergeSequence(); - } } void DiagramController::deleteElements(const DSelection &diagramSelection, MDiagram *diagram) @@ -593,15 +556,13 @@ void DiagramController::onEndResetModel() foreach (DElement *element, diagram->diagramElements()) { if (element->modelUid().isValid()) { MElement *modelElement = m_modelController->findElement(element->modelUid()); - if (!modelElement) { + if (!modelElement) removeElement(element, diagram); - } } } // update all remaining elements from model - foreach (DElement *element, diagram->diagramElements()) { + foreach (DElement *element, diagram->diagramElements()) updateElementFromModel(element, diagram, false); - } } emit endResetAllDiagrams(); } @@ -629,9 +590,8 @@ void DiagramController::onEndUpdateObject(int row, const MObject *parent) foreach (DElement *diagramElement, diagram->diagramElements()) { if (diagramElement->modelUid().isValid()) { MObject *mobject = m_modelController->findObject(diagramElement->modelUid()); - if (mobject && mobject->owner() == modelPackage) { + if (mobject && mobject->owner() == modelPackage) updateElementFromModel(diagramElement, diagram, true); - } } } } @@ -673,7 +633,6 @@ void DiagramController::onBeginMoveObject(int formerRow, const MObject *formerOw { Q_UNUSED(formerRow); Q_UNUSED(formerOwner); - } void DiagramController::onEndMoveObject(int row, const MObject *owner) @@ -686,9 +645,8 @@ void DiagramController::onEndMoveObject(int row, const MObject *owner) MDiagram *modelDiagram = dynamic_cast(modelObject); if (modelDiagram) { emit beginResetDiagram(modelDiagram); - foreach (DElement *diagramElement, modelDiagram->diagramElements()) { + foreach (DElement *diagramElement, modelDiagram->diagramElements()) updateElementFromModel(diagramElement, modelDiagram, false); - } emit endResetDiagram(modelDiagram); } } @@ -744,12 +702,10 @@ void DiagramController::deleteElements(const DSelection &diagramSelection, MDiag QMT_CHECK(diagram); DReferences simplifiedSelection = simplify(diagramSelection, diagram); - if (simplifiedSelection.elements().isEmpty()) { + if (simplifiedSelection.elements().isEmpty()) return; - } - if (m_undoController) { + if (m_undoController) m_undoController->beginMergeSequence(commandLabel); - } bool removed = false; foreach (DElement *element, simplifiedSelection.elements()) { // element may have been deleted indirectly by predecessor element in loop @@ -767,21 +723,18 @@ void DiagramController::deleteElements(const DSelection &diagramSelection, MDiag removed = true; } } - if (removed) { + if (removed) diagramModified(diagram); - } - if (m_undoController) { + if (m_undoController) m_undoController->endMergeSequence(); - } } DElement *DiagramController::findElementOnAnyDiagram(const Uid &uid) { foreach (MDiagram *diagram, m_allDiagrams) { DElement *element = findElement(uid, diagram); - if (element) { + if (element) return element; - } } return 0; } @@ -790,20 +743,17 @@ void DiagramController::removeObjects(MObject *modelObject) { foreach (MDiagram *diagram, m_allDiagrams) { DElement *diagramElement = findDelegate(modelObject, diagram); - if (diagramElement) { + if (diagramElement) removeElement(diagramElement, diagram); - } foreach (const Handle &relation, modelObject->relations()) { DElement *diagramElement = findDelegate(relation.target(), diagram); - if (diagramElement) { + if (diagramElement) removeElement(diagramElement, diagram); - } } } foreach (const Handle &object, modelObject->children()) { - if (object.hasTarget()) { + if (object.hasTarget()) removeObjects(object.target()); - } } if (MDiagram *diagram = dynamic_cast(modelObject)) { emit diagramAboutToBeRemoved(diagram); @@ -822,9 +772,8 @@ void DiagramController::removeRelations(MRelation *modelRelation) { foreach (MDiagram *diagram, m_allDiagrams) { DElement *diagramElement = findDelegate(modelRelation, diagram); - if (diagramElement) { + if (diagramElement) removeElement(diagramElement, diagram); - } } } @@ -834,9 +783,8 @@ void DiagramController::removeRelations(DElement *element, MDiagram *diagram) if (diagramObject) { foreach (DElement *diagramElement, diagram->diagramElements()) { if (DRelation *diagramRelation = dynamic_cast(diagramElement)) { - if (diagramRelation->endAUid() == diagramObject->uid() || diagramRelation->endBUid() == diagramObject->uid()) { + if (diagramRelation->endAUid() == diagramObject->uid() || diagramRelation->endBUid() == diagramObject->uid()) removeElement(diagramRelation, diagram); - } } } } @@ -861,20 +809,17 @@ void DiagramController::renewElementKey(DElement *element, QHash *rene void DiagramController::updateRelationKeys(DRelation *relation, const QHash &renewedKeys) { Uid newEndAKey = renewedKeys.value(relation->endAUid(), Uid::invalidUid()); - if (newEndAKey.isValid()) { + if (newEndAKey.isValid()) relation->setEndAUid(newEndAKey); - } Uid newEndBKey = renewedKeys.value(relation->endBUid(), Uid::invalidUid()); - if (newEndBKey.isValid()) { + if (newEndBKey.isValid()) relation->setEndBUid(newEndBKey); - } } void DiagramController::updateElementFromModel(DElement *element, const MDiagram *diagram, bool emitUpdateSignal) { - if (!element->modelUid().isValid()) { + if (!element->modelUid().isValid()) return; - } DUpdateVisitor visitor(element, diagram); @@ -908,27 +853,24 @@ DReferences DiagramController::simplify(const DSelection &diagramSelection, cons DReferences references; foreach (const DSelection::Index &index, diagramSelection.indices()) { DElement *element = findElement(index.elementKey(), diagram); - if (element) { + if (element) references.append(element); - } } return references; } MElement *DiagramController::delegatedElement(const DElement *element) const { - if (!element->modelUid().isValid()) { + if (!element->modelUid().isValid()) return 0; - } return m_modelController->findElement(element->modelUid()); } bool DiagramController::isDelegatedElementOnDiagram(const DElement *element, const MDiagram *diagram) const { MElement *modelElement = delegatedElement(element); - if (!modelElement) { + if (!modelElement) return false; - } return hasDelegate(modelElement, diagram); } @@ -946,4 +888,4 @@ void DiagramController::updateAllDiagramsList() } } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_controller/diagramcontroller.h b/src/libs/3rdparty/modeling/qmt/diagram_controller/diagramcontroller.h index f4db176c853..af59bc888bb 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_controller/diagramcontroller.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_controller/diagramcontroller.h @@ -36,33 +36,25 @@ #include #include - namespace qmt { class UndoController; - class ModelController; - class MElement; class MObject; class MDiagram; class MRelation; - class DSelection; class DContainer; class DReferences; - class DElement; class DRelation; - -class QMT_EXPORT DiagramController : - public QObject +class QMT_EXPORT DiagramController : public QObject { Q_OBJECT public: - enum UpdateAction { UpdateGeometry, // update only position and size of element UpdateMajor, // a major update of the element which will create a separate undo command @@ -70,9 +62,7 @@ public: }; private: - class Clone; - class DiagramUndoCommand; class UpdateElementCommand; class AbstractAddRemCommand; @@ -81,66 +71,42 @@ private: class FindDiagramsVisitor; public: - explicit DiagramController(QObject *parent = 0); - ~DiagramController(); signals: - void beginResetAllDiagrams(); - void endResetAllDiagrams(); - void beginResetDiagram(const MDiagram *diagram); - void endResetDiagram(const MDiagram *diagram); - void beginUpdateElement(int row, const MDiagram *diagram); - void endUpdateElement(int row, const MDiagram *diagram); - void beginInsertElement(int row, const MDiagram *diagram); - void endInsertElement(int row, const MDiagram *diagram); - void beginRemoveElement(int row, const MDiagram *diagram); - void endRemoveElement(int row, const MDiagram *diagram); - void modified(const MDiagram *diagram); - void diagramAboutToBeRemoved(const MDiagram *diagram); public: - ModelController *modelController() const { return m_modelController; } - void setModelController(ModelController *modelController); - UndoController *undoController() const { return m_undoController; } - void setUndoController(UndoController *undoController); private: - MDiagram *findDiagram(const Uid &diagramKey) const; public: - void addElement(DElement *element, MDiagram *diagram); - void removeElement(DElement *element, MDiagram *diagram); DElement *findElement(const Uid &key, const MDiagram *diagram) const; - template T *findElement(const Uid &key, const MDiagram *diagram) const { return dynamic_cast(findElement(key, diagram)); } bool hasDelegate(const MElement *modelElement, const MDiagram *diagram) const; - DElement *findDelegate(const MElement *modelElement, const MDiagram *diagram) const; - template T *findDelegate(const MElement *modelElement, const MDiagram *diagram) const { @@ -148,71 +114,44 @@ public: } void startUpdateElement(DElement *element, MDiagram *diagram, UpdateAction updateAction); - void finishUpdateElement(DElement *element, MDiagram *diagram, bool cancelled); void breakUndoChain(); -public: - DContainer cutElements(const DSelection &diagramSelection, MDiagram *diagram); - DContainer copyElements(const DSelection &diagramSelection, const MDiagram *diagram); - void pasteElements(const DContainer &diagramContainer, MDiagram *diagram); - void deleteElements(const DSelection &diagramSelection, MDiagram *diagram); private slots: - void onBeginResetModel(); - void onEndResetModel(); - void onBeginUpdateObject(int row, const MObject *parent); - void onEndUpdateObject(int row, const MObject *parent); - void onBeginInsertObject(int row, const MObject *owner); - void onEndInsertObject(int row, const MObject *owner); - void onBeginRemoveObject(int row, const MObject *parent); - void onEndRemoveObject(int row, const MObject *parent); - void onBeginMoveObject(int formerRow, const MObject *formerOwner); - void onEndMoveObject(int row, const MObject *owner); - void onBeginUpdateRelation(int row, const MObject *owner); - void onEndUpdateRelation(int row, const MObject *owner); - void onBeginRemoveRelation(int row, const MObject *owner); - void onEndRemoveRelation(int row, const MObject *owner); - void onBeginMoveRelation(int formerRow, const MObject *formerOwner); - void onEndMoveRelation(int row, const MObject *owner); private: - void deleteElements(const DSelection &diagramSelection, MDiagram *diagram, const QString &commandLabel); DElement *findElementOnAnyDiagram(const Uid &uid); void removeObjects(MObject *modelObject); - void removeRelations(MRelation *modelRelation); - void removeRelations(DElement *element, MDiagram *diagram); void renewElementKey(DElement *element, QHash *renewedKeys); - void updateRelationKeys(DRelation *relation, const QHash &renewedKeys); - void updateElementFromModel(DElement *element, const MDiagram *diagram, bool emitUpdateSignal); void diagramModified(MDiagram *diagram); @@ -220,22 +159,16 @@ private: DReferences simplify(const DSelection &diagramSelection, const MDiagram *diagram); MElement *delegatedElement(const DElement *element) const; - bool isDelegatedElementOnDiagram(const DElement *element, const MDiagram *diagram) const; - bool areRelationEndsOnDiagram(const DRelation *relation, const MDiagram *diagram) const; void updateAllDiagramsList(); -private: - ModelController *m_modelController; - UndoController *m_undoController; - QList m_allDiagrams; }; -} +} // namespace qmt #endif // DIAGRAMCONTROLLER_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_controller/dreferences.h b/src/libs/3rdparty/modeling/qmt/diagram_controller/dreferences.h index 9c9568e92b6..c629f9b3fe4 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_controller/dreferences.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_controller/dreferences.h @@ -34,16 +34,14 @@ #include "qmt/controller/references.h" #include "qmt/infrastructure/qmt_global.h" - namespace qmt { class DElement; -class QMT_EXPORT DReferences : - public References +class QMT_EXPORT DReferences : public References { }; -} +} // namespace qmt #endif // QMT_DREFERENCES_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_controller/dselection.h b/src/libs/3rdparty/modeling/qmt/diagram_controller/dselection.h index 5fa66353946..f1e1e0f942b 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_controller/dselection.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_controller/dselection.h @@ -34,14 +34,12 @@ #include "qmt/controller/selection.h" #include "qmt/infrastructure/qmt_global.h" - namespace qmt { -class QMT_EXPORT DSelection : - public Selection +class QMT_EXPORT DSelection : public Selection { }; -} +} // namespace qmt #endif // QMT_DSELECTION_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_controller/dupdatevisitor.cpp b/src/libs/3rdparty/modeling/qmt/diagram_controller/dupdatevisitor.cpp index 9fc929714bd..d001c8f2f11 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_controller/dupdatevisitor.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_controller/dupdatevisitor.cpp @@ -51,7 +51,6 @@ #include "qmt/model/mdependency.h" #include "qmt/model/minheritance.h" - namespace qmt { DUpdateVisitor::DUpdateVisitor(DElement *target, const MDiagram *diagram, bool checkNeedsUpdate) @@ -79,23 +78,19 @@ void DUpdateVisitor::visitMObject(const MObject *object) { DObject *dobject = dynamic_cast(m_target); QMT_CHECK(dobject); - if (isUpdating(object->stereotypes() != dobject->stereotypes())) { + if (isUpdating(object->stereotypes() != dobject->stereotypes())) dobject->setStereotypes(object->stereotypes()); - } const MObject *objectOwner = object->owner(); const MObject *diagramOwner = m_diagram->owner(); if (objectOwner && diagramOwner && objectOwner->uid() != diagramOwner->uid()) { - if (isUpdating(objectOwner->name() != dobject->context())) { + if (isUpdating(objectOwner->name() != dobject->context())) dobject->setContext(objectOwner->name()); - } } else { - if (isUpdating(!dobject->context().isEmpty())) { + if (isUpdating(!dobject->context().isEmpty())) dobject->setContext(QString()); - } } - if (isUpdating(object->name() != dobject->name())) { + if (isUpdating(object->name() != dobject->name())) dobject->setName(object->name()); - } // TODO unlikely that this is called for all objects if hierarchy is modified // PERFORM remove loop int depth = 1; @@ -104,9 +99,8 @@ void DUpdateVisitor::visitMObject(const MObject *object) owner = owner->owner(); depth += 1; } - if (isUpdating(depth != dobject->depth())) { + if (isUpdating(depth != dobject->depth())) dobject->setDepth(depth); - } visitMElement(object); } @@ -119,15 +113,12 @@ void DUpdateVisitor::visitMClass(const MClass *klass) { DClass *dclass = dynamic_cast(m_target); QMT_CHECK(dclass); - if (isUpdating(klass->umlNamespace() != dclass->umlNamespace())) { + if (isUpdating(klass->umlNamespace() != dclass->umlNamespace())) dclass->setUmlNamespace(klass->umlNamespace()); - } - if (isUpdating(klass->templateParameters() != dclass->templateParameters())) { + if (isUpdating(klass->templateParameters() != dclass->templateParameters())) dclass->setTemplateParameters(klass->templateParameters()); - } - if (isUpdating(klass->members() != dclass->members())) { + if (isUpdating(klass->members() != dclass->members())) dclass->setMembers(klass->members()); - } visitMObject(klass); } @@ -150,12 +141,10 @@ void DUpdateVisitor::visitMItem(const MItem *item) { DItem *ditem = dynamic_cast(m_target); QMT_CHECK(ditem); - if (isUpdating(item->isShapeEditable() != ditem->isShapeEditable())) { + if (isUpdating(item->isShapeEditable() != ditem->isShapeEditable())) ditem->setShapeEditable(item->isShapeEditable()); - } - if (isUpdating(item->variety() != ditem->variety())) { + if (isUpdating(item->variety() != ditem->variety())) ditem->setVariety(item->variety()); - } visitMObject(item); } @@ -163,12 +152,10 @@ void DUpdateVisitor::visitMRelation(const MRelation *relation) { DRelation *drelation = dynamic_cast(m_target); QMT_CHECK(drelation); - if (isUpdating(relation->stereotypes() != drelation->stereotypes())) { + if (isUpdating(relation->stereotypes() != drelation->stereotypes())) drelation->setStereotypes(relation->stereotypes()); - } - if (isUpdating(relation->name() != drelation->name())) { + if (isUpdating(relation->name() != drelation->name())) drelation->setName(relation->name()); - } visitMElement(relation); } @@ -176,9 +163,8 @@ void DUpdateVisitor::visitMDependency(const MDependency *dependency) { DDependency *ddependency = dynamic_cast(m_target); QMT_CHECK(ddependency); - if (isUpdating(dependency->direction() != ddependency->direction())) { + if (isUpdating(dependency->direction() != ddependency->direction())) ddependency->setDirection(dependency->direction()); - } visitMRelation(dependency); } @@ -196,29 +182,26 @@ void DUpdateVisitor::visitMAssociation(const MAssociation *association) endA.setCardinatlity(association->endA().cardinality()); endA.setNavigable(association->endA().isNavigable()); endA.setKind(association->endA().kind()); - if (isUpdating(endA != dassociation->endA())) { + if (isUpdating(endA != dassociation->endA())) dassociation->setEndA(endA); - } DAssociationEnd endB; endB.setName(association->endB().name()); endB.setCardinatlity(association->endB().cardinality()); endB.setNavigable(association->endB().isNavigable()); endB.setKind(association->endB().kind()); - if (isUpdating(endB != dassociation->endB())) { + if (isUpdating(endB != dassociation->endB())) dassociation->setEndB(endB); - } visitMRelation(association); } bool DUpdateVisitor::isUpdating(bool valueChanged) { if (m_checkNeedsUpdate) { - if (valueChanged) { + if (valueChanged) m_isUpdateNeeded = true; - } return false; } return valueChanged; } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_controller/dupdatevisitor.h b/src/libs/3rdparty/modeling/qmt/diagram_controller/dupdatevisitor.h index 849c7c0415b..b16ca6b8153 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_controller/dupdatevisitor.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_controller/dupdatevisitor.h @@ -34,63 +34,40 @@ #include "qmt/model/mconstvisitor.h" #include "qmt/infrastructure/qmt_global.h" - namespace qmt { class DElement; - -class QMT_EXPORT DUpdateVisitor : - public MConstVisitor +class QMT_EXPORT DUpdateVisitor : public MConstVisitor { public: DUpdateVisitor(DElement *target, const MDiagram *diagram, bool checkNeedsUpdate = false); -public: - bool isUpdateNeeded() const { return m_isUpdateNeeded; } - void setCheckNeedsUpdate(bool checkNeedsUpdate); void visitMElement(const MElement *element); - void visitMObject(const MObject *object); - void visitMPackage(const MPackage *package); - void visitMClass(const MClass *klass); - void visitMComponent(const MComponent *component); - void visitMDiagram(const MDiagram *diagram); - void visitMCanvasDiagram(const MCanvasDiagram *diagram); - void visitMItem(const MItem *item); - void visitMRelation(const MRelation *relation); - void visitMDependency(const MDependency *dependency); - void visitMInheritance(const MInheritance *inheritance); - void visitMAssociation(const MAssociation *association); private: - bool isUpdating(bool valueChanged); -private: - DElement *m_target; - const MDiagram *m_diagram; - bool m_checkNeedsUpdate; - bool m_isUpdateNeeded; }; -} +} // namespace qmt #endif // QMT_DUPDATEVISITOR_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_controller/dvoidvisitor.cpp b/src/libs/3rdparty/modeling/qmt/diagram_controller/dvoidvisitor.cpp index 28f7ec599b2..8e4c6ac4cca 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_controller/dvoidvisitor.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_controller/dvoidvisitor.cpp @@ -115,8 +115,6 @@ void DVoidVisitor::visitDBoundary(DBoundary *boundary) visitDElement(boundary); } - - DConstVoidVisitor::DConstVoidVisitor() { } @@ -186,5 +184,4 @@ void DConstVoidVisitor::visitDBoundary(const DBoundary *boundary) visitDElement(boundary); } -} - +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_controller/dvoidvisitor.h b/src/libs/3rdparty/modeling/qmt/diagram_controller/dvoidvisitor.h index a8484bc8d78..0f2fd7d4193 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_controller/dvoidvisitor.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_controller/dvoidvisitor.h @@ -35,77 +35,48 @@ #include "qmt/diagram/dconstvisitor.h" #include "qmt/infrastructure/qmt_global.h" - namespace qmt { -class QMT_EXPORT DVoidVisitor : - public DVisitor +class QMT_EXPORT DVoidVisitor : public DVisitor { public: DVoidVisitor(); void visitDElement(DElement *element); - void visitDObject(DObject *object); - void visitDPackage(DPackage *package); - void visitDClass(DClass *klass); - void visitDComponent(DComponent *component); - void visitDDiagram(DDiagram *diagram); - void visitDItem(DItem *item); - void visitDRelation(DRelation *relation); - void visitDInheritance(DInheritance *inheritance); - void visitDDependency(DDependency *dependency); - void visitDAssociation(DAssociation *association); - void visitDAnnotation(DAnnotation *annotation); - void visitDBoundary(DBoundary *boundary); - }; -class QMT_EXPORT DConstVoidVisitor : - public DConstVisitor +class QMT_EXPORT DConstVoidVisitor : public DConstVisitor { public: DConstVoidVisitor(); void visitDElement(const DElement *element); - void visitDObject(const DObject *object); - void visitDPackage(const DPackage *package); - void visitDClass(const DClass *klass); - void visitDComponent(const DComponent *component); - void visitDDiagram(const DDiagram *diagram); - void visitDItem(const DItem *item); - void visitDRelation(const DRelation *relation); - void visitDInheritance(const DInheritance *inheritance); - void visitDDependency(const DDependency *dependency); - void visitDAssociation(const DAssociation *association); - void visitDAnnotation(const DAnnotation *annotation); - void visitDBoundary(const DBoundary *boundary); - }; -} +} // namespace qmt #endif // DVOIDVISITOR_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/alignable.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/alignable.h index 47e71401a44..c95a9e2329a 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/alignable.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/alignable.h @@ -33,11 +33,10 @@ #include - namespace qmt { -class IAlignable { - +class IAlignable +{ public: enum AlignType { AlignLeft, @@ -51,15 +50,11 @@ public: AlignSize }; -public: - virtual ~IAlignable() { } -public: - virtual void align(AlignType alignType, const QString &identifier) = 0; }; -} +} // namespace qmt #endif // QMT_ALIGNABLE_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/editable.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/editable.h index 64c0bda7a31..a5b6215cac7 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/editable.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/editable.h @@ -33,17 +33,16 @@ namespace qmt { -class IEditable { +class IEditable +{ public: ~IEditable() { } -public: - virtual bool isEditable() const = 0; virtual void edit() = 0; }; -} +} // namespace qmt #endif // QMT_EDITABLE_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/intersectionable.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/intersectionable.h index fc1bee60a65..958edb64f07 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/intersectionable.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/intersectionable.h @@ -38,18 +38,16 @@ class QPointF; class QLineF; QT_END_NAMESPACE - namespace qmt { -class IIntersectionable { +class IIntersectionable +{ public: - virtual ~IIntersectionable() { } virtual bool intersectShapeWithLine(const QLineF &line, QPointF *intersectionPoint, QLineF *intersectionLine = 0) const = 0; - }; -} +} // namespace qmt #endif // QMT_INTERSECTIONABLE_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/latchable.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/latchable.h index 6e403fbe316..e4ffbf436a6 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/latchable.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/latchable.h @@ -35,9 +35,9 @@ namespace qmt { -class ILatchable { +class ILatchable +{ public: - enum Action { Move, ResizeLeft, @@ -83,16 +83,12 @@ public: QString m_identifier; }; -public: - virtual ~ILatchable() { } virtual QList horizontalLatches(Action action, bool grabbedItem) const = 0; - virtual QList verticalLatches(Action action, bool grabbedItem) const = 0; - }; -} +} // namespace qmt #endif // QMT_LATCHABLE_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/moveable.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/moveable.h index e35e54a2cf8..aef4eac91fa 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/moveable.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/moveable.h @@ -37,18 +37,17 @@ QT_BEGIN_NAMESPACE class QPointF; QT_END_NAMESPACE - namespace qmt { -class IMoveable { +class IMoveable +{ public: virtual ~IMoveable() { } virtual void moveDelta(const QPointF &delta) = 0; - virtual void alignItemPositionToRaster(double rasterWidth, double rasterHeight) = 0; }; -} +} // namespace qmt #endif // QMT_MOVEABLE_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/relationable.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/relationable.h index 23718fb333b..4de987a2f50 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/relationable.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/relationable.h @@ -35,22 +35,20 @@ QT_BEGIN_NAMESPACE class QString; -class QGraphicsItem; class QPointF; QT_END_NAMESPACE - namespace qmt { -class IRelationable { +class IRelationable +{ public: virtual ~IRelationable() { } virtual QPointF relationStartPos() const = 0; - virtual void relationDrawn(const QString &id, const QPointF &toScenePos, const QList &intermediatePoints) = 0; }; -} +} // namespace qmt #endif // QMT_RELATIONABLE_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/resizable.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/resizable.h index 29c36d76a98..27758e7966d 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/resizable.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/resizable.h @@ -39,32 +39,27 @@ class QRectF; class QSizeF; QT_END_NAMESPACE - namespace qmt { -class IResizable { +class IResizable +{ public: - enum Side { SideNone, SideLeftOrTop, SideRightOrBottom }; -public: virtual ~IResizable() { } virtual QPointF pos() const = 0; - virtual QRectF rect() const = 0; - virtual QSizeF minimumSize() const = 0; virtual void setPosAndRect(const QPointF &originalPos, const QRectF &originalRect, const QPointF &topLeftDelta, const QPointF &bottomRightDelta) = 0; - virtual void alignItemSizeToRaster(Side adjustHorizontalSide, Side adjustVerticalSide, double rasterWidth, double rasterHeight) = 0; }; -} +} // namespace qmt #endif // QMT_RESIZABLE_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/selectable.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/selectable.h index 6ad18141c7a..ada6e6f6a78 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/selectable.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/selectable.h @@ -33,19 +33,17 @@ namespace qmt { -class ISelectable { +class ISelectable +{ public: virtual ~ISelectable() { } virtual bool isSecondarySelected() const = 0; - virtual void setSecondarySelected(bool secondarySelected) = 0; - virtual bool isFocusSelected() const = 0; - virtual void setFocusSelected(bool focusSelected) = 0; }; -} +} // namespace qmt #endif // QMT_SELECTABLE_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/windable.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/windable.h index 63e4e3ee2ab..cdf0d4aaa8b 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/windable.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/capabilities/windable.h @@ -37,25 +37,20 @@ QT_BEGIN_NAMESPACE class QPointF; QT_END_NAMESPACE - namespace qmt { -class IWindable { +class IWindable +{ public: - virtual ~IWindable() { } virtual QPointF handlePos(int index) = 0; - virtual void insertHandle(int beforeIndex, const QPointF &pos) = 0; - virtual void deleteHandle(int index) = 0; - virtual void setHandlePos(int index, const QPointF &pos) = 0; - virtual void alignHandleToRaster(int index, double rasterWidth, double rasterHeight) = 0; }; -} +} // namespace qmt #endif // QMT_WINDABLE_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramgraphicsscene.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramgraphicsscene.cpp index b1bc28334e1..eb369989da9 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramgraphicsscene.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramgraphicsscene.cpp @@ -32,9 +32,6 @@ #include "diagramscenemodel.h" -#include - - namespace qmt { DiagramGraphicsScene::DiagramGraphicsScene(DiagramSceneModel *diagramSceneModel, QObject *parent) @@ -141,4 +138,4 @@ void DiagramGraphicsScene::inputMethodEvent(QInputMethodEvent *event) QGraphicsScene::inputMethodEvent(event); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramgraphicsscene.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramgraphicsscene.h index 299d9119593..b1c2e860f64 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramgraphicsscene.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramgraphicsscene.h @@ -34,69 +34,45 @@ #include #include "qmt/infrastructure/qmt_global.h" - namespace qmt { class DiagramSceneModel; -class QMT_EXPORT DiagramGraphicsScene : - public QGraphicsScene +class QMT_EXPORT DiagramGraphicsScene : public QGraphicsScene { Q_OBJECT public: DiagramGraphicsScene(DiagramSceneModel *diagramSceneModel, QObject *parent = 0); - ~DiagramGraphicsScene(); signals: - void sceneActivated(); protected: - bool event(QEvent *event); - bool eventFilter(QObject *watched, QEvent *event); - void contextMenuEvent(QGraphicsSceneContextMenuEvent *event); - void dragEnterEvent(QGraphicsSceneDragDropEvent *event); - void dragMoveEvent(QGraphicsSceneDragDropEvent *event); - void dragLeaveEvent(QGraphicsSceneDragDropEvent *event); - void dropEvent(QGraphicsSceneDragDropEvent *event); - void focusInEvent(QFocusEvent *event); - void focusOutEvent(QFocusEvent *event); - void helpEvent(QGraphicsSceneHelpEvent *event); - void keyPressEvent(QKeyEvent *event); - void keyReleaseEvent(QKeyEvent *event); - void mousePressEvent(QGraphicsSceneMouseEvent *event); - void mouseMoveEvent(QGraphicsSceneMouseEvent *event); - void mouseReleaseEvent(QGraphicsSceneMouseEvent *event); - void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event); - void wheelEvent(QGraphicsSceneWheelEvent *event); - void inputMethodEvent(QInputMethodEvent *event); private: - DiagramSceneModel *m_diagramSceneModel; - }; -} +} // namespace qmt #endif // QMT_DIAGRAMGRAPHICSSCENE_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramsceneconstants.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramsceneconstants.h index 94a04f5472b..b6358daa463 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramsceneconstants.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramsceneconstants.h @@ -34,33 +34,21 @@ namespace qmt { const int BOUNDARY_ITEMS_ZVALUE = -1000; - // all model objects have z-values from -500 to 500 depending on their depth in the model tree - const int RELATION_ITEMS_ZVALUE = 1000; - const int RELATION_ITEMS_ZVALUE_SELECTED = 1001; - const int ANNOTATION_ITEMS_ZVALUE = 1500; - const int RELATION_STARTER_ZVALUE = 2000; - const int LATCH_LINES_ZVALUE = 3000; - const int ALIGN_BUTTONS_ZVALUE = 3500; - const int PREVIEW_RELATION_ZVALUE = 4000; - const double RASTER_WIDTH = 5.0; - const double RASTER_HEIGHT = 5.0; - const double CUSTOM_ICON_MINIMUM_AUTO_WIDTH = 40.0; // must be n * 2 * RASTER_WIDTH - const double CUSTOM_ICON_MINIMUM_AUTO_HEIGHT = 40.0; // must be n * 2 * RASTER_HEIGHT -} +} // namespace qmt #endif // QMT_DIAGRAMSCENECONSTANTS_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramscenemodel.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramscenemodel.cpp index 8f2e1ff5c18..70c6abb5737 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramscenemodel.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramscenemodel.cpp @@ -67,13 +67,9 @@ #include #endif -#include - - namespace qmt { -class DiagramSceneModel::OriginItem : - public QGraphicsItem +class DiagramSceneModel::OriginItem : public QGraphicsItem { public: OriginItem(QGraphicsItem *parent = 0) @@ -98,7 +94,6 @@ public: } }; - DiagramSceneModel::DiagramSceneModel(QObject *parent) : QObject(parent), m_diagramController(0), @@ -127,17 +122,15 @@ DiagramSceneModel::~DiagramSceneModel() QMT_CHECK(m_busyState == NotBusy); m_latchController->removeFromGraphicsScene(m_graphicsScene); disconnect(); - if (m_diagramController) { + if (m_diagramController) disconnect(m_diagramController, 0, this, 0); - } m_graphicsScene->deleteLater(); } void DiagramSceneModel::setDiagramController(DiagramController *diagramController) { - if (m_diagramController == diagramController) { + if (m_diagramController == diagramController) return; - } if (m_diagramController) { disconnect(m_diagramController, 0, this, 0); m_diagramController = 0; @@ -199,9 +192,8 @@ bool DiagramSceneModel::hasMultiObjectsSelection() const QMT_CHECK(element); if (dynamic_cast(element) != 0) { ++count; - if (count > 1) { + if (count > 1) return true; - } } } return false; @@ -223,9 +215,8 @@ DElement *DiagramSceneModel::findTopmostElement(const QPointF &scenePos) const // fetch affected items from scene in correct drawing order to find topmost element QList items = m_graphicsScene->items(scenePos); foreach (QGraphicsItem *item, items) { - if (m_graphicsItems.contains(item)) { + if (m_graphicsItems.contains(item)) return m_itemToElementMap.value(item); - } } return 0; } @@ -258,30 +249,26 @@ bool DiagramSceneModel::isElementEditable(const DElement *element) const void DiagramSceneModel::selectAllElements() { - foreach (QGraphicsItem *item, m_graphicsItems) { + foreach (QGraphicsItem *item, m_graphicsItems) item->setSelected(true); - } } void DiagramSceneModel::selectElement(DElement *element) { QGraphicsItem *selectItem = m_elementToItemMap.value(element); foreach (QGraphicsItem *item, m_selectedItems) { - if (item != selectItem) { + if (item != selectItem) item->setSelected(false); - } } - if (selectItem) { + if (selectItem) selectItem->setSelected(true); - } } void DiagramSceneModel::editElement(DElement *element) { IEditable *editable = dynamic_cast(m_elementToItemMap.value(element)); - if (editable != 0 && editable->isEditable()) { + if (editable != 0 && editable->isEditable()) editable->edit(); - } } void DiagramSceneModel::copyToClipboard() @@ -403,9 +390,7 @@ bool DiagramSceneModel::exportPng(const QString &fileName) painter.end(); bool success = image.save(fileName); - addExtraSceneItems(); - return success; } @@ -444,9 +429,8 @@ void DiagramSceneModel::selectItem(QGraphicsItem *item, bool multiSelect) if (!multiSelect) { if (!item->isSelected()) { foreach (QGraphicsItem *selectedItem, m_selectedItems) { - if (selectedItem != item) { + if (selectedItem != item) selectedItem->setSelected(false); - } } item->setSelected(true); } @@ -461,14 +445,12 @@ void DiagramSceneModel::moveSelectedItems(QGraphicsItem *grabbedItem, const QPoi if (delta != QPointF(0.0, 0.0)) { foreach (QGraphicsItem *item, m_selectedItems) { - if (IMoveable *moveable = dynamic_cast(item)) { + if (IMoveable *moveable = dynamic_cast(item)) moveable->moveDelta(delta); - } } foreach (QGraphicsItem *item, m_secondarySelectedItems) { - if (IMoveable *moveable = dynamic_cast(item)) { + if (IMoveable *moveable = dynamic_cast(item)) moveable->moveDelta(delta); - } } } } @@ -476,23 +458,20 @@ void DiagramSceneModel::moveSelectedItems(QGraphicsItem *grabbedItem, const QPoi void DiagramSceneModel::alignSelectedItemsPositionOnRaster() { foreach (QGraphicsItem *item, m_selectedItems) { - if (IMoveable *moveable = dynamic_cast(item)) { + if (IMoveable *moveable = dynamic_cast(item)) moveable->alignItemPositionToRaster(RASTER_WIDTH, RASTER_HEIGHT); - } } foreach (QGraphicsItem *item, m_secondarySelectedItems) { - if (IMoveable *moveable = dynamic_cast(item)) { + if (IMoveable *moveable = dynamic_cast(item)) moveable->alignItemPositionToRaster(RASTER_WIDTH, RASTER_HEIGHT); - } } } void DiagramSceneModel::onDoubleClickedItem(QGraphicsItem *item) { DElement *element = m_itemToElementMap.value(item); - if (item) { + if (item) m_diagramSceneController->elementTasks()->openElement(element, m_diagram); - } } QList DiagramSceneModel::collectCollidingObjectItems(const QGraphicsItem *item, CollidingMode collidingMode) const @@ -500,9 +479,8 @@ QList DiagramSceneModel::collectCollidingObjectItems(const QGra QList collidingItems; const IResizable *resizable = dynamic_cast(item); - if (!resizable) { + if (!resizable) return collidingItems; - } QRectF rect = resizable->rect(); rect.translate(resizable->pos()); @@ -582,9 +560,8 @@ void DiagramSceneModel::mouseMoveEventReparenting(QGraphicsSceneMouseEvent *even view->setCursor(QCursor(Qt::OpenHandCursor)); } } else { - foreach (QGraphicsView *view, m_graphicsScene->views()) { + foreach (QGraphicsView *view, m_graphicsScene->views()) view->unsetCursor(); - } } } @@ -605,13 +582,11 @@ void DiagramSceneModel::mouseReleaseEventReparenting(QGraphicsSceneMouseEvent *e if (!selectedItemSet.contains(item)) { // the item may be any graphics item not matching to a DElement DElement *element = m_itemToElementMap.value(item); - if (element && element->modelUid().isValid()) { + if (element && element->modelUid().isValid()) newOwner = modelController->findElement(element->modelUid()); - } } - if (newOwner) { + if (newOwner) break; - } } if (newOwner) { foreach (QGraphicsItem *item, m_graphicsScene->selectedItems()) { @@ -620,17 +595,15 @@ void DiagramSceneModel::mouseReleaseEventReparenting(QGraphicsSceneMouseEvent *e if (element->modelUid().isValid()) { MObject *modelObject = modelController->findObject(element->modelUid()); if (modelObject) { - if (newOwner != modelObject->owner()) { + if (newOwner != modelObject->owner()) modelController->moveObject(newOwner, modelObject); - } } } } } } - foreach (QGraphicsView *view, m_graphicsScene->views()) { + foreach (QGraphicsView *view, m_graphicsScene->views()) view->unsetCursor(); - } } void DiagramSceneModel::onBeginResetAllDiagrams() @@ -647,9 +620,8 @@ void DiagramSceneModel::onBeginResetDiagram(const MDiagram *diagram) { QMT_CHECK(m_busyState == NotBusy); m_busyState = ResetDiagram; - if (diagram == m_diagram) { + if (diagram == m_diagram) clearGraphicsScene(); - } } void DiagramSceneModel::onEndResetDiagram(const MDiagram *diagram) @@ -666,9 +638,8 @@ void DiagramSceneModel::onEndResetDiagram(const MDiagram *diagram) // invalidate scene m_graphicsScene->invalidate(); // update graphics items again so every item gets a correct list of colliding items - foreach (DElement *element, diagram->diagramElements()) { + foreach (DElement *element, diagram->diagramElements()) updateGraphicsItem(m_elementToItemMap.value(element), element); - } } m_busyState = NotBusy; } @@ -873,9 +844,8 @@ void DiagramSceneModel::deleteGraphicsItem(QGraphicsItem *item, DElement *elemen { QMT_CHECK(m_elementToItemMap.contains(element)); QMT_CHECK(m_itemToElementMap.contains(item)); - if (item == m_focusItem) { + if (item == m_focusItem) unsetFocusItem(); - } m_graphicsScene->removeItem(item); m_elementToItemMap.remove(element); m_itemToElementMap.remove(item); @@ -892,9 +862,8 @@ void DiagramSceneModel::updateFocusItem(const QSet &selectedIte if (mouseGrabberItem && selectedItems.contains(mouseGrabberItem)) { selectable = dynamic_cast(mouseGrabberItem); - if (selectable) { + if (selectable) focusItem = mouseGrabberItem; - } } if (focusItem && focusItem != m_focusItem) { unsetFocusItem(); @@ -908,11 +877,10 @@ void DiagramSceneModel::updateFocusItem(const QSet &selectedIte void DiagramSceneModel::unsetFocusItem() { if (m_focusItem) { - if (ISelectable *oldSelectable = dynamic_cast(m_focusItem)) { + if (ISelectable *oldSelectable = dynamic_cast(m_focusItem)) oldSelectable->setFocusSelected(false); - } else { + else QMT_CHECK(false); - } m_focusItem = 0; } } @@ -925,11 +893,10 @@ bool DiagramSceneModel::isInFrontOf(const QGraphicsItem *frontItem, const QGraph // shortcut for usual case of root items if (frontItem->parentItem() == 0 && backItem->parentItem() == 0) { foreach (const QGraphicsItem *item, m_graphicsScene->items()) { - if (item == frontItem) { + if (item == frontItem) return true; - } else if (item == backItem) { + else if (item == backItem) return false; - } } QMT_CHECK(false); return false; @@ -977,17 +944,15 @@ bool DiagramSceneModel::isInFrontOf(const QGraphicsItem *frontItem, const QGraph return frontItem->zValue() > backItem->zValue(); } else { QList children; - if (frontIndex + 1 < frontStack.size()) { + if (frontIndex + 1 < frontStack.size()) children = frontStack.at(frontIndex + 1)->childItems(); - } else { + else children = m_graphicsScene->items(Qt::AscendingOrder); - } foreach (const QGraphicsItem *item, children) { - if (item == frontItem) { + if (item == frontItem) return false; - } else if (item == backItem) { + else if (item == backItem) return true; - } } QMT_CHECK(false); return false; @@ -995,4 +960,4 @@ bool DiagramSceneModel::isInFrontOf(const QGraphicsItem *frontItem, const QGraph } } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramscenemodel.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramscenemodel.h index 5e1274c4415..e1a60fc0c6b 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramscenemodel.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramscenemodel.h @@ -45,7 +45,6 @@ class QGraphicsScene; class QGraphicsSceneMouseEvent; QT_END_NAMESPACE - namespace qmt { class DiagramGraphicsScene; @@ -61,8 +60,7 @@ class MDiagram; class DElement; class DObject; -class QMT_EXPORT DiagramSceneModel : - public QObject +class QMT_EXPORT DiagramSceneModel : public QObject { Q_OBJECT @@ -74,168 +72,93 @@ class QMT_EXPORT DiagramSceneModel : friend class DiagramGraphicsScene; public: - enum CollidingMode { CollidingInnerItems, CollidingItems, CollidingOuterItems }; - -public: - DiagramSceneModel(QObject *parent = 0); - ~DiagramSceneModel(); signals: - void diagramSceneActivated(const MDiagram *diagram); - void selectionHasChanged(const MDiagram *diagram); public: - DiagramController *diagramController() const { return m_diagramController; } - void setDiagramController(DiagramController *diagramController); - DiagramSceneController *diagramSceneController() const { return m_diagramSceneController; } - void setDiagramSceneController(DiagramSceneController *diagramSceneController); - StyleController *styleController() const { return m_styleController; } - void setStyleController(StyleController *styleController); - StereotypeController *stereotypeController() const { return m_stereotypeController; } - void setStereotypeController(StereotypeController *stereotypeController); - MDiagram *diagram() const { return m_diagram; } - void setDiagram(MDiagram *diagram); - QGraphicsScene *graphicsScene() const; -public: - bool hasSelection() const; - bool hasMultiObjectsSelection() const; - DSelection selectedElements() const; - DElement *findTopmostElement(const QPointF &scenePos) const; -public: - QList graphicsItems() const { return m_graphicsItems; } - QGraphicsItem *graphicsItem(DElement *element) const; - QGraphicsItem *graphicsItem(const Uid &uid) const; - QGraphicsItem *focusItem() const { return m_focusItem; } - bool isSelectedItem(QGraphicsItem *item) const; - QSet selectedItems() const { return m_selectedItems; } - DElement *element(QGraphicsItem *item) const; - bool isElementEditable(const DElement *element) const; -public: - void selectAllElements(); - void selectElement(DElement *element); - void editElement(DElement *element); - void copyToClipboard(); - bool exportPng(const QString &fileName); - void exportPdf(const QString &fileName); -public: - void selectItem(QGraphicsItem *item, bool multiSelect); - void moveSelectedItems(QGraphicsItem *grabbedItem, const QPointF &delta); - void alignSelectedItemsPositionOnRaster(); - void onDoubleClickedItem(QGraphicsItem *item); - QList collectCollidingObjectItems(const QGraphicsItem *item, CollidingMode collidingMode) const; private: - void sceneActivated(); - void mousePressEvent(QGraphicsSceneMouseEvent *event); - void mousePressEventReparenting(QGraphicsSceneMouseEvent *event); - void mouseMoveEvent(QGraphicsSceneMouseEvent *event); - void mouseMoveEventReparenting(QGraphicsSceneMouseEvent *event); - void mouseReleaseEvent(QGraphicsSceneMouseEvent *event); - void mouseReleaseEventReparenting(QGraphicsSceneMouseEvent *event); private slots: - void onBeginResetAllDiagrams(); - void onEndResetAllDiagrams(); - void onBeginResetDiagram(const MDiagram *diagram); - void onEndResetDiagram(const MDiagram *diagram); - void onBeginUpdateElement(int row, const MDiagram *diagram); - void onEndUpdateElement(int row, const MDiagram *diagram); - void onBeginInsertElement(int row, const MDiagram *diagram); - void onEndInsertElement(int row, const MDiagram *diagram); - void onBeginRemoveElement(int row, const MDiagram *diagram); - void onEndRemoveElement(int row, const MDiagram *diagram); -private slots: - void onSelectionChanged(); private: - void clearGraphicsScene(); - void removeExtraSceneItems(); - void addExtraSceneItems(); - QGraphicsItem *createGraphicsItem(DElement *element); - void updateGraphicsItem(QGraphicsItem *item, DElement *element); - void deleteGraphicsItem(QGraphicsItem *item, DElement *element); - void updateFocusItem(const QSet &selectedItems); - void unsetFocusItem(); - bool isInFrontOf(const QGraphicsItem *frontItem, const QGraphicsItem *backItem); -private: - enum Busy { NotBusy, ResetDiagram, @@ -244,39 +167,23 @@ private: RemoveElement }; -private: - DiagramController *m_diagramController; - DiagramSceneController *m_diagramSceneController; - StyleController *m_styleController; - StereotypeController *m_stereotypeController; - MDiagram *m_diagram; - DiagramGraphicsScene *m_graphicsScene; - LatchController *m_latchController; - QList m_graphicsItems; - QHash m_itemToElementMap; - QHash m_elementToItemMap; - QSet m_selectedItems; - QSet m_secondarySelectedItems; - Busy m_busyState; - OriginItem *m_originItem; - QGraphicsItem *m_focusItem; }; -} +} // namespace qmt #endif // QMT_DIAGRAMSCENEMODEL_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramscenemodelitemvisitors.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramscenemodelitemvisitors.cpp index 09c83f0e2e6..d913d15567b 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramscenemodelitemvisitors.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramscenemodelitemvisitors.cpp @@ -55,7 +55,6 @@ #include "qmt/diagram/dboundary.h" #include "qmt/infrastructure/qmtassert.h" - namespace qmt { DiagramSceneModel::CreationVisitor::CreationVisitor(DiagramSceneModel *diagramSceneModel) @@ -140,8 +139,6 @@ void DiagramSceneModel::CreationVisitor::visitDBoundary(DBoundary *boundary) m_graphicsItem = new BoundaryItem(boundary, m_diagramSceneModel); } - - DiagramSceneModel::UpdateVisitor::UpdateVisitor(QGraphicsItem *item, DiagramSceneModel *diagramSceneModel, DElement *relatedElement) : m_graphicsItem(item), m_diagramSceneModel(diagramSceneModel), @@ -289,4 +286,4 @@ void DiagramSceneModel::UpdateVisitor::visitDBoundary(DBoundary *boundary) boundaryItem->update(); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramscenemodelitemvisitors.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramscenemodelitemvisitors.h index fb80efeea9a..dd773794299 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramscenemodelitemvisitors.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/diagramscenemodelitemvisitors.h @@ -37,96 +37,57 @@ namespace qmt { -class QMT_EXPORT DiagramSceneModel::CreationVisitor : - public DVisitor +class QMT_EXPORT DiagramSceneModel::CreationVisitor : public DVisitor { public: - CreationVisitor(DiagramSceneModel *diagramSceneModel); -public: - QGraphicsItem *createdGraphicsItem() const { return m_graphicsItem; } -public: - void visitDElement(DElement *element); - void visitDObject(DObject *object); - void visitDPackage(DPackage *package); - void visitDClass(DClass *klass); - void visitDComponent(DComponent *component); - void visitDDiagram(DDiagram *diagram); - void visitDItem(DItem *item); - void visitDRelation(DRelation *relation); - void visitDInheritance(DInheritance *inheritance); - void visitDDependency(DDependency *dependency); - void visitDAssociation(DAssociation *association); - void visitDAnnotation(DAnnotation *annotation); - void visitDBoundary(DBoundary *boundary); private: - DiagramSceneModel *m_diagramSceneModel; - QGraphicsItem *m_graphicsItem; }; -class DiagramSceneModel::UpdateVisitor : - public DVisitor +class DiagramSceneModel::UpdateVisitor : public DVisitor { public: - UpdateVisitor(QGraphicsItem *item, DiagramSceneModel *diagramSceneModel, DElement *relatedElement = 0); -public: - void visitDElement(DElement *element); - void visitDObject(DObject *object); - void visitDPackage(DPackage *package); - void visitDClass(DClass *klass); - void visitDComponent(DComponent *component); - void visitDDiagram(DDiagram *diagram); - void visitDItem(DItem *item); - void visitDRelation(DRelation *relation); - void visitDInheritance(DInheritance *inheritance); - void visitDDependency(DDependency *dependency); - void visitDAssociation(DAssociation *association); - void visitDAnnotation(DAnnotation *annotation); - void visitDBoundary(DBoundary *boundary); private: - QGraphicsItem *m_graphicsItem; - DiagramSceneModel *m_diagramSceneModel; - DElement *m_relatedElement; }; -} +} // namespace qmt #endif // QMT_DIAGRAMSCENEMODELITEMVISITORS_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/annotationitem.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/annotationitem.cpp index f0a2d122901..287a29bd4d8 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/annotationitem.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/annotationitem.cpp @@ -49,16 +49,13 @@ #include #include - namespace qmt { static const qreal MINIMUM_TEXT_WIDTH = 20.0; static const qreal CONTENTS_BORDER_VERTICAL = 4.0; static const qreal CONTENTS_BORDER_HORIZONTAL = 4.0; - -class AnnotationItem::AnnotationTextItem : - public QGraphicsTextItem +class AnnotationItem::AnnotationTextItem : public QGraphicsTextItem { public: AnnotationTextItem(QGraphicsItem *parent) @@ -76,7 +73,6 @@ public: } }; - AnnotationItem::AnnotationItem(DAnnotation *annotation, DiagramSceneModel *diagramSceneModel, QGraphicsItem *parent) : QGraphicsItem(parent), m_annotation(annotation), @@ -127,21 +123,17 @@ void AnnotationItem::update() } m_textItem->setFont(style->normalFont()); m_textItem->setDefaultTextColor(style->textBrush().color()); - if (!m_isChanged) { + if (!m_isChanged) m_textItem->setPlainText(annotation()->text()); - } // item shown if annotation has no text and is not selected - if (!m_noTextItem) { + if (!m_noTextItem) m_noTextItem = new QGraphicsRectItem(this); - } m_noTextItem->setPen(QPen(QBrush(QColor(192, 192, 192)), 1, Qt::DashDotLine)); m_noTextItem->setVisible(!isSelected() && m_textItem->document()->isEmpty()); updateSelectionMarker(); - updateGeometry(); - setZValue(ANNOTATION_ITEMS_ZVALUE); m_isUpdating = false; @@ -170,9 +162,8 @@ void AnnotationItem::setPosAndRect(const QPointF &originalPos, const QRectF &ori if (newPos != m_annotation->pos() || newRect != m_annotation->rect()) { m_diagramSceneModel->diagramController()->startUpdateElement(m_annotation, m_diagramSceneModel->diagram(), DiagramController::UpdateGeometry); m_annotation->setPos(newPos); - if (newRect.size() != m_annotation->rect().size()) { + if (newRect.size() != m_annotation->rect().size()) m_annotation->setAutoSized(false); - } m_annotation->setRect(newRect); m_diagramSceneModel->diagramController()->finishUpdateElement(m_annotation, m_diagramSceneModel->diagram(), false); } @@ -239,35 +230,30 @@ bool AnnotationItem::isEditable() const void AnnotationItem::edit() { - if (m_textItem) { + if (m_textItem) m_textItem->setFocus(); - } } void AnnotationItem::mousePressEvent(QGraphicsSceneMouseEvent *event) { - if (event->button() == Qt::LeftButton || event->button() == Qt::RightButton) { + if (event->button() == Qt::LeftButton || event->button() == Qt::RightButton) m_diagramSceneModel->selectItem(this, event->modifiers() & Qt::ControlModifier); - } - if (event->buttons() & Qt::LeftButton) { + if (event->buttons() & Qt::LeftButton) m_diagramSceneModel->moveSelectedItems(this, QPointF(0.0, 0.0)); - } } void AnnotationItem::mouseMoveEvent(QGraphicsSceneMouseEvent *event) { - if (event->buttons() & Qt::LeftButton) { + if (event->buttons() & Qt::LeftButton) m_diagramSceneModel->moveSelectedItems(this, event->scenePos() - event->lastScenePos()); - } } void AnnotationItem::mouseReleaseEvent(QGraphicsSceneMouseEvent *event) { if (event->button() == Qt::LeftButton) { m_diagramSceneModel->moveSelectedItems(this, event->scenePos() - event->lastScenePos()); - if (event->scenePos() != event->buttonDownScenePos(Qt::LeftButton)) { + if (event->scenePos() != event->buttonDownScenePos(Qt::LeftButton)) m_diagramSceneModel->alignSelectedItemsPositionOnRaster(); - } } } @@ -281,9 +267,8 @@ void AnnotationItem::updateSelectionMarker() } m_selectionMarker->setSecondarySelected(isSelected() ? false : m_isSecondarySelected); } else if (m_selectionMarker) { - if (m_selectionMarker->scene()) { + if (m_selectionMarker->scene()) m_selectionMarker->scene()->removeItem(m_selectionMarker); - } delete m_selectionMarker; m_selectionMarker = 0; } @@ -291,9 +276,8 @@ void AnnotationItem::updateSelectionMarker() void AnnotationItem::updateSelectionMarkerGeometry(const QRectF &annotationRect) { - if (m_selectionMarker) { + if (m_selectionMarker) m_selectionMarker->setRect(annotationRect); - } } const Style *AnnotationItem::adaptedStyle() @@ -381,15 +365,13 @@ void AnnotationItem::updateGeometry() // a backup for the graphics item used for manual resized and persistency. annotation()->setRect(rect); - if (m_noTextItem) { + if (m_noTextItem) m_noTextItem->setRect(rect); - } - if (m_textItem) { + if (m_textItem) m_textItem->setPos(left + CONTENTS_BORDER_HORIZONTAL, top + CONTENTS_BORDER_VERTICAL); - } updateSelectionMarkerGeometry(rect); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/annotationitem.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/annotationitem.h index 767278a9b11..ba5277f033e 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/annotationitem.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/annotationitem.h @@ -38,7 +38,6 @@ #include "qmt/diagram_scene/capabilities/selectable.h" #include "qmt/diagram_scene/capabilities/editable.h" - namespace qmt { class DAnnotation; @@ -46,7 +45,6 @@ class DiagramSceneModel; class RectangularSelectionItem; class Style; - class AnnotationItem : public QGraphicsItem, public IResizable, @@ -57,110 +55,64 @@ class AnnotationItem : class AnnotationTextItem; public: - AnnotationItem(DAnnotation *annotation, DiagramSceneModel *diagramSceneModel, QGraphicsItem *parent = 0); - ~AnnotationItem(); -public: - DAnnotation *annotation() const { return m_annotation; } - DiagramSceneModel *diagramSceneModel() const { return m_diagramSceneModel; } - -public: - QRectF boundingRect() const; void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); -public: - virtual void update(); -public: - QPointF pos() const; - QRectF rect() const; - QSizeF minimumSize() const; void setPosAndRect(const QPointF &originalPos, const QRectF &originalRect, const QPointF &topLeftDelta, const QPointF &bottomRightDelta); - void alignItemSizeToRaster(Side adjustHorizontalSide, Side adjustVerticalSide, double rasterWidth, double rasterHeight); -public: - void moveDelta(const QPointF &delta); - void alignItemPositionToRaster(double rasterWidth, double rasterHeight); -public: - bool isSecondarySelected() const; - void setSecondarySelected(bool secondarySelected); - bool isFocusSelected() const; - void setFocusSelected(bool focusSelected); -public: - bool isEditable() const; - void edit(); protected: - void mousePressEvent(QGraphicsSceneMouseEvent *event); - void mouseMoveEvent(QGraphicsSceneMouseEvent *event); - void mouseReleaseEvent(QGraphicsSceneMouseEvent *event); -protected: - void updateSelectionMarker(); - void updateSelectionMarkerGeometry(const QRectF &annotationRect); - const Style *adaptedStyle(); bool sceneEventFilter(QGraphicsItem *watched, QEvent *event); private slots: - void onContentsChanged(); private: - QSizeF calcMinimumGeometry() const; - void updateGeometry(); -private: - DAnnotation *m_annotation; - DiagramSceneModel *m_diagramSceneModel; - bool m_isSecondarySelected; - bool m_isFocusSelected; - RectangularSelectionItem *m_selectionMarker; - QGraphicsRectItem *m_noTextItem; - AnnotationTextItem *m_textItem; - bool m_isUpdating; - bool m_isChanged; }; -} +} // namespace qmt #endif // QMT_ANNOTATIONITEM_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/associationitem.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/associationitem.cpp index e361265f727..e5845dee55f 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/associationitem.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/associationitem.cpp @@ -45,8 +45,6 @@ #include #include #include -#include - namespace qmt { @@ -85,9 +83,8 @@ void AssociationItem::updateEndLabels(const DAssociationEnd &end, const DAssocia Q_UNUSED(end); if (!otherEnd.name().isEmpty()) { - if (!*endName) { + if (!*endName) *endName = new QGraphicsSimpleTextItem(this); - } (*endName)->setFont(style->smallFont()); (*endName)->setBrush(style->textBrush()); (*endName)->setText(otherEnd.name()); @@ -98,9 +95,8 @@ void AssociationItem::updateEndLabels(const DAssociationEnd &end, const DAssocia } if (!otherEnd.cardinality().isEmpty()) { - if (!*endCardinality) { + if (!*endCardinality) *endCardinality = new QGraphicsSimpleTextItem(this); - } (*endCardinality)->setFont(style->smallFont()); (*endCardinality)->setBrush(style->textBrush()); (*endCardinality)->setText(otherEnd.cardinality()); @@ -120,27 +116,21 @@ void AssociationItem::placeEndLabels(const QLineF &lineSegment, QGraphicsItem *e double angle = GeometryUtilities::calcAngle(lineSegment); if (angle >= -5 && angle <= 5) { - if (endName) { + if (endName) endName->setPos(lineSegment.p1() + headOffset + sideOffset); - } - if (endCardinality) { + if (endCardinality) endCardinality->setPos(lineSegment.p1() + headOffset - sideOffset - endCardinality->boundingRect().bottomLeft()); - } } else if (angle <= -175 || angle >= 175) { - if (endName) { + if (endName) endName->setPos(lineSegment.p1() - headOffset + sideOffset - endName->boundingRect().topRight()); - } - if (endCardinality) { + if (endCardinality) endCardinality->setPos(lineSegment.p1() - headOffset - sideOffset - endCardinality->boundingRect().bottomRight()); - } } else { QRectF rect; - if (endCardinality) { + if (endCardinality) rect = endCardinality->boundingRect(); - } - if (endName) { + if (endName) rect = rect.united(endName->boundingRect().translated(rect.bottomLeft())); - } QPointF rectPlacement; GeometryUtilities::Side alignedSide = GeometryUtilities::SideUnspecified; @@ -150,9 +140,8 @@ void AssociationItem::placeEndLabels(const QLineF &lineSegment, QGraphicsItem *e QLineF intersectionLine; if (objectItem->intersectShapeWithLine(GeometryUtilities::stretch(lineSegment.translated(pos()), 2.0, 0.0), &intersectionPoint, &intersectionLine)) { - if (!GeometryUtilities::placeRectAtLine(rect, lineSegment, HEAD_OFFSET, SIDE_OFFSET, intersectionLine, &rectPlacement, &alignedSide)) { + if (!GeometryUtilities::placeRectAtLine(rect, lineSegment, HEAD_OFFSET, SIDE_OFFSET, intersectionLine, &rectPlacement, &alignedSide)) rectPlacement = intersectionPoint; - } } else { rectPlacement = lineSegment.p1(); } @@ -161,21 +150,19 @@ void AssociationItem::placeEndLabels(const QLineF &lineSegment, QGraphicsItem *e } if (endCardinality) { - if (alignedSide == GeometryUtilities::SideRight) { + if (alignedSide == GeometryUtilities::SideRight) endCardinality->setPos(rectPlacement + QPointF(rect.width() - endCardinality->boundingRect().width(), 0.0)); - } else { + else endCardinality->setPos(rectPlacement); - } rectPlacement += endCardinality->boundingRect().bottomLeft(); } if (endName) { - if (alignedSide == GeometryUtilities::SideRight) { + if (alignedSide == GeometryUtilities::SideRight) endName->setPos(rectPlacement + QPointF(rect.width() - endName->boundingRect().width(), 0.0)); - } else { + else endName->setPos(rectPlacement); - } } } } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/associationitem.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/associationitem.h index 7275fda83b8..c7625fb2fe1 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/associationitem.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/associationitem.h @@ -37,46 +37,31 @@ QT_BEGIN_NAMESPACE class QGraphicsSimpleTextItem; QT_END_NAMESPACE - namespace qmt { class DAssociation; class DAssociationEnd; - -class AssociationItem : - public RelationItem +class AssociationItem : public RelationItem { public: - AssociationItem(DAssociation *association, DiagramSceneModel *diagramSceneModel, QGraphicsItem *parent = 0); - ~AssociationItem(); protected: - virtual void update(const Style *style); private: - void updateEndLabels(const DAssociationEnd &end, const DAssociationEnd &otherEnd, QGraphicsSimpleTextItem **endName, QGraphicsSimpleTextItem **endCardinality, const Style *style); - void placeEndLabels(const QLineF &lineSegment, QGraphicsItem *endName, QGraphicsItem *endCardinality, QGraphicsItem *endItem, double headLength); -private: - DAssociation *m_association; - QGraphicsSimpleTextItem *m_endAName; - QGraphicsSimpleTextItem *m_endACardinality; - QGraphicsSimpleTextItem *m_endBName; - QGraphicsSimpleTextItem *m_endBCardinality; - }; -} +} // namespace qmt #endif // QMT_GRAPHICSASSOCIATIONITEM_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/boundaryitem.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/boundaryitem.cpp index 618ec80c3ba..7429645c2bd 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/boundaryitem.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/boundaryitem.cpp @@ -50,7 +50,6 @@ #include #include - namespace qmt { static const qreal MINIMUM_INNER_WIDTH = 22.0; @@ -58,9 +57,7 @@ static const qreal MINIMUM_INNER_HEIGHT = 22.0; static const qreal CONTENTS_BORDER_VERTICAL = 4.0; static const qreal CONTENTS_BORDER_HORIZONTAL = 4.0; - -class BoundaryItem::BoundaryTextItem : - public QGraphicsTextItem +class BoundaryItem::BoundaryTextItem : public QGraphicsTextItem { public: BoundaryTextItem(QGraphicsItem *parent) @@ -78,7 +75,6 @@ public: } }; - BoundaryItem::BoundaryItem(DBoundary *boundary, DiagramSceneModel *diagramSceneModel, QGraphicsItem *parent) : QGraphicsItem(parent), m_boundary(boundary), @@ -137,9 +133,8 @@ void BoundaryItem::update() // item shown if annotation has no text and is not selected if (m_textItem->document()->isEmpty() && isSelected()) { - if (!m_noTextItem) { + if (!m_noTextItem) m_noTextItem = new QGraphicsRectItem(this); - } m_noTextItem->setPen(QPen(QBrush(QColor(192, 192, 192)), 1, Qt::DashDotLine)); } else if (m_noTextItem) { m_noTextItem->scene()->removeItem(m_noTextItem); @@ -148,15 +143,12 @@ void BoundaryItem::update() } // item shown if annotation has no text and is not selected - if (!m_borderItem) { + if (!m_borderItem) m_borderItem = new QGraphicsRectItem(this); - } m_borderItem->setPen(QPen(QBrush(Qt::black), 1, Qt::DashLine)); updateSelectionMarker(); - updateGeometry(); - setZValue(BOUNDARY_ITEMS_ZVALUE); m_isUpdating = false; @@ -200,12 +192,10 @@ void BoundaryItem::alignItemSizeToRaster(IResizable::Side adjustHorizontalSide, // make sure the new size is at least the minimum size QSizeF minimumSize = this->minimumSize(); - while (rect.width() + horizDelta < minimumSize.width()) { + while (rect.width() + horizDelta < minimumSize.width()) horizDelta += rasterWidth; - } - while (rect.height() + vertDelta < minimumSize.height()) { + while (rect.height() + vertDelta < minimumSize.height()) vertDelta += rasterHeight; - } double leftDelta = 0.0; double rightDelta = 0.0; @@ -292,49 +282,42 @@ bool BoundaryItem::isEditable() const void BoundaryItem::edit() { - if (m_textItem) { + if (m_textItem) m_textItem->setFocus(); - } } void BoundaryItem::mousePressEvent(QGraphicsSceneMouseEvent *event) { - if (event->button() == Qt::LeftButton || event->button() == Qt::RightButton) { + if (event->button() == Qt::LeftButton || event->button() == Qt::RightButton) m_diagramSceneModel->selectItem(this, event->modifiers() & Qt::ControlModifier); - } - if (event->buttons() & Qt::LeftButton) { + if (event->buttons() & Qt::LeftButton) m_diagramSceneModel->moveSelectedItems(this, QPointF(0.0, 0.0)); - } } void BoundaryItem::mouseMoveEvent(QGraphicsSceneMouseEvent *event) { - if (event->buttons() & Qt::LeftButton) { + if (event->buttons() & Qt::LeftButton) m_diagramSceneModel->moveSelectedItems(this, event->scenePos() - event->lastScenePos()); - } } void BoundaryItem::mouseReleaseEvent(QGraphicsSceneMouseEvent *event) { if (event->button() == Qt::LeftButton) { m_diagramSceneModel->moveSelectedItems(this, event->scenePos() - event->lastScenePos()); - if (event->scenePos() != event->buttonDownScenePos(Qt::LeftButton)) { + if (event->scenePos() != event->buttonDownScenePos(Qt::LeftButton)) m_diagramSceneModel->alignSelectedItemsPositionOnRaster(); - } } } void BoundaryItem::updateSelectionMarker() { if (isSelected() || m_isSecondarySelected) { - if (!m_selectionMarker) { + if (!m_selectionMarker) m_selectionMarker = new RectangularSelectionItem(this, this); - } m_selectionMarker->setSecondarySelected(isSelected() ? false : m_isSecondarySelected); } else if (m_selectionMarker) { - if (m_selectionMarker->scene()) { + if (m_selectionMarker->scene()) m_selectionMarker->scene()->removeItem(m_selectionMarker); - } delete m_selectionMarker; m_selectionMarker = 0; } @@ -342,9 +325,8 @@ void BoundaryItem::updateSelectionMarker() void BoundaryItem::updateSelectionMarkerGeometry(const QRectF &boundaryRect) { - if (m_selectionMarker) { + if (m_selectionMarker) m_selectionMarker->setRect(boundaryRect); - } } const Style *BoundaryItem::adaptedStyle() @@ -389,13 +371,11 @@ QSizeF BoundaryItem::calcMinimumGeometry() const m_textItem->setTextWidth(-1); QSizeF textSize = m_textItem->document()->size(); qreal textWidth = textSize.width() + 2 * CONTENTS_BORDER_HORIZONTAL; - if (textWidth > width) { + if (textWidth > width) width = textWidth; - } qreal textHeight = textSize.height() + 2 * CONTENTS_BORDER_VERTICAL; - if (textHeight > height) { + if (textHeight > height) height = textHeight; - } } return GeometryUtilities::ensureMinimumRasterSize(QSizeF(width, height), 2 * RASTER_WIDTH, 2 * RASTER_HEIGHT); } @@ -418,12 +398,10 @@ void BoundaryItem::updateGeometry() } QRectF boundaryRect = m_boundary->rect(); - if (boundaryRect.width() > width) { + if (boundaryRect.width() > width) width = boundaryRect.width(); - } - if (boundaryRect.height() > height) { + if (boundaryRect.height() > height) height = boundaryRect.height(); - } // update sizes and positions double left = -width / 2.0; @@ -437,20 +415,13 @@ void BoundaryItem::updateGeometry() // attribute rect is not a real attribute stored on DObject but // a backup for the graphics item used for manual resized and persistency. m_boundary->setRect(rect); - - if (m_borderItem) { + if (m_borderItem) m_borderItem->setRect(rect); - } - - if (m_noTextItem) { + if (m_noTextItem) m_noTextItem->setRect(QRectF(-textWidth / 2, top + CONTENTS_BORDER_VERTICAL, textWidth, textHeight)); - } - - if (m_textItem) { + if (m_textItem) m_textItem->setPos(-textWidth / 2.0, top + CONTENTS_BORDER_VERTICAL); - } - updateSelectionMarkerGeometry(rect); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/boundaryitem.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/boundaryitem.h index 74510d038f5..c282c6f1ee0 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/boundaryitem.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/boundaryitem.h @@ -38,7 +38,6 @@ #include "qmt/diagram_scene/capabilities/selectable.h" #include "qmt/diagram_scene/capabilities/editable.h" - namespace qmt { class DBoundary; @@ -46,7 +45,6 @@ class DiagramSceneModel; class RectangularSelectionItem; class Style; - class BoundaryItem : public QGraphicsItem, public IResizable, @@ -58,110 +56,62 @@ class BoundaryItem : public: BoundaryItem(DBoundary *boundary, DiagramSceneModel *diagramSceneModel, QGraphicsItem *parent = 0); - ~BoundaryItem(); -public: - DBoundary *boundary() const { return m_boundary; } - DiagramSceneModel *diagramSceneModel() const { return m_diagramSceneModel; } -public: - QRectF boundingRect() const; - void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); -public: - virtual void update(); -public: - QPointF pos() const; - QRectF rect() const; - QSizeF minimumSize() const; - void setPosAndRect(const QPointF &originalPos, const QRectF &originalRect, const QPointF &topLeftDelta, const QPointF &bottomRightDelta); - void alignItemSizeToRaster(Side adjustHorizontalSide, Side adjustVerticalSide, double rasterWidth, double rasterHeight); -public: - void moveDelta(const QPointF &delta); - void alignItemPositionToRaster(double rasterWidth, double rasterHeight); -public: - bool isSecondarySelected() const; - void setSecondarySelected(bool secondarySelected); - bool isFocusSelected() const; - void setFocusSelected(bool focusSelected); -public: - bool isEditable() const; - void edit(); protected: - void mousePressEvent(QGraphicsSceneMouseEvent *event); - void mouseMoveEvent(QGraphicsSceneMouseEvent *event); - void mouseReleaseEvent(QGraphicsSceneMouseEvent *event); -protected: - void updateSelectionMarker(); - void updateSelectionMarkerGeometry(const QRectF &boundaryRect); - const Style *adaptedStyle(); - bool sceneEventFilter(QGraphicsItem *watched, QEvent *event); private slots: - void onContentsChanged(); private: - QSizeF calcMinimumGeometry() const; - void updateGeometry(); -private: - DBoundary *m_boundary; - DiagramSceneModel *m_diagramSceneModel; - bool m_isSecondarySelected; - bool m_isFocusSelected; - RectangularSelectionItem *m_selectionMarker; - QGraphicsRectItem *m_borderItem; - QGraphicsRectItem *m_noTextItem; - BoundaryTextItem *m_textItem; - bool m_isUpdating; - bool m_isChanged; }; -} +} // namespace qmt #endif // QMT_BOUNDARYITEM_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/classitem.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/classitem.cpp index a3f06baf146..9016a36f955 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/classitem.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/classitem.cpp @@ -60,7 +60,6 @@ #include - namespace qmt { static const qreal MINIMUM_AUTO_WIDTH = 80.0; @@ -68,7 +67,6 @@ static const qreal MINIMUM_AUTO_HEIGHT = 60.0; static const qreal BODY_VERT_BORDER = 4.0; static const qreal BODY_HORIZ_BORDER = 4.0; - ClassItem::ClassItem(DClass *klass, DiagramSceneModel *diagramSceneModel, QGraphicsItem *parent) : ObjectItem(klass, diagramSceneModel, parent), m_customIcon(0), @@ -109,9 +107,8 @@ void ClassItem::update() // custom icon if (stereotypeIconDisplay() == StereotypeIcon::DisplayIcon) { - if (!m_customIcon) { + if (!m_customIcon) m_customIcon = new CustomIconItem(diagramSceneModel(), this); - } m_customIcon->setStereotypeIconId(stereotypeIconId()); m_customIcon->setBaseSize(stereotypeIconMinimumSize(m_customIcon->stereotypeIcon(), CUSTOM_ICON_MINIMUM_AUTO_WIDTH, CUSTOM_ICON_MINIMUM_AUTO_HEIGHT)); m_customIcon->setBrush(style->fillBrush()); @@ -125,9 +122,8 @@ void ClassItem::update() // shape if (!m_customIcon) { - if (!m_shape) { + if (!m_shape) m_shape = new QGraphicsRectItem(this); - } m_shape->setBrush(style->fillBrush()); m_shape->setPen(style->outerLinePen()); m_shape->setZValue(SHAPE_ZVALUE); @@ -142,9 +138,8 @@ void ClassItem::update() // namespace if (!diagramClass->umlNamespace().isEmpty()) { - if (!m_namespace) { + if (!m_namespace) m_namespace = new QGraphicsSimpleTextItem(this); - } m_namespace->setFont(style->smallFont()); m_namespace->setBrush(style->textBrush()); m_namespace->setText(diagramClass->umlNamespace()); @@ -156,17 +151,15 @@ void ClassItem::update() DClass::TemplateDisplay templateDisplay = diagramClass->templateDisplay(); if (templateDisplay == DClass::TemplateSmart) { - if (m_customIcon) { + if (m_customIcon) templateDisplay = DClass::TemplateName; - } else { + else templateDisplay = DClass::TemplateBox; - } } // class name - if (!m_className) { + if (!m_className) m_className = new QGraphicsSimpleTextItem(this); - } m_className->setFont(style->headerFont()); m_className->setBrush(style->textBrush()); if (templateDisplay == DClass::TemplateName && !diagramClass->templateParameters().isEmpty()) { @@ -174,9 +167,8 @@ void ClassItem::update() name += QLatin1Char('<'); bool first = true; foreach (const QString &p, diagramClass->templateParameters()) { - if (!first) { + if (!first) name += QLatin1Char(','); - } name += p; first = false; } @@ -188,9 +180,8 @@ void ClassItem::update() // context if (showContext()) { - if (!m_contextLabel) { + if (!m_contextLabel) m_contextLabel = new ContextLabelItem(this); - } m_contextLabel->setFont(style->smallFont()); m_contextLabel->setBrush(style->textBrush()); m_contextLabel->setContext(object()->context()); @@ -202,9 +193,8 @@ void ClassItem::update() // attributes separator if (m_shape || !m_attributesText.isEmpty() || !m_methodsText.isEmpty()) { - if (!m_attributesSeparator) { + if (!m_attributesSeparator) m_attributesSeparator = new QGraphicsLineItem(this); - } m_attributesSeparator->setPen(style->innerLinePen()); m_attributesSeparator->setZValue(SHAPE_DETAILS_ZVALUE); } else if (m_attributesSeparator) { @@ -215,9 +205,8 @@ void ClassItem::update() // attributes if (!m_attributesText.isEmpty()) { - if (!m_attributes) { + if (!m_attributes) m_attributes = new QGraphicsTextItem(this); - } m_attributes->setFont(style->normalFont()); //m_attributes->setBrush(style->textBrush()); m_attributes->setDefaultTextColor(style->textBrush().color()); @@ -230,9 +219,8 @@ void ClassItem::update() // methods separator if (m_shape || !m_attributesText.isEmpty() || !m_methodsText.isEmpty()) { - if (!m_methodsSeparator) { + if (!m_methodsSeparator) m_methodsSeparator = new QGraphicsLineItem(this); - } m_methodsSeparator->setPen(style->innerLinePen()); m_methodsSeparator->setZValue(SHAPE_DETAILS_ZVALUE); } else if (m_methodsSeparator) { @@ -243,9 +231,8 @@ void ClassItem::update() // methods if (!m_methodsText.isEmpty()) { - if (!m_methods) { + if (!m_methods) m_methods = new QGraphicsTextItem(this); - } m_methods->setFont(style->normalFont()); //m_methods->setBrush(style->textBrush()); m_methods->setDefaultTextColor(style->textBrush().color()); @@ -258,9 +245,8 @@ void ClassItem::update() // template parameters if (templateDisplay == DClass::TemplateBox && !diagramClass->templateParameters().isEmpty()) { - if (!m_templateParameterBox) { + if (!m_templateParameterBox) m_templateParameterBox = new TemplateParameterBox(this); - } QPen pen = style->outerLinePen(); pen.setStyle(Qt::DashLine); m_templateParameterBox->setPen(pen); @@ -293,7 +279,6 @@ void ClassItem::update() } updateAlignmentButtons(); - updateGeometry(); } @@ -338,9 +323,8 @@ void ClassItem::relationDrawn(const QString &id, const QPointF &toScenePos, cons } } else if (id == QLatin1String("dependency")) { DObject *dependantObject = dynamic_cast(targetElement); - if (dependantObject) { + if (dependantObject) diagramSceneModel()->diagramSceneController()->createDependency(object(), dependantObject, intermediatePoints, diagramSceneModel()->diagram()); - } } else if (id == QLatin1String("association")) { DClass *assoziatedClass = dynamic_cast(targetElement); if (assoziatedClass) { @@ -379,9 +363,8 @@ QSizeF ClassItem::calcMinimumGeometry() const double width = 0.0; double height = 0.0; - if (m_customIcon) { + if (m_customIcon) return stereotypeIconMinimumSize(m_customIcon->stereotypeIcon(), CUSTOM_ICON_MINIMUM_AUTO_WIDTH, CUSTOM_ICON_MINIMUM_AUTO_HEIGHT); - } height += BODY_VERT_BORDER; if (CustomIconItem *stereotypeIconItem = this->stereotypeIconItem()) { @@ -400,19 +383,16 @@ QSizeF ClassItem::calcMinimumGeometry() const width = std::max(width, m_className->boundingRect().width() + 2 * BODY_HORIZ_BORDER); height += m_className->boundingRect().height(); } - if (m_contextLabel) { + if (m_contextLabel) height += m_contextLabel->height(); - } - if (m_attributesSeparator) { + if (m_attributesSeparator) height += 8.0; - } if (m_attributes) { width = std::max(width, m_attributes->boundingRect().width() + 2 * BODY_HORIZ_BORDER); height += m_attributes->boundingRect().height(); } - if (m_methodsSeparator) { + if (m_methodsSeparator) height += 8.0; - } if (m_methods) { width = std::max(width, m_methods->boundingRect().width() + 2 * BODY_HORIZ_BORDER); height += m_methods->boundingRect().height(); @@ -436,21 +416,17 @@ void ClassItem::updateGeometry() if (object()->isAutoSized()) { if (!m_customIcon) { - if (width < MINIMUM_AUTO_WIDTH) { + if (width < MINIMUM_AUTO_WIDTH) width = MINIMUM_AUTO_WIDTH; - } - if (height < MINIMUM_AUTO_HEIGHT) { + if (height < MINIMUM_AUTO_HEIGHT) height = MINIMUM_AUTO_HEIGHT; - } } } else { QRectF rect = object()->rect(); - if (rect.width() > width) { + if (rect.width() > width) width = rect.width(); - } - if (rect.height() > height) { + if (rect.height() > height) height = rect.height(); - } } // update sizes and positions @@ -475,9 +451,8 @@ void ClassItem::updateGeometry() y += height; } - if (m_shape) { + if (m_shape) m_shape->setRect(rect); - } y += BODY_VERT_BORDER; if (CustomIconItem *stereotypeIconItem = this->stereotypeIconItem()) { @@ -497,11 +472,10 @@ void ClassItem::updateGeometry() y += m_className->boundingRect().height(); } if (m_contextLabel) { - if (m_customIcon) { + if (m_customIcon) m_contextLabel->resetMaxWidth(); - } else { + else m_contextLabel->setMaxWidth(width - 2 * BODY_HORIZ_BORDER); - } m_contextLabel->setPos(-m_contextLabel->boundingRect().width() / 2.0, y); y += m_contextLabel->boundingRect().height(); } @@ -511,11 +485,10 @@ void ClassItem::updateGeometry() y += 8.0; } if (m_attributes) { - if (m_customIcon) { + if (m_customIcon) m_attributes->setPos(-m_attributes->boundingRect().width() / 2.0, y); - } else { + else m_attributes->setPos(left + BODY_HORIZ_BORDER, y); - } y += m_attributes->boundingRect().height(); } if (m_methodsSeparator) { @@ -524,11 +497,10 @@ void ClassItem::updateGeometry() y += 8.0; } if (m_methods) { - if (m_customIcon) { + if (m_customIcon) m_methods->setPos(-m_methods->boundingRect().width() / 2.0, y); - } else { + else m_methods->setPos(left + BODY_HORIZ_BORDER, y); - } y += m_methods->boundingRect().height(); } @@ -539,22 +511,18 @@ void ClassItem::updateGeometry() m_templateParameterBox->setBreakLines(true); x = right - m_templateParameterBox->boundingRect().width() * 0.8; } - if (x < 0) { + if (x < 0) x = 0; - } m_templateParameterBox->setPos(x, top - m_templateParameterBox->boundingRect().height() + BODY_VERT_BORDER); } updateSelectionMarkerGeometry(rect); - if (m_relationStarter) { + if (m_relationStarter) m_relationStarter->setPos(mapToScene(QPointF(right + 8.0, top))); - } updateAlignmentButtonsGeometry(rect); - updateDepth(); - } void ClassItem::updateMembers(const Style *style) @@ -582,7 +550,6 @@ void ClassItem::updateMembers(const Style *style) bool useGroupVisibility = false; foreach (const MClassMember &member, dclass->members()) { - switch (member.memberType()) { case MClassMember::MemberUndefined: QMT_CHECK(false); @@ -599,9 +566,8 @@ void ClassItem::updateMembers(const Style *style) break; } - if (!text->isEmpty()) { + if (!text->isEmpty()) *text += QStringLiteral("
"); - } bool addNewline = false; bool addSpace = false; @@ -642,16 +608,14 @@ void ClassItem::updateMembers(const Style *style) *currentVisibility = member.visibility(); } if (member.group() != currentGroup) { - if (addSpace) { + if (addSpace) *text += QStringLiteral(" "); - } *text += QString(QStringLiteral("[%1]")).arg(member.group()); addNewline = true; *currentGroup = member.group(); } - if (addNewline) { + if (addNewline) *text += QStringLiteral("
"); - } addSpace = false; bool haveSignal = false; @@ -710,33 +674,26 @@ void ClassItem::updateMembers(const Style *style) *text += haveIconFonts ? QString(QChar(0xe9cb)) : QStringLiteral("$"); addSpace = true; } - if (addSpace) { + if (addSpace) *text += QStringLiteral(" "); - } - if (member.properties() & MClassMember::PropertyQinvokable) { + if (member.properties() & MClassMember::PropertyQinvokable) *text += QStringLiteral("invokable "); - } if (!member.stereotypes().isEmpty()) { *text += StereotypesItem::format(member.stereotypes()); *text += QStringLiteral(" "); } - if (member.properties() & MClassMember::PropertyVirtual) { + if (member.properties() & MClassMember::PropertyVirtual) *text += QStringLiteral("virtual "); - } *text += member.declaration(); - if (member.properties() & MClassMember::PropertyConst) { + if (member.properties() & MClassMember::PropertyConst) *text += QStringLiteral(" const"); - } - if (member.properties() & MClassMember::PropertyOverride) { + if (member.properties() & MClassMember::PropertyOverride) *text += QStringLiteral(" override"); - } - if (member.properties() & MClassMember::PropertyFinal) { + if (member.properties() & MClassMember::PropertyFinal) *text += QStringLiteral(" final"); - } - if (member.properties() & MClassMember::PropertyAbstract) { + if (member.properties() & MClassMember::PropertyAbstract) *text += QStringLiteral(" = 0"); - } } } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/classitem.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/classitem.h index 7c9641d458f..9b553e95b66 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/classitem.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/classitem.h @@ -42,7 +42,6 @@ class QGraphicsLineItem; class QGraphicsTextItem; QT_END_NAMESPACE - namespace qmt { class DiagramSceneModel; @@ -53,77 +52,45 @@ class TemplateParameterBox; class RelationStarter; class Style; -class ClassItem : - public ObjectItem, - public IRelationable +class ClassItem : public ObjectItem, public IRelationable { public: ClassItem(DClass *klass, DiagramSceneModel *diagramSceneModel, QGraphicsItem *parent = 0); - ~ClassItem(); -public: - void update(); -public: - bool intersectShapeWithLine(const QLineF &line, QPointF *intersectionPoint, QLineF *intersectionLine) const; -public: - QSizeF minimumSize() const; -public: - QPointF relationStartPos() const; - void relationDrawn(const QString &id, const QPointF &toScenePos, const QList &intermediatePoints); protected: - bool extendContextMenu(QMenu *menu); - bool handleSelectedContextMenuAction(QAction *action); private: - QSizeF calcMinimumGeometry() const; - void updateGeometry(); - void updateMembers(const Style *style); -private: - CustomIconItem *m_customIcon; - QGraphicsRectItem *m_shape; - QGraphicsSimpleTextItem *m_namespace; - QGraphicsSimpleTextItem *m_className; - ContextLabelItem *m_contextLabel; - QGraphicsLineItem *m_attributesSeparator; - QString m_attributesText; - QGraphicsTextItem *m_attributes; - QGraphicsLineItem *m_methodsSeparator; - QString m_methodsText; - QGraphicsTextItem *m_methods; - TemplateParameterBox *m_templateParameterBox; - RelationStarter *m_relationStarter; - }; -} +} // namespace qmt #endif // QMT_GRAPHICSCLASSITEM_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/componentitem.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/componentitem.cpp index 4d0a67ae3b6..fda1e058a95 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/componentitem.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/componentitem.cpp @@ -54,7 +54,6 @@ #include - namespace qmt { static const qreal RECT_HEIGHT = 15.0; @@ -65,7 +64,6 @@ static const qreal LOWER_RECT_MIN_Y = 10.0; static const qreal BODY_VERT_BORDER = 4.0; static const qreal BODY_HORIZ_BORDER = 4.0; - ComponentItem::ComponentItem(DComponent *component, DiagramSceneModel *diagramSceneModel, QGraphicsItem *parent) : ObjectItem(component, diagramSceneModel, parent), m_customIcon(0), @@ -85,16 +83,14 @@ ComponentItem::~ComponentItem() void ComponentItem::update() { prepareGeometryChange(); - updateStereotypeIconDisplay(); const Style *style = adaptedStyle(stereotypeIconId()); // custom icon if (stereotypeIconDisplay() == StereotypeIcon::DisplayIcon) { - if (!m_customIcon) { + if (!m_customIcon) m_customIcon = new CustomIconItem(diagramSceneModel(), this); - } m_customIcon->setStereotypeIconId(stereotypeIconId()); m_customIcon->setBaseSize(stereotypeIconMinimumSize(m_customIcon->stereotypeIcon(), CUSTOM_ICON_MINIMUM_AUTO_WIDTH, CUSTOM_ICON_MINIMUM_AUTO_HEIGHT)); m_customIcon->setBrush(style->fillBrush()); @@ -109,22 +105,19 @@ void ComponentItem::update() // shape bool deleteRects = false; if (!m_customIcon) { - if (!m_shape) { + if (!m_shape) m_shape = new QGraphicsRectItem(this); - } m_shape->setBrush(style->fillBrush()); m_shape->setPen(style->outerLinePen()); m_shape->setZValue(SHAPE_ZVALUE); if (!hasPlainShape()) { - if (!m_upperRect) { + if (!m_upperRect) m_upperRect = new QGraphicsRectItem(this); - } m_upperRect->setBrush(style->fillBrush()); m_upperRect->setPen(style->outerLinePen()); m_upperRect->setZValue(SHAPE_DETAILS_ZVALUE); - if (!m_lowerRect) { + if (!m_lowerRect) m_lowerRect = new QGraphicsRectItem(this); - } m_lowerRect->setBrush(style->fillBrush()); m_lowerRect->setPen(style->outerLinePen()); m_lowerRect->setZValue(SHAPE_DETAILS_ZVALUE); @@ -156,18 +149,16 @@ void ComponentItem::update() updateStereotypes(stereotypeIconId(), stereotypeIconDisplay(), style); // component name - if (!m_componentName) { + if (!m_componentName) m_componentName = new QGraphicsSimpleTextItem(this); - } m_componentName->setFont(style->headerFont()); m_componentName->setBrush(style->textBrush()); m_componentName->setText(object()->name()); // context if (showContext()) { - if (!m_contextLabel) { + if (!m_contextLabel) m_contextLabel = new ContextLabelItem(this); - } m_contextLabel->setFont(style->smallFont()); m_contextLabel->setBrush(style->textBrush()); m_contextLabel->setContext(object()->context()); @@ -188,15 +179,13 @@ void ComponentItem::update() m_relationStarter->addArrow(QStringLiteral("dependency"), ArrowItem::ShaftDashed, ArrowItem::HeadOpen); } } else if (m_relationStarter) { - if (m_relationStarter->scene()) { + if (m_relationStarter->scene()) m_relationStarter->scene()->removeItem(m_relationStarter); - } delete m_relationStarter; m_relationStarter = 0; } updateAlignmentButtons(); - updateGeometry(); } @@ -208,7 +197,7 @@ bool ComponentItem::intersectShapeWithLine(const QLineF &line, QPointF *intersec QRectF rect = object()->rect(); rect.translate(object()->pos()); polygon << rect.topLeft() << rect.topRight() << rect.bottomRight() << rect.bottomLeft() << rect.topLeft(); - } else if (hasPlainShape()){ + } else if (hasPlainShape()) { QRectF rect = object()->rect(); rect.translate(object()->pos()); polygon << rect.topLeft() << rect.topRight() << rect.bottomRight() << rect.bottomLeft() << rect.topLeft(); @@ -254,9 +243,8 @@ void ComponentItem::relationDrawn(const QString &id, const QPointF &toScenePos, if (targetElement) { if (id == QStringLiteral("dependency")) { DObject *dependantObject = dynamic_cast(targetElement); - if (dependantObject) { + if (dependantObject) diagramSceneModel()->diagramSceneController()->createDependency(object(), dependantObject, intermediatePoints, diagramSceneModel()->diagram()); - } } } } @@ -273,9 +261,8 @@ QSizeF ComponentItem::calcMinimumGeometry() const double width = 0.0; double height = 0.0; - if (m_customIcon) { + if (m_customIcon) return stereotypeIconMinimumSize(m_customIcon->stereotypeIcon(), CUSTOM_ICON_MINIMUM_AUTO_WIDTH, CUSTOM_ICON_MINIMUM_AUTO_HEIGHT); - } height += BODY_VERT_BORDER; if (CustomIconItem *stereotypeIconItem = this->stereotypeIconItem()) { @@ -290,17 +277,15 @@ QSizeF ComponentItem::calcMinimumGeometry() const width = std::max(width, m_componentName->boundingRect().width()); height += m_componentName->boundingRect().height(); } - if (m_contextLabel) { + if (m_contextLabel) height += m_contextLabel->height(); - } height += BODY_VERT_BORDER; if (!hasPlainShape()) { width = RECT_WIDTH * 0.5 + BODY_HORIZ_BORDER + width + BODY_HORIZ_BORDER + RECT_WIDTH * 0.5; double minHeight = UPPER_RECT_Y + RECT_HEIGHT + RECT_Y_DISTANCE + RECT_HEIGHT + LOWER_RECT_MIN_Y; - if (height < minHeight) { + if (height < minHeight) height = minHeight; - } } else { width = BODY_HORIZ_BORDER + width + BODY_HORIZ_BORDER; } @@ -324,12 +309,10 @@ void ComponentItem::updateGeometry() // nothing } else { QRectF rect = object()->rect(); - if (rect.width() > width) { + if (rect.width() > width) width = rect.width(); - } - if (rect.height() > height) { + if (rect.height() > height) height = rect.height(); - } } // update sizes and positions @@ -354,9 +337,8 @@ void ComponentItem::updateGeometry() y += height; } - if (m_shape) { + if (m_shape) m_shape->setRect(rect); - } if (m_upperRect) { QRectF upperRect(0, 0, RECT_WIDTH, RECT_HEIGHT); @@ -396,13 +378,11 @@ void ComponentItem::updateGeometry() updateSelectionMarkerGeometry(rect); - if (m_relationStarter) { + if (m_relationStarter) m_relationStarter->setPos(mapToScene(QPointF(right + 8.0, top))); - } updateAlignmentButtonsGeometry(rect); - updateDepth(); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/componentitem.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/componentitem.h index 8f9a7a1a3f9..8754f60c040 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/componentitem.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/componentitem.h @@ -41,7 +41,6 @@ class QGraphicsSimpleTextItem; class QGraphicsLineItem; QT_END_NAMESPACE - namespace qmt { class DiagramSceneModel; @@ -50,66 +49,38 @@ class CustomIconItem; class ContextLabelItem; class RelationStarter; - -class ComponentItem : - public ObjectItem, - public IRelationable +class ComponentItem : public ObjectItem, public IRelationable { public: ComponentItem(DComponent *component, DiagramSceneModel *diagramSceneModel, QGraphicsItem *parent = 0); - ~ComponentItem(); -public: - void update(); -public: - bool intersectShapeWithLine(const QLineF &line, QPointF *intersectionPoint, QLineF *intersectionLine) const; -public: - QSizeF minimumSize() const; -public: - QList horizontalLatches(Action action, bool grabbedItem) const; - QList verticalLatches(Action action, bool grabbedItem) const; -public: - QPointF relationStartPos() const; - void relationDrawn(const QString &id, const QPointF &toScenePos, const QList &intermediatePoints); private: - bool hasPlainShape() const; - QSizeF calcMinimumGeometry() const; - void updateGeometry(); -private: - CustomIconItem *m_customIcon; - QGraphicsRectItem *m_shape; - QGraphicsRectItem *m_upperRect; - QGraphicsRectItem *m_lowerRect; - QGraphicsSimpleTextItem *m_componentName; - ContextLabelItem *m_contextLabel; - RelationStarter *m_relationStarter; - }; -} +} // namespace qmt #endif // QMT_GRAPHICSCOMPONENTITEM_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/diagramitem.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/diagramitem.cpp index 3feebcda1a6..a8919173ec6 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/diagramitem.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/diagramitem.cpp @@ -47,7 +47,6 @@ #include #include - namespace qmt { static const qreal MINIMUM_AUTO_WIDTH = 60.0; @@ -58,7 +57,6 @@ static const qreal FOLD_HEIGHT = 15.0; static const qreal BODY_HORIZ_BORDER = 4.0; static const qreal BODY_VERT_BORDER = 4.0; - DiagramItem::DiagramItem(DDiagram *diagram, DiagramSceneModel *diagramSceneModel, QGraphicsItem *parent) : ObjectItem(diagram, diagramSceneModel, parent), m_customIcon(0), @@ -75,16 +73,14 @@ DiagramItem::~DiagramItem() void DiagramItem::update() { prepareGeometryChange(); - updateStereotypeIconDisplay(); const Style *style = adaptedStyle(stereotypeIconId()); // custom icon if (stereotypeIconDisplay() == StereotypeIcon::DisplayIcon) { - if (!m_customIcon) { + if (!m_customIcon) m_customIcon = new CustomIconItem(diagramSceneModel(), this); - } m_customIcon->setStereotypeIconId(stereotypeIconId()); m_customIcon->setBaseSize(stereotypeIconMinimumSize(m_customIcon->stereotypeIcon(), CUSTOM_ICON_MINIMUM_AUTO_WIDTH, CUSTOM_ICON_MINIMUM_AUTO_HEIGHT)); m_customIcon->setBrush(style->fillBrush()); @@ -98,15 +94,13 @@ void DiagramItem::update() // shape if (!m_customIcon) { - if (!m_body) { + if (!m_body) m_body = new QGraphicsPolygonItem(this); - } m_body->setBrush(style->fillBrush()); m_body->setPen(style->outerLinePen()); m_body->setZValue(SHAPE_ZVALUE); - if (!m_fold) { + if (!m_fold) m_fold = new QGraphicsPolygonItem(this); - } m_fold->setBrush(style->extraFillBrush()); m_fold->setPen(style->outerLinePen()); m_fold->setZValue(SHAPE_DETAILS_ZVALUE); @@ -127,17 +121,14 @@ void DiagramItem::update() updateStereotypes(stereotypeIconId(), stereotypeIconDisplay(), style); // diagram name - if (!m_diagramName) { + if (!m_diagramName) m_diagramName = new QGraphicsSimpleTextItem(this); - } m_diagramName->setFont(style->headerFont()); m_diagramName->setBrush(style->textBrush()); m_diagramName->setText(object()->name()); updateSelectionMarker(m_customIcon); - updateAlignmentButtons(); - updateGeometry(); } @@ -167,9 +158,8 @@ QSizeF DiagramItem::calcMinimumGeometry() const double width = MINIMUM_WIDTH; double height = 0.0; - if (m_customIcon) { + if (m_customIcon) return stereotypeIconMinimumSize(m_customIcon->stereotypeIcon(), CUSTOM_ICON_MINIMUM_AUTO_WIDTH, CUSTOM_ICON_MINIMUM_AUTO_HEIGHT); - } height += BODY_VERT_BORDER; if (CustomIconItem *stereotypeIconItem = this->stereotypeIconItem()) { @@ -205,21 +195,17 @@ void DiagramItem::updateGeometry() if (object()->isAutoSized()) { if (!m_customIcon) { - if (width < MINIMUM_AUTO_WIDTH) { + if (width < MINIMUM_AUTO_WIDTH) width = MINIMUM_AUTO_WIDTH; - } - if (height < MINIMUM_AUTO_HEIGHT) { + if (height < MINIMUM_AUTO_HEIGHT) height = MINIMUM_AUTO_HEIGHT; - } } } else { QRectF rect = object()->rect(); - if (rect.width() > width) { + if (rect.width() > width) width = rect.width(); - } - if (rect.height() > height) { + if (rect.height() > height) height = rect.height(); - } } // update sizes and positions @@ -282,11 +268,8 @@ void DiagramItem::updateGeometry() } updateSelectionMarkerGeometry(rect); - updateAlignmentButtonsGeometry(rect); - updateDepth(); - } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/diagramitem.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/diagramitem.h index 238d82ddf02..154d2be9989 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/diagramitem.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/diagramitem.h @@ -33,52 +33,34 @@ #include "objectitem.h" - namespace qmt { class DDiagram; class DiagramSceneModel; class CustomIconItem; - -class DiagramItem : - public ObjectItem +class DiagramItem : public ObjectItem { public: explicit DiagramItem(DDiagram *diagram, DiagramSceneModel *diagramSceneModel, QGraphicsItem *parent = 0); - ~DiagramItem(); -public: - virtual void update(); -public: - bool intersectShapeWithLine(const QLineF &line, QPointF *intersectionPoint, QLineF *intersectionLine) const; -public: - QSizeF minimumSize() const; private: - QSizeF calcMinimumGeometry() const; - void updateGeometry(); -private: - CustomIconItem *m_customIcon; - QGraphicsPolygonItem *m_body; - QGraphicsPolygonItem *m_fold; - QGraphicsSimpleTextItem *m_diagramName; - }; -} +} // namespace qmt #endif // QMT_GRAPHICSDIAGRAMITEM_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/itemitem.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/itemitem.cpp index 495f099dcbc..81a1f5b2245 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/itemitem.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/itemitem.cpp @@ -54,13 +54,11 @@ #include - namespace qmt { static const qreal BODY_VERT_BORDER = 4.0; static const qreal BODY_HORIZ_BORDER = 4.0; - ItemItem::ItemItem(DItem *item, DiagramSceneModel *diagramSceneModel, QGraphicsItem *parent) : ObjectItem(item, diagramSceneModel, parent), m_customIcon(0), @@ -78,7 +76,6 @@ ItemItem::~ItemItem() void ItemItem::update() { prepareGeometryChange(); - updateStereotypeIconDisplay(); DItem *diagramItem = dynamic_cast(object()); @@ -88,9 +85,8 @@ void ItemItem::update() const Style *style = adaptedStyle(shapeIconId()); if (!shapeIconId().isEmpty()) { - if (!m_customIcon) { + if (!m_customIcon) m_customIcon = new CustomIconItem(diagramSceneModel(), this); - } m_customIcon->setStereotypeIconId(shapeIconId()); m_customIcon->setBaseSize(stereotypeIconMinimumSize(m_customIcon->stereotypeIcon(), CUSTOM_ICON_MINIMUM_AUTO_WIDTH, CUSTOM_ICON_MINIMUM_AUTO_HEIGHT)); m_customIcon->setBrush(style->fillBrush()); @@ -104,9 +100,8 @@ void ItemItem::update() // shape if (!m_customIcon) { - if (!m_shape) { + if (!m_shape) m_shape = new QGraphicsRectItem(this); - } m_shape->setBrush(style->fillBrush()); m_shape->setPen(style->outerLinePen()); m_shape->setZValue(SHAPE_ZVALUE); @@ -122,18 +117,16 @@ void ItemItem::update() updateStereotypes(stereotypeIconId(), stereotypeIconDisplay(), adaptedStyle(stereotypeIconId())); // component name - if (!m_itemName) { + if (!m_itemName) m_itemName = new QGraphicsSimpleTextItem(this); - } m_itemName->setFont(style->headerFont()); m_itemName->setBrush(style->textBrush()); m_itemName->setText(object()->name()); // context if (showContext()) { - if (!m_contextLabel) { + if (!m_contextLabel) m_contextLabel = new ContextLabelItem(this); - } m_contextLabel->setFont(style->smallFont()); m_contextLabel->setBrush(style->textBrush()); m_contextLabel->setContext(object()->context()); @@ -154,15 +147,13 @@ void ItemItem::update() m_relationStarter->addArrow(QStringLiteral("dependency"), ArrowItem::ShaftDashed, ArrowItem::HeadOpen); } } else if (m_relationStarter) { - if (m_relationStarter->scene()) { + if (m_relationStarter->scene()) m_relationStarter->scene()->removeItem(m_relationStarter); - } delete m_relationStarter; m_relationStarter = 0; } updateAlignmentButtons(); - updateGeometry(); } @@ -208,9 +199,8 @@ void ItemItem::relationDrawn(const QString &id, const QPointF &toScenePos, const if (targetElement) { if (id == QStringLiteral("dependency")) { DObject *dependantObject = dynamic_cast(targetElement); - if (dependantObject) { + if (dependantObject) diagramSceneModel()->diagramSceneController()->createDependency(object(), dependantObject, intermediatePoints, diagramSceneModel()->diagram()); - } } } } @@ -220,9 +210,8 @@ QSizeF ItemItem::calcMinimumGeometry() const double width = 0.0; double height = 0.0; - if (m_customIcon) { + if (m_customIcon) return stereotypeIconMinimumSize(m_customIcon->stereotypeIcon(), CUSTOM_ICON_MINIMUM_AUTO_WIDTH, CUSTOM_ICON_MINIMUM_AUTO_HEIGHT); - } height += BODY_VERT_BORDER; if (CustomIconItem *stereotypeIconItem = this->stereotypeIconItem()) { @@ -237,9 +226,8 @@ QSizeF ItemItem::calcMinimumGeometry() const width = std::max(width, m_itemName->boundingRect().width()); height += m_itemName->boundingRect().height(); } - if (m_contextLabel) { + if (m_contextLabel) height += m_contextLabel->height(); - } height += BODY_VERT_BORDER; width = BODY_HORIZ_BORDER + width + BODY_HORIZ_BORDER; @@ -263,12 +251,10 @@ void ItemItem::updateGeometry() // nothing } else { QRectF rect = object()->rect(); - if (rect.width() > width) { + if (rect.width() > width) width = rect.width(); - } - if (rect.height() > height) { + if (rect.height() > height) height = rect.height(); - } } // update sizes and positions @@ -293,9 +279,8 @@ void ItemItem::updateGeometry() y += height; } - if (m_shape) { + if (m_shape) m_shape->setRect(rect); - } y += BODY_VERT_BORDER; if (CustomIconItem *stereotypeIconItem = this->stereotypeIconItem()) { @@ -323,12 +308,10 @@ void ItemItem::updateGeometry() updateSelectionMarkerGeometry(rect); - if (m_relationStarter) { + if (m_relationStarter) m_relationStarter->setPos(mapToScene(QPointF(right + 8.0, top))); - } updateAlignmentButtonsGeometry(rect); - updateDepth(); } diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/itemitem.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/itemitem.h index 63156042d2a..d3a7a45f1a2 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/itemitem.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/itemitem.h @@ -41,7 +41,6 @@ class QGraphicsSimpleTextItem; class QGraphicsLineItem; QT_END_NAMESPACE - namespace qmt { class DiagramSceneModel; @@ -50,58 +49,33 @@ class CustomIconItem; class ContextLabelItem; class RelationStarter; - -class ItemItem : - public ObjectItem, - public IRelationable +class ItemItem : public ObjectItem, public IRelationable { public: ItemItem(DItem *item, DiagramSceneModel *diagramSceneModel, QGraphicsItem *parent = 0); - ~ItemItem(); -public: - void update(); -public: - bool intersectShapeWithLine(const QLineF &line, QPointF *intersectionPoint, QLineF *intersectionLine) const; -public: - QSizeF minimumSize() const; -public: - QList horizontalLatches(Action action, bool grabbedItem) const; - QList verticalLatches(Action action, bool grabbedItem) const; -public: - QPointF relationStartPos() const; - void relationDrawn(const QString &id, const QPointF &toScenePos, const QList &intermediatePoints); private: - QSizeF calcMinimumGeometry() const; - void updateGeometry(); -private: - CustomIconItem *m_customIcon; - QGraphicsRectItem *m_shape; - QGraphicsSimpleTextItem *m_itemName; - ContextLabelItem *m_contextLabel; - RelationStarter *m_relationStarter; - }; } // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/objectitem.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/objectitem.cpp index b8437b3587d..01df93d968a 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/objectitem.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/objectitem.cpp @@ -58,8 +58,6 @@ #include #include -#include - namespace qmt { ObjectItem::ObjectItem(DObject *object, DiagramSceneModel *diagramSceneModel, QGraphicsItem *parent) @@ -112,9 +110,8 @@ void ObjectItem::setPosAndRect(const QPointF &originalPos, const QRectF &origina if (newPos != m_object->pos() || newRect != m_object->rect()) { m_diagramSceneModel->diagramController()->startUpdateElement(m_object, m_diagramSceneModel->diagram(), DiagramController::UpdateGeometry); m_object->setPos(newPos); - if (newRect.size() != m_object->rect().size()) { + if (newRect.size() != m_object->rect().size()) m_object->setAutoSized(false); - } m_object->setRect(newRect); m_diagramSceneModel->diagramController()->finishUpdateElement(m_object, m_diagramSceneModel->diagram(), false); } @@ -130,12 +127,10 @@ void ObjectItem::alignItemSizeToRaster(IResizable::Side adjustHorizontalSide, IR // make sure the new size is at least the minimum size QSizeF minimumSize = this->minimumSize(); - while (rect.width() + horizDelta < minimumSize.width()) { + while (rect.width() + horizDelta < minimumSize.width()) horizDelta += rasterWidth; - } - while (rect.height() + vertDelta < minimumSize.height()) { + while (rect.height() + vertDelta < minimumSize.height()) vertDelta += rasterHeight; - } double leftDelta = 0.0; double rightDelta = 0.0; @@ -341,9 +336,8 @@ void ObjectItem::updateStereotypes(const QString &stereotypeIconId, StereotypeIc stereotypes = m_diagramSceneModel->stereotypeController()->filterStereotypesByIconId(stereotypeIconId, stereotypes); } if (!stereotypeIconId.isEmpty() && stereotypeDisplay == StereotypeIcon::DisplayDecoration) { - if (!m_stereotypeIcon) { + if (!m_stereotypeIcon) m_stereotypeIcon = new CustomIconItem(m_diagramSceneModel, this); - } m_stereotypeIcon->setStereotypeIconId(stereotypeIconId); m_stereotypeIcon->setBaseSize(QSizeF(m_stereotypeIcon->shapeWidth(), m_stereotypeIcon->shapeHeight())); m_stereotypeIcon->setBrush(style->fillBrush()); @@ -354,9 +348,8 @@ void ObjectItem::updateStereotypes(const QString &stereotypeIconId, StereotypeIc m_stereotypeIcon = 0; } if (stereotypeDisplay != StereotypeIcon::DisplayNone && !stereotypes.isEmpty()) { - if (!m_stereotypes) { + if (!m_stereotypes) m_stereotypes = new StereotypesItem(this); - } m_stereotypes->setFont(style->smallFont()); m_stereotypes->setBrush(style->textBrush()); m_stereotypes->setStereotypes(stereotypes); @@ -375,18 +368,16 @@ QSizeF ObjectItem::stereotypeIconMinimumSize(const StereotypeIcon &stereotypeIco qreal height = 0.0; if (stereotypeIcon.hasMinWidth() && !stereotypeIcon.hasMinHeight()) { width = stereotypeIcon.minWidth(); - if (stereotypeIcon.sizeLock() == StereotypeIcon::LockHeight || stereotypeIcon.sizeLock() == StereotypeIcon::LockSize) { + if (stereotypeIcon.sizeLock() == StereotypeIcon::LockHeight || stereotypeIcon.sizeLock() == StereotypeIcon::LockSize) height = stereotypeIcon.minHeight(); - } else { + else height = width * stereotypeIcon.height() / stereotypeIcon.width(); - } } else if (!stereotypeIcon.hasMinWidth() && stereotypeIcon.hasMinHeight()) { height = stereotypeIcon.minHeight(); - if (stereotypeIcon.sizeLock() == StereotypeIcon::LockWidth || stereotypeIcon.sizeLock() == StereotypeIcon::LockSize) { + if (stereotypeIcon.sizeLock() == StereotypeIcon::LockWidth || stereotypeIcon.sizeLock() == StereotypeIcon::LockSize) width = stereotypeIcon.minWidth(); - } else { + else width = height * stereotypeIcon.width() / stereotypeIcon.height(); - } } else if (stereotypeIcon.hasMinWidth() && stereotypeIcon.hasMinHeight()) { if (stereotypeIcon.sizeLock() == StereotypeIcon::LockRatio) { width = stereotypeIcon.minWidth(); @@ -443,9 +434,8 @@ void ObjectItem::updateSelectionMarker(CustomIconItem *customIconItem) void ObjectItem::updateSelectionMarker(ResizeFlags resizeFlags) { if ((isSelected() || isSecondarySelected()) && resizeFlags != ResizeLockedSize) { - if (!m_selectionMarker) { + if (!m_selectionMarker) m_selectionMarker = new RectangularSelectionItem(this, this); - } switch (resizeFlags) { case ResizeUnlocked: m_selectionMarker->setFreedom(RectangularSelectionItem::FreedomAny); @@ -466,9 +456,8 @@ void ObjectItem::updateSelectionMarker(ResizeFlags resizeFlags) m_selectionMarker->setSecondarySelected(isSelected() ? false : isSecondarySelected()); m_selectionMarker->setZValue(SELECTION_MARKER_ZVALUE); } else if (m_selectionMarker) { - if (m_selectionMarker->scene()) { + if (m_selectionMarker->scene()) m_selectionMarker->scene()->removeItem(m_selectionMarker); - } delete m_selectionMarker; m_selectionMarker = 0; } @@ -476,9 +465,8 @@ void ObjectItem::updateSelectionMarker(ResizeFlags resizeFlags) void ObjectItem::updateSelectionMarkerGeometry(const QRectF &objectRect) { - if (m_selectionMarker) { + if (m_selectionMarker) m_selectionMarker->setRect(objectRect); - } } void ObjectItem::updateAlignmentButtons() @@ -497,16 +485,14 @@ void ObjectItem::updateAlignmentButtons() } } else { if (m_horizontalAlignButtons) { - if (m_horizontalAlignButtons->scene()) { + if (m_horizontalAlignButtons->scene()) m_horizontalAlignButtons->scene()->removeItem(m_horizontalAlignButtons); - } delete m_horizontalAlignButtons; m_horizontalAlignButtons = 0; } if (m_verticalAlignButtons) { - if (m_verticalAlignButtons->scene()) { + if (m_verticalAlignButtons->scene()) m_verticalAlignButtons->scene()->removeItem(m_verticalAlignButtons); - } delete m_verticalAlignButtons; m_verticalAlignButtons = 0; } @@ -518,16 +504,14 @@ void ObjectItem::updateAlignmentButtonsGeometry(const QRectF &objectRect) if (m_horizontalAlignButtons) { m_horizontalAlignButtons->clear(); m_horizontalAlignButtons->setPos(mapToScene(QPointF(0.0, objectRect.top() - AlignButtonsItem::NormalButtonHeight - AlignButtonsItem::VerticalDistanceToObejct))); - foreach (const ILatchable::Latch &latch, horizontalLatches(ILatchable::Move, true)) { + foreach (const ILatchable::Latch &latch, horizontalLatches(ILatchable::Move, true)) m_horizontalAlignButtons->addButton(translateLatchTypeToAlignType(latch.m_latchType), latch.m_identifier, mapFromScene(QPointF(latch.m_pos, 0.0)).x()); - } } if (m_verticalAlignButtons) { m_verticalAlignButtons->clear(); m_verticalAlignButtons->setPos(mapToScene(QPointF(objectRect.left() - AlignButtonsItem::NormalButtonWidth - AlignButtonsItem::HorizontalDistanceToObject, 0.0))); - foreach (const ILatchable::Latch &latch, verticalLatches(ILatchable::Move, true)) { + foreach (const ILatchable::Latch &latch, verticalLatches(ILatchable::Move, true)) m_verticalAlignButtons->addButton(translateLatchTypeToAlignType(latch.m_latchType), latch.m_identifier, mapFromScene(QPointF(0.0, latch.m_pos)).y()); - } } } @@ -564,9 +548,8 @@ const Style *ObjectItem::adaptedStyle(const QString &stereotypeIconId) { QList collidingObjects; foreach (const QGraphicsItem *item, m_diagramSceneModel->collectCollidingObjectItems(this, DiagramSceneModel::CollidingItems)) { - if (const ObjectItem *objectItem = dynamic_cast(item)) { + if (const ObjectItem *objectItem = dynamic_cast(item)) collidingObjects.append(objectItem->object()); - } } QColor baseColor; if (!stereotypeIconId.isEmpty()) { @@ -623,36 +606,31 @@ bool ObjectItem::handleSelectedContextMenuAction(QAction *action) void ObjectItem::mousePressEvent(QGraphicsSceneMouseEvent *event) { - if (event->button() == Qt::LeftButton || event->button() == Qt::RightButton) { + if (event->button() == Qt::LeftButton || event->button() == Qt::RightButton) m_diagramSceneModel->selectItem(this, event->modifiers() & Qt::ControlModifier); - } - if (event->button() == Qt::LeftButton) { + if (event->button() == Qt::LeftButton) m_diagramSceneModel->moveSelectedItems(this, QPointF(0.0, 0.0)); - } } void ObjectItem::mouseMoveEvent(QGraphicsSceneMouseEvent *event) { - if (event->buttons() & Qt::LeftButton) { + if (event->buttons() & Qt::LeftButton) m_diagramSceneModel->moveSelectedItems(this, event->scenePos() - event->lastScenePos()); - } } void ObjectItem::mouseReleaseEvent(QGraphicsSceneMouseEvent *event) { if (event->button() == Qt::LeftButton) { m_diagramSceneModel->moveSelectedItems(this, event->scenePos() - event->lastScenePos()); - if (event->scenePos() != event->buttonDownScenePos(Qt::LeftButton)) { + if (event->scenePos() != event->buttonDownScenePos(Qt::LeftButton)) m_diagramSceneModel->alignSelectedItemsPositionOnRaster(); - } } } void ObjectItem::mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event) { - if (event->buttons() & Qt::LeftButton) { + if (event->buttons() & Qt::LeftButton) m_diagramSceneModel->onDoubleClickedItem(this); - } } void ObjectItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *event) @@ -667,12 +645,10 @@ void ObjectItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *event) menu.addAction(new ContextMenuAction(QObject::tr("Create Diagram"), QStringLiteral("createDiagram"), &menu)); addSeparator = true; } - if (extendContextMenu(&menu)) { + if (extendContextMenu(&menu)) addSeparator = true; - } - if (addSeparator) { + if (addSeparator) menu.addSeparator(); - } menu.addAction(new ContextMenuAction(QObject::tr("Remove"), QStringLiteral("remove"), QKeySequence(QKeySequence::Delete), &menu)); menu.addAction(new ContextMenuAction(QObject::tr("Delete"), QStringLiteral("delete"), QKeySequence(Qt::CTRL + Qt::Key_D), &menu)); //menu.addAction(new ContextMenuAction(QObject::tr("Select in Model Tree"), QStringLiteral("selectInModelTree"), &menu)); @@ -703,15 +679,13 @@ void ObjectItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *event) m_diagramSceneModel->diagramSceneController()->elementTasks()->createAndOpenDiagram(m_object, m_diagramSceneModel->diagram()); } else if (action->id() == QStringLiteral("remove")) { DSelection selection = m_diagramSceneModel->selectedElements(); - if (selection.isEmpty()) { + if (selection.isEmpty()) selection.append(m_object->uid(), m_diagramSceneModel->diagram()->uid()); - } m_diagramSceneModel->diagramController()->deleteElements(selection, m_diagramSceneModel->diagram()); } else if (action->id() == QStringLiteral("delete")) { DSelection selection = m_diagramSceneModel->selectedElements(); - if (selection.isEmpty()) { + if (selection.isEmpty()) selection.append(m_object->uid(), m_diagramSceneModel->diagram()->uid()); - } m_diagramSceneModel->diagramSceneController()->deleteFromDiagram(selection, m_diagramSceneModel->diagram()); } else if (action->id() == QStringLiteral("selectInModelTree")) { // TODO implement @@ -744,15 +718,13 @@ QSizeF ObjectItem::minimumSize(const QSet &items) const foreach (QGraphicsItem *item, items) { if (IResizable *resizable = dynamic_cast(item)) { QSizeF size = resizable->minimumSize(); - if (size.width() > minimumSize.width()) { + if (size.width() > minimumSize.width()) minimumSize.setWidth(size.width()); - } - if (size.height() > minimumSize.height()) { + if (size.height() > minimumSize.height()) minimumSize.setHeight(size.height()); - } } } return minimumSize; } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/objectitem.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/objectitem.h index 296e265cdda..b6b2ccd5f3b 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/objectitem.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/objectitem.h @@ -46,7 +46,6 @@ QT_BEGIN_NAMESPACE class QAction; QT_END_NAMESPACE - namespace qmt { class DObject; @@ -57,7 +56,6 @@ class RectangularSelectionItem; class AlignButtonsItem; class Style; - // typical z-values for graphic items static const int SHAPE_ZVALUE = -100; // the filled background of the shape static const int SHAPE_DETAILS_ZVALUE = -90; // any details to the shape (e.g. extra lines in shape) @@ -73,7 +71,6 @@ class ObjectItem : public IAlignable { protected: - enum ResizeFlags { ResizeUnlocked, ResizeLockedSize, @@ -83,153 +80,85 @@ protected: }; public: - ObjectItem(DObject *object, DiagramSceneModel *diagramSceneModel, QGraphicsItem *parent = 0); - ~ObjectItem(); -public: - DObject *object() const { return m_object; } - DiagramSceneModel *diagramSceneModel() const { return m_diagramSceneModel; } -public: - QRectF boundingRect() const; - void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); -public: - virtual void update() = 0; -public: - bool intersectShapeWithLine(const QLineF &line, QPointF *intersectionPoint, QLineF *intersectionLine) const = 0; -public: - QPointF pos() const; - QRectF rect() const; - QSizeF minimumSize() const = 0; - void setPosAndRect(const QPointF &originalPos, const QRectF &originalRect, const QPointF &topLeftDelta, const QPointF &bottomRightDelta); - void alignItemSizeToRaster(Side adjustHorizontalSide, Side adjustVerticalSide, double rasterWidth, double rasterHeight); -public: - void moveDelta(const QPointF &delta); - void alignItemPositionToRaster(double rasterWidth, double rasterHeight); -public: - bool isSecondarySelected() const; - void setSecondarySelected(bool secondarySelected); - bool isFocusSelected() const; - void setFocusSelected(bool focusSelected); -public: - QList horizontalLatches(Action action, bool grabbedItem) const; - QList verticalLatches(Action action, bool grabbedItem) const; -public: - void align(AlignType alignType, const QString &identifier); protected: - void updateStereotypeIconDisplay(); - QString stereotypeIconId() const { return m_stereotypeIconId; } - QString shapeIconId() const { return m_shapeIconId; } - StereotypeIcon::Display stereotypeIconDisplay() const { return m_stereotypeIconDisplay; } - void updateStereotypes(const QString &stereotypeIconId, StereotypeIcon::Display stereotypeDisplay, const Style *style); - StereotypesItem *stereotypesItem() const { return m_stereotypes; } - CustomIconItem *stereotypeIconItem() const { return m_stereotypeIcon; } - QSizeF stereotypeIconMinimumSize(const StereotypeIcon &stereotypeIcon, qreal minimumWidth, qreal minimumHeight) const; void updateDepth(); - void updateSelectionMarker(CustomIconItem *customIconItem); - void updateSelectionMarker(ResizeFlags resizeFlags); - void updateSelectionMarkerGeometry(const QRectF &objectRect); - void updateAlignmentButtons(); - void updateAlignmentButtonsGeometry(const QRectF &objectRect); IAlignable::AlignType translateLatchTypeToAlignType(ILatchable::LatchType latchType); - const Style *adaptedStyle(const QString &stereotypeIconId); - bool showContext() const; virtual bool extendContextMenu(QMenu *menu); - virtual bool handleSelectedContextMenuAction(QAction *action); -protected: - void mousePressEvent(QGraphicsSceneMouseEvent *event); - void mouseMoveEvent(QGraphicsSceneMouseEvent *event); - void mouseReleaseEvent(QGraphicsSceneMouseEvent *event); - void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event); - void contextMenuEvent(QGraphicsSceneContextMenuEvent *event); private: - QSizeF minimumSize(const QSet &items) const; -private: - DObject *m_object; - DiagramSceneModel *m_diagramSceneModel; - bool m_isSecondarySelected; - bool m_isFocusSelected; - QString m_stereotypeIconId; - QString m_shapeIconId; - StereotypeIcon::Display m_stereotypeIconDisplay; - StereotypesItem *m_stereotypes; - CustomIconItem *m_stereotypeIcon; - RectangularSelectionItem *m_selectionMarker; - AlignButtonsItem *m_horizontalAlignButtons; - AlignButtonsItem *m_verticalAlignButtons; - }; -} +} // namespace qmt #endif // QMT_OBJECTITEM_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/packageitem.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/packageitem.cpp index 2549f43abac..f1784b8b576 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/packageitem.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/packageitem.cpp @@ -51,7 +51,6 @@ #include - namespace qmt { static const qreal TAB_HORIZ_BORDER = 4.0; @@ -63,7 +62,6 @@ static const qreal BODY_MIN_HEIGHT = 24.0; static const qreal MINIMUM_AUTO_WIDTH = 100.0; static const qreal MINIMUM_AUTO_HEIGHT = 70.0; - class PackageItem::ShapeGeometry { public: @@ -77,7 +75,6 @@ public: QSizeF m_minimumTabSize; }; - PackageItem::PackageItem(DPackage *package, DiagramSceneModel *diagramSceneModel, QGraphicsItem *parent) : ObjectItem(package, diagramSceneModel, parent), m_customIcon(0), @@ -95,16 +92,14 @@ PackageItem::~PackageItem() void PackageItem::update() { prepareGeometryChange(); - updateStereotypeIconDisplay(); const Style *style = adaptedStyle(stereotypeIconId()); // custom icon if (stereotypeIconDisplay() == StereotypeIcon::DisplayIcon) { - if (!m_customIcon) { + if (!m_customIcon) m_customIcon = new CustomIconItem(diagramSceneModel(), this); - } m_customIcon->setStereotypeIconId(stereotypeIconId()); m_customIcon->setBaseSize(stereotypeIconMinimumSize(m_customIcon->stereotypeIcon(), CUSTOM_ICON_MINIMUM_AUTO_WIDTH, CUSTOM_ICON_MINIMUM_AUTO_HEIGHT)); m_customIcon->setBrush(style->fillBrush()); @@ -118,9 +113,8 @@ void PackageItem::update() // shape if (!m_customIcon) { - if (!m_shape) { + if (!m_shape) m_shape = new QGraphicsPolygonItem(this); - } m_shape->setBrush(style->fillBrush()); m_shape->setPen(style->outerLinePen()); m_shape->setZValue(SHAPE_ZVALUE); @@ -134,18 +128,16 @@ void PackageItem::update() updateStereotypes(stereotypeIconId(), stereotypeIconDisplay(), style); // package name - if (!m_packageName) { + if (!m_packageName) m_packageName = new QGraphicsSimpleTextItem(this); - } m_packageName->setBrush(style->textBrush()); m_packageName->setFont(style->headerFont()); m_packageName->setText(object()->name()); // context if (showContext()) { - if (!m_contextLabel) { + if (!m_contextLabel) m_contextLabel = new ContextLabelItem(this); - } m_contextLabel->setFont(style->smallFont()); m_contextLabel->setBrush(style->textBrush()); m_contextLabel->setContext(object()->context()); @@ -172,7 +164,6 @@ void PackageItem::update() } updateAlignmentButtons(); - updateGeometry(); } @@ -223,9 +214,8 @@ void PackageItem::relationDrawn(const QString &id, const QPointF &toScenePos, co if (targetElement) { if (id == QStringLiteral("dependency")) { DObject *dependantObject = dynamic_cast(targetElement); - if (dependantObject) { + if (dependantObject) diagramSceneModel()->diagramSceneController()->createDependency(object(), dependantObject, intermediatePoints, diagramSceneModel()->diagram()); - } } } } @@ -237,9 +227,8 @@ PackageItem::ShapeGeometry PackageItem::calcMinimumGeometry() const double tabHeight = 0.0; double tabWidth = 0.0; - if (m_customIcon) { + if (m_customIcon) return ShapeGeometry(stereotypeIconMinimumSize(m_customIcon->stereotypeIcon(), CUSTOM_ICON_MINIMUM_AUTO_WIDTH, CUSTOM_ICON_MINIMUM_AUTO_HEIGHT), QSizeF(tabWidth, tabHeight)); - } double bodyHeight = 0.0; double bodyWidth = 0.0; @@ -262,9 +251,8 @@ PackageItem::ShapeGeometry PackageItem::calcMinimumGeometry() const bodyWidth = std::max(bodyWidth, stereotypeIconItem->boundingRect().width() + 2 * BODY_HORIZ_BORDER); bodyHeight += stereotypeIconItem->boundingRect().height(); } - if (m_contextLabel) { + if (m_contextLabel) bodyHeight += m_contextLabel->height(); - } bodyHeight += BODY_VERT_BORDER; bodyHeight = std::max(bodyHeight, BODY_MIN_HEIGHT); width = std::max(width, bodyWidth); @@ -287,21 +275,17 @@ void PackageItem::updateGeometry() // calc width and height if (object()->isAutoSized()) { if (!m_customIcon) { - if (width < MINIMUM_AUTO_WIDTH) { + if (width < MINIMUM_AUTO_WIDTH) width = MINIMUM_AUTO_WIDTH; - } - if (height < MINIMUM_AUTO_HEIGHT) { + if (height < MINIMUM_AUTO_HEIGHT) height = MINIMUM_AUTO_HEIGHT; - } } } else { QRectF rect = object()->rect(); - if (rect.width() > width) { + if (rect.width() > width) width = rect.width(); - } - if (rect.height() > height) { + if (rect.height() > height) height = rect.height(); - } } // update sizes and positions @@ -372,13 +356,11 @@ void PackageItem::updateGeometry() updateSelectionMarkerGeometry(rect); - if (m_relationStarter) { + if (m_relationStarter) m_relationStarter->setPos(mapToScene(QPointF(right + 8.0, top))); - } updateAlignmentButtonsGeometry(rect); - updateDepth(); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/packageitem.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/packageitem.h index 9597a60ffad..17d837ea798 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/packageitem.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/packageitem.h @@ -35,13 +35,11 @@ #include "qmt/diagram_scene/capabilities/relationable.h" - QT_BEGIN_NAMESPACE class QGraphicsPolygonItem; class QGraphicsSimpleTextItem; QT_END_NAMESPACE - namespace qmt { class DiagramSceneModel; @@ -50,62 +48,37 @@ class CustomIconItem; class ContextLabelItem; class RelationStarter; - -class PackageItem : - public ObjectItem, - public IRelationable +class PackageItem : public ObjectItem, public IRelationable { class ShapeGeometry; public: PackageItem(DPackage *package, DiagramSceneModel *diagramSceneModel, QGraphicsItem *parent = 0); - ~PackageItem(); -public: - void update(); -public: - bool intersectShapeWithLine(const QLineF &line, QPointF *intersectionPoint, QLineF *intersectionLine) const; -public: - virtual QSizeF minimumSize() const; -public: - QList horizontalLatches(Action action, bool grabbedItem) const; - QList verticalLatches(Action action, bool grabbedItem) const; -public: - QPointF relationStartPos() const; - void relationDrawn(const QString &id, const QPointF &toScenePos, const QList &intermediatePoints); private: - ShapeGeometry calcMinimumGeometry() const; - void updateGeometry(); -private: - CustomIconItem *m_customIcon; - QGraphicsPolygonItem *m_shape; - QGraphicsSimpleTextItem *m_packageName; - ContextLabelItem *m_contextLabel; - RelationStarter *m_relationStarter; - }; -} +} // namespace qmt #endif // QMT_GRAPHICSPACKAGEITEM_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/relationitem.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/relationitem.cpp index 8108dcea586..0b0bbd136b3 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/relationitem.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/relationitem.cpp @@ -57,11 +57,9 @@ #include #include - namespace qmt { -class RelationItem::ArrowConfigurator : - public DConstVoidVisitor +class RelationItem::ArrowConfigurator : public DConstVoidVisitor { public: ArrowConfigurator(DiagramSceneModel *diagramSceneModel, ArrowItem *arrow, const QList &points) @@ -171,15 +169,11 @@ public: } private: - DiagramSceneModel *m_diagramSceneModel; - ArrowItem *m_arrow; - QList m_points; }; - RelationItem::RelationItem(DRelation *relation, DiagramSceneModel *diagramSceneModel, QGraphicsItem *parent) : QGraphicsItem(parent), m_relation(relation), @@ -222,18 +216,14 @@ QPainterPath RelationItem::shape() const { QPainterPath path; path.setFillRule(Qt::WindingFill); - if (m_arrow) { + if (m_arrow) path.addPath(m_arrow->shape().translated(m_arrow->pos())); - } - if (m_name) { + if (m_name) path.addPath(m_name->shape().translated(m_name->pos())); - } - if (m_stereotypes) { + if (m_stereotypes) path.addPath(m_stereotypes->shape().translated(m_stereotypes->pos())); - } - if (m_selectionHandles) { + if (m_selectionHandles) path.addPath(m_selectionHandles->shape().translated(m_selectionHandles->pos())); - } return path; } @@ -241,9 +231,8 @@ void RelationItem::moveDelta(const QPointF &delta) { m_diagramSceneModel->diagramController()->startUpdateElement(m_relation, m_diagramSceneModel->diagram(), DiagramController::UpdateGeometry); QList points; - foreach (const DRelation::IntermediatePoint &point, m_relation->intermediatePoints()) { + foreach (const DRelation::IntermediatePoint &point, m_relation->intermediatePoints()) points << DRelation::IntermediatePoint(point.pos() + delta); - } m_relation->setIntermediatePoints(points); m_diagramSceneModel->diagramController()->finishUpdateElement(m_relation, m_diagramSceneModel->diagram(), false); } @@ -374,9 +363,8 @@ void RelationItem::update() const Style *style = adaptedStyle(); - if (!m_arrow) { + if (!m_arrow) m_arrow = new ArrowItem(this); - } update(style); } @@ -390,9 +378,8 @@ void RelationItem::update(const Style *style) QList points; points << (endAPos - endAPos); - foreach (const DRelation::IntermediatePoint &point, m_relation->intermediatePoints()) { + foreach (const DRelation::IntermediatePoint &point, m_relation->intermediatePoints()) points << (point.pos() - endAPos); - } points << (endBPos - endAPos); ArrowConfigurator visitor(m_diagramSceneModel, m_arrow, points); @@ -400,9 +387,8 @@ void RelationItem::update(const Style *style) m_arrow->update(style); if (!m_relation->name().isEmpty()) { - if (!m_name) { + if (!m_name) m_name = new QGraphicsSimpleTextItem(this); - } m_name->setFont(style->smallFont()); m_name->setBrush(style->textBrush()); m_name->setText(m_relation->name()); @@ -414,9 +400,8 @@ void RelationItem::update(const Style *style) } if (!m_relation->stereotypes().isEmpty()) { - if (!m_stereotypes) { + if (!m_stereotypes) m_stereotypes = new StereotypesItem(this); - } m_stereotypes->setFont(style->smallFont()); m_stereotypes->setBrush(style->textBrush()); m_stereotypes->setStereotypes(m_relation->stereotypes()); @@ -428,15 +413,13 @@ void RelationItem::update(const Style *style) } if (isSelected() || isSecondarySelected()) { - if (!m_selectionHandles) { + if (!m_selectionHandles) m_selectionHandles = new PathSelectionItem(this, this); - } m_selectionHandles->setPoints(points); m_selectionHandles->setSecondarySelected(isSelected() ? false : isSecondarySelected()); } else if (m_selectionHandles) { - if (m_selectionHandles->scene()) { + if (m_selectionHandles->scene()) m_selectionHandles->scene()->removeItem(m_selectionHandles); - } delete m_selectionHandles; m_selectionHandles = 0; } @@ -446,9 +429,8 @@ void RelationItem::update(const Style *style) void RelationItem::mousePressEvent(QGraphicsSceneMouseEvent *event) { - if (event->button() == Qt::LeftButton || event->button() == Qt::RightButton) { + if (event->button() == Qt::LeftButton || event->button() == Qt::RightButton) m_diagramSceneModel->selectItem(this, event->modifiers() & Qt::ControlModifier); - } } void RelationItem::mouseMoveEvent(QGraphicsSceneMouseEvent *event) @@ -518,16 +500,14 @@ QPointF RelationItem::calcEndPoint(const Uid &end, const QPointF &otherEndPos, i ok = endObjectItem->intersectShapeWithLine(projectedLine, &endPos); } } - if (!ok) { + if (!ok) ok = endObjectItem->intersectShapeWithLine(directLine, &endPos); - } - if (!ok) { + if (!ok) endPos = endItem->pos(); - } } else { endPos = endItem->pos(); } return endPos; } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/relationitem.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/relationitem.h index 34c1001e9de..96c28a718e5 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/relationitem.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/relationitem.h @@ -40,7 +40,6 @@ QT_BEGIN_NAMESPACE class QGraphicsSimpleTextItem; QT_END_NAMESPACE - namespace qmt { class Uid; @@ -51,7 +50,6 @@ class StereotypesItem; class PathSelectionItem; class Style; - class RelationItem : public QGraphicsItem, public IMoveable, @@ -62,94 +60,54 @@ class RelationItem : public: RelationItem(DRelation *relation, DiagramSceneModel *diagramSceneModel, QGraphicsItem *parent = 0); - ~RelationItem(); -public: - DRelation *relation() const { return m_relation; } -public: - QRectF boundingRect() const; - void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); - QPainterPath shape() const; -public: - void moveDelta(const QPointF &delta); - void alignItemPositionToRaster(double rasterWidth, double rasterHeight); -public: - bool isSecondarySelected() const; - void setSecondarySelected(bool secondarySelected); - bool isFocusSelected() const; - void setFocusSelected(bool focusSelected); -public: - QPointF handlePos(int index); - void insertHandle(int beforeIndex, const QPointF &pos); - void deleteHandle(int index); - void setHandlePos(int index, const QPointF &pos); - void alignHandleToRaster(int index, double rasterWidth, double rasterHeight); -public: - virtual void update(); protected: - virtual void update(const Style *style); -protected: - void mousePressEvent(QGraphicsSceneMouseEvent *event); - void mouseMoveEvent(QGraphicsSceneMouseEvent *event); - void mouseReleaseEvent(QGraphicsSceneMouseEvent *event); private: - const Style *adaptedStyle(); - QPointF calcEndPoint(const Uid &end, const Uid &otherEnd, int nearestIntermediatePointIndex); - QPointF calcEndPoint(const Uid &end, const QPointF &otherEndPos, int nearestIntermediatePointIndex); -private: - DRelation *m_relation; protected: - DiagramSceneModel *m_diagramSceneModel; - bool m_isSecondarySelected; - bool m_isFocusSelected; - ArrowItem *m_arrow; - QGraphicsSimpleTextItem *m_name; - StereotypesItem *m_stereotypes; - PathSelectionItem *m_selectionHandles; }; -} +} // namespace qmt #endif // QMT_GRAPHICSRELATIONITEM_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/stereotypedisplayvisitor.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/stereotypedisplayvisitor.cpp index 88052094e9a..ad156130064 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/stereotypedisplayvisitor.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/stereotypedisplayvisitor.cpp @@ -54,7 +54,6 @@ StereotypeDisplayVisitor::StereotypeDisplayVisitor() StereotypeDisplayVisitor::~StereotypeDisplayVisitor() { - } void StereotypeDisplayVisitor::setModelController(ModelController *modelController) @@ -113,12 +112,10 @@ void StereotypeDisplayVisitor::visitDObject(const DObject *object) break; } } - if (stereotypeDisplay == DObject::StereotypeSmart) { + if (stereotypeDisplay == DObject::StereotypeSmart) stereotypeDisplay = DObject::StereotypeLabel; - } - if (stereotypeDisplay == DObject::StereotypeIcon && m_shapeIconId.isEmpty()) { + if (stereotypeDisplay == DObject::StereotypeIcon && m_shapeIconId.isEmpty()) m_shapeIconId = m_stereotypeIconId; - } m_stereotypeDisplay = stereotypeDisplay; } @@ -134,9 +131,8 @@ void StereotypeDisplayVisitor::visitDClass(const DClass *klass) m_stereotypeIconElement = StereotypeIcon::ElementClass; MClass *modelKlass = m_modelController->findObject(klass->modelUid()); bool hasMembers = false; - if (!modelKlass->members().isEmpty() && klass->showAllMembers()) { + if (!modelKlass->members().isEmpty() && klass->showAllMembers()) hasMembers = true; - } m_stereotypeSmartDisplay = hasMembers ? DObject::StereotypeDecoration : DObject::StereotypeIcon; visitDObject(klass); } @@ -160,12 +156,10 @@ void StereotypeDisplayVisitor::visitDItem(const DItem *item) m_stereotypeIconElement = StereotypeIcon::ElementItem; m_stereotypeSmartDisplay = DObject::StereotypeIcon; visitDObject(item); - if (m_stereotypeIconId.isEmpty() && !item->shape().isEmpty()) { + if (m_stereotypeIconId.isEmpty() && !item->shape().isEmpty()) m_shapeIconId = m_stereotypeController->findStereotypeIconId(StereotypeIcon::ElementItem, QStringList() << item->shape()); - } - if (m_shapeIconId.isEmpty() && !item->variety().isEmpty()) { + if (m_shapeIconId.isEmpty() && !item->variety().isEmpty()) m_shapeIconId = m_stereotypeController->findStereotypeIconId(StereotypeIcon::ElementItem, QStringList() << item->variety()); - } } } // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/stereotypedisplayvisitor.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/stereotypedisplayvisitor.h index 3060e996522..e79d580c4e1 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/items/stereotypedisplayvisitor.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/items/stereotypedisplayvisitor.h @@ -41,59 +41,34 @@ namespace qmt { class ModelController; class StereotypeController; -class StereotypeDisplayVisitor : - public DConstVoidVisitor +class StereotypeDisplayVisitor : public DConstVoidVisitor { public: - StereotypeDisplayVisitor(); - ~StereotypeDisplayVisitor(); -public: - void setModelController(ModelController *modelController); - void setStereotypeController(StereotypeController *stereotypeController); - DObject::StereotypeDisplay stereotypeDisplay() const { return m_stereotypeDisplay; } - StereotypeIcon::Display stereotypeIconDisplay() const; - QString stereotypeIconId() const { return m_stereotypeIconId; } - QString shapeIconId() const { return m_shapeIconId; } -public: - void visitDObject(const DObject *object); - void visitDPackage(const DPackage *package); - void visitDClass(const DClass *klass); - void visitDComponent(const DComponent *component); - void visitDDiagram(const DDiagram *diagram); - void visitDItem(const DItem *item); private: - ModelController *m_modelController; - StereotypeController *m_stereotypeController; - DObject::StereotypeDisplay m_stereotypeDisplay; - QString m_stereotypeIconId; - QString m_shapeIconId; - StereotypeIcon::Element m_stereotypeIconElement; - DObject::StereotypeDisplay m_stereotypeSmartDisplay; - }; } // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/latchcontroller.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/latchcontroller.cpp index 14b0ba1dc64..2004fdf3257 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/latchcontroller.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/latchcontroller.cpp @@ -62,13 +62,11 @@ LatchController::LatchController(QObject *parent) LatchController::~LatchController() { - if (m_verticalAlignLine->scene()) { + if (m_verticalAlignLine->scene()) m_verticalAlignLine->scene()->removeItem(m_verticalAlignLine); - } delete m_verticalAlignLine; - if (m_horizontalAlignLine->scene()) { + if (m_horizontalAlignLine->scene()) m_horizontalAlignLine->scene()->removeItem(m_horizontalAlignLine); - } delete m_horizontalAlignLine; } @@ -115,14 +113,12 @@ void LatchController::mouseMoveEventLatching(QGraphicsSceneMouseEvent *event) return; } - if (!m_diagramSceneModel->focusItem()) { + if (!m_diagramSceneModel->focusItem()) return; - } ILatchable *palpedLatchable = dynamic_cast(m_diagramSceneModel->focusItem()); - if (!palpedLatchable) { + if (!palpedLatchable) return; - } ILatchable::Action horizAction = ILatchable::Move; ILatchable::Action vertAction = ILatchable::Move; @@ -276,4 +272,4 @@ void LatchController::mouseReleaseEventLatching(QGraphicsSceneMouseEvent *event) m_verticalAlignLine->setVisible(false); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/latchcontroller.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/latchcontroller.h index 40379f26d3b..4620095336d 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/latchcontroller.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/latchcontroller.h @@ -41,61 +41,41 @@ class QGraphicsScene; class QGraphicsSceneMouseEvent; QT_END_NAMESPACE - namespace qmt { class DiagramController; class DiagramSceneModel; class AlignLineItem; -class QMT_EXPORT LatchController : - public QObject +class QMT_EXPORT LatchController : public QObject { Q_OBJECT public: - LatchController(QObject *parent = 0); - ~LatchController(); -public: - void setDiagramSceneModel(DiagramSceneModel *diagramSceneModel); -public: - void addToGraphicsScene(QGraphicsScene *graphicsScene); - void removeFromGraphicsScene(QGraphicsScene *graphicsScene); void mousePressEventLatching(QGraphicsSceneMouseEvent *event); - void mouseMoveEventLatching(QGraphicsSceneMouseEvent *event); - void mouseReleaseEventLatching(QGraphicsSceneMouseEvent *event); private: - DiagramSceneModel *m_diagramSceneModel; - AlignLineItem *m_horizontalAlignLine; - AlignLineItem *m_verticalAlignLine; - bool m_foundHorizontalLatch; - ILatchable::Latch m_horizontalLatch; - qreal m_horizontalDist; - bool m_foundVerticalLatch; - ILatchable::Latch m_verticalLatch; - qreal m_verticalDist; }; -} +} // namespace qmt #endif // QMT_LATCHCONTROLLER_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/alignbuttonsitem.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/alignbuttonsitem.cpp index de8c821f720..0202bacbb5a 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/alignbuttonsitem.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/alignbuttonsitem.cpp @@ -41,8 +41,7 @@ namespace qmt { -class AlignButtonsItem::AlignButtonItem : - public QGraphicsRectItem +class AlignButtonsItem::AlignButtonItem : public QGraphicsRectItem { public: AlignButtonItem(IAlignable::AlignType alignType, const QString &identifier, IAlignable *alignable, QGraphicsItem *parent) @@ -56,12 +55,8 @@ public: setPen(QPen(QColor(64, 64, 64))); } -public: - QString identifier() const { return m_identifier; } -public: - void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) { Q_UNUSED(option); @@ -82,13 +77,10 @@ public: void mouseReleaseEvent(QGraphicsSceneMouseEvent *event) { - if (contains(event->pos())) { + if (contains(event->pos())) m_alignable->align(m_alignType, m_identifier); - } } -public: - void setPixmap(const QPixmap &pixmap) { setRect(0.0, 0.0, pixmap.width() + 2 * InnerBorder, pixmap.height() + 2 * InnerBorder); @@ -97,18 +89,12 @@ public: } private: - IAlignable::AlignType m_alignType; - QString m_identifier; - IAlignable *m_alignable; - QGraphicsPixmapItem *m_pixmapItem; - }; - AlignButtonsItem::AlignButtonsItem(IAlignable *alignable, QGraphicsItem *parent) : QGraphicsItem(parent), m_alignable(alignable) @@ -193,4 +179,4 @@ void AlignButtonsItem::addButton(IAlignable::AlignType alignType, const QString m_alignItems.append(item); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/alignbuttonsitem.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/alignbuttonsitem.h index 83562912cdd..0a3baa73e51 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/alignbuttonsitem.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/alignbuttonsitem.h @@ -39,15 +39,11 @@ namespace qmt { class IAlignable; - -class AlignButtonsItem : - public QGraphicsItem +class AlignButtonsItem : public QGraphicsItem { - class AlignButtonItem; public: - enum { NormalPixmapWidth = 14, NormalPixmapHeight = NormalPixmapWidth, @@ -58,32 +54,20 @@ public: VerticalDistanceToObejct = HorizontalDistanceToObject }; -public: - AlignButtonsItem(IAlignable *alignable, QGraphicsItem *parent = 0); - ~AlignButtonsItem(); -public: - QRectF boundingRect() const; - void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); -public: - void clear(); - void addButton(IAlignable::AlignType alignType, const QString &identifier, qreal pos); private: - IAlignable *m_alignable; - QList m_alignItems; - }; -} +} // namespace qmt #endif // QMT_ALIGNBUTTONSITEM_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/alignlineitem.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/alignlineitem.cpp index a05b828e415..9de8bc93f03 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/alignlineitem.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/alignlineitem.cpp @@ -84,4 +84,4 @@ void AlignLineItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *opt Q_UNUSED(widget); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/alignlineitem.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/alignlineitem.h index f731a8c1d7e..c19c0679437 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/alignlineitem.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/alignlineitem.h @@ -35,45 +35,28 @@ namespace qmt { -class AlignLineItem : - public QGraphicsItem +class AlignLineItem : public QGraphicsItem { public: - enum Direction { Horizontal, Vertical }; -public: - AlignLineItem(Direction direction, QGraphicsItem *parent = 0); - ~AlignLineItem(); -public: - void setLine(qreal pos); - void setLine(qreal pos, qreal otherPos1, qreal otherPos2); -public: - QRectF boundingRect() const; - void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0); - -private: - Direction m_direction; - QGraphicsLineItem *m_alignLine; - QGraphicsLineItem *m_highlightLine; - }; -} +} // namespace qmt #endif // QMT_ALIGNLINEITEM_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/arrowitem.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/arrowitem.cpp index 45784d34c99..45c3f6e6f6a 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/arrowitem.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/arrowitem.cpp @@ -45,8 +45,7 @@ namespace qmt { -class ArrowItem::GraphicsPathItem : - public QGraphicsPathItem +class ArrowItem::GraphicsPathItem : public QGraphicsPathItem { public: GraphicsPathItem(QGraphicsItem *parent) @@ -63,9 +62,7 @@ public: } }; - -class ArrowItem::GraphicsHeadItem : - public QGraphicsItem +class ArrowItem::GraphicsHeadItem : public QGraphicsItem { public: GraphicsHeadItem(QGraphicsItem *parent) @@ -82,31 +79,24 @@ public: { } -public: - void setHead(ArrowItem::Head head) { - if (m_head != head) { + if (m_head != head) m_head = head; - } } void setArrowSize(double arrowSize) { - if (m_arrowSize != arrowSize) { + if (m_arrowSize != arrowSize) m_arrowSize = arrowSize; - } } void setDiamondSize(double diamondSize) { - if (m_diamondSize != diamondSize) { + if (m_diamondSize != diamondSize) m_diamondSize = diamondSize; - } } -public: - QRectF boundingRect() const { return childrenBoundingRect(); @@ -124,12 +114,10 @@ public: painter->setPen(QPen(Qt::red)); painter->drawPath(shape()); painter->setPen(QPen(Qt::green)); - if (m_arrowItem) { + if (m_arrowItem) painter->drawRect(mapRectFromItem(m_arrowItem, m_arrowItem->boundingRect())); - } - if (m_diamondItem) { + if (m_diamondItem) painter->drawRect(mapRectFromItem(m_diamondItem, m_diamondItem->boundingRect())); - } #endif } @@ -137,17 +125,13 @@ public: { QPainterPath path; path.setFillRule(Qt::WindingFill); - if (m_arrowItem) { + if (m_arrowItem) path.addRect(mapRectFromItem(m_arrowItem, m_arrowItem->boundingRect())); - } - if (m_diamondItem) { + if (m_diamondItem) path.addRect(mapRectFromItem(m_diamondItem, m_diamondItem->boundingRect())); - } return path; } -public: - double calcHeadLength() const { double length = 0.0; @@ -172,7 +156,6 @@ public: } private: - double calcArrowLength() const { return sqrt(3.0) * 0.5 * m_arrowSize; @@ -184,7 +167,6 @@ private: } public: - void update(const Style *style) { bool hasArrow = false; @@ -209,9 +191,8 @@ public: } if (hasArrow) { - if (!m_arrowItem) { + if (!m_arrowItem) m_arrowItem = new ArrowItem::GraphicsPathItem(this); - } if (m_head == ArrowItem::HeadOpen || m_head == ArrowItem::HeadTriangle) { m_arrowItem->setPen(style->linePen()); @@ -226,12 +207,10 @@ public: path.moveTo(-h, -m_arrowSize * 0.5); path.lineTo(0.0, 0.0); path.lineTo(-h, m_arrowSize * 0.5); - if (m_head != ArrowItem::HeadOpen) { + if (m_head != ArrowItem::HeadOpen) path.closeSubpath(); - } - if (hasDiamond) { + if (hasDiamond) path.translate(-calcDiamondLength(), 0.0); - } m_arrowItem->setPath(path); } else if (m_arrowItem) { m_arrowItem->scene()->removeItem(m_arrowItem); @@ -240,9 +219,8 @@ public: } if (hasDiamond) { - if (!m_diamondItem) { + if (!m_diamondItem) m_diamondItem = new ArrowItem::GraphicsPathItem(this); - } if (m_head == ArrowItem::HeadDiamond || m_head == ArrowItem::HeadDiamondFilledTriangle) { m_diamondItem->setPen(style->linePen()); @@ -267,22 +245,14 @@ public: } private: - ArrowItem::Head m_head; - double m_arrowSize; - double m_diamondSize; - ArrowItem::GraphicsPathItem *m_arrowItem; - ArrowItem::GraphicsPathItem *m_diamondItem; - }; - -class ArrowItem::GraphicsShaftItem : - public ArrowItem::GraphicsPathItem +class ArrowItem::GraphicsShaftItem : public ArrowItem::GraphicsPathItem { public: GraphicsShaftItem(QGraphicsItem *parent) @@ -291,7 +261,6 @@ public: } }; - ArrowItem::ArrowItem(QGraphicsItem *parent) : QGraphicsItem(parent), m_shaft(ShaftSolid), @@ -324,37 +293,32 @@ ArrowItem::~ArrowItem() void ArrowItem::setShaft(ArrowItem::Shaft shaft) { - if (m_shaft != shaft) { + if (m_shaft != shaft) m_shaft = shaft; - } } void ArrowItem::setArrowSize(double arrowSize) { - if (m_arrowSize != arrowSize) { + if (m_arrowSize != arrowSize) m_arrowSize = arrowSize; - } } void ArrowItem::setDiamondSize(double diamondSize) { - if (m_diamondSize != diamondSize) { + if (m_diamondSize != diamondSize) m_diamondSize = diamondSize; - } } void ArrowItem::setStartHead(ArrowItem::Head head) { - if (m_startHead != head) { + if (m_startHead != head) m_startHead = head; - } } void ArrowItem::setEndHead(ArrowItem::Head head) { - if (m_endHead != head) { + if (m_endHead != head) m_endHead = head; - } } void ArrowItem::setPoints(const QList &points) @@ -379,12 +343,10 @@ void ArrowItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, painter->setPen(QPen(Qt::red)); painter->drawPath(shape()); painter->setPen(QPen(Qt::green)); - if (m_startHeadItem) { + if (m_startHeadItem) painter->drawRect(mapRectFromItem(m_startHeadItem, m_startHeadItem->boundingRect())); - } - if (m_endHeadItem) { + if (m_endHeadItem) painter->drawRect(mapRectFromItem(m_endHeadItem, m_endHeadItem->boundingRect())); - } #endif } @@ -403,12 +365,10 @@ QPainterPath ArrowItem::shape() const QPainterPath p = ps.createStroke(m_shaftItem->path()); path.addPath(p); } - if (m_startHeadItem) { + if (m_startHeadItem) path.addRect(mapRectFromItem(m_startHeadItem, m_startHeadItem->boundingRect())); - } - if (m_endHeadItem) { + if (m_endHeadItem) path.addRect(mapRectFromItem(m_endHeadItem, m_endHeadItem->boundingRect())); - } return path; } @@ -431,17 +391,15 @@ QLineF ArrowItem::lastLineSegment() const double ArrowItem::startHeadLength() const { - if (m_startHeadItem) { + if (m_startHeadItem) return m_startHeadItem->calcHeadLength(); - } return 0.0; } double ArrowItem::endHeadLength() const { - if (m_endHeadItem) { + if (m_endHeadItem) return m_endHeadItem->calcHeadLength(); - } return 0.0; } @@ -458,9 +416,8 @@ void ArrowItem::updateShaft(const Style *style) QMT_CHECK(m_shaftItem); QPen pen(style->linePen()); - if (m_shaft == ShaftDashed) { + if (m_shaft == ShaftDashed) pen.setDashPattern(QVector() << (4.0 / pen.widthF()) << (4.0 / pen.widthF())); - } m_shaftItem->setPen(pen); } @@ -468,17 +425,15 @@ void ArrowItem::updateHead(GraphicsHeadItem **headItem, Head head, const Style * { if (head == HeadNone) { if (*headItem) { - if ((*headItem)->scene()) { + if ((*headItem)->scene()) (*headItem)->scene()->removeItem(*headItem); - } delete *headItem; *headItem = 0; } return; } - if (!*headItem) { + if (!*headItem) *headItem = new GraphicsHeadItem(this); - } (*headItem)->setArrowSize(m_arrowSize); (*headItem)->setDiamondSize(m_diamondSize); (*headItem)->setHead(head); @@ -487,18 +442,16 @@ void ArrowItem::updateHead(GraphicsHeadItem **headItem, Head head, const Style * void ArrowItem::updateHeadGeometry(GraphicsHeadItem **headItem, const QPointF &pos, const QPointF &otherPos) { - if (!*headItem) { + if (!*headItem) return; - } (*headItem)->setPos(pos); QVector2D directionVector(pos - otherPos); directionVector.normalize(); double angle = qAcos(directionVector.x()) * 180.0 / 3.1415926535; - if (directionVector.y() > 0.0) { + if (directionVector.y() > 0.0) angle = -angle; - } (*headItem)->setRotation(-angle); } @@ -520,9 +473,8 @@ void ArrowItem::updateGeometry() path.moveTo(m_points[0]); } - for (int i = 1; i < m_points.size() - 1; ++i) { + for (int i = 1; i < m_points.size() - 1; ++i) path.lineTo(m_points.at(i)); - } if (m_endHeadItem) { QVector2D endDirectionVector(m_points[m_points.size() - 1] - m_points[m_points.size() - 2]); @@ -539,4 +491,4 @@ void ArrowItem::updateGeometry() updateHeadGeometry(&m_endHeadItem, m_points[m_points.size() - 1], m_points[m_points.size() - 2]); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/arrowitem.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/arrowitem.h index 22ba060d114..267288f36b6 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/arrowitem.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/arrowitem.h @@ -37,20 +37,17 @@ QT_BEGIN_NAMESPACE class QGraphicsPathItem; QT_END_NAMESPACE - namespace qmt { class Style; -class ArrowItem : - public QGraphicsItem +class ArrowItem : public QGraphicsItem { class GraphicsPathItem; class GraphicsHeadItem; class GraphicsShaftItem; public: - enum Shaft { ShaftSolid, ShaftDashed @@ -67,81 +64,46 @@ public: HeadFilledDiamondFilledTriangle }; -public: - ArrowItem(QGraphicsItem *parent = 0); - ArrowItem(const ArrowItem &rhs, QGraphicsItem *parent = 0); - ~ArrowItem(); -public: - void setShaft(Shaft shaft); - void setArrowSize(double arrowSize); - void setDiamondSize(double diamondSize); - void setStartHead(Head head); - void setEndHead(Head head); - void setPoints(const QList &points); -public: - QRectF boundingRect() const; - void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); - QPainterPath shape() const; -public: - QPointF calcPointAtPercent(double percentage) const; - QLineF firstLineSegment() const; - QLineF lastLineSegment() const; - double startHeadLength() const; - double endHeadLength() const; void update(const Style *style); private: - void updateShaft(const Style *style); - void updateHead(GraphicsHeadItem **headItem, Head head, const Style *style); - void updateHeadGeometry(GraphicsHeadItem **headItem, const QPointF &pos, const QPointF &otherPos); - void updateGeometry(); -private: - Shaft m_shaft; - GraphicsShaftItem *m_shaftItem; - double m_arrowSize; - double m_diamondSize; - Head m_startHead; - GraphicsHeadItem *m_startHeadItem; - Head m_endHead; - GraphicsHeadItem *m_endHeadItem; - QList m_points; }; -} +} // namespace qmt #endif // QMT_GRAPHICSARROWITEM_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/contextlabelitem.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/contextlabelitem.cpp index 2aad11b6cb9..b6ae843bb71 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/contextlabelitem.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/contextlabelitem.cpp @@ -89,4 +89,4 @@ void ContextLabelItem::update() } } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/contextlabelitem.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/contextlabelitem.h index bba2cd6818c..ee86a9170c3 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/contextlabelitem.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/contextlabelitem.h @@ -35,36 +35,24 @@ namespace qmt { -class ContextLabelItem : - public QGraphicsSimpleTextItem +class ContextLabelItem : public QGraphicsSimpleTextItem { public: - ContextLabelItem(QGraphicsItem *parent = 0); - ~ContextLabelItem(); -public: - void setMaxWidth(double maxWidth); - void resetMaxWidth(); - void setContext(const QString &context); - double height() const; private: - void update(); -private: - double m_maxWidth; - QString m_context; }; -} +} // namespace qmt #endif // QMT_CONTEXTLABELITEM_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/customiconitem.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/customiconitem.h index 9260234d1c6..5d14bd0f451 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/customiconitem.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/customiconitem.h @@ -39,60 +39,35 @@ #include #include - namespace qmt { class DiagramSceneModel; - -class CustomIconItem : - public QGraphicsItem +class CustomIconItem : public QGraphicsItem { - public: - CustomIconItem(DiagramSceneModel *diagramSceneModel, QGraphicsItem *parent = 0); - ~CustomIconItem(); -public: - void setStereotypeIconId(const QString &stereotypeIconId); - void setBaseSize(const QSizeF &baseSize); - void setActualSize(const QSizeF &actualSize); - void setBrush(const QBrush &brush); - void setPen(const QPen &pen); - StereotypeIcon stereotypeIcon() const { return m_stereotypeIcon; } - double shapeWidth() const; - double shapeHeight() const; -public: - QRectF boundingRect() const; - void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); private: - DiagramSceneModel *m_diagramSceneModel; - QString m_stereotypeIconId; - StereotypeIcon m_stereotypeIcon; - QSizeF m_baseSize; - QSizeF m_actualSize; - QBrush m_brush; - QPen m_pen; }; diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/pathselectionitem.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/pathselectionitem.cpp index b582bce6466..462a3ba3719 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/pathselectionitem.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/pathselectionitem.cpp @@ -44,20 +44,15 @@ namespace qmt { static const double MAX_SELECTION_DISTANCE_FROM_PATH = 4.0; - -class PathSelectionItem::GraphicsHandleItem : - public QGraphicsRectItem +class PathSelectionItem::GraphicsHandleItem : public QGraphicsRectItem { public: - enum Selection { NotSelected, Selected, SecondarySelected }; -public: - GraphicsHandleItem(int pointIndex, PathSelectionItem *parent) : QGraphicsRectItem(parent), m_owner(parent), @@ -66,8 +61,6 @@ public: { } -public: - void setPointSize(const QSizeF &pointSize) { if (m_pointSize != pointSize) { @@ -85,7 +78,6 @@ public: } protected: - void mousePressEvent(QGraphicsSceneMouseEvent *event) { m_startPos = mapToScene(event->pos()); @@ -106,7 +98,6 @@ protected: } private: - void update() { prepareGeometryChange(); @@ -127,24 +118,14 @@ private: } } -private: - PathSelectionItem *m_owner; - int m_pointIndex; - QSizeF m_pointSize; - Selection m_selection; - QPointF m_startPos; - PathSelectionItem::HandleQualifier m_qualifier; - }; - - PathSelectionItem::PathSelectionItem(IWindable *windable, QGraphicsItem *parent) : QGraphicsItem(parent), m_windable(windable), @@ -181,14 +162,12 @@ QPainterPath PathSelectionItem::shape() const { QPainterPath shape; shape.setFillRule(Qt::WindingFill); - foreach (const GraphicsHandleItem *handle, m_handles) { + foreach (const GraphicsHandleItem *handle, m_handles) shape.addPath(handle->shape()); - } // TODO duplicate of ArrowItem::GraphicsShaftItem's shape QPolygonF polygon; - for (int i = 0; i < m_handles.size(); ++i) { + for (int i = 0; i < m_handles.size(); ++i) polygon.append(m_handles.at(i)->pos()); - } QPainterPath polygonPath; polygonPath.addPolygon(polygon); QPainterPathStroker ps; @@ -209,9 +188,8 @@ void PathSelectionItem::setPointSize(const QSizeF &size) QList PathSelectionItem::points() const { QList points; - foreach (GraphicsHandleItem *handle, m_handles) { + foreach (GraphicsHandleItem *handle, m_handles) points.append(handle->pos()); - } return points; } @@ -282,22 +260,19 @@ void PathSelectionItem::moveHandle(int pointIndex, const QPointF &deltaMove, Han switch (handleQualifier) { case None: { - if (handleStatus == Press) { + if (handleStatus == Press) m_originalHandlePos = m_windable->handlePos(pointIndex); - } QPointF newPos = m_originalHandlePos + deltaMove; m_windable->setHandlePos(pointIndex, newPos); - if (handleStatus == Release) { + if (handleStatus == Release) m_windable->alignHandleToRaster(pointIndex, RASTER_WIDTH, RASTER_HEIGHT); - } break; } case DeleteHandle: - if (handleStatus == Press) { + if (handleStatus == Press) m_windable->deleteHandle(pointIndex); - } break; } } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/pathselectionitem.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/pathselectionitem.h index 297ca2578fe..293b1babadf 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/pathselectionitem.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/pathselectionitem.h @@ -33,16 +33,13 @@ #include - namespace qmt { class IWindable; -class PathSelectionItem : - public QGraphicsItem +class PathSelectionItem : public QGraphicsItem { class GraphicsHandleItem; - friend class GraphicsHandleItem; enum HandleStatus { @@ -58,54 +55,33 @@ class PathSelectionItem : }; public: - PathSelectionItem(IWindable *windable, QGraphicsItem *parent = 0); - ~PathSelectionItem(); -public: - QRectF boundingRect() const; - void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); - QPainterPath shape() const; -public: - QSizeF pointSize() const { return m_pointSize; } - void setPointSize(const QSizeF &size); - QList points() const; - void setPoints(const QList &points); - void setSecondarySelected(bool secondarySelected); protected: - void mousePressEvent(QGraphicsSceneMouseEvent *event); private: - void update(); - void moveHandle(int pointIndex, const QPointF &deltaMove, HandleStatus handleStatus, HandleQualifier handleQualifier); -private: - IWindable *m_windable; - QSizeF m_pointSize; - bool m_isSecondarySelected; - QList m_handles; - QPointF m_originalHandlePos; }; -} +} // namespace qmt #endif // QMT_GRAPHICSPATHSELECTIONITEM_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/rectangularselectionitem.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/rectangularselectionitem.cpp index fb5a82bcdb9..2beb8adf0b7 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/rectangularselectionitem.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/rectangularselectionitem.cpp @@ -40,14 +40,11 @@ #include #include - namespace qmt { -class RectangularSelectionItem::GraphicsHandleItem : - public QGraphicsRectItem +class RectangularSelectionItem::GraphicsHandleItem : public QGraphicsRectItem { public: - GraphicsHandleItem(Handle handle, RectangularSelectionItem *parent) : QGraphicsRectItem(parent), m_owner(parent), @@ -65,7 +62,6 @@ public: if (secondarySelected) { setPen(QPen(Qt::lightGray)); setBrush(Qt::NoBrush); - } else { setPen(QPen(Qt::black)); setBrush(QBrush(Qt::black)); @@ -74,44 +70,34 @@ public: } protected: - void mousePressEvent(QGraphicsSceneMouseEvent *event) { m_startPos = mapToScene(event->pos()); - if (!m_isSecondarySelected) { + if (!m_isSecondarySelected) m_owner->moveHandle(m_handle, QPointF(0.0, 0.0), Press, None); - } } void mouseMoveEvent(QGraphicsSceneMouseEvent *event) { QPointF pos = mapToScene(event->pos()) - m_startPos; - if (!m_isSecondarySelected) { + if (!m_isSecondarySelected) m_owner->moveHandle(m_handle, pos, Move, None); - } - } void mouseReleaseEvent(QGraphicsSceneMouseEvent *event) { QPointF pos = mapToScene(event->pos()) - m_startPos; - if (!m_isSecondarySelected) { + if (!m_isSecondarySelected) m_owner->moveHandle(m_handle, pos, Release, None); - } } private: - RectangularSelectionItem *m_owner; - Handle m_handle; - bool m_isSecondarySelected; - QPointF m_startPos; }; - RectangularSelectionItem::RectangularSelectionItem(IResizable *itemResizer, QGraphicsItem *parent) : QGraphicsItem(parent), m_itemResizer(itemResizer), @@ -185,9 +171,8 @@ void RectangularSelectionItem::update() prepareGeometryChange(); for (int i = 0; i <= 7; ++i) { - if (!m_points[i]) { + if (!m_points[i]) m_points[i] = new GraphicsHandleItem((Handle) i, this); - } m_points[i]->setRect(-m_pointSize.width() / 2.0, -m_pointSize.height() / 2.0, m_pointSize.width(), m_pointSize.height()); bool visible = false; switch ((Handle) i) { @@ -231,19 +216,16 @@ void RectangularSelectionItem::update() m_points[7]->setPos(pos() + m_rect.bottomRight()); if (m_showBorder) { - if (!m_borderItem) { + if (!m_borderItem) m_borderItem = new QGraphicsRectItem(this); - } m_borderItem->setRect(m_rect); - if (m_isSecondarySelected) { + if (m_isSecondarySelected) m_borderItem->setPen(QPen(QBrush(Qt::lightGray), 0.0, Qt::DashDotLine)); - } else { + else m_borderItem->setPen(QPen(QBrush(Qt::black), 0.0, Qt::DashDotLine)); - } } else if (m_borderItem) { - if (m_borderItem->scene()) { + if (m_borderItem->scene()) m_borderItem->scene()->removeItem(m_borderItem); - } delete m_borderItem; m_borderItem = 0; } @@ -285,12 +267,10 @@ void RectangularSelectionItem::moveHandle(Handle handle, const QPointF &deltaMov moveable = m_freedom == FreedomAny || m_freedom == FreedomKeepRatio; break; } - if (!moveable) { + if (!moveable) return; - } QSizeF minimumSize = m_itemResizer->minimumSize(); - QPointF topLeftDelta; QPointF bottomRightDelta; @@ -301,11 +281,10 @@ void RectangularSelectionItem::moveHandle(Handle handle, const QPointF &deltaMov qreal deltaLength = qSqrt(deltaMove.x() * deltaMove.x() + deltaMove.y() * deltaMove.y()); switch (handle) { case HandleTopLeft: - if (deltaMove.x() > 0 && deltaMove.y() > 0) { + if (deltaMove.x() > 0 && deltaMove.y() > 0) topLeftDelta = v * deltaLength; - } else if (deltaMove.x() < 0 && deltaMove.y() < 0) { + else if (deltaMove.x() < 0 && deltaMove.y() < 0) topLeftDelta = -(v * deltaLength); - } break; case HandleTop: QMT_CHECK(false); @@ -338,11 +317,10 @@ void RectangularSelectionItem::moveHandle(Handle handle, const QPointF &deltaMov QMT_CHECK(false); break; case HandleBottomRight: - if (deltaMove.x() > 0 && deltaMove.y() > 0) { + if (deltaMove.x() > 0 && deltaMove.y() > 0) bottomRightDelta = v * deltaLength; - } else if (deltaMove.x() < 0 && deltaMove.y() < 0) { + else if (deltaMove.x() < 0 && deltaMove.y() < 0) bottomRightDelta = -(v * deltaLength); - } break; } } else { @@ -384,9 +362,8 @@ void RectangularSelectionItem::moveHandle(Handle handle, const QPointF &deltaMov case HandleTopLeft: case HandleLeft: case HandleBottomLeft: - if (sizeDelta.width() > 0.0) { + if (sizeDelta.width() > 0.0) topLeftDelta.setX(topLeftDelta.x() - sizeDelta.width()); - } break; case HandleTop: case HandleBottom: @@ -394,9 +371,8 @@ void RectangularSelectionItem::moveHandle(Handle handle, const QPointF &deltaMov case HandleTopRight: case HandleRight: case HandleBottomRight: - if (sizeDelta.width() > 0.0) { + if (sizeDelta.width() > 0.0) bottomRightDelta.setX(bottomRightDelta.x() + sizeDelta.width()); - } break; } @@ -405,9 +381,8 @@ void RectangularSelectionItem::moveHandle(Handle handle, const QPointF &deltaMov case HandleTopLeft: case HandleTop: case HandleTopRight: - if (sizeDelta.height() > 0.0) { + if (sizeDelta.height() > 0.0) topLeftDelta.setY(topLeftDelta.y() - sizeDelta.height()); - } break; case HandleLeft: case HandleRight: @@ -415,9 +390,8 @@ void RectangularSelectionItem::moveHandle(Handle handle, const QPointF &deltaMov case HandleBottomLeft: case HandleBottom: case HandleBottomRight: - if (sizeDelta.height() > 0.0) { + if (sizeDelta.height() > 0.0) bottomRightDelta.setY(bottomRightDelta.y() + sizeDelta.height()); - } break; } @@ -462,4 +436,4 @@ void RectangularSelectionItem::moveHandle(Handle handle, const QPointF &deltaMov } } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/rectangularselectionitem.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/rectangularselectionitem.h index 5ced3b5a60b..6abd5134ed7 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/rectangularselectionitem.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/rectangularselectionitem.h @@ -38,16 +38,13 @@ QT_BEGIN_NAMESPACE class QGraphicsRectItem; QT_END_NAMESPACE - namespace qmt { class IResizable; -class RectangularSelectionItem : - public QGraphicsItem +class RectangularSelectionItem : public QGraphicsItem { class GraphicsHandleItem; - friend class GraphicsHandleItem; enum Handle { @@ -76,7 +73,6 @@ class RectangularSelectionItem : }; public: - enum Freedom { FreedomAny, FreedomVerticalOnly, @@ -84,71 +80,40 @@ public: FreedomKeepRatio }; -public: - RectangularSelectionItem(IResizable *itemResizer, QGraphicsItem *parent = 0); - ~RectangularSelectionItem(); -public: - QRectF boundingRect() const; - void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget); -public: - QRectF rect() const { return m_rect; } - void setRect(const QRectF &rectangle); - void setRect(qreal x, qreal y, qreal width, qreal height); - QSizeF pointSize() const { return m_pointSize; } - void setPointSize(const QSizeF &size); - bool showBorder() const { return m_showBorder; } - void setShowBorder(bool showBorder); - Freedom freedom() const { return m_freedom; } - void setFreedom(Freedom freedom); - bool isSecondarySelected() const { return m_isSecondarySelected; } - void setSecondarySelected(bool secondarySelected); private: - void update(); - void moveHandle(Handle handle, const QPointF &deltaMove, HandleStatus handleStatus, HandleQualifier handleQualifier); -private: - IResizable *m_itemResizer; - QRectF m_rect; - QSizeF m_pointSize; - QVector m_points; - QPointF m_originalResizePos; - QRectF m_originalResizeRect; - bool m_showBorder; - QGraphicsRectItem *m_borderItem; - Freedom m_freedom; - bool m_isSecondarySelected; }; -} +} // namespace qmt #endif // QMT_RECTENGULARSELECTIONITEM_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/relationstarter.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/relationstarter.cpp index 2801c454bc6..8dd83b079fe 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/relationstarter.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/relationstarter.cpp @@ -118,9 +118,8 @@ void RelationStarter::mousePressEvent(QGraphicsSceneMouseEvent *event) void RelationStarter::mouseMoveEvent(QGraphicsSceneMouseEvent *event) { - if (!m_currentPreviewArrow) { + if (!m_currentPreviewArrow) return; - } updateCurrentPreviewArrow(mapToScene(event->pos())); } @@ -137,9 +136,8 @@ void RelationStarter::mouseReleaseEvent(QGraphicsSceneMouseEvent *event) void RelationStarter::keyPressEvent(QKeyEvent *event) { - if (!m_currentPreviewArrow) { + if (!m_currentPreviewArrow) return; - } if (event->key() == Qt::Key_Shift) { QPointF p = m_currentPreviewArrow->lastLineSegment().p1(); if (m_currentPreviewArrowIntermediatePoints.isEmpty() || m_currentPreviewArrowIntermediatePoints.last() != p) { @@ -162,4 +160,4 @@ void RelationStarter::updateCurrentPreviewArrow(const QPointF &headPoint) m_currentPreviewArrow->update(m_diagramSceneModel->styleController()->relationStarterStyle()); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/relationstarter.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/relationstarter.h index 10569062daa..68451f7b100 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/relationstarter.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/relationstarter.h @@ -37,62 +37,40 @@ #include - namespace qmt { class DiagramSceneModel; class IRelationable; - -class RelationStarter : - public QGraphicsRectItem +class RelationStarter : public QGraphicsRectItem { public: RelationStarter(IRelationable *owner, DiagramSceneModel *diagramSceneModel, QGraphicsItem *parent = 0); - ~RelationStarter(); -public: - QRectF boundingRect() const; - void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0); -public: - void addArrow(const QString &id, ArrowItem::Shaft shaft, ArrowItem::Head endHead, ArrowItem::Head startHead = ArrowItem::HeadNone); protected: - void mousePressEvent(QGraphicsSceneMouseEvent *event); - void mouseMoveEvent(QGraphicsSceneMouseEvent *event); - void mouseReleaseEvent(QGraphicsSceneMouseEvent *event); - void keyPressEvent(QKeyEvent *event); private: - void updateCurrentPreviewArrow(const QPointF &headPoint); -public: - IRelationable *m_owner; - DiagramSceneModel *m_diagramSceneModel; - QList m_arrows; - QHash m_arrowIds; - ArrowItem *m_currentPreviewArrow; - QString m_currentPreviewArrowId; - QList m_currentPreviewArrowIntermediatePoints; }; -} +} // namespace qmt #endif // QMT_GRAPHICSRELATIONSTARTER_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/stereotypesitem.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/stereotypesitem.cpp index 2202c6f60bd..89036b0e730 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/stereotypesitem.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/stereotypesitem.cpp @@ -53,9 +53,8 @@ QString StereotypesItem::format(const QList &stereotypes) text = QString::fromUtf8("«"); bool first = true; foreach (const QString &stereotype, stereotypes) { - if (!first) { + if (!first) text += QStringLiteral(", "); - } text += stereotype; first = false; } @@ -64,4 +63,4 @@ QString StereotypesItem::format(const QList &stereotypes) return text; } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/stereotypesitem.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/stereotypesitem.h index 60a55cfeadb..e9c92182373 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/stereotypesitem.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/stereotypesitem.h @@ -36,24 +36,17 @@ namespace qmt { -class StereotypesItem : - public QGraphicsSimpleTextItem +class StereotypesItem : public QGraphicsSimpleTextItem { public: StereotypesItem(QGraphicsItem *parent = 0); - ~StereotypesItem(); -public: - void setStereotypes(const QList &stereotypes); -public: - static QString format(const QList &stereotypes); - }; -} +} // namespace qmt #endif // QMT_GRAPHICSSTEREOTYPESITEM_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/templateparameterbox.cpp b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/templateparameterbox.cpp index ad4394e7219..5fecda11779 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/templateparameterbox.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/templateparameterbox.cpp @@ -85,11 +85,10 @@ void TemplateParameterBox::updateText() bool first = true; foreach (const QString ¶meter, m_templateParameters) { if (!first) { - if (m_breakLines) { + if (m_breakLines) templateText += QLatin1Char('\n'); - } else { + else templateText += QStringLiteral(", "); - } } templateText += parameter; first = false; diff --git a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/templateparameterbox.h b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/templateparameterbox.h index 80359c20044..0cf0e54c61f 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/templateparameterbox.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_scene/parts/templateparameterbox.h @@ -35,36 +35,23 @@ namespace qmt { -class TemplateParameterBox : - public QGraphicsRectItem +class TemplateParameterBox : public QGraphicsRectItem { public: TemplateParameterBox(QGraphicsItem *parent = 0); - ~TemplateParameterBox(); -public: - void setFont(const QFont &font); - void setTextBrush(const QBrush &brush); - void setTemplateParameters(const QList &templateParameters); - void setBreakLines(bool breakLines); private: - void updateText(); - void update(); -private: - QList m_templateParameters; - bool m_breakLines; - QGraphicsSimpleTextItem *m_parametersText; }; diff --git a/src/libs/3rdparty/modeling/qmt/diagram_ui/diagram_mime_types.h b/src/libs/3rdparty/modeling/qmt/diagram_ui/diagram_mime_types.h index d6df8c46ee1..0064046356d 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_ui/diagram_mime_types.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_ui/diagram_mime_types.h @@ -34,26 +34,17 @@ namespace qmt { // mime types for drag&drop - static const char MIME_TYPE_MODEL_ELEMENTS[] = "text/model-elements"; - static const char MIME_TYPE_NEW_MODEL_ELEMENTS[] = "text/new-model-elements"; - // object type constants used within drag&drop - static const char ELEMENT_TYPE_PACKAGE[] = "package"; - static const char ELEMENT_TYPE_COMPONENT[] = "component"; - static const char ELEMENT_TYPE_CLASS[] = "class"; - static const char ELEMENT_TYPE_ITEM[] = "item"; - static const char ELEMENT_TYPE_ANNOTATION[] = "annotation"; - static const char ELEMENT_TYPE_BOUNDARY[] = "boundary"; -} +} // namespace qmt #endif // QMT_DIAGRAM_MIME_TYPES_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_ui/diagramsmanager.cpp b/src/libs/3rdparty/modeling/qmt/diagram_ui/diagramsmanager.cpp index 685047c2e6a..fb6cc55db4f 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_ui/diagramsmanager.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_ui/diagramsmanager.cpp @@ -41,20 +41,16 @@ #include - namespace qmt { -class DiagramsManager::ManagedDiagram { +class DiagramsManager::ManagedDiagram +{ public: ManagedDiagram(DiagramSceneModel *diagramSceneModel, const QString &diagramName); - ~ManagedDiagram(); -public: DiagramSceneModel *diagramSceneModel() const { return m_diagramSceneModel.data(); } - QString diagramName() const { return m_diagramName; } - void setDiagramName(const QString &name) { m_diagramName = name; } private: @@ -72,8 +68,6 @@ DiagramsManager::ManagedDiagram::~ManagedDiagram() { } - - DiagramsManager::DiagramsManager(QObject *parent) : QObject(parent), m_diagramsView(0), @@ -91,13 +85,11 @@ DiagramsManager::~DiagramsManager() void DiagramsManager::setModel(TreeModel *model) { - if (m_model) { + if (m_model) connect(m_model, 0, this, 0); - } m_model = model; - if (model) { + if (model) connect(model, SIGNAL(dataChanged(QModelIndex,QModelIndex)), this, SLOT(onDataChanged(QModelIndex,QModelIndex))); - } } void DiagramsManager::setDiagramsView(DiagramsViewInterface *diagramsView) @@ -107,13 +99,11 @@ void DiagramsManager::setDiagramsView(DiagramsViewInterface *diagramsView) void DiagramsManager::setDiagramController(DiagramController *diagramController) { - if (m_diagramController) { + if (m_diagramController) connect(m_diagramController, 0, this, 0); - } m_diagramController = diagramController; - if (diagramController) { + if (diagramController) connect(diagramController, SIGNAL(diagramAboutToBeRemoved(const MDiagram*)), this, SLOT(removeDiagram(const MDiagram*))); - } } void DiagramsManager::setDiagramSceneController(DiagramSceneController *diagramSceneController) @@ -165,9 +155,8 @@ void DiagramsManager::unbindDiagramSceneModel(const MDiagram *diagram) void DiagramsManager::openDiagram(MDiagram *diagram) { - if (m_diagramsView) { + if (m_diagramsView) m_diagramsView->openDiagram(diagram); - } } void DiagramsManager::removeDiagram(const MDiagram *diagram) @@ -185,9 +174,8 @@ void DiagramsManager::removeDiagram(const MDiagram *diagram) void DiagramsManager::removeAllDiagrams() { - if (m_diagramsView) { + if (m_diagramsView) m_diagramsView->closeAllDiagrams(); - } qDeleteAll(m_diagramUidToManagedDiagramMap); m_diagramUidToManagedDiagramMap.clear(); @@ -202,12 +190,11 @@ void DiagramsManager::onDataChanged(const QModelIndex &topleft, const QModelInde ManagedDiagram *managedDiagram = m_diagramUidToManagedDiagramMap.value(diagram->uid()); if (managedDiagram && managedDiagram->diagramName() != diagram->name()) { managedDiagram->setDiagramName(diagram->name()); - if (m_diagramsView) { + if (m_diagramsView) m_diagramsView->onDiagramRenamed(diagram); - } } } } } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_ui/diagramsmanager.h b/src/libs/3rdparty/modeling/qmt/diagram_ui/diagramsmanager.h index 08f0150a47e..57050ceb713 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_ui/diagramsmanager.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_ui/diagramsmanager.h @@ -42,7 +42,6 @@ QT_BEGIN_NAMESPACE class QModelIndex; QT_END_NAMESPACE - namespace qmt { class MDiagram; @@ -57,79 +56,50 @@ class TreeModel; class DiagramsViewInterface; class DiagramSceneModel; - -class QMT_EXPORT DiagramsManager : - public QObject +class QMT_EXPORT DiagramsManager : public QObject { Q_OBJECT - class ManagedDiagram; public: - explicit DiagramsManager(QObject *parent = 0); - ~DiagramsManager(); signals: - void someDiagramOpened(bool); - void diagramActivated(const MDiagram *diagram); - void diagramSelectionChanged(const MDiagram *diagram); public: - void setModel(TreeModel *model); - void setDiagramsView(DiagramsViewInterface *diagramsView); - void setDiagramController(DiagramController *diagramController); - void setDiagramSceneController(DiagramSceneController *diagramSceneController); - void setStyleController(StyleController *styleController); - void setStereotypeController(StereotypeController *stereotypeController); -public: - DiagramSceneModel *bindDiagramSceneModel(MDiagram *diagram); - DiagramSceneModel *diagramSceneModel(const MDiagram *diagram) const; - void unbindDiagramSceneModel(const MDiagram *diagram); public slots: - void openDiagram(MDiagram *diagram); - void removeDiagram(const MDiagram *diagram); - void removeAllDiagrams(); private slots: - void onDataChanged(const QModelIndex &topleft, const QModelIndex &bottomright); private: - QPointer m_model; - DiagramsViewInterface *m_diagramsView; - DiagramController *m_diagramController; - DiagramSceneController *m_diagramSceneController; - StyleController *m_styleController; - StereotypeController *m_stereotypeController; - QHash m_diagramUidToManagedDiagramMap; }; -} +} // namespace qmt #endif // QMT_DIAGRAMSMANAGER_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_ui/diagramsviewinterface.h b/src/libs/3rdparty/modeling/qmt/diagram_ui/diagramsviewinterface.h index b2ab6709273..b07a35bf200 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_ui/diagramsviewinterface.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_ui/diagramsviewinterface.h @@ -36,22 +36,17 @@ namespace qmt { class MDiagram; class DiagramSceneModel; - -class DiagramsViewInterface { +class DiagramsViewInterface +{ public: virtual ~DiagramsViewInterface() { } -public: - virtual void openDiagram(MDiagram *) = 0; - virtual void closeDiagram(const MDiagram *) = 0; - virtual void closeAllDiagrams() = 0; - virtual void onDiagramRenamed(const MDiagram *) = 0; }; -} +} // namespace qmt #endif // QMT_DIAGRAMSVIEWINTERFACE_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_ui/sceneinspector.cpp b/src/libs/3rdparty/modeling/qmt/diagram_ui/sceneinspector.cpp index b608282d306..5e32dae608e 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_ui/sceneinspector.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_ui/sceneinspector.cpp @@ -70,9 +70,8 @@ QSizeF SceneInspector::minimalSize(const DElement *element, const MDiagram *diag const QGraphicsItem *item = diagramSceneModel->graphicsItem(const_cast(element)); QMT_CHECK(item); if (item) { - if (const IResizable *resizable = dynamic_cast(item)) { + if (const IResizable *resizable = dynamic_cast(item)) return resizable->minimumSize(); - } } } QMT_CHECK(false); @@ -87,9 +86,8 @@ IMoveable *SceneInspector::moveable(const DElement *element, const MDiagram *dia QGraphicsItem *item = diagramSceneModel->graphicsItem(const_cast(element)); QMT_CHECK(item); if (item) { - if (IMoveable *moveable = dynamic_cast(item)) { + if (IMoveable *moveable = dynamic_cast(item)) return moveable; - } } } QMT_CHECK(false); @@ -104,13 +102,12 @@ IResizable *SceneInspector::resizable(const DElement *element, const MDiagram *d QGraphicsItem *item = diagramSceneModel->graphicsItem(const_cast(element)); QMT_CHECK(item); if (item) { - if (IResizable *resizeable = dynamic_cast(item)) { + if (IResizable *resizeable = dynamic_cast(item)) return resizeable; - } } } QMT_CHECK(false); return 0; } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_ui/sceneinspector.h b/src/libs/3rdparty/modeling/qmt/diagram_ui/sceneinspector.h index 4fbe1debcd3..d88de71ece6 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_ui/sceneinspector.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_ui/sceneinspector.h @@ -39,33 +39,23 @@ namespace qmt { class DiagramsManager; -class QMT_EXPORT SceneInspector : - public QObject, - public ISceneInspector +class QMT_EXPORT SceneInspector : public QObject, public ISceneInspector { public: explicit SceneInspector(QObject *parent = 0); ~SceneInspector(); -public: - void setDiagramsManager(DiagramsManager *diagramsManager); -public: - QSizeF rasterSize() const; - QSizeF minimalSize(const DElement *element, const MDiagram *diagram) const; - IMoveable *moveable(const DElement *element, const MDiagram *diagram) const; - IResizable *resizable(const DElement *element, const MDiagram *diagram) const; private: - DiagramsManager *m_diagramsManager; }; -} +} // namespace qmt #endif // QMT_SCENEINSPECTOR_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/diagramsview.cpp b/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/diagramsview.cpp index ed06cb4a5ec..33135ea7f5a 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/diagramsview.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/diagramsview.cpp @@ -80,9 +80,8 @@ void DiagramsView::openDiagram(MDiagram *diagram) void DiagramsView::closeDiagram(const MDiagram *diagram) { - if (!diagram) { + if (!diagram) return; - } DiagramView *diagramView = m_diagramViews.value(diagram->uid()); if (diagramView) { @@ -118,13 +117,11 @@ void DiagramsView::onTabCloseRequested(int tabIndex) void DiagramsView::onDiagramRenamed(const MDiagram *diagram) { - if (!diagram) { + if (!diagram) return; - } DiagramView *diagramView = m_diagramViews.value(diagram->uid()); - if (diagramView) { + if (diagramView) setTabText(indexOf(diagramView), diagram->name()); - } } MDiagram *DiagramsView::diagram(int tabIndex) const @@ -135,10 +132,9 @@ MDiagram *DiagramsView::diagram(int tabIndex) const MDiagram *DiagramsView::diagram(DiagramView *diagramView) const { - if (!diagramView || diagramView->diagramSceneModel()) { + if (!diagramView || diagramView->diagramSceneModel()) return 0; - } return diagramView->diagramSceneModel()->diagram(); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/diagramsview.h b/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/diagramsview.h index cdf0b9b59ff..c6b537d5fb4 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/diagramsview.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/diagramsview.h @@ -39,7 +39,6 @@ #include #include - namespace qmt { class MDiagram; @@ -48,59 +47,40 @@ class DiagramView; class DiagramSceneModel; class DiagramsManager; - -class QMT_EXPORT DiagramsView : - public QTabWidget, - public DiagramsViewInterface +class QMT_EXPORT DiagramsView : public QTabWidget, public DiagramsViewInterface { Q_OBJECT public: explicit DiagramsView(QWidget *parent = 0); - ~DiagramsView(); signals: - void currentDiagramChanged(const MDiagram *diagram); - void diagramCloseRequested(const MDiagram *diagram); - void someDiagramOpened(bool); public: - void setDiagramsManager(DiagramsManager *diagramsManager); public slots: - void openDiagram(MDiagram *diagram); - void closeDiagram(const MDiagram *diagram); - void closeAllDiagrams(); - void onDiagramRenamed(const MDiagram *diagram); private slots: - void onCurrentChanged(int tabIndex); - void onTabCloseRequested(int tabIndex); private: - MDiagram *diagram(int tabIndex) const; - MDiagram *diagram(DiagramView * diagramView) const; -private: - DiagramsManager *m_diagramsManager; - QHash m_diagramViews; }; -} +} // namespace qmt #endif // DIAGRAMSVIEW_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/diagramview.cpp b/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/diagramview.cpp index 4ad2e48cdbd..f70df1b40d5 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/diagramview.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/diagramview.cpp @@ -42,7 +42,6 @@ #include #include - namespace qmt { DiagramView::DiagramView(QWidget *parent) @@ -80,9 +79,8 @@ void DiagramView::dragEnterEvent(QDragEnterEvent *event) QString key; dataStream >> key; if (!key.isEmpty()) { - if (m_diagramSceneModel->diagramSceneController()->isAddingAllowed(Uid(key), m_diagramSceneModel->diagram())) { + if (m_diagramSceneModel->diagramSceneController()->isAddingAllowed(Uid(key), m_diagramSceneModel->diagram())) accept = true; - } } } event->setAccepted(accept); @@ -122,9 +120,8 @@ void DiagramView::dropEvent(QDropEvent *event) QString key; dataStream >> key; if (!key.isEmpty()) { - if (m_diagramSceneModel->diagramSceneController()->isAddingAllowed(Uid(key), m_diagramSceneModel->diagram())) { + if (m_diagramSceneModel->diagramSceneController()->isAddingAllowed(Uid(key), m_diagramSceneModel->diagram())) m_diagramSceneModel->diagramSceneController()->addExistingModelElement(Uid(key), mapToScene(event->pos()), m_diagramSceneModel->diagram()); - } } } event->accept(); @@ -146,4 +143,4 @@ void DiagramView::dropEvent(QDropEvent *event) } } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/diagramview.h b/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/diagramview.h index 529d8928f1f..fc507aab20a 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/diagramview.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/diagramview.h @@ -41,38 +41,25 @@ namespace qmt { class DiagramSceneModel; class MPackage; - -class QMT_EXPORT DiagramView : - public QGraphicsView +class QMT_EXPORT DiagramView : public QGraphicsView { public: - explicit DiagramView(QWidget *parent); - ~DiagramView(); -public: - DiagramSceneModel *diagramSceneModel() const; - void setDiagramSceneModel(DiagramSceneModel *diagramSceneModel); protected: - void dragEnterEvent(QDragEnterEvent *event); - void dragLeaveEvent(QDragLeaveEvent *event); - void dragMoveEvent(QDragMoveEvent *event); - void dropEvent(QDropEvent *event); private: - QPointer m_diagramSceneModel; - }; -} +} // namespace qmt #endif // QMT_DIAGRAMVIEW_H diff --git a/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/stackeddiagramsview.cpp b/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/stackeddiagramsview.cpp index e5e40719222..eff20bbd14f 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/stackeddiagramsview.cpp +++ b/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/stackeddiagramsview.cpp @@ -76,9 +76,8 @@ void StackedDiagramsView::openDiagram(MDiagram *diagram) void StackedDiagramsView::closeDiagram(const MDiagram *diagram) { - if (!diagram) { + if (!diagram) return; - } DiagramView *diagramView = m_diagramViews.value(diagram->uid()); if (diagramView) { @@ -122,10 +121,9 @@ MDiagram *StackedDiagramsView::diagram(int tabIndex) const MDiagram *StackedDiagramsView::diagram(DiagramView *diagramView) const { - if (!diagramView || !diagramView->diagramSceneModel()) { + if (!diagramView || !diagramView->diagramSceneModel()) return 0; - } return diagramView->diagramSceneModel()->diagram(); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/stackeddiagramsview.h b/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/stackeddiagramsview.h index f3e575b94f0..f95811d46a5 100644 --- a/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/stackeddiagramsview.h +++ b/src/libs/3rdparty/modeling/qmt/diagram_widgets_ui/stackeddiagramsview.h @@ -39,66 +39,46 @@ #include #include - namespace qmt { class MDiagram; - class DiagramView; class DiagramSceneModel; class DiagramsManager; - -class QMT_EXPORT StackedDiagramsView : - public QStackedWidget, - public DiagramsViewInterface +class QMT_EXPORT StackedDiagramsView : public QStackedWidget, public DiagramsViewInterface { Q_OBJECT public: explicit StackedDiagramsView(QWidget *parent = 0); - ~StackedDiagramsView(); signals: - void currentDiagramChanged(const MDiagram *diagram); - void diagramCloseRequested(const MDiagram *diagram); - void someDiagramOpened(bool); public: - void setDiagramsManager(DiagramsManager *diagramsManager); public slots: - void openDiagram(MDiagram *diagram); - void closeDiagram(const MDiagram *diagram); - void closeAllDiagrams(); - void onDiagramRenamed(const MDiagram *diagram); private slots: - void onCurrentChanged(int tabIndex); private: - MDiagram *diagram(int tabIndex) const; - MDiagram *diagram(DiagramView * diagramView) const; -private: - DiagramsManager *m_diagramsManager; - QHash m_diagramViews; }; -} +} // namespace qmt #endif // QMT_STACKEDDIAGRAMSVIEW_H diff --git a/src/libs/3rdparty/modeling/qmt/document_controller/documentcontroller.cpp b/src/libs/3rdparty/modeling/qmt/document_controller/documentcontroller.cpp index 7c92b0bcb50..bed0e7b356a 100644 --- a/src/libs/3rdparty/modeling/qmt/document_controller/documentcontroller.cpp +++ b/src/libs/3rdparty/modeling/qmt/document_controller/documentcontroller.cpp @@ -183,9 +183,8 @@ void DocumentController::copyDiagram(const MDiagram *diagram) void DocumentController::pasteIntoModel(MObject *modelObject) { - if (modelObject) { + if (modelObject) m_modelController->pasteElements(modelObject, *m_modelClipboard); - } } void DocumentController::pasteIntoDiagram(MDiagram *diagram) @@ -243,11 +242,10 @@ MComponent *DocumentController::createNewComponent(MPackage *parent) MCanvasDiagram *DocumentController::createNewCanvasDiagram(MPackage *parent) { MCanvasDiagram *newDiagram = new MCanvasDiagram(); - if (!m_diagramSceneController->findDiagramBySearchId(parent, parent->name())) { + if (!m_diagramSceneController->findDiagramBySearchId(parent, parent->name())) newDiagram->setName(parent->name()); - } else { + else newDiagram->setName(tr("New Diagram")); - } m_modelController->addObject(parent, newDiagram); return newDiagram; } @@ -266,9 +264,8 @@ MDiagram *DocumentController::findOrCreateRootDiagram() if (!rootDiagram) { rootDiagram = createNewCanvasDiagram(m_modelController->rootPackage()); m_modelController->startUpdateObject(rootDiagram); - if (m_projectController->project()->hasFileName()) { + if (m_projectController->project()->hasFileName()) rootDiagram->setName(NameController::convertFileNameToElementName(m_projectController->project()->fileName())); - } m_modelController->finishUpdateObject(rootDiagram, false); } return rootDiagram; @@ -301,4 +298,4 @@ void DocumentController::loadProject(const QString &fileName) m_modelController->setRootPackage(m_projectController->project()->rootPackage()); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/document_controller/documentcontroller.h b/src/libs/3rdparty/modeling/qmt/document_controller/documentcontroller.h index a5084717f05..45125ce05a4 100644 --- a/src/libs/3rdparty/modeling/qmt/document_controller/documentcontroller.h +++ b/src/libs/3rdparty/modeling/qmt/document_controller/documentcontroller.h @@ -58,136 +58,76 @@ class DContainer; class MSelection; class MObject; - -class QMT_EXPORT DocumentController : - public QObject +class QMT_EXPORT DocumentController : public QObject { Q_OBJECT public: explicit DocumentController(QObject *parent = 0); - ~DocumentController(); signals: - void changed(); - void modelClipboardChanged(bool isEmpty); - void diagramClipboardChanged(bool isEmpty); public: - ProjectController *projectController() const { return m_projectController; } - UndoController *undoController() const { return m_undoController; } - ModelController *modelController() const { return m_modelController; } - DiagramController *diagramController() const { return m_diagramController; } - DiagramSceneController *diagramSceneController() const { return m_diagramSceneController; } - StyleController *styleController() const { return m_styleController; } - StereotypeController *stereotypeController() const { return m_stereotypeController; } - ConfigController *configController() const { return m_configController; } - TreeModel *treeModel() const { return m_treeModel; } - SortedTreeModel *sortedTreeModel() const { return m_sortedTreeModel; } - DiagramsManager *diagramsManager() const { return m_diagramsManager; } - SceneInspector *sceneInspector() const { return m_sceneInspector; } -public: - bool isModelClipboardEmpty() const; - bool isDiagramClipboardEmpty() const; - bool hasDiagramSelection(const qmt::MDiagram *diagram) const; -public: - void cutFromModel(const MSelection &selection); - void cutFromDiagram(MDiagram *diagram); - void copyFromModel(const MSelection &selection); - void copyFromDiagram(const MDiagram *diagram); - void copyDiagram(const MDiagram *diagram); - void pasteIntoModel(MObject *modelObject); - void pasteIntoDiagram(MDiagram *diagram); - void deleteFromModel(const MSelection &selection); - void deleteFromDiagram(MDiagram *diagram); - void removeFromDiagram(MDiagram *diagram); - void selectAllOnDiagram(MDiagram *diagram); -public: - MPackage *createNewPackage(MPackage *); - MClass *createNewClass(MPackage *); - MComponent *createNewComponent(MPackage *); - MCanvasDiagram *createNewCanvasDiagram(MPackage *); -public: - MDiagram *findRootDiagram(); - MDiagram *findOrCreateRootDiagram(); -public: - void createNewProject(const QString &fileName); - void loadProject(const QString &fileName); private: - ProjectController *m_projectController; - UndoController *m_undoController; - ModelController *m_modelController; - DiagramController *m_diagramController; - DiagramSceneController *m_diagramSceneController; - StyleController *m_styleController; - StereotypeController *m_stereotypeController; - ConfigController *m_configController; - TreeModel *m_treeModel; - SortedTreeModel *m_sortedTreeModel; - DiagramsManager *m_diagramsManager; - SceneInspector *m_sceneInspector; - QScopedPointer m_modelClipboard; - QScopedPointer m_diagramClipboard; - }; -} +} // namespace qmt #endif // QMT_DOCUMENTCONTROLLER_H diff --git a/src/libs/3rdparty/modeling/qmt/infrastructure/contextmenuaction.cpp b/src/libs/3rdparty/modeling/qmt/infrastructure/contextmenuaction.cpp index bcb55339133..8fd69d25f92 100644 --- a/src/libs/3rdparty/modeling/qmt/infrastructure/contextmenuaction.cpp +++ b/src/libs/3rdparty/modeling/qmt/infrastructure/contextmenuaction.cpp @@ -49,4 +49,4 @@ ContextMenuAction::~ContextMenuAction() { } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/infrastructure/contextmenuaction.h b/src/libs/3rdparty/modeling/qmt/infrastructure/contextmenuaction.h index 8d02d3c4b24..127c1d7c9a4 100644 --- a/src/libs/3rdparty/modeling/qmt/infrastructure/contextmenuaction.h +++ b/src/libs/3rdparty/modeling/qmt/infrastructure/contextmenuaction.h @@ -35,26 +35,19 @@ namespace qmt { -class ContextMenuAction : - public QAction +class ContextMenuAction : public QAction { public: - ContextMenuAction(const QString &label, const QString &id, QObject *parent = 0); - ContextMenuAction(const QString &label, const QString &id, const QKeySequence &shortcut, QObject *parent = 0); - ~ContextMenuAction(); -public: - QString id() const { return m_id; } private: - QString m_id; }; -} +} // namespace qmt #endif // QMT_CONTEXTMENUACTION_H diff --git a/src/libs/3rdparty/modeling/qmt/infrastructure/exceptions.cpp b/src/libs/3rdparty/modeling/qmt/infrastructure/exceptions.cpp index 875d9703e23..2c0880962da 100644 --- a/src/libs/3rdparty/modeling/qmt/infrastructure/exceptions.cpp +++ b/src/libs/3rdparty/modeling/qmt/infrastructure/exceptions.cpp @@ -30,7 +30,6 @@ #include "exceptions.h" - namespace qmt { Exception::Exception(const QString &errorMessage) @@ -38,11 +37,9 @@ Exception::Exception(const QString &errorMessage) { } - - NullPointerException::NullPointerException() : Exception(QStringLiteral("unacceptable null object")) { } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/infrastructure/exceptions.h b/src/libs/3rdparty/modeling/qmt/infrastructure/exceptions.h index ac2a86e686f..8f895cfba28 100644 --- a/src/libs/3rdparty/modeling/qmt/infrastructure/exceptions.h +++ b/src/libs/3rdparty/modeling/qmt/infrastructure/exceptions.h @@ -33,7 +33,6 @@ #include - namespace qmt { class Exception @@ -42,21 +41,18 @@ public: Exception(const QString &errorMessage); QString errorMessage() const { return m_errorMessage; } - void setErrorMessage(const QString &errorMessage) { m_errorMessage = errorMessage; } private: QString m_errorMessage; }; - -class NullPointerException : - public Exception +class NullPointerException : public Exception { public: NullPointerException(); }; -} +} // namespace qmt #endif // QMT_EXCEPTIONS_H diff --git a/src/libs/3rdparty/modeling/qmt/infrastructure/geometryutilities.cpp b/src/libs/3rdparty/modeling/qmt/infrastructure/geometryutilities.cpp index 14c889b485d..4c2f748a450 100644 --- a/src/libs/3rdparty/modeling/qmt/infrastructure/geometryutilities.cpp +++ b/src/libs/3rdparty/modeling/qmt/infrastructure/geometryutilities.cpp @@ -42,14 +42,12 @@ #include #include - template inline int sgn(T val) { return (T(0) < val) - (val < T(0)); } - namespace qmt { GeometryUtilities::GeometryUtilities() @@ -70,9 +68,8 @@ bool GeometryUtilities::intersect(const QPolygonF &polygon, const QLineF &line, QLineF polygonLine(polygon.at(i), polygon.at(i+1)); QLineF::IntersectType intersectionType = polygonLine.intersect(line, intersectionPoint); if (intersectionType == QLineF::BoundedIntersection) { - if (intersectionLine) { + if (intersectionLine) *intersectionLine = polygonLine; - } return true; } } @@ -85,7 +82,6 @@ class Candidate { public: Candidate() : third(GeometryUtilities::SideUnspecified) { } - Candidate(const QVector2D &f, const QPointF &s, GeometryUtilities::Side t) : first(f), second(s), third(t) { } QVector2D first; @@ -125,9 +121,8 @@ bool GeometryUtilities::placeRectAtLine(const QRectF &rect, const QLineF &line, QVector2D outsideVector = QVector2D(intersectionVector.y(), -intersectionVector.x()); double p = QVector2D::dotProduct(directionVector, outsideVector); - if (p < 0.0) { + if (p < 0.0) outsideVector = outsideVector * -1.0; - } double smallestA = -1.0; QPointF rectTranslation; @@ -186,9 +181,8 @@ bool GeometryUtilities::placeRectAtLine(const QRectF &rect, const QLineF &line, } *horizontalAlignedSide = side; } - if (smallestA < 0.0) { + if (smallestA < 0.0) return false; - } *placement = line.p1() + (directionVector * (smallestA + lineOffset)).toPointF() + (sideVector * (bestSign * distance)).toPointF() - rectTranslation; return true; } @@ -198,9 +192,8 @@ double GeometryUtilities::calcAngle(const QLineF &line) QVector2D directionVector(line.p2() - line.p1()); directionVector.normalize(); double angle = qAcos(directionVector.x()) * 180.0 / 3.1415926535; - if (directionVector.y() > 0.0) { + if (directionVector.y() > 0.0) angle = -angle; - } return angle; } @@ -219,9 +212,8 @@ double GeometryUtilities::calcDistancePointToLine(const QPointF &point, const QL QVector2D a(line.p1()); QVector2D directionVector(line.p2() - line.p1()); qreal r = -((a - p) & directionVector) / directionVector.lengthSquared(); - if (r < 0.0 || r > 1.0) { + if (r < 0.0 || r > 1.0) return std::numeric_limits::quiet_NaN(); - } qreal d = (a + r * directionVector - p).length(); return d; } @@ -240,17 +232,15 @@ QPointF GeometryUtilities::calcPrimaryAxisDirection(const QLineF &line) qreal xAbs = qAbs(line.dx()); qreal yAbs = qAbs(line.dy()); if (yAbs > xAbs) { - if (line.dy() >= 0.0) { + if (line.dy() >= 0.0) return QPointF(0.0, 1.0); - } else { + else return QPointF(0.0, -1.0); - } } else { - if (line.dx() >= 0.0) { + if (line.dx() >= 0.0) return QPointF(1.0, 0.0); - } else { + else return QPointF(-1.0, 0.0); - } } } @@ -259,17 +249,15 @@ QPointF GeometryUtilities::calcSecondaryAxisDirection(const QLineF &line) qreal xAbs = qAbs(line.dx()); qreal yAbs = qAbs(line.dy()); if (yAbs > xAbs) { - if (line.dx() >= 0.0) { + if (line.dx() >= 0.0) return QPointF(1.0, 0.0); - } else { + else return QPointF(-1.0, 0.0); - } } else { - if (line.dy() >= 0.0) { + if (line.dy() >= 0.0) return QPointF(0.0, 1.0); - } else { + else return QPointF(0.0, -1.0); - } } } @@ -290,5 +278,5 @@ QSizeF GeometryUtilities::ensureMinimumRasterSize(const QSizeF &size, double ras return QSizeF(width, height); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/infrastructure/geometryutilities.h b/src/libs/3rdparty/modeling/qmt/infrastructure/geometryutilities.h index 093d26a515e..c44004b9898 100644 --- a/src/libs/3rdparty/modeling/qmt/infrastructure/geometryutilities.h +++ b/src/libs/3rdparty/modeling/qmt/infrastructure/geometryutilities.h @@ -41,7 +41,6 @@ class QRectF; class QSizeF; QT_END_NAMESPACE - namespace qmt { class GeometryUtilities @@ -50,7 +49,6 @@ private: GeometryUtilities(); public: - enum Side { SideUnspecified, SideTop, @@ -59,30 +57,19 @@ public: SideRight }; -public: - static QLineF stretch(const QLineF &line, double p1Extension, double p2Extension); - static bool intersect(const QPolygonF &polygon, const QLineF &line, QPointF *intersectionPoint, QLineF *intersectionLine = 0); - static bool placeRectAtLine(const QRectF &rect, const QLineF &line, double lineOffset, double distance, const QLineF &intersectionLine, QPointF *placement, Side *horizontalAlignedSide); - static double calcAngle(const QLineF &line); - static double calcDistancePointToLine(const QPointF &point, const QLineF &line); - static QPointF calcProjection(const QLineF &line, const QPointF &point); - static QPointF calcPrimaryAxisDirection(const QLineF &line); - static QPointF calcSecondaryAxisDirection(const QLineF &line); - static void adjustPosAndRect(QPointF *pos, QRectF *rect, const QPointF &topLeftDelta, const QPointF &bottomRightDelta, const QPointF &relativeAlignment); - static QSizeF ensureMinimumRasterSize(const QSizeF &size, double rasterWidth, double rasterHeight); }; -} +} // namespace qmt #endif // QMT_GEOMETRYUTILITIES_H diff --git a/src/libs/3rdparty/modeling/qmt/infrastructure/handle.h b/src/libs/3rdparty/modeling/qmt/infrastructure/handle.h index 75ed0feb1cb..acaedfe6b54 100644 --- a/src/libs/3rdparty/modeling/qmt/infrastructure/handle.h +++ b/src/libs/3rdparty/modeling/qmt/infrastructure/handle.h @@ -40,34 +40,21 @@ template class Handle { public: - Handle() : m_target(0) { } - explicit Handle(const Uid &uid) : m_uid(uid), m_target(0) { } - explicit Handle(T *t) : m_uid(t ? t->uid() : Uid()), m_target(t) { } - Handle(const Handle &rhs) : m_uid(rhs.m_uid), m_target(rhs.m_target) { } - template Handle(const Handle &rhs) : m_uid(rhs.uid()), m_target(rhs.target()) { } -public: - bool isNull() const { return !m_uid.isValid(); } - bool hasTarget() const { return m_target != 0; } - Uid uid() const { return m_uid; } - T *target() const { return m_target; } - void setUid(const Uid &uid) { QMT_CHECK(m_target != 0 ? (m_target->uid() == uid) : true); m_uid = uid; } - void setTarget(T *t) { m_uid = t ? t->uid() : Uid(); m_target = t; } void clear() { m_uid = Uid(); m_target = 0; } - void clearTarget() { m_target = 0; } private: @@ -96,12 +83,11 @@ Handle makeHandle(T *t) template Handle handle_dynamic_cast(const Handle &handle) { - if (!handle.hasTarget()) { + if (!handle.hasTarget()) return Handle(handle.uid()); - } return Handle(dynamic_cast(handle.target())); } -} +} // namespace qmt #endif // QMT_HANDLE_H diff --git a/src/libs/3rdparty/modeling/qmt/infrastructure/handles.h b/src/libs/3rdparty/modeling/qmt/infrastructure/handles.h index f5e54413b63..cc93d212a1a 100644 --- a/src/libs/3rdparty/modeling/qmt/infrastructure/handles.h +++ b/src/libs/3rdparty/modeling/qmt/infrastructure/handles.h @@ -37,22 +37,16 @@ #include #include - namespace qmt { template class Handles { public: - typedef QList > value_type; - typedef typename value_type::iterator iterator; - typedef typename value_type::const_iterator const_iterator; -public: - explicit Handles(bool takeOwnership = false) : m_takesOwnership(takeOwnership) { } Handles(const Handles &rhs) @@ -65,9 +59,8 @@ public: : m_handleList(rhs.m_handleList), m_takesOwnership(takeOwnership) { - if (m_takesOwnership && rhs.m_takesOwnership) { + if (m_takesOwnership && rhs.m_takesOwnership) const_cast &>(rhs).m_handleList.clear(); - } } ~Handles() @@ -75,33 +68,25 @@ public: reset(); } -public: - Handles operator=(const Handles &rhs) { if (this != &rhs) { m_handleList = rhs.m_handleList; - if (m_takesOwnership && rhs.m_takesOwnership) { + if (m_takesOwnership && rhs.m_takesOwnership) const_cast &>(rhs).m_handleList.clear(); - } } return *this; } -public: - bool takesOwnership() const { return m_takesOwnership; } - bool isEmpty() const { return m_handleList.empty(); } - int size() const { return m_handleList.size(); } bool contains(const Uid &uid) const { foreach (const Handle &handle, m_handleList) { - if (handle.uid() == uid) { + if (handle.uid() == uid) return true; - } } return false; } @@ -115,9 +100,8 @@ public: T *find(const Uid &uid) const { foreach (const Handle &handle, m_handleList) { - if (handle.uid() == uid) { + if (handle.uid() == uid) return handle.target(); - } } return 0; } @@ -138,9 +122,8 @@ public: { int index = 0; foreach (const Handle &handle, m_handleList) { - if (handle.uid() == uid) { + if (handle.uid() == uid) return index; - } ++index; } return -1; @@ -152,8 +135,6 @@ public: return indexOf(t->uid()); } -public: - const value_type &get() const { return m_handleList; } value_type take() @@ -171,24 +152,17 @@ public: void reset() { if (m_takesOwnership) { - foreach (const Handle &handle, m_handleList) { + foreach (const Handle &handle, m_handleList) delete handle.target(); - } } m_handleList.clear(); } -public: iterator begin() { return m_handleList.begin(); } - iterator end() { return m_handleList.end(); } - const_iterator begin() const { return m_handleList.begin(); } - const_iterator end() const { return m_handleList.end(); } -public: - void add(const Uid &uid) { QMT_CHECK(uid.isValid()); @@ -258,9 +232,7 @@ public: } private: - value_type m_handleList; - bool m_takesOwnership; }; @@ -273,6 +245,6 @@ bool operator==(const Handles &lhs, const Handles &rhs) template bool operator!=(const Handles &lhs, const Handles &rhs) { return !(lhs == rhs); } -} +} // namespace qmt #endif // QMT_HANDLES_H diff --git a/src/libs/3rdparty/modeling/qmt/infrastructure/ioexceptions.cpp b/src/libs/3rdparty/modeling/qmt/infrastructure/ioexceptions.cpp index f652f82f60c..7521234cce2 100644 --- a/src/libs/3rdparty/modeling/qmt/infrastructure/ioexceptions.cpp +++ b/src/libs/3rdparty/modeling/qmt/infrastructure/ioexceptions.cpp @@ -74,5 +74,5 @@ UnknownFileVersion::UnknownFileVersion(int version, const QString &fileName, int { } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/infrastructure/ioexceptions.h b/src/libs/3rdparty/modeling/qmt/infrastructure/ioexceptions.h index 77841297138..57aaf2684ff 100644 --- a/src/libs/3rdparty/modeling/qmt/infrastructure/ioexceptions.h +++ b/src/libs/3rdparty/modeling/qmt/infrastructure/ioexceptions.h @@ -33,24 +33,20 @@ #include "exceptions.h" - namespace qmt { -class IOException : - public Exception +class IOException : public Exception { public: explicit IOException(const QString &errorMsg); }; -class FileIOException : - public IOException +class FileIOException : public IOException { public: explicit FileIOException(const QString &errorMsg, const QString &fileName = QString::null, int lineNumber = -1); QString fileName() const { return m_fileName; } - int lineNumber() const { return m_lineNumber; } private: @@ -58,48 +54,42 @@ private: int m_lineNumber; }; -class FileNotFoundException : - public FileIOException +class FileNotFoundException : public FileIOException { public: explicit FileNotFoundException(const QString &fileName); }; -class FileCreationException : - public FileIOException +class FileCreationException : public FileIOException { public: explicit FileCreationException(const QString &fileName); }; -class FileWriteError : - public FileIOException +class FileWriteError : public FileIOException { public: explicit FileWriteError(const QString &fileName, int lineNumber = -1); }; -class FileReadError : - public FileIOException +class FileReadError : public FileIOException { public: explicit FileReadError(const QString &fileName, int lineNumber = -1); }; -class IllegalXmlFile : - public FileIOException +class IllegalXmlFile : public FileIOException { public: IllegalXmlFile(const QString &fileName, int lineNumber = -1); }; -class UnknownFileVersion : - public FileIOException +class UnknownFileVersion : public FileIOException { public: UnknownFileVersion(int version, const QString &fileName, int lineNumber = -1); }; -} +} // namespace qmt #endif // QMT_IOEXCEPTIONS_H diff --git a/src/libs/3rdparty/modeling/qmt/infrastructure/qcompressedfile.cpp b/src/libs/3rdparty/modeling/qmt/infrastructure/qcompressedfile.cpp index 32e0e6b86db..6ba28b306f5 100644 --- a/src/libs/3rdparty/modeling/qmt/infrastructure/qcompressedfile.cpp +++ b/src/libs/3rdparty/modeling/qmt/infrastructure/qcompressedfile.cpp @@ -77,16 +77,14 @@ qint64 QCompressedDevice::readData(char *data, qint64 maxlen) if (m_bytesInBuffer == 0) { QByteArray compressedBuffer; int compressedLen = 0; - if (m_targetDevice->read(reinterpret_cast(&compressedLen), sizeof(int)) != sizeof(int)) { + if (m_targetDevice->read(reinterpret_cast(&compressedLen), sizeof(int)) != sizeof(int)) return -1; - } compressedBuffer.resize(compressedLen); qint64 compressedBytes = m_targetDevice->read(compressedBuffer.data(), compressedLen); m_buffer = qUncompress((const uchar *) compressedBuffer.data(), compressedBytes); m_bytesInBuffer = m_buffer.size(); - if (m_bytesInBuffer == 0) { + if (m_bytesInBuffer == 0) return 0; - } m_indexInBuffer = 0; } qint64 n = std::min(maxlen, m_bytesInBuffer); @@ -106,12 +104,10 @@ qint64 QCompressedDevice::writeData(const char *data, qint64 len) if (m_buffer.size() > 1024*1024) { QByteArray compressedBuffer = qCompress(m_buffer); int compressedLen = static_cast(compressedBuffer.size()); - if (m_targetDevice->write(reinterpret_cast(&compressedLen), sizeof(int)) != sizeof(int)) { + if (m_targetDevice->write(reinterpret_cast(&compressedLen), sizeof(int)) != sizeof(int)) return -1; - } - if (m_targetDevice->write(compressedBuffer.data(), compressedLen) != compressedBuffer.size()) { + if (m_targetDevice->write(compressedBuffer.data(), compressedLen) != compressedBuffer.size()) return -1; - } m_buffer.clear(); } return len; @@ -124,12 +120,11 @@ qint64 QCompressedDevice::flush() QMT_CHECK(m_targetDevice->openMode() == QIODevice::WriteOnly); QByteArray compressedBuffer = qCompress(m_buffer); int compressedLen = static_cast(compressedBuffer.size()); - if (m_targetDevice->write(reinterpret_cast(&compressedLen), sizeof(int)) != sizeof(int)) { + if (m_targetDevice->write(reinterpret_cast(&compressedLen), sizeof(int)) != sizeof(int)) return -1; - } return m_targetDevice->write(compressedBuffer.data(), compressedLen); } return 0; } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/infrastructure/qcompressedfile.h b/src/libs/3rdparty/modeling/qmt/infrastructure/qcompressedfile.h index 77942370d37..e7b5258f6a8 100644 --- a/src/libs/3rdparty/modeling/qmt/infrastructure/qcompressedfile.h +++ b/src/libs/3rdparty/modeling/qmt/infrastructure/qcompressedfile.h @@ -36,51 +36,34 @@ namespace qmt { -class QCompressedDevice : - public QIODevice +class QCompressedDevice : public QIODevice { Q_OBJECT public: - explicit QCompressedDevice(QObject *parent = 0); - explicit QCompressedDevice(QIODevice *targetDevice, QObject *parent = 0); - ~QCompressedDevice(); -public: - QIODevice *targetDevice() const { return m_targetDevice; } - void setTargetDevice(QIODevice *targetDevice); -public: - void close(); protected: - qint64 readData(char *data, qint64 maxlen); - qint64 writeData(const char *data, qint64 len); public: - qint64 flush(); private: - QIODevice *m_targetDevice; - QByteArray m_buffer; - qint64 m_bytesInBuffer; - qint64 m_indexInBuffer; - }; -} +} // namespace qmt #endif // QCOMPRESSEDDEVICE_H diff --git a/src/libs/3rdparty/modeling/qmt/infrastructure/uid.h b/src/libs/3rdparty/modeling/qmt/infrastructure/uid.h index af698b2015b..86bf9f1528d 100644 --- a/src/libs/3rdparty/modeling/qmt/infrastructure/uid.h +++ b/src/libs/3rdparty/modeling/qmt/infrastructure/uid.h @@ -37,32 +37,24 @@ #include #include - namespace qmt { class QMT_EXPORT Uid { public: - static const Uid invalidUid() { return Uid(QUuid()); } -public: Uid() : m_uuid(QUuid::createUuid()) { } - explicit Uid(const QUuid &uuid) : m_uuid(uuid) { } bool isValid() const { return !m_uuid.isNull(); } - QUuid get() const { return m_uuid; } - void setUuid(const QUuid &uuid) { m_uuid = uuid; } void clear() { m_uuid = QUuid(); } - void renew() { m_uuid = QUuid::createUuid(); } QString toString() const { return m_uuid.toString(); } - void fromString(const QString &s) { m_uuid = QUuid(s); } private: @@ -97,7 +89,7 @@ inline QDataStream &operator>>(QDataStream &stream, Uid &uid) return stream; } -} +} // namespace qmt Q_DECLARE_METATYPE(qmt::Uid) diff --git a/src/libs/3rdparty/modeling/qmt/model/massociation.cpp b/src/libs/3rdparty/modeling/qmt/model/massociation.cpp index 863e292e3fb..d8cca9397eb 100644 --- a/src/libs/3rdparty/modeling/qmt/model/massociation.cpp +++ b/src/libs/3rdparty/modeling/qmt/model/massociation.cpp @@ -33,7 +33,6 @@ #include "mvisitor.h" #include "mconstvisitor.h" - namespace qmt { MAssociationEnd::MAssociationEnd() @@ -93,7 +92,6 @@ bool operator==(const MAssociationEnd &lhs, const MAssociationEnd &rhs) && lhs.isNavigable() == rhs.isNavigable(); } - MAssociation::MAssociation() : MRelation(), m_associationClassUid(Uid::invalidUid()) @@ -129,4 +127,4 @@ void MAssociation::accept(MConstVisitor *visitor) const visitor->visitMAssociation(this); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model/massociation.h b/src/libs/3rdparty/modeling/qmt/model/massociation.h index e4b487a94b6..d0d2ed91ee0 100644 --- a/src/libs/3rdparty/modeling/qmt/model/massociation.h +++ b/src/libs/3rdparty/modeling/qmt/model/massociation.h @@ -36,106 +36,66 @@ #include - namespace qmt { class MClass; - class QMT_EXPORT MAssociationEnd { public: - enum Kind { Association, Aggregation, Composition }; -public: - MAssociationEnd(); - MAssociationEnd(const MAssociationEnd &rhs); - ~MAssociationEnd(); -public: - MAssociationEnd &operator=(const MAssociationEnd &rhs); -public: - QString name() const { return m_name; } - void setName(const QString &name); - QString cardinality() const { return m_cardinality; } - void setCardinality(const QString &cardinality); - Kind kind() const { return m_kind; } - void setKind(Kind kind); - bool isNavigable() const { return m_isNavigable; } - void setNavigable(bool navigable); private: - QString m_name; - QString m_cardinality; - Kind m_kind; - bool m_isNavigable; }; bool operator==(const MAssociationEnd &lhs, const MAssociationEnd &rhs); - inline bool operator!=(const MAssociationEnd &lhs, const MAssociationEnd &rhs) { return !(lhs == rhs); } - -class QMT_EXPORT MAssociation : - public MRelation +class QMT_EXPORT MAssociation : public MRelation { public: - MAssociation(); - ~MAssociation(); -public: - MAssociationEnd endA() const { return m_endA; } - void setEndA(const MAssociationEnd &end); - MAssociationEnd endB() const { return m_endB; } - void setEndB(const MAssociationEnd &end); - Uid assoicationClassUid() const { return m_associationClassUid; } - void setAssociationClassUid(const Uid &uid); -public: - virtual void accept(MVisitor *visitor); - virtual void accept(MConstVisitor *visitor) const; private: - MAssociationEnd m_endA; - MAssociationEnd m_endB; - Uid m_associationClassUid; }; -} +} // namespace qmt #endif // QMT_MASSOCIATION_H diff --git a/src/libs/3rdparty/modeling/qmt/model/mcanvasdiagram.cpp b/src/libs/3rdparty/modeling/qmt/model/mcanvasdiagram.cpp index 6b602d6f298..03dc768f3d2 100644 --- a/src/libs/3rdparty/modeling/qmt/model/mcanvasdiagram.cpp +++ b/src/libs/3rdparty/modeling/qmt/model/mcanvasdiagram.cpp @@ -33,7 +33,6 @@ #include "mvisitor.h" #include "mconstvisitor.h" - namespace qmt { MCanvasDiagram::MCanvasDiagram() @@ -54,5 +53,4 @@ void MCanvasDiagram::accept(MConstVisitor *visitor) const visitor->visitMCanvasDiagram(this); } -} - +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model/mcanvasdiagram.h b/src/libs/3rdparty/modeling/qmt/model/mcanvasdiagram.h index c7132ea527b..2027ca9c8ea 100644 --- a/src/libs/3rdparty/modeling/qmt/model/mcanvasdiagram.h +++ b/src/libs/3rdparty/modeling/qmt/model/mcanvasdiagram.h @@ -33,25 +33,18 @@ #include "mdiagram.h" - namespace qmt { -class QMT_EXPORT MCanvasDiagram : - public MDiagram +class QMT_EXPORT MCanvasDiagram : public MDiagram { public: MCanvasDiagram(); - ~MCanvasDiagram(); -public: - virtual void accept(MVisitor *visitor); - virtual void accept(MConstVisitor *visitor) const; - }; -} +} // namespace qmt #endif // QMT_MCANVASDIAGRAM_H diff --git a/src/libs/3rdparty/modeling/qmt/model/mclass.cpp b/src/libs/3rdparty/modeling/qmt/model/mclass.cpp index e0ff94e89ab..5c8b32ed645 100644 --- a/src/libs/3rdparty/modeling/qmt/model/mclass.cpp +++ b/src/libs/3rdparty/modeling/qmt/model/mclass.cpp @@ -117,4 +117,4 @@ void MClass::accept(MConstVisitor *visitor) const visitor->visitMClass(this); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model/mclass.h b/src/libs/3rdparty/modeling/qmt/model/mclass.h index 0a2c95bbfce..da7e55201e9 100644 --- a/src/libs/3rdparty/modeling/qmt/model/mclass.h +++ b/src/libs/3rdparty/modeling/qmt/model/mclass.h @@ -38,60 +38,36 @@ namespace qmt { class MInheritance; - -class QMT_EXPORT MClass : - public MObject +class QMT_EXPORT MClass : public MObject { public: - MClass(); - MClass(const MClass &rhs); - ~MClass(); -public: - MClass &operator=(const MClass &rhs); -public: - QString umlNamespace() const { return m_umlNamespace; } - void setUmlNamespace(const QString ¨Namespace); - QList templateParameters() const { return m_templateParameters; } - void setTemplateParameters(const QList &templateParameters); - QList members() const { return m_members; } - void setMembers(const QList &members); void addMember(const MClassMember &member); - void insertMember(int beforeIndex, const MClassMember &member); - void removeMember(const Uid &uid); - void removeMember(const MClassMember &member); -public: - virtual void accept(MVisitor *visitor); - virtual void accept(MConstVisitor *visitor) const; private: - QString m_umlNamespace; - QList m_templateParameters; - QList m_members; - }; -} +} // namespace qmt #endif // QMT_MCLASS_H diff --git a/src/libs/3rdparty/modeling/qmt/model/mclassmember.cpp b/src/libs/3rdparty/modeling/qmt/model/mclassmember.cpp index e044885cefc..fcfeacdf599 100644 --- a/src/libs/3rdparty/modeling/qmt/model/mclassmember.cpp +++ b/src/libs/3rdparty/modeling/qmt/model/mclassmember.cpp @@ -112,4 +112,4 @@ bool operator==(const MClassMember &lhs, const MClassMember &rhs) return lhs.uid() == rhs.uid(); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model/mclassmember.h b/src/libs/3rdparty/modeling/qmt/model/mclassmember.h index 1b8fab3ae03..7e86c2c531a 100644 --- a/src/libs/3rdparty/modeling/qmt/model/mclassmember.h +++ b/src/libs/3rdparty/modeling/qmt/model/mclassmember.h @@ -41,7 +41,6 @@ namespace qmt { class QMT_EXPORT MClassMember { public: - enum Visibility { VisibilityUndefined, VisibilityPublic, @@ -73,69 +72,40 @@ public: Q_DECLARE_FLAGS(Properties, Property) -public: - MClassMember(MemberType memberType = MemberUndefined); - MClassMember(const MClassMember &rhs); - ~MClassMember(); -public: - MClassMember &operator=(const MClassMember &rhs); -public: - Uid uid() const { return m_uid; } - void setUid(const Uid &uid); - void renewUid(); - QList stereotypes() const { return m_stereotypes; } - void setStereotypes(const QList &stereotypes); - QString group() const { return m_group; } - void setGroup(const QString &group); - QString declaration() const { return m_declaration; } - void setDeclaration(const QString &declaration); - Visibility visibility() const { return m_visibility; } - void setVisibility(Visibility visibility); - MemberType memberType() const { return m_memberType; } - void setMemberType(MemberType memberType); - Properties properties() const { return m_properties; } - void setProperties(Properties properties); private: - Uid m_uid; - QList m_stereotypes; - QString m_group; - QString m_declaration; - Visibility m_visibility; - MemberType m_memberType; - Properties m_properties; }; bool operator==(const MClassMember &lhs, const MClassMember &rhs); -} +} // namespace qmt #endif // QMT_MCLASSMEMBER_H diff --git a/src/libs/3rdparty/modeling/qmt/model/mcomponent.cpp b/src/libs/3rdparty/modeling/qmt/model/mcomponent.cpp index f3febe66a5e..2d1ea93a32b 100644 --- a/src/libs/3rdparty/modeling/qmt/model/mcomponent.cpp +++ b/src/libs/3rdparty/modeling/qmt/model/mcomponent.cpp @@ -33,7 +33,6 @@ #include "mvisitor.h" #include "mconstvisitor.h" - namespace qmt { MComponent::MComponent() @@ -55,4 +54,4 @@ void MComponent::accept(MConstVisitor *visitor) const visitor->visitMComponent(this); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model/mcomponent.h b/src/libs/3rdparty/modeling/qmt/model/mcomponent.h index 7f7fc5a43c0..306d42f0329 100644 --- a/src/libs/3rdparty/modeling/qmt/model/mcomponent.h +++ b/src/libs/3rdparty/modeling/qmt/model/mcomponent.h @@ -33,27 +33,18 @@ #include "mobject.h" - namespace qmt { -class QMT_EXPORT MComponent : - public MObject +class QMT_EXPORT MComponent : public MObject { public: - MComponent(); - ~MComponent(); -public: - virtual void accept(MVisitor *visitor); - virtual void accept(MConstVisitor *visitor) const; - }; -} - +} // namespace qmt #endif // QMT_MCOMPONENT_H diff --git a/src/libs/3rdparty/modeling/qmt/model/mconstvisitor.h b/src/libs/3rdparty/modeling/qmt/model/mconstvisitor.h index b72badcdb6a..b0c572d3705 100644 --- a/src/libs/3rdparty/modeling/qmt/model/mconstvisitor.h +++ b/src/libs/3rdparty/modeling/qmt/model/mconstvisitor.h @@ -54,31 +54,19 @@ public: virtual ~MConstVisitor() { } virtual void visitMElement(const MElement *element) = 0; - virtual void visitMObject(const MObject *object) = 0; - virtual void visitMPackage(const MPackage *package) = 0; - virtual void visitMClass(const MClass *klass) = 0; - virtual void visitMComponent(const MComponent *component) = 0; - virtual void visitMDiagram(const MDiagram *diagram) = 0; - virtual void visitMCanvasDiagram(const MCanvasDiagram *diagram) = 0; - virtual void visitMItem(const MItem *item) = 0; - virtual void visitMRelation(const MRelation *relation) = 0; - virtual void visitMDependency(const MDependency *dependency) = 0; - virtual void visitMInheritance(const MInheritance *inheritance) = 0; - virtual void visitMAssociation(const MAssociation *association) = 0; - }; -} +} // namespace qmt #endif // QMT_MCONSTVISITOR_H diff --git a/src/libs/3rdparty/modeling/qmt/model/mdependency.cpp b/src/libs/3rdparty/modeling/qmt/model/mdependency.cpp index f20cb7f9dd7..108c703b7bc 100644 --- a/src/libs/3rdparty/modeling/qmt/model/mdependency.cpp +++ b/src/libs/3rdparty/modeling/qmt/model/mdependency.cpp @@ -33,7 +33,6 @@ #include "mvisitor.h" #include "mconstvisitor.h" - namespace qmt { MDependency::MDependency() @@ -73,11 +72,10 @@ Uid MDependency::source() const void MDependency::setSource(const Uid &source) { - if (m_direction == BToA) { + if (m_direction == BToA) setEndBUid(source); - } else { + else setEndAUid(source); - } } Uid MDependency::target() const @@ -87,11 +85,10 @@ Uid MDependency::target() const void MDependency::setTarget(const Uid &target) { - if (m_direction == BToA) { + if (m_direction == BToA) setEndAUid(target); - } else { + else setEndBUid(target); - } } void MDependency::accept(MVisitor *visitor) @@ -104,4 +101,4 @@ void MDependency::accept(MConstVisitor *visitor) const visitor->visitMDependency(this); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model/mdependency.h b/src/libs/3rdparty/modeling/qmt/model/mdependency.h index bce54cb0796..b15551ef333 100644 --- a/src/libs/3rdparty/modeling/qmt/model/mdependency.h +++ b/src/libs/3rdparty/modeling/qmt/model/mdependency.h @@ -33,61 +33,39 @@ #include "mrelation.h" - namespace qmt { class MObject; - -class QMT_EXPORT MDependency : - public MRelation +class QMT_EXPORT MDependency : public MRelation { public: - enum Direction { AToB, BToA, Bidirectional }; -public: - MDependency(); - MDependency(const MDependency &rhs); - ~MDependency(); -public: - MDependency &operator=(const MDependency &rhs); -public: - Direction direction() const { return m_direction; } - void setDirection(Direction direction); - Uid source() const; - void setSource(const Uid &source); - Uid target() const; - void setTarget(const Uid &target); -public: - virtual void accept(MVisitor *visitor); - virtual void accept(MConstVisitor *visitor) const; private: - Direction m_direction; - }; -} +} // namespace qmt #endif // QMT_MDEPENDENCY_H diff --git a/src/libs/3rdparty/modeling/qmt/model/mdiagram.cpp b/src/libs/3rdparty/modeling/qmt/model/mdiagram.cpp index 509ed4b6cb5..f8bfdd22328 100644 --- a/src/libs/3rdparty/modeling/qmt/model/mdiagram.cpp +++ b/src/libs/3rdparty/modeling/qmt/model/mdiagram.cpp @@ -34,7 +34,6 @@ #include "mconstvisitor.h" #include "qmt/diagram/delement.h" - namespace qmt { MDiagram::MDiagram() @@ -72,9 +71,8 @@ DElement *MDiagram::findDiagramElement(const Uid &key) const { // PERFORM introduce map for better performance foreach (DElement *element, m_elements) { - if (element->uid() == key) { + if (element->uid() == key) return element; - } } return 0; } @@ -133,4 +131,4 @@ void MDiagram::accept(MConstVisitor *visitor) const visitor->visitMDiagram(this); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model/mdiagram.h b/src/libs/3rdparty/modeling/qmt/model/mdiagram.h index e880b7331e7..86670163192 100644 --- a/src/libs/3rdparty/modeling/qmt/model/mdiagram.h +++ b/src/libs/3rdparty/modeling/qmt/model/mdiagram.h @@ -39,57 +39,36 @@ namespace qmt { class DElement; - -class QMT_EXPORT MDiagram : - public MObject +class QMT_EXPORT MDiagram : public MObject { public: MDiagram(); - MDiagram(const MDiagram &rhs); - ~MDiagram(); -public: - MDiagram &operator=(const MDiagram &rhs); -public: - const QList &diagramElements() const { return m_elements; } - DElement *findDiagramElement(const Uid &key) const; - void setDiagramElements(const QList &elements); void addDiagramElement(DElement *element); - void insertDiagramElement(int beforeElement, DElement *element); - void removeDiagramElement(int index); - void removeDiagramElement(DElement *element); QDateTime lastModified() const { return m_lastModified; } - void setLastModified(const QDateTime &lastModified); - void setLastModifiedToNow(); -public: - virtual void accept(MVisitor *visitor); - virtual void accept(MConstVisitor *visitor) const; private: - QList m_elements; - QDateTime m_lastModified; - }; -} +} // namespace qmt #endif // QMT_MDIAGRAM_H diff --git a/src/libs/3rdparty/modeling/qmt/model/melement.cpp b/src/libs/3rdparty/modeling/qmt/model/melement.cpp index b6848561a03..82ad8b52c22 100644 --- a/src/libs/3rdparty/modeling/qmt/model/melement.cpp +++ b/src/libs/3rdparty/modeling/qmt/model/melement.cpp @@ -33,14 +33,12 @@ #include "mvisitor.h" #include "mconstvisitor.h" - namespace qmt { void MExpansion::assign(MElement *lhs, const MElement &rhs) { - if (lhs->m_expansion) { + if (lhs->m_expansion) lhs->m_expansion->destroy(lhs); - } lhs->m_expansion = clone(rhs); } @@ -51,7 +49,6 @@ void MExpansion::destroy(MElement *element) delete this; } - MElement::MElement() : m_owner(0), m_expansion(0) @@ -68,9 +65,8 @@ MElement::MElement(const MElement &rhs) MElement::~MElement() { - if (m_expansion) { + if (m_expansion) m_expansion->destroy(this); - } } MElement &MElement::operator=(const MElement &rhs) @@ -78,9 +74,8 @@ MElement &MElement::operator=(const MElement &rhs) if (this != &rhs) { m_uid = rhs.m_uid; // owner is intentionally left unchanged - if (rhs.m_expansion) { + if (rhs.m_expansion) rhs.m_expansion->assign(this, rhs); - } m_stereotypes = rhs.m_stereotypes; } return *this; @@ -103,9 +98,8 @@ void MElement::setOwner(MObject *owner) void MElement::setExpansion(MExpansion *expansion) { - if (m_expansion) { + if (m_expansion) m_expansion->destroy(this); - } m_expansion = expansion; } @@ -129,4 +123,4 @@ void MElement::accept(MConstVisitor *visitor) const visitor->visitMElement(this); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model/melement.h b/src/libs/3rdparty/modeling/qmt/model/melement.h index ded88bbaee3..aba992c34fa 100644 --- a/src/libs/3rdparty/modeling/qmt/model/melement.h +++ b/src/libs/3rdparty/modeling/qmt/model/melement.h @@ -36,7 +36,6 @@ #include #include - namespace qmt { class MElement; @@ -44,89 +43,58 @@ class MObject; class MVisitor; class MConstVisitor; - -class MExpansion { +class MExpansion +{ public: - virtual ~MExpansion() { } virtual MExpansion *clone(const MElement &rhs) const = 0; - virtual void assign(MElement *lhs, const MElement &rhs); - virtual void destroy(MElement *element); }; - class QMT_EXPORT MElement { friend class MExpansion; public: - enum Flag { ReverseEngineered = 0x01 }; Q_DECLARE_FLAGS(Flags, Flag) -public: - MElement(); - MElement(const MElement &rhs); - virtual ~MElement(); -public: - MElement &operator=(const MElement &rhs); -public: - Uid uid() const { return m_uid; } - void setUid(const Uid &uid); - void renewUid(); - MObject *owner() const { return m_owner; } - void setOwner(MObject *owner); - MExpansion *expansion() const { return m_expansion; } - void setExpansion(MExpansion *expansion); - QList stereotypes() const { return m_stereotypes; } - void setStereotypes(const QList &stereotypes); - Flags flags() const { return m_flags; } - void setFlags(const Flags &flags); -public: - virtual void accept(MVisitor *visitor); - virtual void accept(MConstVisitor *visitor) const; private: - Uid m_uid; - MObject *m_owner; - MExpansion *m_expansion; - QList m_stereotypes; - Flags m_flags; }; Q_DECLARE_OPERATORS_FOR_FLAGS(MElement::Flags) -} +} // namespace qmt #endif // QMT_MELEMENT_H diff --git a/src/libs/3rdparty/modeling/qmt/model/minheritance.cpp b/src/libs/3rdparty/modeling/qmt/model/minheritance.cpp index d155df42972..4ce16251bd6 100644 --- a/src/libs/3rdparty/modeling/qmt/model/minheritance.cpp +++ b/src/libs/3rdparty/modeling/qmt/model/minheritance.cpp @@ -34,7 +34,6 @@ #include "mvisitor.h" #include "mconstvisitor.h" - namespace qmt { MInheritance::MInheritance() @@ -53,9 +52,8 @@ MInheritance::~MInheritance() MInheritance MInheritance::operator =(const MInheritance &rhs) { - if (this != &rhs) { + if (this != &rhs) MRelation::operator=(rhs); - } return *this; } @@ -89,4 +87,4 @@ void MInheritance::accept(MConstVisitor *visitor) const visitor->visitMInheritance(this); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model/minheritance.h b/src/libs/3rdparty/modeling/qmt/model/minheritance.h index 3825afc47ef..16aac0611f0 100644 --- a/src/libs/3rdparty/modeling/qmt/model/minheritance.h +++ b/src/libs/3rdparty/modeling/qmt/model/minheritance.h @@ -34,45 +34,26 @@ #include "mrelation.h" #include "qmt/infrastructure/handle.h" - namespace qmt { -class MClass; - - -class QMT_EXPORT MInheritance : - public MRelation +class QMT_EXPORT MInheritance : public MRelation { public: - MInheritance(); - MInheritance(const MInheritance &rhs); - ~MInheritance(); -public: - MInheritance operator=(const MInheritance &rhs); -public: - Uid derived() const; - void setDerived(const Uid &derived); - Uid base() const; - void setBase(const Uid &base); -public: - virtual void accept(MVisitor *visitor); - virtual void accept(MConstVisitor *visitor) const; - }; -} +} // namespace qmt #endif // QMT_MINHERITANCE_H diff --git a/src/libs/3rdparty/modeling/qmt/model/mitem.cpp b/src/libs/3rdparty/modeling/qmt/model/mitem.cpp index 1f0124922c0..cdf18fecefc 100644 --- a/src/libs/3rdparty/modeling/qmt/model/mitem.cpp +++ b/src/libs/3rdparty/modeling/qmt/model/mitem.cpp @@ -33,7 +33,6 @@ #include "mvisitor.h" #include "mconstvisitor.h" - namespace qmt { MItem::MItem() diff --git a/src/libs/3rdparty/modeling/qmt/model/mitem.h b/src/libs/3rdparty/modeling/qmt/model/mitem.h index 757a382ea2c..c941df1f137 100644 --- a/src/libs/3rdparty/modeling/qmt/model/mitem.h +++ b/src/libs/3rdparty/modeling/qmt/model/mitem.h @@ -33,46 +33,28 @@ #include "mobject.h" - namespace qmt { -class QMT_EXPORT MItem : - public MObject +class QMT_EXPORT MItem : public MObject { public: - MItem(); - ~MItem(); -public: - QString variety() const { return m_variety; } - void setVariety(const QString &variety); - bool isVarietyEditable() const { return m_isVarietyEditable; } - void setVarietyEditable(bool varietyEditable); - bool isShapeEditable() const { return m_isShapeEditable; } - void setShapeEditable(bool shapeEditable); -public: - virtual void accept(MVisitor *visitor); - virtual void accept(MConstVisitor *visitor) const; private: - QString m_variety; - bool m_isVarietyEditable; - bool m_isShapeEditable; - }; } // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model/mobject.cpp b/src/libs/3rdparty/modeling/qmt/model/mobject.cpp index f60e5c8e575..cfa77a88d2c 100644 --- a/src/libs/3rdparty/modeling/qmt/model/mobject.cpp +++ b/src/libs/3rdparty/modeling/qmt/model/mobject.cpp @@ -35,7 +35,6 @@ #include "mvisitor.h" #include "mconstvisitor.h" - namespace qmt { MObject::MObject() @@ -76,9 +75,8 @@ void MObject::setChildren(const Handles &children) { m_children = children; foreach (const Handle &handle, children) { - if (handle.hasTarget()) { + if (handle.hasTarget()) handle.target()->setOwner(this); - } } } @@ -112,9 +110,8 @@ void MObject::removeChild(const Uid &uid) { QMT_CHECK(m_children.contains(uid)); MObject *child = m_children.find(uid); - if (child) { + if (child) child->setOwner(0); - } m_children.remove(uid); } @@ -130,9 +127,8 @@ void MObject::decontrolChild(const Uid &uid) { QMT_CHECK(m_children.contains(uid)); MObject *child = m_children.find(uid); - if (child) { + if (child) child->setOwner(0); - } m_children.take(uid); } @@ -148,9 +144,8 @@ void MObject::setRelations(const Handles &relations) { m_relations = relations; foreach (const Handle &handle, relations) { - if (handle.hasTarget()) { + if (handle.hasTarget()) handle.target()->setOwner(this); - } } } @@ -199,4 +194,4 @@ void MObject::accept(MConstVisitor *visitor) const visitor->visitMObject(this); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model/mobject.h b/src/libs/3rdparty/modeling/qmt/model/mobject.h index 6da3db9d67f..a0e756b4403 100644 --- a/src/libs/3rdparty/modeling/qmt/model/mobject.h +++ b/src/libs/3rdparty/modeling/qmt/model/mobject.h @@ -36,83 +36,50 @@ #include - namespace qmt { class MRelation; - -class QMT_EXPORT MObject : - public MElement +class QMT_EXPORT MObject : public MElement { public: - MObject(); - MObject(const MObject &rhs); - ~MObject(); -public: - MObject &operator=(const MObject &rhs); -public: - QString name() const { return m_name; } - void setName(const QString &name); const Handles &children() const { return m_children; } - void setChildren(const Handles &children); - void addChild(const Uid &uid); - void addChild(MObject *child); - void insertChild(int beforeIndex, const Uid &uid); - void insertChild(int beforeIndex, MObject *child); - void removeChild(const Uid &uid); - void removeChild(MObject *child); - void decontrolChild(const Uid &uid); - void decontrolChild(MObject *child); const Handles &relations() const { return m_relations; } - void setRelations(const Handles &relations); - void addRelation(const Uid &uid); - void addRelation(MRelation *relation); - void insertRelation(int beforeIndex, MRelation *relation); - void removeRelation(MRelation *relation); - void decontrolRelation(MRelation *relation); -public: - virtual void accept(MVisitor *visitor); - virtual void accept(MConstVisitor *visitor) const; private: - QString m_name; - Handles m_children; - Handles m_relations; - }; -} +} // namespace qmt #endif // QMT_MOBJECT_H diff --git a/src/libs/3rdparty/modeling/qmt/model/mpackage.cpp b/src/libs/3rdparty/modeling/qmt/model/mpackage.cpp index 22a53c6fc5b..029aeeedd9c 100644 --- a/src/libs/3rdparty/modeling/qmt/model/mpackage.cpp +++ b/src/libs/3rdparty/modeling/qmt/model/mpackage.cpp @@ -33,7 +33,6 @@ #include "mvisitor.h" #include "mconstvisitor.h" - namespace qmt { MPackage::MPackage() @@ -55,4 +54,4 @@ void MPackage::accept(MConstVisitor *visitor) const visitor->visitMPackage(this); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model/mpackage.h b/src/libs/3rdparty/modeling/qmt/model/mpackage.h index 0893c5508b7..601833e4dca 100644 --- a/src/libs/3rdparty/modeling/qmt/model/mpackage.h +++ b/src/libs/3rdparty/modeling/qmt/model/mpackage.h @@ -34,31 +34,18 @@ #include "mobject.h" #include "qmt/infrastructure/handles.h" - namespace qmt { -class MAssociation; - - -class QMT_EXPORT MPackage : - public MObject +class QMT_EXPORT MPackage : public MObject { public: - MPackage(); - ~MPackage(); -public: - virtual void accept(MVisitor *visitor); - virtual void accept(MConstVisitor *visitor) const; - -private: - }; -} +} // namespace qmt #endif // QMT_MPACKAGE_H diff --git a/src/libs/3rdparty/modeling/qmt/model/mrelation.cpp b/src/libs/3rdparty/modeling/qmt/model/mrelation.cpp index b78d370282e..cfdb3f28e51 100644 --- a/src/libs/3rdparty/modeling/qmt/model/mrelation.cpp +++ b/src/libs/3rdparty/modeling/qmt/model/mrelation.cpp @@ -33,7 +33,6 @@ #include "mvisitor.h" #include "mconstvisitor.h" - namespace qmt { MRelation::MRelation() @@ -58,7 +57,7 @@ MRelation::~MRelation() MRelation &MRelation::operator =(const MRelation &rhs) { if (this != &rhs) { - MElement::operator =(rhs); + MElement::operator=(rhs); m_name = rhs.m_name; m_endAUid = rhs.m_endAUid; m_endBUid = rhs.m_endBUid; @@ -91,4 +90,4 @@ void MRelation::accept(MConstVisitor *visitor) const visitor->visitMRelation(this); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model/mrelation.h b/src/libs/3rdparty/modeling/qmt/model/mrelation.h index dd257a0b051..a105fa46b3b 100644 --- a/src/libs/3rdparty/modeling/qmt/model/mrelation.h +++ b/src/libs/3rdparty/modeling/qmt/model/mrelation.h @@ -39,53 +39,31 @@ namespace qmt { class MObject; - -class QMT_EXPORT MRelation : - public MElement +class QMT_EXPORT MRelation : public MElement { public: - MRelation(); - MRelation(const MRelation &rhs); - ~MRelation(); -public: - MRelation &operator=(const MRelation &rhs); -public: - QString name() const { return m_name; } - void setName(const QString &name); - Uid endAUid() const { return m_endAUid; } - void setEndAUid(const Uid &uid); - Uid endBUid() const { return m_endBUid; } - void setEndBUid(const Uid &uid); -public: - virtual void accept(MVisitor *visitor); - virtual void accept(MConstVisitor *visitor) const; private: - QString m_name; - Uid m_endAUid; - Uid m_endBUid; - }; -} - +} // namespace qmt #endif // QMT_MRELATION_H diff --git a/src/libs/3rdparty/modeling/qmt/model/msourceexpansion.cpp b/src/libs/3rdparty/modeling/qmt/model/msourceexpansion.cpp index b15f1039c29..03440935331 100644 --- a/src/libs/3rdparty/modeling/qmt/model/msourceexpansion.cpp +++ b/src/libs/3rdparty/modeling/qmt/model/msourceexpansion.cpp @@ -78,4 +78,4 @@ void MSourceExpansion::setTransient(bool transient) m_isTransient = transient; } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model/msourceexpansion.h b/src/libs/3rdparty/modeling/qmt/model/msourceexpansion.h index c8f99c71d68..2f89bac0105 100644 --- a/src/libs/3rdparty/modeling/qmt/model/msourceexpansion.h +++ b/src/libs/3rdparty/modeling/qmt/model/msourceexpansion.h @@ -35,40 +35,27 @@ namespace qmt { -class QMT_EXPORT MSourceExpansion : - public MExpansion +class QMT_EXPORT MSourceExpansion : public MExpansion { public: - MSourceExpansion(); - MSourceExpansion(const MSourceExpansion &rhs); - ~MSourceExpansion(); MSourceExpansion &operator=(const MSourceExpansion &rhs); -public: - MSourceExpansion *clone(const MElement &rhs) const; -public: - QString sourceId() const { return m_sourceId; } - void setSourceId(const QString &sourceId); - bool isTransient() const { return m_isTransient; } - void setTransient(bool transient); private: - QString m_sourceId; - bool m_isTransient; }; -} +} // namespace qmt #endif // QMT_MSOURCEEXPANSION_H diff --git a/src/libs/3rdparty/modeling/qmt/model/mvisitor.h b/src/libs/3rdparty/modeling/qmt/model/mvisitor.h index 171d2d9e03f..7bde915773b 100644 --- a/src/libs/3rdparty/modeling/qmt/model/mvisitor.h +++ b/src/libs/3rdparty/modeling/qmt/model/mvisitor.h @@ -54,31 +54,19 @@ public: virtual ~MVisitor() { } virtual void visitMElement(MElement *element) = 0; - virtual void visitMObject(MObject *object) = 0; - virtual void visitMPackage(MPackage *package) = 0; - virtual void visitMClass(MClass *klass) = 0; - virtual void visitMComponent(MComponent *component) = 0; - virtual void visitMDiagram(MDiagram *diagram) = 0; - virtual void visitMCanvasDiagram(MCanvasDiagram *diagram) = 0; - virtual void visitMItem(MItem *item) = 0; - virtual void visitMRelation(MRelation *relation) = 0; - virtual void visitMDependency(MDependency *dependency) = 0; - virtual void visitMInheritance(MInheritance *inheritance) = 0; - virtual void visitMAssociation(MAssociation *association) = 0; - }; -} +} // namespace qmt #endif // QMT_MVISITOR_H diff --git a/src/libs/3rdparty/modeling/qmt/model_controller/mchildrenvisitor.cpp b/src/libs/3rdparty/modeling/qmt/model_controller/mchildrenvisitor.cpp index 576b6024ed9..1529f25996a 100644 --- a/src/libs/3rdparty/modeling/qmt/model_controller/mchildrenvisitor.cpp +++ b/src/libs/3rdparty/modeling/qmt/model_controller/mchildrenvisitor.cpp @@ -55,9 +55,8 @@ void MChildrenVisitor::visitMObject(MObject *object) { foreach (const Handle &handle, object->children()) { MObject *child = handle.target(); - if (child) { + if (child) child->accept(this); - } } visitMElement(object); } @@ -112,4 +111,4 @@ void MChildrenVisitor::visitMAssociation(MAssociation *association) visitMRelation(association); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model_controller/mchildrenvisitor.h b/src/libs/3rdparty/modeling/qmt/model_controller/mchildrenvisitor.h index 1cc97cf8bdb..8500af941e1 100644 --- a/src/libs/3rdparty/modeling/qmt/model_controller/mchildrenvisitor.h +++ b/src/libs/3rdparty/modeling/qmt/model_controller/mchildrenvisitor.h @@ -36,38 +36,25 @@ namespace qmt { -class QMT_EXPORT MChildrenVisitor : - public MVisitor +class QMT_EXPORT MChildrenVisitor : public MVisitor { public: MChildrenVisitor(); void visitMElement(MElement *element); - void visitMObject(MObject *object); - void visitMPackage(MPackage *package); - void visitMClass(MClass *klass); - void visitMComponent(MComponent *component); - void visitMDiagram(MDiagram *diagram); - void visitMCanvasDiagram(MCanvasDiagram *diagram); - void visitMItem(MItem *item); - void visitMRelation(MRelation *relation); - void visitMDependency(MDependency *dependency); - void visitMInheritance(MInheritance *inheritance); - void visitMAssociation(MAssociation *association); - }; -} +} // namespace qmt #endif // QMT_MCHILDRENVISITOR_H diff --git a/src/libs/3rdparty/modeling/qmt/model_controller/mclonevisitor.cpp b/src/libs/3rdparty/modeling/qmt/model_controller/mclonevisitor.cpp index 4b0436bb3cc..e62c30b13ab 100644 --- a/src/libs/3rdparty/modeling/qmt/model_controller/mclonevisitor.cpp +++ b/src/libs/3rdparty/modeling/qmt/model_controller/mclonevisitor.cpp @@ -46,7 +46,6 @@ #include "qmt/diagram/delement.h" #include "qmt/diagram_controller/dclonevisitor.h" - namespace qmt { MCloneVisitor::MCloneVisitor() @@ -68,25 +67,22 @@ void MCloneVisitor::visitMObject(const MObject *object) void MCloneVisitor::visitMPackage(const MPackage *package) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new MPackage(*package); - } visitMObject(package); } void MCloneVisitor::visitMClass(const MClass *klass) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new MClass(*klass); - } visitMObject(klass); } void MCloneVisitor::visitMComponent(const MComponent *component) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new MComponent(*component); - } visitMObject(component); } @@ -106,17 +102,15 @@ void MCloneVisitor::visitMDiagram(const MDiagram *diagram) void MCloneVisitor::visitMCanvasDiagram(const MCanvasDiagram *diagram) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new MCanvasDiagram(*diagram); - } visitMDiagram(diagram); } void MCloneVisitor::visitMItem(const MItem *item) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new MItem(*item); - } visitMObject(item); } @@ -128,29 +122,25 @@ void MCloneVisitor::visitMRelation(const MRelation *relation) void MCloneVisitor::visitMDependency(const MDependency *dependency) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new MDependency(*dependency); - } visitMRelation(dependency); } void MCloneVisitor::visitMInheritance(const MInheritance *inheritance) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new MInheritance(*inheritance); - } visitMRelation(inheritance); } void MCloneVisitor::visitMAssociation(const MAssociation *association) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new MAssociation(*association); - } visitMRelation(association); } - MCloneDeepVisitor::MCloneDeepVisitor() : m_cloned(0) { @@ -194,25 +184,22 @@ void MCloneDeepVisitor::visitMObject(const MObject *object) void MCloneDeepVisitor::visitMPackage(const MPackage *package) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new MPackage(*package); - } visitMObject(package); } void MCloneDeepVisitor::visitMClass(const MClass *klass) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new MClass(*klass); - } visitMObject(klass); } void MCloneDeepVisitor::visitMComponent(const MComponent *component) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new MComponent(*component); - } visitMObject(component); } @@ -232,17 +219,15 @@ void MCloneDeepVisitor::visitMDiagram(const MDiagram *diagram) void MCloneDeepVisitor::visitMCanvasDiagram(const MCanvasDiagram *diagram) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new MCanvasDiagram(*diagram); - } visitMDiagram(diagram); } void MCloneDeepVisitor::visitMItem(const MItem *item) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new MItem(*item); - } visitMObject(item); } @@ -258,26 +243,23 @@ void MCloneDeepVisitor::visitMRelation(const MRelation *relation) void MCloneDeepVisitor::visitMDependency(const MDependency *dependency) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new MDependency(*dependency); - } visitMRelation(dependency); } void MCloneDeepVisitor::visitMInheritance(const MInheritance *inheritance) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new MInheritance(*inheritance); - } visitMRelation(inheritance); } void MCloneDeepVisitor::visitMAssociation(const MAssociation *association) { - if (!m_cloned) { + if (!m_cloned) m_cloned = new MAssociation(*association); - } visitMRelation(association); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model_controller/mclonevisitor.h b/src/libs/3rdparty/modeling/qmt/model_controller/mclonevisitor.h index 29262346bcd..b222a56e718 100644 --- a/src/libs/3rdparty/modeling/qmt/model_controller/mclonevisitor.h +++ b/src/libs/3rdparty/modeling/qmt/model_controller/mclonevisitor.h @@ -38,8 +38,7 @@ namespace qmt { -class QMT_EXPORT MCloneVisitor : - public MConstVisitor +class QMT_EXPORT MCloneVisitor : public MConstVisitor { public: MCloneVisitor(); @@ -47,35 +46,23 @@ public: MElement *cloned() const { return m_cloned; } void visitMElement(const MElement *element); - void visitMObject(const MObject *object); - void visitMPackage(const MPackage *package); - void visitMClass(const MClass *klass); - void visitMComponent(const MComponent *component); - void visitMDiagram(const MDiagram *diagram); - void visitMCanvasDiagram(const MCanvasDiagram *diagram); - void visitMItem(const MItem *item); - void visitMRelation(const MRelation *relation); - void visitMDependency(const MDependency *dependency); - void visitMInheritance(const MInheritance *inheritance); - void visitMAssociation(const MAssociation *association); private: MElement *m_cloned; }; -class QMT_EXPORT MCloneDeepVisitor : - public MConstVisitor +class QMT_EXPORT MCloneDeepVisitor : public MConstVisitor { public: MCloneDeepVisitor(); @@ -83,34 +70,22 @@ public: MElement *cloned() const { return m_cloned; } void visitMElement(const MElement *element); - void visitMObject(const MObject *object); - void visitMPackage(const MPackage *package); - void visitMClass(const MClass *klass); - void visitMComponent(const MComponent *component); - void visitMDiagram(const MDiagram *diagram); - void visitMCanvasDiagram(const MCanvasDiagram *diagram); - void visitMItem(const MItem *item); - void visitMRelation(const MRelation *relation); - void visitMDependency(const MDependency *dependency); - void visitMInheritance(const MInheritance *inheritance); - void visitMAssociation(const MAssociation *association); private: MElement *m_cloned; }; -} - +} // namespace qmt #endif // QMT_CLONEVISITOR_H diff --git a/src/libs/3rdparty/modeling/qmt/model_controller/mcontainer.h b/src/libs/3rdparty/modeling/qmt/model_controller/mcontainer.h index b140b7d9f24..4cc07a89b5f 100644 --- a/src/libs/3rdparty/modeling/qmt/model_controller/mcontainer.h +++ b/src/libs/3rdparty/modeling/qmt/model_controller/mcontainer.h @@ -34,14 +34,12 @@ #include "qmt/controller/container.h" #include "qmt/model/melement.h" - namespace qmt { -class QMT_EXPORT MContainer : - public Container +class QMT_EXPORT MContainer : public Container { }; -} +} // namespace qmt #endif // QMT_MCONTAINER_H diff --git a/src/libs/3rdparty/modeling/qmt/model_controller/mflatassignmentvisitor.cpp b/src/libs/3rdparty/modeling/qmt/model_controller/mflatassignmentvisitor.cpp index f28b7e4d75f..28a03bf89bc 100644 --- a/src/libs/3rdparty/modeling/qmt/model_controller/mflatassignmentvisitor.cpp +++ b/src/libs/3rdparty/modeling/qmt/model_controller/mflatassignmentvisitor.cpp @@ -40,7 +40,6 @@ #include "qmt/model/minheritance.h" #include "qmt/model/massociation.h" - namespace qmt { // TODO may flat assignment visitor use operator=() ? @@ -134,4 +133,4 @@ void MFlatAssignmentVisitor::visitMAssociation(const MAssociation *association) targetAssociation->setEndB(association->endB()); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model_controller/mflatassignmentvisitor.h b/src/libs/3rdparty/modeling/qmt/model_controller/mflatassignmentvisitor.h index e9bac438bc5..6be996a927d 100644 --- a/src/libs/3rdparty/modeling/qmt/model_controller/mflatassignmentvisitor.h +++ b/src/libs/3rdparty/modeling/qmt/model_controller/mflatassignmentvisitor.h @@ -34,49 +34,32 @@ #include "qmt/model/mconstvisitor.h" #include "qmt/infrastructure/qmt_global.h" - namespace qmt { class MAssociationEnd; - -class QMT_EXPORT MFlatAssignmentVisitor : - public MConstVisitor +class QMT_EXPORT MFlatAssignmentVisitor : public MConstVisitor { public: - MFlatAssignmentVisitor(MElement *target); void visitMElement(const MElement *element); - void visitMObject(const MObject *object); - void visitMPackage(const MPackage *package); - void visitMClass(const MClass *klass); - void visitMComponent(const MComponent *component); - void visitMDiagram(const MDiagram *diagram); - void visitMCanvasDiagram(const MCanvasDiagram *diagram); - void visitMItem(const MItem *item); - void visitMRelation(const MRelation *relation); - void visitMDependency(const MDependency *dependency); - void visitMInheritance(const MInheritance *inheritance); - void visitMAssociation(const MAssociation *association); private: - MElement *m_target; }; - -} +} // namespace qmt #endif // QMT_MFLATASSIGNMENTVISITOR_H diff --git a/src/libs/3rdparty/modeling/qmt/model_controller/modelcontroller.cpp b/src/libs/3rdparty/modeling/qmt/model_controller/modelcontroller.cpp index 89fd4fa98df..77433292203 100644 --- a/src/libs/3rdparty/modeling/qmt/model_controller/modelcontroller.cpp +++ b/src/libs/3rdparty/modeling/qmt/model_controller/modelcontroller.cpp @@ -66,9 +66,7 @@ ModelController::Clone::Clone() { } - -class ModelController::UpdateObjectCommand : - public UndoCommand +class ModelController::UpdateObjectCommand : public UndoCommand { public: UpdateObjectCommand(ModelController *modelController, MObject *object) @@ -90,12 +88,10 @@ public: bool mergeWith(const UndoCommand *other) { const UpdateObjectCommand *updateCommand = dynamic_cast(other); - if (!updateCommand) { + if (!updateCommand) return false; - } - if (m_object->uid() != updateCommand->m_object->uid()) { + if (m_object->uid() != updateCommand->m_object->uid()) return false; - } // the last update is a complete update of all changes... return true; } @@ -140,14 +136,10 @@ private: m_modelController->verifyModelIntegrity(); } -private: - ModelController *m_modelController; - MObject *m_object; }; - class ModelController::UpdateRelationCommand : public UndoCommand { @@ -171,12 +163,10 @@ public: bool mergeWith(const UndoCommand *other) { const UpdateRelationCommand *updateCommand = dynamic_cast(other); - if (!updateCommand) { + if (!updateCommand) return false; - } - if (m_relation->uid() != updateCommand->m_relation->uid()) { + if (m_relation->uid() != updateCommand->m_relation->uid()) return false; - } // the last update is a complete update of all changes... return true; } @@ -217,16 +207,11 @@ private: m_modelController->verifyModelIntegrity(); } -private: - ModelController *m_modelController; - MRelation *m_relation; }; - -class ModelController::AddElementsCommand : - public UndoCommand +class ModelController::AddElementsCommand : public UndoCommand { public: AddElementsCommand(ModelController *modelController, const QString &commandLabel) @@ -237,9 +222,8 @@ public: ~AddElementsCommand() { - foreach (const Clone &clone, m_clonedElements) { + foreach (const Clone &clone, m_clonedElements) delete clone.m_clonedElement; - } } void add(ElementType elementsType, const Uid &objectKey, const Uid &ownerKey) @@ -293,9 +277,8 @@ public: break; } } - if (inserted) { + if (inserted) emit m_modelController->modified(); - } m_modelController->verifyModelIntegrity(); UndoCommand::redo(); } @@ -347,23 +330,18 @@ public: break; } } - if (removed) { + if (removed) emit m_modelController->modified(); - } m_modelController->verifyModelIntegrity(); UndoCommand::undo(); } private: - ModelController *m_modelController; - QList m_clonedElements; }; - -class ModelController::RemoveElementsCommand : - public UndoCommand +class ModelController::RemoveElementsCommand : public UndoCommand { public: RemoveElementsCommand(ModelController *modelController, const QString &commandLabel) @@ -374,9 +352,8 @@ public: ~RemoveElementsCommand() { - foreach (const Clone &clone, m_clonedElements) { + foreach (const Clone &clone, m_clonedElements) delete clone.m_clonedElement; - } } void add(MElement *element, MObject *owner) @@ -450,9 +427,8 @@ public: break; } } - if (removed) { + if (removed) emit m_modelController->modified(); - } m_modelController->verifyModelIntegrity(); UndoCommand::redo(); } @@ -497,23 +473,18 @@ public: break; } } - if (inserted) { + if (inserted) emit m_modelController->modified(); - } m_modelController->verifyModelIntegrity(); UndoCommand::undo(); } private: - ModelController *m_modelController; - QList m_clonedElements; }; - -class ModelController::MoveObjectCommand : - public UndoCommand +class ModelController::MoveObjectCommand : public UndoCommand { public: MoveObjectCommand(ModelController *modelController, MObject *object) @@ -544,7 +515,6 @@ public: } private: - void swap() { MObject *object = m_modelController->findObject(m_objectKey); @@ -563,21 +533,13 @@ private: m_modelController->verifyModelIntegrity(); } -private: - ModelController *m_modelController; - Uid m_objectKey; - Uid m_ownerKey; - int m_indexOfElement; - }; - -class ModelController::MoveRelationCommand : - public UndoCommand +class ModelController::MoveRelationCommand : public UndoCommand { public: MoveRelationCommand(ModelController *modelController, MRelation *relation) @@ -608,7 +570,6 @@ public: } private: - void swap() { MRelation *relation = m_modelController->findRelation(m_relationKey); @@ -627,19 +588,12 @@ private: m_modelController->verifyModelIntegrity(); } -private: - ModelController *m_modelController; - Uid m_relationKey; - Uid m_ownerKey; - int m_indexOfElement; - }; - ModelController::ModelController(QObject *parent) : QObject(parent), m_rootPackage(0), @@ -671,19 +625,17 @@ Uid ModelController::ownerKey(const MElement *element) const { QMT_CHECK(element); MObject *owner = element->owner(); - if (!owner) { + if (!owner) return Uid(); - } return owner->uid(); } MElement *ModelController::findElement(const Uid &key) { - if (MObject *object = findObject(key)) { + if (MObject *object = findObject(key)) return object; - } else if (MRelation *relation = findRelation(key)) { + else if (MRelation *relation = findRelation(key)) return relation; - } return 0; } @@ -699,9 +651,8 @@ void ModelController::finishResetModel(bool modified) { QMT_CHECK(m_isResettingModel); emit endResetModel(); - if (modified) { + if (modified) emit this->modified(); - } QMT_CHECK(m_isResettingModel); m_isResettingModel = false; } @@ -726,9 +677,8 @@ void ModelController::addObject(MPackage *parentPackage, MObject *object) QMT_CHECK(parentPackage); QMT_CHECK(object); int row = parentPackage->children().size(); - if (!m_isResettingModel) { + if (!m_isResettingModel) emit beginInsertObject(row, parentPackage); - } mapObject(object); if (m_undoController) { AddElementsCommand *undoCommand = new AddElementsCommand(this, tr("Add Object")); @@ -746,17 +696,15 @@ void ModelController::addObject(MPackage *parentPackage, MObject *object) void ModelController::removeObject(MObject *object) { QMT_CHECK(object); - if (m_undoController) { + if (m_undoController) m_undoController->beginMergeSequence(tr("Delete Object")); - } removeRelatedRelations(object); // remove object QMT_CHECK(object->owner()); int row = object->owner()->children().indexOf(object); MObject *owner = object->owner(); - if (!m_isResettingModel) { + if (!m_isResettingModel) emit beginRemoveObject(row, owner); - } if (m_undoController) { RemoveElementsCommand *undoCommand = new RemoveElementsCommand(this, tr("Delete Object")); m_undoController->push(undoCommand); @@ -768,9 +716,8 @@ void ModelController::removeObject(MObject *object) emit endRemoveObject(row, owner); emit modified(); } - if (m_undoController) { + if (m_undoController) m_undoController->endMergeSequence(); - } verifyModelIntegrity(); } @@ -784,15 +731,12 @@ void ModelController::startUpdateObject(MObject *object) } else { row = parent->children().indexOf(object); } - if (MPackage *package = dynamic_cast(object)) { + if (MPackage *package = dynamic_cast(object)) m_oldPackageName = package->name(); - } - if (!m_isResettingModel) { + if (!m_isResettingModel) emit beginUpdateObject(row, parent); - } - if (m_undoController) { + if (m_undoController) m_undoController->push(new UpdateObjectCommand(this, object)); - } } void ModelController::finishUpdateObject(MObject *object, bool cancelled) @@ -810,13 +754,11 @@ void ModelController::finishUpdateObject(MObject *object, bool cancelled) emit endUpdateObject(row, parent); if (!cancelled) { QList relations = findRelationsOfObject(object); - foreach (MRelation *relation, relations) { + foreach (MRelation *relation, relations) emit relationEndChanged(relation, object); - } if (MPackage *package = dynamic_cast(object)) { - if (m_oldPackageName != package->name()) { + if (m_oldPackageName != package->name()) emit packageNameChanged(package, m_oldPackageName); - } } emit modified(); } @@ -835,9 +777,8 @@ void ModelController::moveObject(MPackage *newOwner, MObject *object) MObject *formerOwner = object->owner(); QMT_CHECK(formerOwner); formerRow = formerOwner->children().indexOf(object); - if (!m_isResettingModel) { + if (!m_isResettingModel) emit beginMoveObject(formerRow, formerOwner); - } if (m_undoController) { MoveObjectCommand *undoCommand = new MoveObjectCommand(this, object); m_undoController->push(undoCommand); @@ -866,9 +807,8 @@ void ModelController::addRelation(MObject *owner, MRelation *relation) QMT_CHECK(findObject(relation->endBUid())); int row = owner->relations().size(); - if (!m_isResettingModel) { + if (!m_isResettingModel) emit beginInsertRelation(row, owner); - } mapRelation(relation); if (m_undoController) { AddElementsCommand *undoCommand = new AddElementsCommand(this, tr("Add Relation")); @@ -889,9 +829,8 @@ void ModelController::removeRelation(MRelation *relation) MObject *owner = relation->owner(); QMT_CHECK(owner); int row = owner->relations().indexOf(relation); - if (!m_isResettingModel) { + if (!m_isResettingModel) emit beginRemoveRelation(row, owner); - } if (m_undoController) { RemoveElementsCommand *undoCommand = new RemoveElementsCommand(this, tr("Delete Relation")); m_undoController->push(undoCommand); @@ -911,12 +850,10 @@ void ModelController::startUpdateRelation(MRelation *relation) QMT_CHECK(relation); MObject *owner = relation->owner(); QMT_CHECK(owner); - if (!m_isResettingModel) { + if (!m_isResettingModel) emit beginUpdateRelation(owner->relations().indexOf(relation), owner); - } - if (m_undoController) { + if (m_undoController) m_undoController->push(new UpdateRelationCommand(this, relation)); - } } void ModelController::finishUpdateRelation(MRelation *relation, bool cancelled) @@ -928,9 +865,8 @@ void ModelController::finishUpdateRelation(MRelation *relation, bool cancelled) QMT_CHECK(owner); if (!m_isResettingModel) { emit endUpdateRelation(owner->relations().indexOf(relation), owner); - if (!cancelled) { + if (!cancelled) emit modified(); - } } verifyModelIntegrity(); } @@ -945,9 +881,8 @@ void ModelController::moveRelation(MObject *newOwner, MRelation *relation) MObject *formerOwner = relation->owner(); QMT_CHECK(formerOwner); formerRow = formerOwner->relations().indexOf(relation); - if (!m_isResettingModel) { + if (!m_isResettingModel) emit beginMoveRelation(formerRow, formerOwner); - } if (m_undoController) { MoveRelationCommand *undoCommand = new MoveRelationCommand(this, relation); m_undoController->push(undoCommand); @@ -1003,20 +938,17 @@ void ModelController::pasteElements(MObject *owner, const MContainer &modelConta clonedElements.append(clonedElement); } // fix all keys referencing between pasting elements - foreach (MElement *clonedElement, clonedElements) { + foreach (MElement *clonedElement, clonedElements) updateRelationKeys(clonedElement, renewedKeys); - } - if (m_undoController) { + if (m_undoController) m_undoController->beginMergeSequence(tr("Paste")); - } // insert all elements bool added = false; foreach (MElement *clonedElement, clonedElements) { if (MObject *object = dynamic_cast(clonedElement)) { MObject *objectOwner = owner; - if (!dynamic_cast(owner)) { + if (!dynamic_cast(owner)) objectOwner = owner->owner(); - } QMT_CHECK(dynamic_cast(objectOwner)); int row = objectOwner->children().size(); emit beginInsertObject(row, objectOwner); @@ -1043,13 +975,11 @@ void ModelController::pasteElements(MObject *owner, const MContainer &modelConta added = true; } } - if (added) { + if (added) emit modified(); - } verifyModelIntegrity(); - if (m_undoController) { + if (m_undoController) m_undoController->endMergeSequence(); - } } void ModelController::deleteElements(const MSelection &modelSelection) @@ -1060,12 +990,10 @@ void ModelController::deleteElements(const MSelection &modelSelection) void ModelController::deleteElements(const MSelection &modelSelection, const QString &commandLabel) { MReferences simplifiedSelection = simplify(modelSelection); - if (simplifiedSelection.elements().isEmpty()) { + if (simplifiedSelection.elements().isEmpty()) return; - } - if (m_undoController) { + if (m_undoController) m_undoController->beginMergeSequence(commandLabel); - } bool removed = false; foreach (MElement *element, simplifiedSelection.elements()) { // element may have been deleted indirectly by predecessor element in loop @@ -1102,20 +1030,17 @@ void ModelController::deleteElements(const MSelection &modelSelection, const QSt } } } - if (removed) { + if (removed) emit modified(); - } verifyModelIntegrity(); - if (m_undoController) { + if (m_undoController) m_undoController->endMergeSequence(); - } } void ModelController::removeRelatedRelations(MObject *object) { - foreach (MRelation *relation, m_objectRelationsMap.values(object->uid())) { + foreach (MRelation *relation, m_objectRelationsMap.values(object->uid())) removeRelation(relation); - } QMT_CHECK(m_objectRelationsMap.values(object->uid()).isEmpty()); } @@ -1134,12 +1059,10 @@ void ModelController::renewElementKey(MElement *element, QHash *renewe } MObject *object = dynamic_cast(element); if (object) { - foreach (const Handle &child, object->children()) { + foreach (const Handle &child, object->children()) renewElementKey(child.target(), renewedKeys); - } - foreach (const Handle &relation, object->relations()) { + foreach (const Handle &relation, object->relations()) renewElementKey(relation.target(), renewedKeys); - } } } } @@ -1147,12 +1070,10 @@ void ModelController::renewElementKey(MElement *element, QHash *renewe void ModelController::updateRelationKeys(MElement *element, const QHash &renewedKeys) { if (MObject *object = dynamic_cast(element)) { - foreach (const Handle &handle, object->relations()) { + foreach (const Handle &handle, object->relations()) updateRelationEndKeys(handle.target(), renewedKeys); - } - foreach (const Handle &child, object->children()) { + foreach (const Handle &child, object->children()) updateRelationKeys(child.target(), renewedKeys); - } } else if (MRelation *relation = dynamic_cast(element)) { updateRelationEndKeys(relation, renewedKeys); } @@ -1162,13 +1083,11 @@ void ModelController::updateRelationEndKeys(MRelation *relation, const QHashendAUid(), Uid::invalidUid()); - if (newEndAKey.isValid()) { + if (newEndAKey.isValid()) relation->setEndAUid(newEndAKey); - } Uid newEndBKey = renewedKeys.value(relation->endBUid(), Uid::invalidUid()); - if (newEndBKey.isValid()) { + if (newEndBKey.isValid()) relation->setEndBUid(newEndBKey); - } } } @@ -1177,12 +1096,10 @@ void ModelController::mapObject(MObject *object) if (object) { QMT_CHECK(!m_objectsMap.contains(object->uid())); m_objectsMap.insert(object->uid(), object); - foreach (const Handle &child, object->children()) { + foreach (const Handle &child, object->children()) mapObject(child.target()); - } - foreach (const Handle &relation, object->relations()) { + foreach (const Handle &relation, object->relations()) mapRelation(relation.target()); - } } } @@ -1190,12 +1107,10 @@ void ModelController::unmapObject(MObject *object) { if (object) { QMT_CHECK(m_objectsMap.contains(object->uid())); - foreach (const Handle &relation, object->relations()) { + foreach (const Handle &relation, object->relations()) unmapRelation(relation.target()); - } - foreach (const Handle &child, object->children()) { + foreach (const Handle &child, object->children()) unmapObject(child.target()); - } m_objectsMap.remove(object->uid()); } } @@ -1246,14 +1161,12 @@ MReferences ModelController::simplify(const MSelection &modelSelection) break; } } - if (ignore) { + if (ignore) break; - } owner = owner->owner(); } - if (!ignore) { + if (!ignore) references.append(element); - } } return references; } @@ -1310,10 +1223,9 @@ void ModelController::verifyModelIntegrity(const MObject *object, QHash &handle, object->children()) { MObject *childObject = handle.target(); - if (childObject) { + if (childObject) verifyModelIntegrity(childObject, objectsMap, relationsMap, objectRelationsMap); - } } } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model_controller/modelcontroller.h b/src/libs/3rdparty/modeling/qmt/model_controller/modelcontroller.h index d679c80128f..7f7130140dd 100644 --- a/src/libs/3rdparty/modeling/qmt/model_controller/modelcontroller.h +++ b/src/libs/3rdparty/modeling/qmt/model_controller/modelcontroller.h @@ -37,26 +37,19 @@ #include #include - namespace qmt { class UndoController; - class MElement; - class MObject; class MPackage; class MDiagram; - class MRelation; - class MSelection; class MContainer; class MReferences; - -class QMT_EXPORT ModelController : - public QObject +class QMT_EXPORT ModelController : public QObject { Q_OBJECT @@ -66,7 +59,6 @@ class QMT_EXPORT ModelController : TypeRelation }; class Clone; - class UpdateObjectCommand; class UpdateRelationCommand; class AddElementsCommand; @@ -75,184 +67,105 @@ class QMT_EXPORT ModelController : class MoveRelationCommand; public: - explicit ModelController(QObject *parent = 0); - ~ModelController(); signals: - void beginResetModel(); - void endResetModel(); - void beginUpdateObject(int row, const MObject *owner); - void endUpdateObject(int row, const MObject *owner); - void beginInsertObject(int row, const MObject *owner); - void endInsertObject(int row, const MObject *owner); - void beginRemoveObject(int row, const MObject *owner); - void endRemoveObject(int row, const MObject *owner); - void beginMoveObject(int formerRow, const MObject *formerOwner); - void endMoveObject(int newRow, const MObject *newOwner); - void beginUpdateRelation(int row, const MObject *owner); - void endUpdateRelation(int row, const MObject *owner); - void beginInsertRelation(int row, const MObject *owner); - void endInsertRelation(int row, const MObject *owner); - void beginRemoveRelation(int row, const MObject *owner); - void endRemoveRelation(int row, const MObject *owner); - void beginMoveRelation(int formerRow, const MObject *formerOwner); - void endMoveRelation(int newRow, const MObject *newOwner); - void packageNameChanged(MPackage *package, const QString &oldPackageName); - void relationEndChanged(MRelation *relation, MObject *endObject); - void modified(); public: - MPackage *rootPackage() const { return m_rootPackage; } - void setRootPackage(MPackage *rootPackage); - UndoController *undoController() const { return m_undoController; } - void setUndoController(UndoController *undoController); -public: - Uid ownerKey(const MElement *element) const; - MElement *findElement(const Uid &key); - template T *findElement(const Uid &key) { return dynamic_cast(findElement(key)); } -public: - void startResetModel(); - void finishResetModel(bool modified); -public: - MObject *object(int row, const MObject *owner) const; - MObject *findObject(const Uid &key) const; - template T *findObject(const Uid &key) const { return dynamic_cast(findObject(key)); } - void addObject(MPackage *parentPackage, MObject *object); - void removeObject(MObject *object); - void startUpdateObject(MObject *object); - void finishUpdateObject(MObject *object, bool cancelled); - void moveObject(MPackage *newOwner, MObject *object); -public: - MRelation *findRelation(const Uid &key) const; - template T *findRelation(const Uid &key) const { return dynamic_cast(findRelation(key)); } - void addRelation(MObject *owner, MRelation *relation); - void removeRelation(MRelation *relation); - void startUpdateRelation(MRelation *relation); - void finishUpdateRelation(MRelation *relation, bool cancelled); - void moveRelation(MObject *newOwner, MRelation *relation); -public: - QList findRelationsOfObject(const MObject *object) const; -public: - MContainer cutElements(const MSelection &modelSelection); - MContainer copyElements(const MSelection &modelSelection); - void pasteElements(MObject *owner, const MContainer &modelContainer); - void deleteElements(const MSelection &modelSelection); private: - void deleteElements(const MSelection &modelSelection, const QString &commandLabel); - void removeRelatedRelations(MObject *object); public: - void unloadPackage(MPackage *package); - void loadPackage(MPackage *package); private: - void renewElementKey(MElement *element, QHash *renewedKeys); - void updateRelationKeys(MElement *element, const QHash &renewedKeys); - void updateRelationEndKeys(MRelation *relation, const QHash &renewedKeys); - void mapObject(MObject *object); - void unmapObject(MObject *object); - void mapRelation(MRelation *relation); - void unmapRelation(MRelation *relation); MReferences simplify(const MSelection &modelSelection); void verifyModelIntegrity() const; - void verifyModelIntegrity(const MObject *object, QHash *objectsMap, QHash *relationsMap, QMultiHash *objectRelationsMap) const; -private: - MPackage *m_rootPackage; - UndoController *m_undoController; - QHash m_objectsMap; - QHash m_relationsMap; - QMultiHash m_objectRelationsMap; - bool m_isResettingModel; - QString m_oldPackageName; - }; -} +} // namespace qmt #endif // QMT_MODELCONTROLLER_H diff --git a/src/libs/3rdparty/modeling/qmt/model_controller/mreferences.h b/src/libs/3rdparty/modeling/qmt/model_controller/mreferences.h index 8cf2d932c19..3af95500638 100644 --- a/src/libs/3rdparty/modeling/qmt/model_controller/mreferences.h +++ b/src/libs/3rdparty/modeling/qmt/model_controller/mreferences.h @@ -34,17 +34,14 @@ #include "qmt/controller/references.h" #include "qmt/infrastructure/qmt_global.h" - namespace qmt { class MElement; - -class QMT_EXPORT MReferences : - public References +class QMT_EXPORT MReferences : public References { }; -} +} // namespace qmt #endif // QMT_MREFERENCES_H diff --git a/src/libs/3rdparty/modeling/qmt/model_controller/mselection.h b/src/libs/3rdparty/modeling/qmt/model_controller/mselection.h index 40f4b17623a..24e5fd38449 100644 --- a/src/libs/3rdparty/modeling/qmt/model_controller/mselection.h +++ b/src/libs/3rdparty/modeling/qmt/model_controller/mselection.h @@ -33,14 +33,12 @@ #include "qmt/controller/selection.h" - namespace qmt { -class QMT_EXPORT MSelection : - public Selection +class QMT_EXPORT MSelection : public Selection { }; -} +} // namespace qmt #endif // QMT_MSELECTION_H diff --git a/src/libs/3rdparty/modeling/qmt/model_controller/mvoidvisitor.cpp b/src/libs/3rdparty/modeling/qmt/model_controller/mvoidvisitor.cpp index 6a52cbf404d..7f27c045a19 100644 --- a/src/libs/3rdparty/modeling/qmt/model_controller/mvoidvisitor.cpp +++ b/src/libs/3rdparty/modeling/qmt/model_controller/mvoidvisitor.cpp @@ -43,12 +43,10 @@ #include "qmt/model/mdependency.h" #include "qmt/model/minheritance.h" -#include - +#include namespace qmt { - MVoidVisitor::MVoidVisitor() { } @@ -113,9 +111,6 @@ void MVoidVisitor::visitMAssociation(MAssociation *association) visitMRelation(association); } - - - MVoidConstVisitor::MVoidConstVisitor() { } @@ -180,4 +175,4 @@ void MVoidConstVisitor::visitMAssociation(const MAssociation *association) visitMRelation(association); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model_controller/mvoidvisitor.h b/src/libs/3rdparty/modeling/qmt/model_controller/mvoidvisitor.h index 6882d1cce61..12d4d840d4d 100644 --- a/src/libs/3rdparty/modeling/qmt/model_controller/mvoidvisitor.h +++ b/src/libs/3rdparty/modeling/qmt/model_controller/mvoidvisitor.h @@ -35,73 +35,46 @@ #include "qmt/model/mconstvisitor.h" #include "qmt/infrastructure/qmt_global.h" - namespace qmt { -class QMT_EXPORT MVoidVisitor : - public MVisitor +class QMT_EXPORT MVoidVisitor : public MVisitor { public: MVoidVisitor(); void visitMElement(MElement *element); - void visitMObject(MObject *object); - void visitMPackage(MPackage *package); - void visitMClass(MClass *klass); - void visitMComponent(MComponent *component); - void visitMDiagram(MDiagram *diagram); - void visitMCanvasDiagram(MCanvasDiagram *diagram); - void visitMItem(MItem *item); - void visitMRelation(MRelation *relation); - void visitMDependency(MDependency *dependency); - void visitMInheritance(MInheritance *inheritance); - void visitMAssociation(MAssociation *association); - }; -class QMT_EXPORT MVoidConstVisitor : - public MConstVisitor +class QMT_EXPORT MVoidConstVisitor : public MConstVisitor { public: MVoidConstVisitor(); void visitMElement(const MElement *element); - void visitMObject(const MObject *object); - void visitMPackage(const MPackage *package); - void visitMClass(const MClass *klass); - void visitMComponent(const MComponent *component); - void visitMDiagram(const MDiagram *diagram); - void visitMCanvasDiagram(const MCanvasDiagram *diagram); - void visitMItem(const MItem *item); - void visitMRelation(const MRelation *relation); - void visitMDependency(const MDependency *dependency); - void visitMInheritance(const MInheritance *inheritance); - void visitMAssociation(const MAssociation *association); - }; -} +} // namespace qmt #endif // QMT_MVOIDVISITOR_H diff --git a/src/libs/3rdparty/modeling/qmt/model_ui/modeltreeviewinterface.h b/src/libs/3rdparty/modeling/qmt/model_ui/modeltreeviewinterface.h index a741a2e0ad4..50c99ee836c 100644 --- a/src/libs/3rdparty/modeling/qmt/model_ui/modeltreeviewinterface.h +++ b/src/libs/3rdparty/modeling/qmt/model_ui/modeltreeviewinterface.h @@ -37,19 +37,17 @@ QT_BEGIN_NAMESPACE class QModelIndex; QT_END_NAMESPACE - namespace qmt { -class ModelTreeViewInterface { +class ModelTreeViewInterface +{ public: - virtual ~ModelTreeViewInterface() { } virtual QModelIndex currentSourceModelIndex() const = 0; - virtual QList selectedSourceModelIndexes() const = 0; }; -} +} // namespace qmt #endif // QMT_MODELTREEVIEWINTERFACE_H diff --git a/src/libs/3rdparty/modeling/qmt/model_ui/sortedtreemodel.cpp b/src/libs/3rdparty/modeling/qmt/model_ui/sortedtreemodel.cpp index ea0819e33e8..07a744d0b91 100644 --- a/src/libs/3rdparty/modeling/qmt/model_ui/sortedtreemodel.cpp +++ b/src/libs/3rdparty/modeling/qmt/model_ui/sortedtreemodel.cpp @@ -32,7 +32,6 @@ #include "treemodel.h" - namespace qmt { SortedTreeModel::SortedTreeModel(QObject *parent) @@ -50,7 +49,6 @@ SortedTreeModel::SortedTreeModel(QObject *parent) SortedTreeModel::~SortedTreeModel() { - } void SortedTreeModel::setTreeModel(TreeModel *treeModel) @@ -106,4 +104,4 @@ void SortedTreeModel::startDelayedSortTimer() m_delayedSortTimer.start(1000); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model_ui/sortedtreemodel.h b/src/libs/3rdparty/modeling/qmt/model_ui/sortedtreemodel.h index 64f2d155d6e..af55bbf0b01 100644 --- a/src/libs/3rdparty/modeling/qmt/model_ui/sortedtreemodel.h +++ b/src/libs/3rdparty/modeling/qmt/model_ui/sortedtreemodel.h @@ -36,51 +36,36 @@ #include - namespace qmt { class TreeModel; - -class QMT_EXPORT SortedTreeModel : - public QSortFilterProxyModel +class QMT_EXPORT SortedTreeModel : public QSortFilterProxyModel { Q_OBJECT public: explicit SortedTreeModel(QObject *parent = 0); - ~SortedTreeModel(); -public: - TreeModel *treeModel() const { return m_treeModel; } - void setTreeModel(TreeModel *treeModel); protected: - bool lessThan(const QModelIndex &left, const QModelIndex &right) const; private slots: - void onTreeModelRowsInserted(const QModelIndex &parent, int start, int end); - void onDataChanged(const QModelIndex &, const QModelIndex &, const QVector &); - void onDelayedSortTimeout(); private: - void startDelayedSortTimer(); -private: - TreeModel *m_treeModel; - QTimer m_delayedSortTimer; }; -} +} // namespace qmt #endif // QMT_SORTEDTREEMODEL_H diff --git a/src/libs/3rdparty/modeling/qmt/model_ui/stereotypescontroller.cpp b/src/libs/3rdparty/modeling/qmt/model_ui/stereotypescontroller.cpp index 49dc402d633..58102bfaba4 100644 --- a/src/libs/3rdparty/modeling/qmt/model_ui/stereotypescontroller.cpp +++ b/src/libs/3rdparty/modeling/qmt/model_ui/stereotypescontroller.cpp @@ -32,7 +32,6 @@ #include - namespace qmt { StereotypesController::StereotypesController(QObject *parent) : @@ -40,15 +39,13 @@ StereotypesController::StereotypesController(QObject *parent) : { } - bool StereotypesController::isParsable(const QString &stereotypes) { QStringList list = stereotypes.split(QLatin1Char(',')); foreach (const QString &part, list) { QString stereotype = part.trimmed(); - if (stereotype.length() == 0) { + if (stereotype.length() == 0) return false; - } } return true; } @@ -58,9 +55,8 @@ QString StereotypesController::toString(const QList &stereotypes) QString s; bool first = true; foreach (const QString &stereotype, stereotypes) { - if (!first) { + if (!first) s += QStringLiteral(", "); - } s += stereotype; first = false; } @@ -73,11 +69,10 @@ QList StereotypesController::fromString(const QString &stereotypes) QStringList list = stereotypes.split(QLatin1Char(',')); foreach (const QString &part, list) { QString stereotype = part.trimmed(); - if (stereotype.length() > 0) { + if (stereotype.length() > 0) result.append(stereotype); - } } return result; } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model_ui/stereotypescontroller.h b/src/libs/3rdparty/modeling/qmt/model_ui/stereotypescontroller.h index 4868216680e..97a978547c0 100644 --- a/src/libs/3rdparty/modeling/qmt/model_ui/stereotypescontroller.h +++ b/src/libs/3rdparty/modeling/qmt/model_ui/stereotypescontroller.h @@ -37,11 +37,9 @@ #include #include - namespace qmt { -class QMT_EXPORT StereotypesController : - public QObject +class QMT_EXPORT StereotypesController : public QObject { Q_OBJECT @@ -49,21 +47,14 @@ public: explicit StereotypesController(QObject *parent = 0); signals: - void parseError(const QString &stereotypes); public: - bool isParsable(const QString &stereotypes); - QString toString(const QList &stereotypes); - QList fromString(const QString &stereotypes); - -public slots: - }; -} +} // namespace qmt #endif // QMT_STEREOTYPESCONTROLLER_H diff --git a/src/libs/3rdparty/modeling/qmt/model_ui/treemodel.cpp b/src/libs/3rdparty/modeling/qmt/model_ui/treemodel.cpp index 2749c17854e..269dcff311e 100644 --- a/src/libs/3rdparty/modeling/qmt/model_ui/treemodel.cpp +++ b/src/libs/3rdparty/modeling/qmt/model_ui/treemodel.cpp @@ -53,13 +53,10 @@ #include "qmt/style/stylecontroller.h" #include -#include - namespace qmt { -class TreeModel::ModelItem : - public QStandardItem +class TreeModel::ModelItem : public QStandardItem { public: ModelItem(const QIcon &icon, const QString &text) @@ -68,17 +65,13 @@ public: } QList stereotypes() const { return m_stereotypes; } - void setStereotypes(const QList &stereotypes) { m_stereotypes = stereotypes; } private: - QList m_stereotypes; }; - -class TreeModel::ItemFactory : - public MConstVisitor +class TreeModel::ItemFactory : public MConstVisitor { public: ItemFactory(TreeModel *treeModel) @@ -88,12 +81,8 @@ public: QMT_CHECK(m_treeModel); } -public: - ModelItem *product() const { return m_item; } -public: - void visitMElement(const MElement *element) { Q_UNUSED(element); @@ -202,16 +191,11 @@ public: } private: - TreeModel *m_treeModel; - ModelItem *m_item; }; - - -class TreeModel::ItemUpdater : - public MConstVisitor +class TreeModel::ItemUpdater : public MConstVisitor { public: ItemUpdater(TreeModel *treeModel, ModelItem *item) @@ -222,8 +206,6 @@ public: QMT_CHECK(m_item); } -public: - void visitMElement(const MElement *element) { Q_UNUSED(element); @@ -302,35 +284,27 @@ public: } private: - void updateObjectLabel(const MObject *object); - void updateRelationLabel(const MRelation *relation); -private: - TreeModel *m_treeModel; - ModelItem *m_item; }; void TreeModel::ItemUpdater::updateObjectLabel(const MObject *object) { QString label = m_treeModel->createObjectLabel(object); - if (m_item->text() != label) { + if (m_item->text() != label) m_item->setText(label); - } } void TreeModel::ItemUpdater::updateRelationLabel(const MRelation *relation) { QString label = m_treeModel->createRelationLabel(relation); - if (m_item->text() != label) { + if (m_item->text() != label) m_item->setText(label); - } } - TreeModel::TreeModel(QObject *parent) : QStandardItemModel(parent), m_modelController(0), @@ -352,9 +326,8 @@ TreeModel::~TreeModel() void TreeModel::setModelController(ModelController *modelController) { if (m_modelController != modelController) { - if (m_modelController) { + if (m_modelController) disconnect(m_modelController, 0, this, 0); - } m_modelController = modelController; if (m_modelController) { connect(m_modelController, SIGNAL(beginResetModel()), this, SLOT(onBeginResetModel())); @@ -460,9 +433,8 @@ QModelIndex TreeModel::indexOf(const MElement *element) const QIcon TreeModel::icon(const QModelIndex &index) const { QStandardItem *item = itemFromIndex(index); - if (item) { + if (item) return item->icon(); - } return QIcon(); } @@ -557,9 +529,8 @@ void TreeModel::onBeginRemoveObject(int row, const MObject *parent) m_busyState = RemoveElement; QMT_CHECK(parent); MObject *object = parent->children().at(row); - if (object) { + if (object) removeObjectFromItemMap(object); - } ModelItem *parentItem = m_objectToItemMap.value(parent); QMT_CHECK(parentItem); parentItem->removeRow(row); @@ -579,9 +550,8 @@ void TreeModel::onBeginMoveObject(int formerRow, const MObject *formerOwner) m_busyState = MoveElement; QMT_CHECK(formerOwner); MObject *object = formerOwner->children().at(formerRow); - if (object) { + if (object) removeObjectFromItemMap(object); - } ModelItem *parentItem = m_objectToItemMap.value(formerOwner); QMT_CHECK(parentItem); parentItem->removeRow(formerRow); @@ -716,9 +686,8 @@ void TreeModel::onRelationEndChanged(MRelation *relation, MObject *endObject) QMT_CHECK(item); QString label = createRelationLabel(relation); - if (item->text() != label) { + if (item->text() != label) item->setText(label); - } emit dataChanged(QStandardItemModel::index(row, 0, parentIndex), QStandardItemModel::index(row, 0, parentIndex)); } @@ -781,9 +750,8 @@ void TreeModel::removeObjectFromItemMap(const MObject *object) m_itemToObjectMap.remove(item); m_objectToItemMap.remove(object); foreach (const Handle &child, object->children()) { - if (child.hasTarget()) { + if (child.hasTarget()) removeObjectFromItemMap(child.target()); - } } } @@ -793,17 +761,15 @@ QString TreeModel::createObjectLabel(const MObject *object) if (object->name().isEmpty()) { if (const MItem *item = dynamic_cast(object)) { - if (!item->variety().isEmpty()) { + if (!item->variety().isEmpty()) return QString(QStringLiteral("[%1]")).arg(item->variety()); - } } return tr("[unnamed]"); } if (const MClass *klass = dynamic_cast(object)) { - if (!klass->umlNamespace().isEmpty()) { + if (!klass->umlNamespace().isEmpty()) return QString(QStringLiteral("%1 [%2]")).arg(klass->name()).arg(klass->umlNamespace()); - } } return object->name(); } @@ -815,13 +781,11 @@ QString TreeModel::createRelationLabel(const MRelation *relation) name += relation->name(); name += QStringLiteral(": "); } - if (MObject *endA = m_modelController->findObject(relation->endAUid())) { + if (MObject *endA = m_modelController->findObject(relation->endAUid())) name += createObjectLabel(endA); - } name += QStringLiteral(" - "); - if (MObject *endB = m_modelController->findObject(relation->endBUid())) { + if (MObject *endB = m_modelController->findObject(relation->endBUid())) name += createObjectLabel(endB); - } return name; } @@ -832,4 +796,4 @@ QIcon TreeModel::createIcon(StereotypeIcon::Element stereotypeIconElement, Style QSize(48, 48), QMarginsF(3.0, 2.0, 3.0, 4.0)); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model_ui/treemodel.h b/src/libs/3rdparty/modeling/qmt/model_ui/treemodel.h index 0027b689920..f2898073258 100644 --- a/src/libs/3rdparty/modeling/qmt/model_ui/treemodel.h +++ b/src/libs/3rdparty/modeling/qmt/model_ui/treemodel.h @@ -44,7 +44,6 @@ QT_BEGIN_NAMESPACE class QIcon; QT_END_NAMESPACE - namespace qmt { class MElement; @@ -55,9 +54,7 @@ class ModelController; class StereotypeController; class StyleController; - -class QMT_EXPORT TreeModel : - public QStandardItemModel +class QMT_EXPORT TreeModel : public QStandardItemModel { Q_OBJECT @@ -66,7 +63,6 @@ class QMT_EXPORT TreeModel : class ItemUpdater; public: - enum ItemType { Package, Diagram, @@ -78,96 +74,54 @@ public: RoleItemType = Qt::UserRole + 1 }; -public: explicit TreeModel(QObject *parent = 0); - ~TreeModel(); -public: - ModelController *modelController() const { return m_modelController; } - void setModelController(ModelController *modelController); - StereotypeController *stereotypeController() const { return m_stereotypeController; } - void setStereotypeController(StereotypeController *stereotypeController); - StyleController *styleController() const { return m_styleController; } - void setStyleController(StyleController *styleController); MElement *element(const QModelIndex &index) const; - QModelIndex indexOf(const MElement *element) const; - QIcon icon(const QModelIndex &index) const; -public: - Qt::DropActions supportedDropActions() const; - QStringList mimeTypes() const; private slots: - void onBeginResetModel(); - void onEndResetModel(); - void onBeginUpdateObject(int row, const MObject *parent); - void onEndUpdateObject(int row, const MObject *parent); - void onBeginInsertObject(int row, const MObject *parent); - void onEndInsertObject(int row, const MObject *parent); - void onBeginRemoveObject(int row, const MObject *parent); - void onEndRemoveObject(int row, const MObject *parent); - void onBeginMoveObject(int formerRow, const MObject *formerOwner); - void onEndMoveObject(int row, const MObject *owner); - void onBeginUpdateRelation(int row, const MObject *parent); - void onEndUpdateRelation(int row, const MObject *parent); - void onBeginInsertRelation(int row, const MObject *parent); - void onEndInsertRelation(int row, const MObject *parent); - void onBeginRemoveRelation(int row, const MObject *parent); - void onEndRemoveRelation(int row, const MObject *parent); - void onBeginMoveRelation(int formerRow, const MObject *formerOwner); - void onEndMoveRelation(int row, const MObject *owner); - void onRelationEndChanged(MRelation *relation, MObject *endObject); - void onModelDataChanged(const QModelIndex &topleft, const QModelIndex &bottomright); private: - void clear(); - ModelItem *createItem(const MElement *element); - void createChildren(const MObject *parentObject, ModelItem *parentItem); - void removeObjectFromItemMap(const MObject *object); - QString createObjectLabel(const MObject *object); - QString createRelationLabel(const MRelation *relation); - QIcon createIcon(StereotypeIcon::Element stereotypeIconElement, StyleEngine::ElementType styleElementType, const QStringList &stereotypes, const QString &defaultIconPath); -private: enum Busy { NotBusy, ResetModel, @@ -185,23 +139,15 @@ private: MoveRelation }; -private: - ModelController *m_modelController; - StereotypeController *m_stereotypeController; - StyleController *m_styleController; - ModelItem *m_rootItem; - QHash m_objectToItemMap; - QHash m_itemToObjectMap; - Busy m_busyState; }; -} +} // namespace qmt #endif // QMT_TREEMODEL_H diff --git a/src/libs/3rdparty/modeling/qmt/model_ui/treemodelmanager.cpp b/src/libs/3rdparty/modeling/qmt/model_ui/treemodelmanager.cpp index bd6e98e8216..90f9c81f9cb 100644 --- a/src/libs/3rdparty/modeling/qmt/model_ui/treemodelmanager.cpp +++ b/src/libs/3rdparty/modeling/qmt/model_ui/treemodelmanager.cpp @@ -67,9 +67,8 @@ bool TreeModelManager::isRootPackageSelected() const { foreach (const QModelIndex &index, m_modelTreeView->selectedSourceModelIndexes()) { MObject *object = dynamic_cast(m_treeModel->element(index)); - if (object && !object->owner()) { + if (object && !object->owner()) return true; - } } return false; } @@ -79,9 +78,8 @@ MObject *TreeModelManager::selectedObject() const MObject *object = 0; if (m_modelTreeView->currentSourceModelIndex().isValid()) { MElement *element = m_treeModel->element(m_modelTreeView->currentSourceModelIndex()); - if (element) { + if (element) object = dynamic_cast(element); - } } return object; } @@ -96,9 +94,8 @@ MPackage *TreeModelManager::selectedPackage() const return package; } else if (MObject *object = dynamic_cast(element)) { package = dynamic_cast(object->owner()); - if (package) { + if (package) return package; - } } } return m_treeModel->modelController()->rootPackage(); @@ -109,13 +106,12 @@ MSelection TreeModelManager::selectedObjects() const MSelection modelSelection; foreach (const QModelIndex &index, m_modelTreeView->selectedSourceModelIndexes()) { MElement *element = m_treeModel->element(index); - if (MObject *object = dynamic_cast(element)) { + if (MObject *object = dynamic_cast(element)) modelSelection.append(object->uid(), m_treeModel->modelController()->ownerKey(object)); - } else if (MRelation *relation = dynamic_cast(element)) { + else if (MRelation *relation = dynamic_cast(element)) modelSelection.append(relation->uid(), m_treeModel->modelController()->ownerKey(relation)); - } } return modelSelection; } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model_ui/treemodelmanager.h b/src/libs/3rdparty/modeling/qmt/model_ui/treemodelmanager.h index 546ac895dea..66314161e4a 100644 --- a/src/libs/3rdparty/modeling/qmt/model_ui/treemodelmanager.h +++ b/src/libs/3rdparty/modeling/qmt/model_ui/treemodelmanager.h @@ -42,48 +42,29 @@ class MObject; class MPackage; class MSelection; - -class QMT_EXPORT TreeModelManager : - public QObject +class QMT_EXPORT TreeModelManager : public QObject { Q_OBJECT public: - explicit TreeModelManager(QObject *parent = 0); - ~TreeModelManager(); -signals: - -public: - TreeModel *treeModel() const { return m_treeModel; } - void setTreeModel(TreeModel *treeModel); - ModelTreeViewInterface *modelTreeView() const { return m_modelTreeView; } - void setModelTreeView(ModelTreeViewInterface *modelTreeView); -public: - bool isRootPackageSelected() const; - MObject *selectedObject() const; - MPackage *selectedPackage() const; - MSelection selectedObjects() const; private: - TreeModel *m_treeModel; - ModelTreeViewInterface *m_modelTreeView; - }; -} +} // namespace qmt #endif // QMT_TREEMODELMANAGER_H diff --git a/src/libs/3rdparty/modeling/qmt/model_widgets_ui/classmembersedit.cpp b/src/libs/3rdparty/modeling/qmt/model_widgets_ui/classmembersedit.cpp index 2af41375ae5..946ae0e8405 100644 --- a/src/libs/3rdparty/modeling/qmt/model_widgets_ui/classmembersedit.cpp +++ b/src/libs/3rdparty/modeling/qmt/model_widgets_ui/classmembersedit.cpp @@ -43,56 +43,32 @@ class ClassMembersEdit::Cursor public: explicit Cursor(const QString &text); -public: - bool isValid() const { return m_isValid; } - bool atEnd() const { return m_pos == m_text.length(); } - int position() const { return m_pos; } - void setPosition(int pos); QString readWord(); - bool skip(const QString &s); - QString readUntil(const QString &delimiter); - void unreadWord(); - void skipUntilOrNewline(const QString &delimiter); -public: - QString readWordFromRight(); - bool skipFromRight(const QString &s); -public: - QString extractSubstr(int start, int stop); -public: - void skipWhitespaces(); - void skipWhitespacesFromRight(); private: - QString preparse(const QString &text); -private: - QString m_text; - bool m_isValid; - int m_pos; - int m_lastPos; - }; ClassMembersEdit::Cursor::Cursor(const QString &text) @@ -105,9 +81,8 @@ ClassMembersEdit::Cursor::Cursor(const QString &text) void ClassMembersEdit::Cursor::setPosition(int pos) { - if (m_isValid) { + if (m_isValid) m_pos = pos; - } } QString ClassMembersEdit::Cursor::readWord() @@ -171,9 +146,8 @@ QString ClassMembersEdit::Cursor::readUntil(const QString &delimiter) void ClassMembersEdit::Cursor::unreadWord() { - if (!m_isValid) { + if (!m_isValid) return; - } if (m_lastPos < 0) { m_isValid = false; return; @@ -184,12 +158,10 @@ void ClassMembersEdit::Cursor::unreadWord() void ClassMembersEdit::Cursor::skipUntilOrNewline(const QString &delimiter) { while (m_isValid) { - if (m_pos >= m_text.length()) { + if (m_pos >= m_text.length()) return; - } - if (m_text.at(m_pos) == QStringLiteral("\n")) { + if (m_text.at(m_pos) == QStringLiteral("\n")) return; - } if (m_pos + delimiter.length() <= m_text.length() && QString::compare(m_text.mid(m_pos, delimiter.length()), delimiter, Qt::CaseInsensitive) == 0) { m_pos += delimiter.length(); return; @@ -243,31 +215,26 @@ bool ClassMembersEdit::Cursor::skipFromRight(const QString &s) QString ClassMembersEdit::Cursor::extractSubstr(int start, int stop) { - if (m_isValid && start >= 0 && start < m_text.length() && stop >= start && stop < m_text.length()) { + if (m_isValid && start >= 0 && start < m_text.length() && stop >= start && stop < m_text.length()) return m_text.mid(start, stop - start + 1); - } m_isValid = false; return QStringLiteral(""); } void ClassMembersEdit::Cursor::skipWhitespaces() { - while (m_isValid && m_pos < m_text.length() && m_text.at(m_pos).isSpace() && m_text.at(m_pos) != QStringLiteral("\n")) { + while (m_isValid && m_pos < m_text.length() && m_text.at(m_pos).isSpace() && m_text.at(m_pos) != QStringLiteral("\n")) ++m_pos; - } - if (m_pos >= m_text.length()) { + if (m_pos >= m_text.length()) m_isValid = false; - } } void ClassMembersEdit::Cursor::skipWhitespacesFromRight() { - while (m_isValid && m_pos >= 0 && m_text.at(m_pos).isSpace() && m_text.at(m_pos) != QStringLiteral("\n")) { + while (m_isValid && m_pos >= 0 && m_text.at(m_pos).isSpace() && m_text.at(m_pos) != QStringLiteral("\n")) --m_pos; - } - if (m_pos < 0) { + if (m_pos < 0) m_isValid = false; - } } QString ClassMembersEdit::Cursor::preparse(const QString &text) @@ -300,7 +267,6 @@ QString ClassMembersEdit::Cursor::preparse(const QString &text) return parsedText; } - class ClassMembersEdit::ClassMembersEditPrivate { public: @@ -408,9 +374,8 @@ QString ClassMembersEdit::build(const QList &members) vis = QStringLiteral("public slots:"); break; } - if (!text.isEmpty()) { + if (!text.isEmpty()) text += QStringLiteral("\n"); - } text += vis; addNewline = true; addSpace = true; @@ -418,48 +383,38 @@ QString ClassMembersEdit::build(const QList &members) currentVisibility = member.visibility(); } if (member.group() != currentGroup) { - if (addSpace) { + if (addSpace) text += QStringLiteral(" "); - } else if (!text.isEmpty()) { + else if (!text.isEmpty()) text += QStringLiteral("\n"); - } text += QString(QStringLiteral("[%1]")).arg(member.group()); addNewline = true; currentGroup = member.group(); } - if (addNewline) { + if (addNewline) text += QStringLiteral("\n"); - } if (!member.stereotypes().isEmpty()) { StereotypesController ctrl; text += QString(QStringLiteral("<<%1>> ")).arg(ctrl.toString(member.stereotypes())); } - if (member.properties() & MClassMember::PropertyQsignal) { + if (member.properties() & MClassMember::PropertyQsignal) text += QStringLiteral("signal "); - } - if (member.properties() & MClassMember::PropertyQslot) { + if (member.properties() & MClassMember::PropertyQslot) text += QStringLiteral("slot "); - } - if (member.properties() & MClassMember::PropertyQinvokable) { + if (member.properties() & MClassMember::PropertyQinvokable) text += QStringLiteral("invokable "); - } - if (member.properties() & MClassMember::PropertyVirtual) { + if (member.properties() & MClassMember::PropertyVirtual) text += QStringLiteral("virtual "); - } text += member.declaration(); - if (member.properties() & MClassMember::PropertyConst) { + if (member.properties() & MClassMember::PropertyConst) text += QStringLiteral(" const"); - } - if (member.properties() & MClassMember::PropertyOverride) { + if (member.properties() & MClassMember::PropertyOverride) text += QStringLiteral(" override"); - } - if (member.properties() & MClassMember::PropertyFinal) { + if (member.properties() & MClassMember::PropertyFinal) text += QStringLiteral(" final"); - } - if (member.properties() & MClassMember::PropertyAbstract) { + if (member.properties() & MClassMember::PropertyAbstract) text += QStringLiteral(" = 0"); - } text += QStringLiteral(";\n"); } @@ -479,9 +434,8 @@ QList ClassMembersEdit::parse(const QString &text, bool *ok) Cursor cursor(text); while (cursor.isValid() && *ok) { cursor.skipWhitespaces(); - if (!cursor.isValid()) { + if (!cursor.isValid()) return members; - } member = MClassMember(); QString word = cursor.readWord().toLower(); for (;;) { @@ -547,9 +501,8 @@ QList ClassMembersEdit::parse(const QString &text, bool *ok) int nextLinePosition = cursor.position(); cursor.setPosition(nextLinePosition - 1); word = cursor.readWordFromRight().toLower(); - if (word == QStringLiteral(";")) { + if (word == QStringLiteral(";")) word = cursor.readWordFromRight().toLower(); - } for (;;) { if (word == QStringLiteral("0")) { member.setProperties(member.properties() | MClassMember::PropertyAbstract); @@ -572,32 +525,28 @@ QList ClassMembersEdit::parse(const QString &text, bool *ok) } int declarationStop = cursor.position(); QString declaration = cursor.extractSubstr(declarationStart, declarationStop).trimmed(); - if (!cursor.isValid()) { + if (!cursor.isValid()) break; - } if (!declaration.isEmpty()) { member.setDeclaration(declaration); - if (declaration.endsWith(QStringLiteral(")"))) { + if (declaration.endsWith(QStringLiteral(")"))) member.setMemberType(MClassMember::MemberMethod); - } else { + else member.setMemberType(MClassMember::MemberAttribute); - } members.append(member); } cursor.setPosition(nextLinePosition); - if (cursor.atEnd()) { + if (cursor.atEnd()) return members; - } cursor.skip(QStringLiteral("\n")); } else { word = cursor.readWord().toLower(); } } - if (!cursor.isValid()) { + if (!cursor.isValid()) *ok = false; - } return members; } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model_widgets_ui/classmembersedit.h b/src/libs/3rdparty/modeling/qmt/model_widgets_ui/classmembersedit.h index bfaf30d8ede..eddf93feec0 100644 --- a/src/libs/3rdparty/modeling/qmt/model_widgets_ui/classmembersedit.h +++ b/src/libs/3rdparty/modeling/qmt/model_widgets_ui/classmembersedit.h @@ -38,51 +38,37 @@ namespace qmt { class MClassMember; -class QMT_EXPORT ClassMembersEdit : - public QPlainTextEdit +class QMT_EXPORT ClassMembersEdit : public QPlainTextEdit { Q_OBJECT - class Cursor; class ClassMembersEditPrivate; public: - explicit ClassMembersEdit(QWidget *parent = 0); - ~ClassMembersEdit(); signals: - void statusChanged(bool valid); - void membersChanged(QList &); public: - QList members() const; - void setMembers(const QList &members); public slots: - void reparse(); private slots: - void onTextChanged(); private: - QString build(const QList &members); - QList parse(const QString &text, bool *ok); -private: - ClassMembersEditPrivate *d; }; -} +} // namespace qmt #endif // QMT_CLASSMEMBERSEDIT_H diff --git a/src/libs/3rdparty/modeling/qmt/model_widgets_ui/modeltreeview.cpp b/src/libs/3rdparty/modeling/qmt/model_widgets_ui/modeltreeview.cpp index 221ead40df2..d318dd01651 100644 --- a/src/libs/3rdparty/modeling/qmt/model_widgets_ui/modeltreeview.cpp +++ b/src/libs/3rdparty/modeling/qmt/model_widgets_ui/modeltreeview.cpp @@ -50,7 +50,6 @@ #include #include - namespace qmt { ModelTreeView::ModelTreeView(QWidget *parent) @@ -81,9 +80,8 @@ QList ModelTreeView::selectedSourceModelIndexes() const { QList indexes; if (selectionModel()) { - foreach (const QModelIndex &index, selectionModel()->selection().indexes()) { + foreach (const QModelIndex &index, selectionModel()->selection().indexes()) indexes.append(m_sortedTreeModel->mapToSource(index)); - } } return indexes; } @@ -106,15 +104,13 @@ QModelIndex ModelTreeView::mapToSourceModelIndex(const QModelIndex &index) const void ModelTreeView::selectFromSourceModelIndex(const QModelIndex &index) { - if (!index.isValid()) { + if (!index.isValid()) return; - } QModelIndex sortedIndex = m_sortedTreeModel->mapFromSource(index); scrollTo(sortedIndex); setCurrentIndex(sortedIndex); - if (selectionModel()) { + if (selectionModel()) selectionModel()->select(sortedIndex, QItemSelectionModel::ClearAndSelect); - } } void ModelTreeView::startDrag(Qt::DropActions supportedActions) @@ -130,11 +126,10 @@ void ModelTreeView::startDrag(Qt::DropActions supportedActions) QIcon dragIcon; QModelIndexList indexes; - if (selectionModel()) { + if (selectionModel()) indexes = selectedSourceModelIndexes(); - } else if (currentSourceModelIndex().isValid()) { + else if (currentSourceModelIndex().isValid()) indexes.append(currentSourceModelIndex()); - } if (!indexes.isEmpty()) { foreach (const QModelIndex &index, indexes) { MElement *element = treeModel->element(index); @@ -142,9 +137,8 @@ void ModelTreeView::startDrag(Qt::DropActions supportedActions) dataStream << element->uid().toString(); if (dragIcon.isNull()) { QIcon icon = treeModel->icon(index); - if (!icon.isNull()) { + if (!icon.isNull()) dragIcon = icon; - } } } } @@ -153,9 +147,8 @@ void ModelTreeView::startDrag(Qt::DropActions supportedActions) QMimeData *mimeData = new QMimeData; mimeData->setData(QStringLiteral("text/model-elements"), dragData); - if (dragIcon.isNull()) { + if (dragIcon.isNull()) dragIcon = QIcon(QStringLiteral(":/modelinglib/48x48/generic.png")); - } QPixmap pixmap(48, 48); pixmap = dragIcon.pixmap(48, 48); @@ -184,9 +177,8 @@ void ModelTreeView::dragMoveEvent(QDragMoveEvent *event) TreeModel *treeModel = m_sortedTreeModel->treeModel(); QMT_CHECK(treeModel); MElement *modelElement = treeModel->element(dropSourceModelIndex); - if (dynamic_cast(modelElement)) { + if (dynamic_cast(modelElement)) accept = true; - } if (m_autoDelayIndex == dropIndex) { if (m_autoDelayStartTime.elapsed() > 1000) { setExpanded(dropIndex, !isExpanded(dropIndex)); @@ -273,9 +265,8 @@ void ModelTreeView::contextMenuEvent(QContextMenuEvent *event) addSeparator = true; } if (melement->owner()) { - if (addSeparator) { + if (addSeparator) menu.addSeparator(); - } menu.addAction(new ContextMenuAction(tr("Delete"), QStringLiteral("delete"), QKeySequence(Qt::CTRL + Qt::Key_D), &menu)); } QAction *selectedAction = menu.exec(event->globalPos()); @@ -296,4 +287,4 @@ void ModelTreeView::contextMenuEvent(QContextMenuEvent *event) } } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model_widgets_ui/modeltreeview.h b/src/libs/3rdparty/modeling/qmt/model_widgets_ui/modeltreeview.h index 30aaf741ddd..39e30b77190 100644 --- a/src/libs/3rdparty/modeling/qmt/model_widgets_ui/modeltreeview.h +++ b/src/libs/3rdparty/modeling/qmt/model_widgets_ui/modeltreeview.h @@ -37,74 +37,48 @@ #include - namespace qmt { class SortedTreeModel; class IElementTasks; - -class QMT_EXPORT ModelTreeView : - public QTreeView, - public ModelTreeViewInterface +class QMT_EXPORT ModelTreeView : public QTreeView, public ModelTreeViewInterface { Q_OBJECT public: - explicit ModelTreeView(QWidget *parent = 0); - ~ModelTreeView(); signals: - void treeViewActivated(); public: - QModelIndex currentSourceModelIndex() const; - QList selectedSourceModelIndexes() const; -public: - void setTreeModel(SortedTreeModel *model); - void setElementTasks(IElementTasks *elementTasks); -public: - QModelIndex mapToSourceModelIndex(const QModelIndex &index) const; - void selectFromSourceModelIndex(const QModelIndex &index); protected: - void startDrag(Qt::DropActions supportedActions); - void dragEnterEvent(QDragEnterEvent *event); - void dragMoveEvent(QDragMoveEvent *event); - void dragLeaveEvent(QDragLeaveEvent *event); - void dropEvent(QDropEvent *event); - void focusInEvent(QFocusEvent *event); - void contextMenuEvent(QContextMenuEvent *event); private: - SortedTreeModel *m_sortedTreeModel; - IElementTasks *m_elementTasks; - QModelIndex m_autoDelayIndex; - QTime m_autoDelayStartTime; }; -} +} // namespace qmt #endif // QMT_MODELTREEVIEW_H diff --git a/src/libs/3rdparty/modeling/qmt/model_widgets_ui/palettebox.cpp b/src/libs/3rdparty/modeling/qmt/model_widgets_ui/palettebox.cpp index cf598772576..c030dcb7c52 100644 --- a/src/libs/3rdparty/modeling/qmt/model_widgets_ui/palettebox.cpp +++ b/src/libs/3rdparty/modeling/qmt/model_widgets_ui/palettebox.cpp @@ -88,11 +88,10 @@ void PaletteBox::clear() void PaletteBox::setCurrentIndex(int index) { if (m_currentIndex != index) { - if (index >= 0 && index < m_brushes.size()) { + if (index >= 0 && index < m_brushes.size()) m_currentIndex = index; - } else { + else m_currentIndex = -1; - } update(); } } @@ -133,9 +132,8 @@ void PaletteBox::mousePressEvent(QMouseEvent *event) int i = static_cast((event->x() / w)); QMT_CHECK(i >= 0 && i < m_brushes.size()); setCurrentIndex(i); - if (m_currentIndex >= 0 && m_currentIndex < m_brushes.size()) { + if (m_currentIndex >= 0 && m_currentIndex < m_brushes.size()) emit activated(m_currentIndex); - } } void PaletteBox::keyPressEvent(QKeyEvent *event) @@ -143,25 +141,22 @@ void PaletteBox::keyPressEvent(QKeyEvent *event) bool isKnownKey = false; switch (event->key()) { case Qt::Key_Left: - if (m_currentIndex <= 0) { + if (m_currentIndex <= 0) setCurrentIndex((m_brushes.size() - 1)); - } else { + else setCurrentIndex(m_currentIndex - 1); - } isKnownKey = true; break; case Qt::Key_Right: - if (m_currentIndex < 0 || m_currentIndex >= m_brushes.size() - 1) { + if (m_currentIndex < 0 || m_currentIndex >= m_brushes.size() - 1) setCurrentIndex(0); - } else { + else setCurrentIndex(m_currentIndex + 1); - } isKnownKey = true; break; } - if (isKnownKey && m_currentIndex >= 0 && m_currentIndex < m_brushes.size()) { + if (isKnownKey && m_currentIndex >= 0 && m_currentIndex < m_brushes.size()) emit activated(m_currentIndex); - } } } // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model_widgets_ui/palettebox.h b/src/libs/3rdparty/modeling/qmt/model_widgets_ui/palettebox.h index dadaeb3167d..211a9ad1063 100644 --- a/src/libs/3rdparty/modeling/qmt/model_widgets_ui/palettebox.h +++ b/src/libs/3rdparty/modeling/qmt/model_widgets_ui/palettebox.h @@ -37,7 +37,6 @@ #include #include - namespace qmt { class QMT_EXPORT PaletteBox : public QWidget @@ -46,45 +45,30 @@ class QMT_EXPORT PaletteBox : public QWidget public: explicit PaletteBox(QWidget *parent = 0); - ~PaletteBox(); signals: - void activated(int index); public: - QBrush brush(int index) const; - void setBrush(int index, const QBrush &brush); - QPen linePen(int index) const; - void setLinePen(int index, const QPen &pen); - int currentIndex() const { return m_currentIndex; } public slots: - void clear(); - void setCurrentIndex(int index); protected: - virtual void paintEvent(QPaintEvent *event); - virtual void mousePressEvent(QMouseEvent *event); - virtual void keyPressEvent(QKeyEvent *event); private: - QVector m_brushes; - QVector m_pens; - int m_currentIndex; }; diff --git a/src/libs/3rdparty/modeling/qmt/model_widgets_ui/propertiesview.cpp b/src/libs/3rdparty/modeling/qmt/model_widgets_ui/propertiesview.cpp index 11b86ad55cc..8c592dc578a 100644 --- a/src/libs/3rdparty/modeling/qmt/model_widgets_ui/propertiesview.cpp +++ b/src/libs/3rdparty/modeling/qmt/model_widgets_ui/propertiesview.cpp @@ -40,9 +40,6 @@ #include "qmt/diagram/delement.h" -#include - - namespace qmt { PropertiesView::PropertiesView(QObject *parent) @@ -63,9 +60,8 @@ PropertiesView::~PropertiesView() void PropertiesView::setModelController(ModelController *modelController) { if (m_modelController != modelController) { - if (m_modelController) { + if (m_modelController) disconnect(m_modelController, 0, this, 0); - } m_modelController = modelController; if (m_modelController) { connect(m_modelController, SIGNAL(beginResetModel()), this, SLOT(onBeginResetModel())); @@ -174,9 +170,8 @@ QWidget *PropertiesView::widget() const void PropertiesView::editSelectedElement() { - if (m_selectedModelElements.size() == 1 || (m_selectedDiagramElements.size() == 1 && m_selectedDiagram)) { + if (m_selectedModelElements.size() == 1 || (m_selectedDiagramElements.size() == 1 && m_selectedDiagram)) m_mview->edit(); - } } void PropertiesView::onBeginResetModel() @@ -197,9 +192,8 @@ void PropertiesView::onBeginUpdateObject(int row, const MObject *parent) void PropertiesView::onEndUpdateObject(int row, const MObject *parent) { MObject *mobject = m_modelController->object(row, parent); - if (mobject && m_selectedModelElements.contains(mobject)) { + if (mobject && m_selectedModelElements.contains(mobject)) m_mview->update(m_selectedModelElements); - } } void PropertiesView::onBeginInsertObject(int row, const MObject *parent) @@ -217,9 +211,8 @@ void PropertiesView::onEndInsertObject(int row, const MObject *parent) void PropertiesView::onBeginRemoveObject(int row, const MObject *parent) { MObject *mobject = m_modelController->object(row, parent); - if (mobject && m_selectedModelElements.contains(mobject)) { + if (mobject && m_selectedModelElements.contains(mobject)) clearSelection(); - } } void PropertiesView::onEndRemoveObject(int row, const MObject *parent) @@ -237,9 +230,8 @@ void PropertiesView::onBeginMoveObject(int formerRow, const MObject *formerOwner void PropertiesView::onEndMoveObject(int row, const MObject *owner) { MObject *mobject = m_modelController->object(row, owner); - if (mobject && m_selectedModelElements.contains(mobject)) { + if (mobject && m_selectedModelElements.contains(mobject)) m_mview->update(m_selectedModelElements); - } } void PropertiesView::onBeginUpdateRelation(int row, const MObject *parent) @@ -251,9 +243,8 @@ void PropertiesView::onBeginUpdateRelation(int row, const MObject *parent) void PropertiesView::onEndUpdateRelation(int row, const MObject *parent) { MRelation *mrelation = parent->relations().at(row); - if (mrelation && m_selectedModelElements.contains(mrelation)) { + if (mrelation && m_selectedModelElements.contains(mrelation)) m_mview->update(m_selectedModelElements); - } } void PropertiesView::onBeginInsertRelation(int row, const MObject *parent) @@ -271,9 +262,8 @@ void PropertiesView::onEndInsertRelation(int row, const MObject *parent) void PropertiesView::onBeginRemoveRelation(int row, const MObject *parent) { MRelation *mrelation = parent->relations().at(row); - if (mrelation && m_selectedModelElements.contains(mrelation)) { + if (mrelation && m_selectedModelElements.contains(mrelation)) clearSelection(); - } } void PropertiesView::onEndRemoveRelation(int row, const MObject *parent) @@ -291,17 +281,15 @@ void PropertiesView::onBeginMoveRelation(int formerRow, const MObject *formerOwn void PropertiesView::onEndMoveRelation(int row, const MObject *owner) { MRelation *mrelation = owner->relations().at(row); - if (mrelation && m_selectedModelElements.contains(mrelation)) { + if (mrelation && m_selectedModelElements.contains(mrelation)) m_mview->update(m_selectedModelElements); - } } void PropertiesView::onRelationEndChanged(MRelation *relation, MObject *endObject) { Q_UNUSED(endObject); - if (relation && m_selectedModelElements.contains(relation)) { + if (relation && m_selectedModelElements.contains(relation)) m_mview->update(m_selectedModelElements); - } } void PropertiesView::onBeginResetAllDiagrams() @@ -320,9 +308,8 @@ void PropertiesView::onBeginResetDiagram(const MDiagram *diagram) void PropertiesView::onEndResetDiagram(const MDiagram *diagram) { - if (diagram == m_selectedDiagram && m_selectedDiagramElements.size() > 0) { + if (diagram == m_selectedDiagram && m_selectedDiagramElements.size() > 0) m_mview->update(m_selectedDiagramElements, m_selectedDiagram); - } } void PropertiesView::onBeginUpdateElement(int row, const MDiagram *diagram) @@ -335,9 +322,8 @@ void PropertiesView::onEndUpdateElement(int row, const MDiagram *diagram) { if (diagram == m_selectedDiagram) { DElement *delement = diagram->diagramElements().at(row); - if (m_selectedDiagramElements.contains(delement)) { + if (m_selectedDiagramElements.contains(delement)) m_mview->update(m_selectedDiagramElements, m_selectedDiagram); - } } } @@ -357,9 +343,8 @@ void PropertiesView::onBeginRemoveElement(int row, const MDiagram *diagram) { if (diagram == m_selectedDiagram) { DElement *delement = diagram->diagramElements().at(row); - if (m_selectedDiagramElements.contains(delement)) { + if (m_selectedDiagramElements.contains(delement)) clearSelection(); - } } } @@ -413,4 +398,4 @@ void PropertiesView::endUpdate(DElement *diagramElement, bool cancelled) m_diagramController->finishUpdateElement(diagramElement, m_selectedDiagram, cancelled); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model_widgets_ui/propertiesview.h b/src/libs/3rdparty/modeling/qmt/model_widgets_ui/propertiesview.h index 66d21d4cd6e..788f6938254 100644 --- a/src/libs/3rdparty/modeling/qmt/model_widgets_ui/propertiesview.h +++ b/src/libs/3rdparty/modeling/qmt/model_widgets_ui/propertiesview.h @@ -41,7 +41,6 @@ QT_BEGIN_NAMESPACE class QWidget; QT_END_NAMESPACE - namespace qmt { class ModelController; @@ -54,153 +53,85 @@ class DElement; class StereotypeController; class StyleController; - -class QMT_EXPORT PropertiesView : - public QObject +class QMT_EXPORT PropertiesView : public QObject { Q_OBJECT - class MView; public: - explicit PropertiesView(QObject *parent = 0); - ~PropertiesView(); -signals: - -public: - ModelController *modelController() const { return m_modelController; } - void setModelController(ModelController *modelController); - DiagramController *diagramController() const { return m_diagramController; } - void setDiagramController(DiagramController *diagramController); - StereotypeController *stereotypeController() const { return m_stereotypeController; } - void setStereotypeController(StereotypeController *stereotypeController); - StyleController *styleController() const { return m_styleController; } - void setStyleController(StyleController *styleController); -public: - QList selectedModelElements() const { return m_selectedModelElements; } - void setSelectedModelElements(const QList &modelElements); - QList selectedDiagramElements() const { return m_selectedDiagramElements; } - MDiagram *selectedDiagram() const { return m_selectedDiagram; } - void setSelectedDiagramElements(const QList &diagramElements, MDiagram *diagram); - void clearSelection(); QWidget *widget() const; public slots: - void editSelectedElement(); private slots: - void onBeginResetModel(); - void onEndResetModel(); - void onBeginUpdateObject(int row, const MObject *parent); - void onEndUpdateObject(int row, const MObject *parent); - void onBeginInsertObject(int row, const MObject *parent); - void onEndInsertObject(int row, const MObject *parent); - void onBeginRemoveObject(int row, const MObject *parent); - void onEndRemoveObject(int row, const MObject *parent); - void onBeginMoveObject(int formerRow, const MObject *formerOwner); - void onEndMoveObject(int row, const MObject *owner); - void onBeginUpdateRelation(int row, const MObject *parent); - void onEndUpdateRelation(int row, const MObject *parent); - void onBeginInsertRelation(int row, const MObject *parent); - void onEndInsertRelation(int row, const MObject *parent); - void onBeginRemoveRelation(int row, const MObject *parent); - void onEndRemoveRelation(int row, const MObject *parent); - void onBeginMoveRelation(int formerRow, const MObject *formerOwner); - void onEndMoveRelation(int row, const MObject *owner); - void onRelationEndChanged(MRelation *relation, MObject *endObject); -private slots: - void onBeginResetAllDiagrams(); - void onEndResetAllDiagrams(); - void onBeginResetDiagram(const MDiagram *diagram); - void onEndResetDiagram(const MDiagram *diagram); - void onBeginUpdateElement(int row, const MDiagram *diagram); - void onEndUpdateElement(int row, const MDiagram *diagram); - void onBeginInsertElement(int row, const MDiagram *diagram); - void onEndInsertElement(int row, const MDiagram *diagram); - void onBeginRemoveElement(int row, const MDiagram *diagram); - void onEndRemoveElement(int row, const MDiagram *diagram); private: - void beginUpdate(MElement *modelElement); - void endUpdate(MElement *modelElement, bool cancelled); - void beginUpdate(DElement *diagramElement); - void endUpdate(DElement *diagramElement, bool cancelled); -private: - ModelController *m_modelController; - DiagramController *m_diagramController; - StereotypeController *m_stereotypeController; - StyleController *m_styleController; - QList m_selectedModelElements; - QList m_selectedDiagramElements; - MDiagram *m_selectedDiagram; - QScopedPointer m_mview; - QWidget *m_widget; }; -} +} // namespace qmt #endif // QMT_PROPERTIESVIEW_H diff --git a/src/libs/3rdparty/modeling/qmt/model_widgets_ui/propertiesviewmview.cpp b/src/libs/3rdparty/modeling/qmt/model_widgets_ui/propertiesviewmview.cpp index de9f89f78d3..3ca0e80da1c 100644 --- a/src/libs/3rdparty/modeling/qmt/model_widgets_ui/propertiesviewmview.cpp +++ b/src/libs/3rdparty/modeling/qmt/model_widgets_ui/propertiesviewmview.cpp @@ -34,7 +34,6 @@ #include "palettebox.h" #include "qmt/model_ui/stereotypescontroller.h" - #include "qmt/model_controller/modelcontroller.h" #include "qmt/model/melement.h" @@ -66,9 +65,7 @@ // TODO move into better place #include "qmt/diagram_scene/items/stereotypedisplayvisitor.h" - #include "qmt/stereotype/stereotypecontroller.h" - #include "qmt/style/stylecontroller.h" #include "qmt/style/style.h" #include "qmt/style/objectvisuals.h" @@ -82,7 +79,6 @@ #include #include - //#define SHOW_DEBUG_PROPERTIES namespace qmt { @@ -287,7 +283,6 @@ static DAnnotation::VisualRole translateIndexToAnnotationVisualRole(int index) return map[index]; } - PropertiesView::MView::MView(PropertiesView *propertiesView) : m_propertiesView(propertiesView), m_diagram(0), @@ -403,9 +398,8 @@ void PropertiesView::MView::visitMElement(const MElement *element) if (haveSameValue(m_modelElements, &MElement::stereotypes, &stereotypeList)) { QString stereotypes = m_stereotypesController->toString(stereotypeList); m_stereotypeComboBox->setEnabled(true); - if (stereotypes != m_stereotypeComboBox->currentText()) { + if (stereotypes != m_stereotypeComboBox->currentText()) m_stereotypeComboBox->setCurrentText(stereotypes); - } } else { m_stereotypeComboBox->clear(); m_stereotypeComboBox->setEnabled(false); @@ -432,15 +426,13 @@ void PropertiesView::MView::visitMObject(const MObject *object) connect(m_elementNameLineEdit, SIGNAL(textChanged(QString)), this, SLOT(onObjectNameChanged(QString))); } if (isSingleSelection) { - if (object->name() != m_elementNameLineEdit->text() && !m_elementNameLineEdit->hasFocus()) { + if (object->name() != m_elementNameLineEdit->text() && !m_elementNameLineEdit->hasFocus()) m_elementNameLineEdit->setText(object->name()); - } } else { m_elementNameLineEdit->clear(); } - if (m_elementNameLineEdit->isEnabled() != isSingleSelection) { + if (m_elementNameLineEdit->isEnabled() != isSingleSelection) m_elementNameLineEdit->setEnabled(isSingleSelection); - } #ifdef SHOW_DEBUG_PROPERTIES if (m_childrenLabel == 0) { @@ -458,11 +450,10 @@ void PropertiesView::MView::visitMObject(const MObject *object) void PropertiesView::MView::visitMPackage(const MPackage *package) { - if (m_modelElements.size() == 1 && !package->owner()) { + if (m_modelElements.size() == 1 && !package->owner()) setTitle(m_modelElements, tr("Model"), tr("Models")); - } else { + else setTitle(m_modelElements, tr("Package"), tr("Packages")); - } visitMObject(package); } @@ -481,9 +472,8 @@ void PropertiesView::MView::visitMClass(const MClass *klass) QString umlNamespace; if (haveSameValue(m_modelElements, &MClass::umlNamespace, ¨Namespace)) { m_namespaceLineEdit->setEnabled(true); - if (umlNamespace != m_namespaceLineEdit->text()) { + if (umlNamespace != m_namespaceLineEdit->text()) m_namespaceLineEdit->setText(umlNamespace); - } } else { m_namespaceLineEdit->clear(); m_namespaceLineEdit->setEnabled(false); @@ -497,16 +487,14 @@ void PropertiesView::MView::visitMClass(const MClass *klass) if (isSingleSelection) { if (!m_templateParametersLineEdit->hasFocus()) { QList templateParameters = splitTemplateParameters(m_templateParametersLineEdit->text()); - if (klass->templateParameters() != templateParameters) { + if (klass->templateParameters() != templateParameters) m_templateParametersLineEdit->setText(formatTemplateParameters(klass->templateParameters())); - } } } else { m_templateParametersLineEdit->clear(); } - if (m_templateParametersLineEdit->isEnabled() != isSingleSelection) { + if (m_templateParametersLineEdit->isEnabled() != isSingleSelection) m_templateParametersLineEdit->setEnabled(isSingleSelection); - } if (m_classMembersStatusLabel == 0) { QMT_CHECK(!m_classMembersParseButton); m_classMembersStatusLabel = new QLabel(m_topWidget); @@ -519,9 +507,8 @@ void PropertiesView::MView::visitMClass(const MClass *klass) m_topLayout->addRow(QStringLiteral(""), layout); connect(m_classMembersParseButton, SIGNAL(clicked()), this, SLOT(onParseClassMembers())); } - if (m_classMembersParseButton->isEnabled() != isSingleSelection) { + if (m_classMembersParseButton->isEnabled() != isSingleSelection) m_classMembersParseButton->setEnabled(isSingleSelection); - } if (m_classMembersEdit == 0) { m_classMembersEdit = new ClassMembersEdit(m_topWidget); m_classMembersEdit->setLineWrapMode(QPlainTextEdit::NoWrap); @@ -530,15 +517,13 @@ void PropertiesView::MView::visitMClass(const MClass *klass) connect(m_classMembersEdit, SIGNAL(statusChanged(bool)), this, SLOT(onClassMembersStatusChanged(bool))); } if (isSingleSelection) { - if (klass->members() != m_classMembersEdit->members() && !m_classMembersEdit->hasFocus()) { + if (klass->members() != m_classMembersEdit->members() && !m_classMembersEdit->hasFocus()) m_classMembersEdit->setMembers(klass->members()); - } } else { m_classMembersEdit->clear(); } - if (m_classMembersEdit->isEnabled() != isSingleSelection) { + if (m_classMembersEdit->isEnabled() != isSingleSelection) m_classMembersEdit->setEnabled(isSingleSelection); - } } void PropertiesView::MView::visitMComponent(const MComponent *component) @@ -579,15 +564,13 @@ void PropertiesView::MView::visitMItem(const MItem *item) connect(m_itemVarietyEdit, SIGNAL(textChanged(QString)), this, SLOT(onItemVarietyChanged(QString))); } if (isSingleSelection) { - if (item->variety() != m_itemVarietyEdit->text() && !m_itemVarietyEdit->hasFocus()) { + if (item->variety() != m_itemVarietyEdit->text() && !m_itemVarietyEdit->hasFocus()) m_itemVarietyEdit->setText(item->variety()); - } } else { m_itemVarietyEdit->clear(); } - if (m_itemVarietyEdit->isEnabled() != isSingleSelection) { + if (m_itemVarietyEdit->isEnabled() != isSingleSelection) m_itemVarietyEdit->setEnabled(isSingleSelection); - } } } @@ -602,15 +585,13 @@ void PropertiesView::MView::visitMRelation(const MRelation *relation) connect(m_elementNameLineEdit, SIGNAL(textChanged(QString)), this, SLOT(onRelationNameChanged(QString))); } if (isSingleSelection) { - if (relation->name() != m_elementNameLineEdit->text() && !m_elementNameLineEdit->hasFocus()) { + if (relation->name() != m_elementNameLineEdit->text() && !m_elementNameLineEdit->hasFocus()) m_elementNameLineEdit->setText(relation->name()); - } } else { m_elementNameLineEdit->clear(); } - if (m_elementNameLineEdit->isEnabled() != isSingleSelection) { + if (m_elementNameLineEdit->isEnabled() != isSingleSelection) m_elementNameLineEdit->setEnabled(isSingleSelection); - } MObject *endAObject = m_propertiesView->modelController()->findObject(relation->endAUid()); QMT_CHECK(endAObject); setEndAName(tr("End A: %1").arg(endAObject->name())); @@ -639,9 +620,8 @@ void PropertiesView::MView::visitMDependency(const MDependency *dependency) } else { m_directionSelector->setCurrentIndex(-1); } - if (m_directionSelector->isEnabled() != isSingleSelection) { + if (m_directionSelector->isEnabled() != isSingleSelection) m_directionSelector->setEnabled(isSingleSelection); - } } void PropertiesView::MView::visitMInheritance(const MInheritance *inheritance) @@ -671,45 +651,39 @@ void PropertiesView::MView::visitMAssociation(const MAssociation *association) connect(m_endAEndName, SIGNAL(textChanged(QString)), this, SLOT(onAssociationEndANameChanged(QString))); } if (isSingleSelection) { - if (association->endA().name() != m_endAEndName->text() && !m_endAEndName->hasFocus()) { + if (association->endA().name() != m_endAEndName->text() && !m_endAEndName->hasFocus()) m_endAEndName->setText(association->endA().name()); - } } else { m_endAEndName->clear(); } - if (m_endAEndName->isEnabled() != isSingleSelection) { + if (m_endAEndName->isEnabled() != isSingleSelection) m_endAEndName->setEnabled(isSingleSelection); - } if (m_endACardinality == 0) { m_endACardinality = new QLineEdit(m_topWidget); m_topLayout->addRow(tr("Cardinality:"), m_endACardinality); connect(m_endACardinality, SIGNAL(textChanged(QString)), this, SLOT(onAssociationEndACardinalityChanged(QString))); } if (isSingleSelection) { - if (association->endA().cardinality() != m_endACardinality->text() && !m_endACardinality->hasFocus()) { + if (association->endA().cardinality() != m_endACardinality->text() && !m_endACardinality->hasFocus()) m_endACardinality->setText(association->endA().cardinality()); - } } else { m_endACardinality->clear(); } - if (m_endACardinality->isEnabled() != isSingleSelection) { + if (m_endACardinality->isEnabled() != isSingleSelection) m_endACardinality->setEnabled(isSingleSelection); - } if (m_endANavigable == 0) { m_endANavigable = new QCheckBox(tr("Navigable"), m_topWidget); m_topLayout->addRow(QString(), m_endANavigable); connect(m_endANavigable, SIGNAL(clicked(bool)), this, SLOT(onAssociationEndANavigableChanged(bool))); } if (isSingleSelection) { - if (association->endA().isNavigable() != m_endANavigable->isChecked()) { + if (association->endA().isNavigable() != m_endANavigable->isChecked()) m_endANavigable->setChecked(association->endA().isNavigable()); - } } else { m_endANavigable->setChecked(false); } - if (m_endANavigable->isEnabled() != isSingleSelection) { + if (m_endANavigable->isEnabled() != isSingleSelection) m_endANavigable->setEnabled(isSingleSelection); - } if (m_endAKind == 0) { m_endAKind = new QComboBox(m_topWidget); m_endAKind->addItems(QStringList() << tr("Association") << tr("Aggregation") << tr("Composition")); @@ -724,9 +698,8 @@ void PropertiesView::MView::visitMAssociation(const MAssociation *association) } else { m_endAKind->setCurrentIndex(-1); } - if (m_endAKind->isEnabled() != isSingleSelection) { + if (m_endAKind->isEnabled() != isSingleSelection) m_endAKind->setEnabled(isSingleSelection); - } if (m_endBLabel == 0) { m_endBLabel = new QLabel(QStringLiteral("") + m_endBName + QStringLiteral("")); @@ -738,45 +711,39 @@ void PropertiesView::MView::visitMAssociation(const MAssociation *association) connect(m_endBEndName, SIGNAL(textChanged(QString)), this, SLOT(onAssociationEndBNameChanged(QString))); } if (isSingleSelection) { - if (association->endB().name() != m_endBEndName->text() && !m_endBEndName->hasFocus()) { + if (association->endB().name() != m_endBEndName->text() && !m_endBEndName->hasFocus()) m_endBEndName->setText(association->endB().name()); - } } else { m_endBEndName->clear(); } - if (m_endBEndName->isEnabled() != isSingleSelection) { + if (m_endBEndName->isEnabled() != isSingleSelection) m_endBEndName->setEnabled(isSingleSelection); - } if (m_endBCardinality == 0) { m_endBCardinality = new QLineEdit(m_topWidget); m_topLayout->addRow(tr("Cardinality:"), m_endBCardinality); connect(m_endBCardinality, SIGNAL(textChanged(QString)), this, SLOT(onAssociationEndBCardinalityChanged(QString))); } if (isSingleSelection) { - if (association->endB().cardinality() != m_endBCardinality->text() && !m_endBCardinality->hasFocus()) { + if (association->endB().cardinality() != m_endBCardinality->text() && !m_endBCardinality->hasFocus()) m_endBCardinality->setText(association->endB().cardinality()); - } } else { m_endBCardinality->clear(); } - if (m_endBCardinality->isEnabled() != isSingleSelection) { + if (m_endBCardinality->isEnabled() != isSingleSelection) m_endBCardinality->setEnabled(isSingleSelection); - } if (m_endBNavigable == 0) { m_endBNavigable = new QCheckBox(tr("Navigable"), m_topWidget); m_topLayout->addRow(QString(), m_endBNavigable); connect(m_endBNavigable, SIGNAL(clicked(bool)), this, SLOT(onAssociationEndBNavigableChanged(bool))); } if (isSingleSelection) { - if (association->endB().isNavigable() != m_endBNavigable->isChecked()) { + if (association->endB().isNavigable() != m_endBNavigable->isChecked()) m_endBNavigable->setChecked(association->endB().isNavigable()); - } } else { m_endBNavigable->setChecked(false); } - if (m_endBNavigable->isEnabled() != isSingleSelection) { + if (m_endBNavigable->isEnabled() != isSingleSelection) m_endBNavigable->setEnabled(isSingleSelection); - } if (m_endBKind == 0) { m_endBKind = new QComboBox(m_topWidget); m_endBKind->addItems(QStringList() << tr("Association") << tr("Aggregation") << tr("Composition")); @@ -791,9 +758,8 @@ void PropertiesView::MView::visitMAssociation(const MAssociation *association) } else { m_endBKind->setCurrentIndex(-1); } - if (m_endBKind->isEnabled() != isSingleSelection) { + if (m_endBKind->isEnabled() != isSingleSelection) m_endBKind->setEnabled(isSingleSelection); - } } void PropertiesView::MView::visitDElement(const DElement *element) @@ -840,11 +806,10 @@ void PropertiesView::MView::visitDObject(const DObject *object) } if (!m_autoSizedCheckbox->hasFocus()) { bool autoSized; - if (haveSameValue(m_diagramElements, &DObject::isAutoSized, &autoSized)) { + if (haveSameValue(m_diagramElements, &DObject::isAutoSized, &autoSized)) m_autoSizedCheckbox->setChecked(autoSized); - } else { + else m_autoSizedCheckbox->setChecked(false); - } } if (m_visualPrimaryRoleSelector == 0) { m_visualPrimaryRoleSelector = new PaletteBox(m_topWidget); @@ -869,11 +834,10 @@ void PropertiesView::MView::visitDObject(const DObject *object) } setPrimaryRolePalette(m_styleElementType, DObject::PrimaryRoleNormal, baseColor); DObject::VisualPrimaryRole visualPrimaryRole; - if (haveSameValue(m_diagramElements, &DObject::visualPrimaryRole, &visualPrimaryRole)) { + if (haveSameValue(m_diagramElements, &DObject::visualPrimaryRole, &visualPrimaryRole)) m_visualPrimaryRoleSelector->setCurrentIndex(translateVisualPrimaryRoleToIndex(visualPrimaryRole)); - } else { + else m_visualPrimaryRoleSelector->setCurrentIndex(-1); - } } if (m_visualSecondaryRoleSelector == 0) { m_visualSecondaryRoleSelector = new QComboBox(m_topWidget); @@ -885,11 +849,10 @@ void PropertiesView::MView::visitDObject(const DObject *object) } if (!m_visualSecondaryRoleSelector->hasFocus()) { DObject::VisualSecondaryRole visualSecondaryRole; - if (haveSameValue(m_diagramElements, &DObject::visualSecondaryRole, &visualSecondaryRole)) { + if (haveSameValue(m_diagramElements, &DObject::visualSecondaryRole, &visualSecondaryRole)) m_visualSecondaryRoleSelector->setCurrentIndex(translateVisualSecondaryRoleToIndex(visualSecondaryRole)); - } else { + else m_visualSecondaryRoleSelector->setCurrentIndex(-1); - } } if (m_visualEmphasizedCheckbox == 0) { m_visualEmphasizedCheckbox = new QCheckBox(tr("Emphasized"), m_topWidget); @@ -898,11 +861,10 @@ void PropertiesView::MView::visitDObject(const DObject *object) } if (!m_visualEmphasizedCheckbox->hasFocus()) { bool emphasized; - if (haveSameValue(m_diagramElements, &DObject::isVisualEmphasized, &emphasized)) { + if (haveSameValue(m_diagramElements, &DObject::isVisualEmphasized, &emphasized)) m_visualEmphasizedCheckbox->setChecked(emphasized); - } else { + else m_visualEmphasizedCheckbox->setChecked(false); - } } if (m_stereotypeDisplaySelector == 0) { m_stereotypeDisplaySelector = new QComboBox(m_topWidget); @@ -913,11 +875,10 @@ void PropertiesView::MView::visitDObject(const DObject *object) } if (!m_stereotypeDisplaySelector->hasFocus()) { DObject::StereotypeDisplay stereotypeDisplay; - if (haveSameValue(m_diagramElements, &DObject::stereotypeDisplay, &stereotypeDisplay)) { + if (haveSameValue(m_diagramElements, &DObject::stereotypeDisplay, &stereotypeDisplay)) m_stereotypeDisplaySelector->setCurrentIndex(translateStereotypeDisplayToIndex(stereotypeDisplay)); - } else { + else m_stereotypeDisplaySelector->setCurrentIndex(-1); - } } #ifdef SHOW_DEBUG_PROPERTIES if (m_depthLabel == 0) { @@ -950,11 +911,10 @@ void PropertiesView::MView::visitDClass(const DClass *klass) } if (!m_templateDisplaySelector->hasFocus()) { DClass::TemplateDisplay templateDisplay; - if (haveSameValue(m_diagramElements, &DClass::templateDisplay, &templateDisplay)) { + if (haveSameValue(m_diagramElements, &DClass::templateDisplay, &templateDisplay)) m_templateDisplaySelector->setCurrentIndex(translateTemplateDisplayToIndex(templateDisplay)); - } else { + else m_templateDisplaySelector->setCurrentIndex(-1); - } } if (m_showAllMembersCheckbox == 0) { m_showAllMembersCheckbox = new QCheckBox(tr("Show members"), m_topWidget); @@ -963,11 +923,10 @@ void PropertiesView::MView::visitDClass(const DClass *klass) } if (!m_showAllMembersCheckbox->hasFocus()) { bool showAllMembers; - if (haveSameValue(m_diagramElements, &DClass::showAllMembers, &showAllMembers)) { + if (haveSameValue(m_diagramElements, &DClass::showAllMembers, &showAllMembers)) m_showAllMembersCheckbox->setChecked(showAllMembers); - } else { + else m_showAllMembersCheckbox->setChecked(false); - } } } @@ -984,11 +943,10 @@ void PropertiesView::MView::visitDComponent(const DComponent *component) } if (!m_plainShapeCheckbox->hasFocus()) { bool plainShape; - if (haveSameValue(m_diagramElements, &DComponent::isPlainShape, &plainShape)) { + if (haveSameValue(m_diagramElements, &DComponent::isPlainShape, &plainShape)) m_plainShapeCheckbox->setChecked(plainShape); - } else { + else m_plainShapeCheckbox->setChecked(false); - } } } @@ -1014,15 +972,13 @@ void PropertiesView::MView::visitDItem(const DItem *item) connect(m_itemShapeEdit, SIGNAL(textChanged(QString)), this, SLOT(onItemShapeChanged(QString))); } if (isSingleSelection) { - if (item->shape() != m_itemShapeEdit->text() && !m_itemShapeEdit->hasFocus()) { + if (item->shape() != m_itemShapeEdit->text() && !m_itemShapeEdit->hasFocus()) m_itemShapeEdit->setText(item->shape()); - } } else { m_itemShapeEdit->clear(); } - if (m_itemShapeEdit->isEnabled() != isSingleSelection) { + if (m_itemShapeEdit->isEnabled() != isSingleSelection) m_itemShapeEdit->setEnabled(isSingleSelection); - } } } @@ -1060,11 +1016,10 @@ void PropertiesView::MView::visitDAnnotation(const DAnnotation *annotation) } if (!m_annotationAutoWidthCheckbox->hasFocus()) { bool autoSized; - if (haveSameValue(m_diagramElements, &DAnnotation::isAutoSized, &autoSized)) { + if (haveSameValue(m_diagramElements, &DAnnotation::isAutoSized, &autoSized)) m_annotationAutoWidthCheckbox->setChecked(autoSized); - } else { + else m_annotationAutoWidthCheckbox->setChecked(false); - } } if (m_annotationVisualRoleSelector == 0) { m_annotationVisualRoleSelector = new QComboBox(m_topWidget); @@ -1074,11 +1029,10 @@ void PropertiesView::MView::visitDAnnotation(const DAnnotation *annotation) } if (!m_annotationVisualRoleSelector->hasFocus()) { DAnnotation::VisualRole visualRole; - if (haveSameValue(m_diagramElements, &DAnnotation::visualRole, &visualRole)) { + if (haveSameValue(m_diagramElements, &DAnnotation::visualRole, &visualRole)) m_annotationVisualRoleSelector->setCurrentIndex(translateAnnotationVisualRoleToIndex(visualRole)); - } else { + else m_annotationVisualRoleSelector->setCurrentIndex(-1); - } } } @@ -1112,11 +1066,10 @@ void PropertiesView::MView::onTemplateParametersChanged(const QString &templateP void PropertiesView::MView::onClassMembersStatusChanged(bool valid) { - if (valid) { + if (valid) m_classMembersStatusLabel->clear(); - } else { + else m_classMembersStatusLabel->setText(tr("Invalid syntax!")); - } } void PropertiesView::MView::onParseClassMembers() @@ -1260,9 +1213,8 @@ void PropertiesView::MView::prepare() m_topLayout->addRow(m_classNameLabel); } QString title(QStringLiteral("") + m_propertiesTitle + QStringLiteral("")); - if (m_classNameLabel->text() != title) { + if (m_classNameLabel->text() != title) m_classNameLabel->setText(title); - } } template @@ -1270,11 +1222,10 @@ void PropertiesView::MView::setTitle(const QList &elements, const QString & { QList filtered = filter(elements); if (filtered.size() == elements.size()) { - if (elements.size() == 1) { + if (elements.size() == 1) m_propertiesTitle = singularTitle; - } else { + else m_propertiesTitle = pluralTitle; - } } else { m_propertiesTitle = tr("Multi-Selection"); } @@ -1294,9 +1245,8 @@ void PropertiesView::MView::setTitle(const MItem *item, const QList &elemen m_propertiesTitle = stereotypeIcon.title(); } } - if (m_propertiesTitle.isEmpty()) { + if (m_propertiesTitle.isEmpty()) m_propertiesTitle = singularTitle; - } } else { m_propertiesTitle = pluralTitle; } @@ -1308,16 +1258,14 @@ void PropertiesView::MView::setTitle(const MItem *item, const QList &elemen void PropertiesView::MView::setStereotypeIconElement(StereotypeIcon::Element stereotypeElement) { - if (m_stereotypeElement == StereotypeIcon::ElementAny) { + if (m_stereotypeElement == StereotypeIcon::ElementAny) m_stereotypeElement = stereotypeElement; - } } void PropertiesView::MView::setStyleElementType(StyleEngine::ElementType elementType) { - if (m_styleElementType == StyleEngine::TypeOther) { + if (m_styleElementType == StyleEngine::TypeOther) m_styleElementType = elementType; - } } void PropertiesView::MView::setPrimaryRolePalette(StyleEngine::ElementType elementType, DObject::VisualPrimaryRole visualPrimaryRole, const QColor &baseColor) @@ -1330,16 +1278,14 @@ void PropertiesView::MView::setPrimaryRolePalette(StyleEngine::ElementType eleme void PropertiesView::MView::setEndAName(const QString &endAName) { - if (m_endAName.isEmpty()) { + if (m_endAName.isEmpty()) m_endAName = endAName; - } } void PropertiesView::MView::setEndBName(const QString &endBName) { - if (m_endBName.isEmpty()) { + if (m_endBName.isEmpty()) m_endBName = endBName; - } } QList PropertiesView::MView::splitTemplateParameters(const QString &templateParameters) @@ -1347,9 +1293,8 @@ QList PropertiesView::MView::splitTemplateParameters(const QString &tem QList templateParametersList; foreach (const QString ¶meter, templateParameters.split(QLatin1Char(','))) { const QString &p = parameter.trimmed(); - if (!p.isEmpty()) { + if (!p.isEmpty()) templateParametersList.append(p); - } } return templateParametersList; } @@ -1359,9 +1304,8 @@ QString PropertiesView::MView::formatTemplateParameters(const QList &te QString templateParamters; bool first = true; foreach (const QString ¶meter, templateParametersList) { - if (!first) { + if (!first) templateParamters += QStringLiteral(", "); - } templateParamters += parameter; first = false; } @@ -1374,9 +1318,8 @@ QList PropertiesView::MView::filter(const QList &elements) QList filtered; foreach (V *element, elements) { T *t = dynamic_cast(element); - if (t) { + if (t) filtered.append(t); - } } return filtered; } @@ -1393,18 +1336,15 @@ bool PropertiesView::MView::haveSameValue(const QList &baseElements, V ( candidate = ((*element).*getter)(); haveCandidate = true; } else { - if (candidate != ((*element).*getter)()) { + if (candidate != ((*element).*getter)()) return false; - } } } QMT_CHECK(haveCandidate); - if (!haveCandidate) { + if (!haveCandidate) return false; - } - if (value) { + if (value) *value = candidate; - } return true; } @@ -1472,4 +1412,4 @@ void PropertiesView::MView::assignEmbeddedModelElement(const QList &base } } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/model_widgets_ui/propertiesviewmview.h b/src/libs/3rdparty/modeling/qmt/model_widgets_ui/propertiesviewmview.h index fe00e84ae3e..6815f49737b 100644 --- a/src/libs/3rdparty/modeling/qmt/model_widgets_ui/propertiesviewmview.h +++ b/src/libs/3rdparty/modeling/qmt/model_widgets_ui/propertiesviewmview.h @@ -54,7 +54,6 @@ class QCheckBox; class QFrame; QT_END_NAMESPACE - namespace qmt { class StereotypesController; @@ -62,168 +61,91 @@ class MClassMember; class ClassMembersEdit; class PaletteBox; - -class QMT_EXPORT PropertiesView::MView : - public QObject, - public MConstVisitor, - public DConstVisitor +class QMT_EXPORT PropertiesView::MView : public QObject, public MConstVisitor, public DConstVisitor { Q_OBJECT public: - MView(PropertiesView *propertiesView); - ~MView(); -public: - QWidget *topLevelWidget() const { return m_topWidget; } -public: - void visitMElement(const MElement *element); - void visitMObject(const MObject *object); - void visitMPackage(const MPackage *package); - void visitMClass(const MClass *klass); - void visitMComponent(const MComponent *component); - void visitMDiagram(const MDiagram *diagram); - void visitMCanvasDiagram(const MCanvasDiagram *diagram); - void visitMItem(const MItem *item); - void visitMRelation(const MRelation *relation); - void visitMDependency(const MDependency *dependency); - void visitMInheritance(const MInheritance *inheritance); - void visitMAssociation(const MAssociation *association); -public: - void visitDElement(const DElement *element); - void visitDObject(const DObject *object); - void visitDPackage(const DPackage *package); - void visitDClass(const DClass *klass); - void visitDComponent(const DComponent *component); - void visitDDiagram(const DDiagram *diagram); - void visitDItem(const DItem *item); - void visitDRelation(const DRelation *relation); - void visitDInheritance(const DInheritance *inheritance); - void visitDDependency(const DDependency *dependency); - void visitDAssociation(const DAssociation *association); - void visitDAnnotation(const DAnnotation *annotation); - void visitDBoundary(const DBoundary *boundary); -public: - void update(QList &modelElements); - void update(QList &diagramElements, MDiagram *diagram); - void edit(); private slots: - void onStereotypesChanged(const QString &stereotypes); - void onObjectNameChanged(const QString &name); - void onNamespaceChanged(const QString ¨Namespace); - void onTemplateParametersChanged(const QString &templateParameters); - void onClassMembersStatusChanged(bool valid); - void onParseClassMembers(); - void onClassMembersChanged(QList &classMembers); - void onItemVarietyChanged(const QString &variety); - void onRelationNameChanged(const QString &name); - void onDependencyDirectionChanged(int directionIndex); - void onAssociationEndANameChanged(const QString &name); - void onAssociationEndACardinalityChanged(const QString &cardinality); - void onAssociationEndANavigableChanged(bool navigable); - void onAssociationEndAKindChanged(int kindIndex); - void onAssociationEndBNameChanged(const QString &name); - void onAssociationEndBCardinalityChanged(const QString &cardinality); - void onAssociationEndBNavigableChanged(bool navigable); - void onAssociationEndBKindChanged(int kindIndex); - void onAutoSizedChanged(bool autoSized); - void onVisualPrimaryRoleChanged(int visualRoleIndex); - void onVisualSecondaryRoleChanged(int visualRoleIndex); - void onVisualEmphasizedChanged(bool visualEmphasized); - void onStereotypeDisplayChanged(int stereotypeDisplayIndex); - void onTemplateDisplayChanged(int templateDisplayIndex); - void onShowAllMembersChanged(bool showAllMembers); - void onPlainShapeChanged(bool plainShape); - void onItemShapeChanged(const QString &shape); - void onAutoWidthChanged(bool autoWidthed); - void onAnnotationVisualRoleChanged(int visualRoleIndex); private: - void prepare(); - template void setTitle(const QList &elements, const QString &singularTitle, const QString &pluralTitle); - template void setTitle(const MItem *item, const QList &elements, const QString &singularTitle, const QString &pluralTitle); - void setStereotypeIconElement(StereotypeIcon::Element stereotypeElement); - void setStyleElementType(StyleEngine::ElementType elementType); - void setPrimaryRolePalette(StyleEngine::ElementType elementType, DObject::VisualPrimaryRole visualPrimaryRole, const QColor &baseColor); - void setEndAName(const QString &endAName); - void setEndBName(const QString &endBName); QList splitTemplateParameters(const QString &templateParameters); - QString formatTemplateParameters(const QList &templateParametersList); enum SelectionType { @@ -233,32 +155,22 @@ private: template QList filter(const QList &elements); - template bool haveSameValue(const QList &baseElements, V (T::*getter)() const, V *value); - template void assignModelElement(const QList &baseElements, SelectionType selectionType, const V &value, V (T::*getter)() const, void (T::*setter)(const V &)); - template void assignModelElement(const QList &baseElements, SelectionType selectionType, const V &value, V (T::*getter)() const, void (T::*setter)(V)); - template void assignEmbeddedModelElement(const QList &baseElements, SelectionType selectionType, const V &value, E (T::*getter)() const, void (T::*setter)(const E &), V (E::*vGetter)() const, void (E::*vSetter)(const V &)); - template void assignEmbeddedModelElement(const QList &baseElements, SelectionType selectionType, const V &value, E (T::*getter)() const, void (T::*setter)(const E &), V (E::*vGetter)() const, void (E::*vSetter)(V)); -private: PropertiesView *m_propertiesView; - QList m_modelElements; - QList m_diagramElements; MDiagram *m_diagram; - StereotypesController *m_stereotypesController; - QWidget *m_topWidget; QFormLayout *m_topLayout; QString m_propertiesTitle; @@ -321,6 +233,6 @@ private: QComboBox *m_annotationVisualRoleSelector; }; -} +} // namespace qmt #endif // QMT_PROPERTIESVIEWMVIEW_H diff --git a/src/libs/3rdparty/modeling/qmt/project/project.cpp b/src/libs/3rdparty/modeling/qmt/project/project.cpp index ce51a993a5f..d949489b4b6 100644 --- a/src/libs/3rdparty/modeling/qmt/project/project.cpp +++ b/src/libs/3rdparty/modeling/qmt/project/project.cpp @@ -30,7 +30,6 @@ #include "project.h" - namespace qmt { Project::Project() @@ -61,4 +60,4 @@ void Project::setRootPackage(MPackage *rootPackage) m_rootPackage = rootPackage; } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/project/project.h b/src/libs/3rdparty/modeling/qmt/project/project.h index b38424c7f5b..17f5ccc6d09 100644 --- a/src/libs/3rdparty/modeling/qmt/project/project.h +++ b/src/libs/3rdparty/modeling/qmt/project/project.h @@ -35,42 +35,30 @@ #include - namespace qmt { class MPackage; - class QMT_EXPORT Project { public: Project(); - ~Project(); Uid uid() const { return m_uid; } - void setUid(const Uid &uid); - bool hasFileName() const; - QString fileName() const { return m_fileName; } - void setFileName(const QString &fileName); - MPackage *rootPackage() const { return m_rootPackage; } - void setRootPackage(MPackage *rootPackage); private: - Uid m_uid; - QString m_fileName; - MPackage *m_rootPackage; }; -} +} // namespace qmt #endif // QMT_PROJECT_H diff --git a/src/libs/3rdparty/modeling/qmt/project_controller/projectcontroller.cpp b/src/libs/3rdparty/modeling/qmt/project_controller/projectcontroller.cpp index 539ba1122fd..f53d3dc3ddb 100644 --- a/src/libs/3rdparty/modeling/qmt/project_controller/projectcontroller.cpp +++ b/src/libs/3rdparty/modeling/qmt/project_controller/projectcontroller.cpp @@ -35,7 +35,6 @@ #include "qmt/model/mpackage.h" - namespace qmt { NoFileNameException::NoFileNameException() @@ -43,13 +42,11 @@ NoFileNameException::NoFileNameException() { } - ProjectIsModifiedException::ProjectIsModifiedException() : Exception(ProjectController::tr("Project is modified.")) { } - ProjectController::ProjectController(QObject *parent) : QObject(parent), m_isModified(false) @@ -91,12 +88,10 @@ void ProjectController::setModified() void ProjectController::load() { - if (isModified()) { + if (isModified()) throw ProjectIsModifiedException(); - } - if (!m_project->hasFileName()) { + if (!m_project->hasFileName()) throw NoFileNameException(); - } ProjectSerializer serializer; serializer.load(m_project->fileName(), m_project.data()); m_isModified = false; @@ -105,9 +100,8 @@ void ProjectController::load() void ProjectController::save() { - if (!m_project->hasFileName()) { + if (!m_project->hasFileName()) throw NoFileNameException(); - } ProjectSerializer serializer; serializer.save(m_project->fileName(), m_project.data()); m_isModified = false; @@ -120,4 +114,4 @@ void ProjectController::saveAs(const QString &fileName) save(); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/project_controller/projectcontroller.h b/src/libs/3rdparty/modeling/qmt/project_controller/projectcontroller.h index 8a121dc38ad..3655a627c70 100644 --- a/src/libs/3rdparty/modeling/qmt/project_controller/projectcontroller.h +++ b/src/libs/3rdparty/modeling/qmt/project_controller/projectcontroller.h @@ -37,61 +37,45 @@ #include #include - namespace qmt { class Project; - -class QMT_EXPORT NoFileNameException : - public Exception +class QMT_EXPORT NoFileNameException : public Exception { public: NoFileNameException(); }; -class QMT_EXPORT ProjectIsModifiedException : - public Exception +class QMT_EXPORT ProjectIsModifiedException : public Exception { public: ProjectIsModifiedException(); }; - -class QMT_EXPORT ProjectController : - public QObject +class QMT_EXPORT ProjectController : public QObject { Q_OBJECT public: explicit ProjectController(QObject *parent = 0); - ~ProjectController(); signals: - void changed(); - void fileNameChanged(const QString &fileName); public: - Project *project() const { return m_project.data(); } - bool isModified() const { return m_isModified; } public slots: - void newProject(const QString &fileName); - void setFileName(const QString &fileName); - void setModified(); void load(); - void save(); - void saveAs(const QString &fileName); private: @@ -99,6 +83,6 @@ private: bool m_isModified; }; -} +} // namespace qmt #endif // PROJECTCONTROLLER_H diff --git a/src/libs/3rdparty/modeling/qmt/serializer/diagramserializer.cpp b/src/libs/3rdparty/modeling/qmt/serializer/diagramserializer.cpp index fccc2839ae4..92150bf39f7 100644 --- a/src/libs/3rdparty/modeling/qmt/serializer/diagramserializer.cpp +++ b/src/libs/3rdparty/modeling/qmt/serializer/diagramserializer.cpp @@ -56,10 +56,8 @@ using namespace qmt; - namespace qark { - // DElement QARK_REGISTER_TYPE_NAME(DElement, "DElement") @@ -75,7 +73,6 @@ inline void Access::serialize(Archive &archive, DElement &ele QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, DElement) - // DObject // functions for backward compatibility to old visual role @@ -137,7 +134,6 @@ inline void Access::serialize(Archive &archive, DObject &objec QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, DObject) - // DPackage QARK_REGISTER_TYPE_NAME(DPackage, "DPackage") @@ -155,7 +151,6 @@ inline void Access::serialize(Archive &archive, DPackage &pac QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, DPackage) - // DClass QARK_REGISTER_TYPE_NAME(DClass, "DClass") @@ -178,7 +173,6 @@ inline void Access::serialize(Archive &archive, DClass &klass) QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, DClass) - // DComponent QARK_REGISTER_TYPE_NAME(DComponent, "DComponent") @@ -197,7 +191,6 @@ inline void Access::serialize(Archive &archive, DComponent QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, DComponent) - // DDiagram QARK_REGISTER_TYPE_NAME(DDiagram, "DDiagram") @@ -215,7 +208,6 @@ inline void Access::serialize(Archive &archive, DDiagram &dia QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, DDiagram) - // DItem QARK_REGISTER_TYPE_NAME(DItem, "DItem") @@ -236,7 +228,6 @@ inline void Access::serialize(Archive &archive, DItem &item) QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, DItem) - // DRelation QARK_REGISTER_TYPE_NAME(DRelation, "DRelation") @@ -259,7 +250,6 @@ inline void Access::serialize(Archive &archive, DRelation &r QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, DRelation) - // DRelation::IntermediatePoint QARK_REGISTER_TYPE_NAME(DRelation::IntermediatePoint, "DRelation--IntermediatePoint") @@ -275,7 +265,6 @@ inline void Access::serialize(Archive &ar QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, DRelation::IntermediatePoint) - // DInheritance QARK_REGISTER_TYPE_NAME(DInheritance, "DInheritance") @@ -293,7 +282,6 @@ inline void Access::serialize(Archive &archive, DInherita QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, DInheritance) - // DDependency QARK_REGISTER_TYPE_NAME(DDependency, "DDependency") @@ -312,7 +300,6 @@ inline void Access::serialize(Archive &archive, DDependenc QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, DDependency) - // DAssociation QARK_REGISTER_TYPE_NAME(DAssociationEnd, "DAssociationEnd") @@ -347,7 +334,6 @@ inline void Access::serialize(Archive &archive, DAssociat QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, DAssociation) - // DAnnotation QARK_REGISTER_TYPE_NAME(DAnnotation, "DAnnotation") @@ -369,7 +355,6 @@ inline void Access::serialize(Archive &archive, DAnnotatio QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, DAnnotation) - // DBoundary QARK_REGISTER_TYPE_NAME(DBoundary, "DBoundary") @@ -389,4 +374,4 @@ inline void Access::serialize(Archive &archive, DBoundary &b QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, DBoundary) -} +} // namespace qark diff --git a/src/libs/3rdparty/modeling/qmt/serializer/diagramserializer.h b/src/libs/3rdparty/modeling/qmt/serializer/diagramserializer.h index 18cdc4ceeab..7954eac3a81 100644 --- a/src/libs/3rdparty/modeling/qmt/serializer/diagramserializer.h +++ b/src/libs/3rdparty/modeling/qmt/serializer/diagramserializer.h @@ -40,15 +40,11 @@ namespace qark { QARK_SERIALIZE_ENUM(qmt::DObject::VisualPrimaryRole) - QARK_SERIALIZE_ENUM(qmt::DObject::VisualSecondaryRole) - QARK_SERIALIZE_ENUM(qmt::DObject::StereotypeDisplay) - QARK_SERIALIZE_ENUM(qmt::DClass::TemplateDisplay) - QARK_SERIALIZE_ENUM(qmt::DAnnotation::VisualRole) -} +} // namespace qark #endif // QMT_DIAGRAMSERIALIZER_H diff --git a/src/libs/3rdparty/modeling/qmt/serializer/infrastructureserializer.h b/src/libs/3rdparty/modeling/qmt/serializer/infrastructureserializer.h index a1e675bf2ec..8ac21377a49 100644 --- a/src/libs/3rdparty/modeling/qmt/serializer/infrastructureserializer.h +++ b/src/libs/3rdparty/modeling/qmt/serializer/infrastructureserializer.h @@ -40,7 +40,6 @@ #include "qark/serialize.h" #include "qark/access.h" - namespace qark { // Uid @@ -59,7 +58,6 @@ inline void load(Archive &archive, qmt::Uid &uid) uid.fromString(s); } - // Handle template @@ -71,7 +69,6 @@ inline void serialize(Archive &archive, qmt::Handle &handle) || end; } - // Handles template @@ -82,6 +79,6 @@ inline void serialize(Archive &archive, qmt::Handles &handles) || end; } -} +} // namespace qark #endif // QMT_INFRASTRUCTURESERIALIZER_H diff --git a/src/libs/3rdparty/modeling/qmt/serializer/modelserializer.cpp b/src/libs/3rdparty/modeling/qmt/serializer/modelserializer.cpp index 4b88c48a881..43cbc349a3c 100644 --- a/src/libs/3rdparty/modeling/qmt/serializer/modelserializer.cpp +++ b/src/libs/3rdparty/modeling/qmt/serializer/modelserializer.cpp @@ -42,7 +42,6 @@ #include "qmt/model/mdiagram.h" #include "qmt/model/mcanvasdiagram.h" #include "qmt/model/mitem.h" - #include "qmt/model/mrelation.h" #include "qmt/model/mdependency.h" #include "qmt/model/massociation.h" @@ -59,7 +58,6 @@ // namespace qualifiers in typenames within xml file (which breaks xml syntax) using namespace qmt; - namespace qark { // MExpansion @@ -75,7 +73,6 @@ inline void Access::serialize(Archive &archive, MExpansion QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, MExpansion) - // MSourceExpansion QARK_REGISTER_TYPE_NAME(MSourceExpansion, "MSourceExpansion") @@ -94,7 +91,6 @@ inline void Access::serialize(Archive &archive, MSour QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, MSourceExpansion) - // MElement QARK_REGISTER_TYPE_NAME(MElement, "MElement") @@ -113,7 +109,6 @@ inline void Access::serialize(Archive &archive, MElement &ele QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, MElement) - // MObject QARK_REGISTER_TYPE_NAME(MObject, "MObject") @@ -133,7 +128,6 @@ inline void Access::serialize(Archive &archive, MObject &objec QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, MObject) - // MPackage QARK_REGISTER_TYPE_NAME(MPackage, "MPackage") @@ -151,7 +145,6 @@ inline void Access::serialize(Archive &archive, MPackage &pac QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, MPackage) - // MClass QARK_REGISTER_TYPE_NAME(MClass, "MClass") @@ -172,7 +165,6 @@ inline void Access::serialize(Archive &archive, MClass &klass) QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, MClass) - // MClassMember QARK_REGISTER_TYPE_NAME(MClassMember, "MClassMember") @@ -194,7 +186,6 @@ inline void Access::serialize(Archive &archive, MClassMem QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, MClassMember) - // MComponent QARK_REGISTER_TYPE_NAME(MComponent, "MComponent") @@ -212,7 +203,6 @@ inline void Access::serialize(Archive &archive, MComponent QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, MComponent) - // MDiagram QARK_REGISTER_TYPE_NAME(MDiagram, "MDiagram") @@ -232,7 +222,6 @@ inline void Access::serialize(Archive &archive, MDiagram &dia QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, MDiagram) - // MCanvasDiagram QARK_REGISTER_TYPE_NAME(MCanvasDiagram, "MCanvasDiagram") @@ -251,7 +240,6 @@ inline void Access::serialize(Archive &archive, MCanvas QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, MCanvasDiagram) - // MItem QARK_REGISTER_TYPE_NAME(MItem, "MItem") @@ -272,7 +260,6 @@ inline void Access::serialize(Archive &archive, MItem &item) QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, MItem) - // MRelation QARK_REGISTER_TYPE_NAME(MRelation, "MRelation") @@ -292,7 +279,6 @@ inline void Access::serialize(Archive &archive, MRelation &r QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, MRelation) - // MInheritance QARK_REGISTER_TYPE_NAME(MInheritance, "MInheritance") @@ -310,7 +296,6 @@ inline void Access::serialize(Archive &archive, MInherita QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, MInheritance) - // MDependency QARK_REGISTER_TYPE_NAME(MDependency, "MDependency") @@ -329,7 +314,6 @@ inline void Access::serialize(Archive &archive, MDependenc QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, MDependency) - // MAssociation QARK_REGISTER_TYPE_NAME(MAssociationEnd, "MAssociationEnd") @@ -346,7 +330,6 @@ inline void Access::serialize(Archive &archive, MAssoc || end; } - QARK_REGISTER_TYPE_NAME(MAssociation, "MAssociation") QARK_REGISTER_DERIVED_CLASS(QXmlInArchive, QXmlOutArchive, MAssociation, MElement) QARK_REGISTER_DERIVED_CLASS(QXmlInArchive, QXmlOutArchive, MAssociation, MRelation) @@ -365,4 +348,4 @@ inline void Access::serialize(Archive &archive, MAssociat QARK_ACCESS_SPECIALIZE(QXmlInArchive, QXmlOutArchive, MAssociation) -} +} // namespace qark diff --git a/src/libs/3rdparty/modeling/qmt/serializer/modelserializer.h b/src/libs/3rdparty/modeling/qmt/serializer/modelserializer.h index f08f256ed98..6d9b81ea390 100644 --- a/src/libs/3rdparty/modeling/qmt/serializer/modelserializer.h +++ b/src/libs/3rdparty/modeling/qmt/serializer/modelserializer.h @@ -43,11 +43,9 @@ namespace qark { QARK_SERIALIZE_ENUM(qmt::MClassMember::MemberType) QARK_SERIALIZE_ENUM(qmt::MClassMember::Property) QARK_SERIALIZE_ENUM(qmt::MClassMember::Visibility) - QARK_SERIALIZE_ENUM(qmt::MDependency::Direction) - QARK_SERIALIZE_ENUM(qmt::MAssociationEnd::Kind) -} +} // namespace qark #endif // QMT_MODELSERIALIZER_H diff --git a/src/libs/3rdparty/modeling/qmt/serializer/projectserializer.cpp b/src/libs/3rdparty/modeling/qmt/serializer/projectserializer.cpp index c30dbbf5136..7b9e69628be 100644 --- a/src/libs/3rdparty/modeling/qmt/serializer/projectserializer.cpp +++ b/src/libs/3rdparty/modeling/qmt/serializer/projectserializer.cpp @@ -33,7 +33,6 @@ #include "infrastructureserializer.h" #include "qmt/project/project.h" - #include "qmt/model/mpackage.h" #include "qark/qxmloutarchive.h" @@ -48,7 +47,6 @@ #include - namespace qark { using namespace qmt; @@ -64,8 +62,7 @@ void serialize(Archive &archive, Project &project) || qark::end; } -} - +} // namespace qark namespace qmt { @@ -82,17 +79,15 @@ void ProjectSerializer::save(const QString &fileName, const Project *project) QMT_CHECK(project); QFile file(fileName); - if (!file.open(QIODevice::WriteOnly)) { + if (!file.open(QIODevice::WriteOnly)) throw FileCreationException(fileName); - } QIODevice *xmlDevice = &file; #ifdef USE_COMPRESSED_FILES qmt::QCompressedDevice compressor(&file); - if (!compressor.open(QIODevice::WriteOnly)) { + if (!compressor.open(QIODevice::WriteOnly)) throw IOException("Unable to create compressed file"); - } xmlDevice = &compressor; #endif @@ -120,17 +115,15 @@ void ProjectSerializer::load(const QString &fileName, Project *project) QMT_CHECK(project); QFile file(fileName); - if (!file.open(QIODevice::ReadOnly)) { + if (!file.open(QIODevice::ReadOnly)) throw FileNotFoundException(fileName); - } QIODevice *xmlDevice = &file; #ifdef USE_COMPRESSED_FILES qmt::QCompressedDevice uncompressor(&file); - if (!uncompressor.open(QIODevice::ReadOnly)) { + if (!uncompressor.open(QIODevice::ReadOnly)) throw IOException("Unable to access compressed file"); - } xmlDevice = &uncompressor; #endif @@ -170,7 +163,6 @@ void ProjectSerializer::write(QXmlStreamWriter *writer, const Project *project) } catch (...) { throw IOException(QStringLiteral("serialization error")); } - } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/serializer/projectserializer.h b/src/libs/3rdparty/modeling/qmt/serializer/projectserializer.h index 6f014393e80..f4ff6e58c92 100644 --- a/src/libs/3rdparty/modeling/qmt/serializer/projectserializer.h +++ b/src/libs/3rdparty/modeling/qmt/serializer/projectserializer.h @@ -39,34 +39,25 @@ QT_BEGIN_NAMESPACE class QXmlStreamWriter; QT_END_NAMESPACE - namespace qmt { class Project; - class QMT_EXPORT ProjectSerializer { public: - ProjectSerializer(); - ~ProjectSerializer(); -public: - void save(const QString &fileName, const Project *project); - QByteArray save(const Project *project); - void load(const QString &fileName, Project *project); private: - void write(QXmlStreamWriter *writer, const Project *project); }; -} +} // namespace qmt #endif // QMT_PROJECTSERIALIZER_H diff --git a/src/libs/3rdparty/modeling/qmt/stereotype/iconshape.cpp b/src/libs/3rdparty/modeling/qmt/stereotype/iconshape.cpp index 7bdd2578339..bf99729ba4c 100644 --- a/src/libs/3rdparty/modeling/qmt/stereotype/iconshape.cpp +++ b/src/libs/3rdparty/modeling/qmt/stereotype/iconshape.cpp @@ -38,14 +38,12 @@ #include #include - template QList CloneAll(const QList &rhs) { QList result; - foreach (T *t, rhs) { + foreach (T *t, rhs) result.append(t != 0 ? t->Clone() : 0); - } return result; } @@ -85,9 +83,8 @@ public: PathShape *IconShape::IconShapePrivate::activePath() { PathShape *pathShape = 0; - if (m_shapes.count() > 0) { + if (m_shapes.count() > 0) pathShape = dynamic_cast(m_shapes.last()); - } if (pathShape == 0) { pathShape = new PathShape(); m_shapes.append(pathShape); @@ -95,7 +92,6 @@ PathShape *IconShape::IconShapePrivate::activePath() return pathShape; } - IconShape::IconShape() : d(new IconShapePrivate) { @@ -113,9 +109,8 @@ IconShape::~IconShape() IconShape &IconShape::operator=(const IconShape &rhs) { - if (this != &rhs) { + if (this != &rhs) *d = *rhs.d; - } return *this; } @@ -176,9 +171,8 @@ void IconShape::closePath() void IconShape::visitShapes(ShapeConstVisitor *visitor) const { - foreach (IShape *p, d->m_shapes) { + foreach (IShape *p, d->m_shapes) p->accept(visitor); - } } } // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/stereotype/iconshape.h b/src/libs/3rdparty/modeling/qmt/stereotype/iconshape.h index 9316183e22d..0e2a8feb136 100644 --- a/src/libs/3rdparty/modeling/qmt/stereotype/iconshape.h +++ b/src/libs/3rdparty/modeling/qmt/stereotype/iconshape.h @@ -41,61 +41,37 @@ class ShapePointF; class ShapeSizeF; class ShapeConstVisitor; - class QMT_EXPORT IconShape { class IconShapePrivate; public: - IconShape(); - IconShape(const IconShape &rhs); - ~IconShape(); -public: - IconShape &operator=(const IconShape &rhs); -public: - QSizeF size() const; - void setSize(const QSizeF &size); -public: - void addLine(const ShapePointF &pos1, const ShapePointF &pos2); - void addRect(const ShapePointF &pos, const ShapeSizeF &size); - void addRoundedRect(const ShapePointF &pos, const ShapeSizeF &size, const ShapeValueF &radius); - void addCircle(const ShapePointF ¢er, const ShapeValueF &radius); - void addEllipse(const ShapePointF ¢er, const ShapeSizeF &radius); - void addArc(const ShapePointF ¢er, const ShapeSizeF &radius, qreal startAngle, qreal spanAngle); void moveTo(const ShapePointF &pos); - void lineTo(const ShapePointF &pos); - void arcMoveTo(const ShapePointF ¢er, const ShapeSizeF &radius, qreal angle); - void arcTo(const ShapePointF ¢er, const ShapeSizeF &radius, qreal startAngle, qreal sweepLength); - void closePath(); -public: - void visitShapes(ShapeConstVisitor *visitor) const; private: - IconShapePrivate *d; - }; } // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/stereotype/shape.h b/src/libs/3rdparty/modeling/qmt/stereotype/shape.h index d862bc4ec68..3b3e60da870 100644 --- a/src/libs/3rdparty/modeling/qmt/stereotype/shape.h +++ b/src/libs/3rdparty/modeling/qmt/stereotype/shape.h @@ -36,24 +36,16 @@ namespace qmt { class ShapeVisitor; class ShapeConstVisitor; - class IShape { public: - virtual ~IShape() { } -public: - virtual IShape *Clone() const = 0; - -public: - virtual void accept(ShapeVisitor *visitor) = 0; - virtual void accept(ShapeConstVisitor *visitor) const = 0; }; -} +} // namespace qmt #endif // QMT_SHAPE_H diff --git a/src/libs/3rdparty/modeling/qmt/stereotype/shapepaintvisitor.cpp b/src/libs/3rdparty/modeling/qmt/stereotype/shapepaintvisitor.cpp index ea38dc11321..231651e6ee8 100644 --- a/src/libs/3rdparty/modeling/qmt/stereotype/shapepaintvisitor.cpp +++ b/src/libs/3rdparty/modeling/qmt/stereotype/shapepaintvisitor.cpp @@ -145,7 +145,6 @@ void ShapePaintVisitor::visitPath(const PathShape *shapePath) m_painter->restore(); } - ShapeSizeVisitor::ShapeSizeVisitor(const QPointF &scaledOrigin, const QSizeF &originalSize, const QSizeF &baseSize, const QSizeF &size) : m_scaledOrigin(scaledOrigin), m_originalSize(originalSize), @@ -230,5 +229,4 @@ void ShapeSizeVisitor::visitPath(const PathShape *shapePath) m_boundingRect |= path.boundingRect(); } - } // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/stereotype/shapepaintvisitor.h b/src/libs/3rdparty/modeling/qmt/stereotype/shapepaintvisitor.h index 5c6fc9b5daf..c8c588b86c6 100644 --- a/src/libs/3rdparty/modeling/qmt/stereotype/shapepaintvisitor.h +++ b/src/libs/3rdparty/modeling/qmt/stereotype/shapepaintvisitor.h @@ -38,84 +38,51 @@ #include #include - namespace qmt { -class QMT_EXPORT ShapePaintVisitor - : public ShapeConstVisitor { +class QMT_EXPORT ShapePaintVisitor : public ShapeConstVisitor +{ public: - ShapePaintVisitor(QPainter *painter, const QPointF &scaledOrigin, const QSizeF &originalSize, const QSizeF &baseSize, const QSizeF &size); -public: - void visitLine(const LineShape *shapeLine); - void visitRect(const RectShape *shapeRect); - void visitRoundedRect(const RoundedRectShape *shapeRoundedRect); - void visitCircle(const CircleShape *shapeCircle); - void visitEllipse(const EllipseShape *shapeEllipse); - void visitArc(const ArcShape *shapeArc); - void visitPath(const PathShape *shapePath); private: - QPainter *m_painter; - QPointF m_scaledOrigin; - QSizeF m_originalSize; - QSizeF m_baseSize; - QSizeF m_size; - }; - -class QMT_EXPORT ShapeSizeVisitor - : public ShapeConstVisitor { +class QMT_EXPORT ShapeSizeVisitor : public ShapeConstVisitor +{ public: - ShapeSizeVisitor(const QPointF &scaledOrigin, const QSizeF &originalSize, const QSizeF &baseSize, const QSizeF &size); -public: - QRectF boundingRect() const { return m_boundingRect; } -public: - void visitLine(const LineShape *shapeLine); - void visitRect(const RectShape *shapeRect); - void visitRoundedRect(const RoundedRectShape *shapeRoundedRect); - void visitCircle(const CircleShape *shapeCircle); - void visitEllipse(const EllipseShape *shapeEllipse); - void visitArc(const ArcShape *shapeArc); - void visitPath(const PathShape *shapePath); private: - QPointF m_scaledOrigin; - QSizeF m_originalSize; - QSizeF m_baseSize; - QSizeF m_size; - QRectF m_boundingRect; }; diff --git a/src/libs/3rdparty/modeling/qmt/stereotype/shapes.cpp b/src/libs/3rdparty/modeling/qmt/stereotype/shapes.cpp index 053277ee9a8..00ac021f3b6 100644 --- a/src/libs/3rdparty/modeling/qmt/stereotype/shapes.cpp +++ b/src/libs/3rdparty/modeling/qmt/stereotype/shapes.cpp @@ -184,4 +184,4 @@ void PathShape::close() m_elements.append(element); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/stereotype/shapes.h b/src/libs/3rdparty/modeling/qmt/stereotype/shapes.h index 9fe8b70336b..47e397a3d04 100644 --- a/src/libs/3rdparty/modeling/qmt/stereotype/shapes.h +++ b/src/libs/3rdparty/modeling/qmt/stereotype/shapes.h @@ -39,14 +39,11 @@ #include - namespace qmt { -class QMT_EXPORT LineShape - : public IShape +class QMT_EXPORT LineShape : public IShape { public: - LineShape() { } @@ -57,34 +54,21 @@ public: { } -public: - ShapePointF pos1() const { return m_pos1; } - ShapePointF pos2() const { return m_pos2; } -public: - IShape *Clone() const; - -public: - void accept(ShapeVisitor *visitor); - void accept(ShapeConstVisitor *visitor) const; private: - ShapePointF m_pos1; ShapePointF m_pos2; }; - -class QMT_EXPORT RectShape - : public IShape +class QMT_EXPORT RectShape : public IShape { public: - RectShape() { } @@ -95,34 +79,21 @@ public: { } -public: - ShapePointF pos() const { return m_pos; } - ShapeSizeF size() const { return m_size; } -public: - IShape *Clone() const; - -public: - void accept(ShapeVisitor *visitor); - void accept(ShapeConstVisitor *visitor) const; private: - ShapePointF m_pos; ShapeSizeF m_size; }; - -class QMT_EXPORT RoundedRectShape - : public IShape +class QMT_EXPORT RoundedRectShape : public IShape { public: - RoundedRectShape() { } @@ -134,37 +105,23 @@ public: { } -public: - ShapePointF pos() const { return m_pos; } - ShapeSizeF size() const { return m_size; } - ShapeValueF radius() const { return m_radius; } -public: - IShape *Clone() const; - -public: - void accept(ShapeVisitor *visitor); - void accept(ShapeConstVisitor *visitor) const; private: - ShapePointF m_pos; ShapeSizeF m_size; ShapeValueF m_radius; }; - -class QMT_EXPORT CircleShape - : public IShape +class QMT_EXPORT CircleShape : public IShape { public: - CircleShape() { } @@ -175,31 +132,19 @@ public: { } -public: - ShapePointF center() const { return m_center; } - ShapeValueF radius() const { return m_radius; } -public: - IShape *Clone() const; - -public: - void accept(ShapeVisitor *visitor); - void accept(ShapeConstVisitor *visitor) const; private: - ShapePointF m_center; ShapeValueF m_radius; }; - -class QMT_EXPORT EllipseShape - : public IShape +class QMT_EXPORT EllipseShape : public IShape { public: EllipseShape() @@ -212,31 +157,19 @@ public: { } -public: - ShapePointF center() const { return m_center; } - ShapeSizeF radius() const { return m_radius; } -public: - IShape *Clone() const; - -public: - void accept(ShapeVisitor *visitor); - void accept(ShapeConstVisitor *visitor) const; private: - ShapePointF m_center; ShapeSizeF m_radius; }; - -class QMT_EXPORT ArcShape - : public IShape +class QMT_EXPORT ArcShape : public IShape { public: ArcShape() @@ -251,40 +184,25 @@ public: { } -public: - ShapePointF center() const { return m_center; } - ShapeSizeF radius() const { return m_radius; } - qreal startAngle() const { return m_startAngle; } - qreal spanAngle() const { return m_spanAngle; } -public: - IShape *Clone() const; - -public: - void accept(ShapeVisitor *visitor); - void accept(ShapeConstVisitor *visitor) const; private: - ShapePointF m_center; ShapeSizeF m_radius; qreal m_startAngle; qreal m_spanAngle; }; - -class QMT_EXPORT PathShape - : public IShape +class QMT_EXPORT PathShape : public IShape { public: - enum ElementType { TypeNone, TypeMoveto, @@ -311,43 +229,25 @@ public: qreal m_angle2; }; -public: PathShape(); - ~PathShape(); -public: - QList elements() const { return m_elements; } -public: - IShape *Clone() const; - -public: - void accept(ShapeVisitor *visitor); - void accept(ShapeConstVisitor *visitor) const; -public: - void moveTo(const ShapePointF &pos); - void lineTo(const ShapePointF &pos); - void arcMoveTo(const ShapePointF ¢er, const ShapeSizeF &radius, qreal angle); - void arcTo(const ShapePointF ¢er, const ShapeSizeF &radius, qreal startAngle, qreal sweepLength); - void close(); private: - QList m_elements; - }; -} +} // namespace qmt #endif // QMT_SHAPES_H diff --git a/src/libs/3rdparty/modeling/qmt/stereotype/shapevalue.cpp b/src/libs/3rdparty/modeling/qmt/stereotype/shapevalue.cpp index f461e8074f0..c20bff029ea 100644 --- a/src/libs/3rdparty/modeling/qmt/stereotype/shapevalue.cpp +++ b/src/libs/3rdparty/modeling/qmt/stereotype/shapevalue.cpp @@ -76,8 +76,6 @@ qreal ShapeValueF::mapScaledTo(qreal scaledOrigin, qreal originalSize, qreal bas return v; } - - QPointF ShapePointF::mapTo(const QPointF &origin, const QSizeF &size) const { qreal x = m_x.mapTo(origin.x(), size.width()); @@ -120,5 +118,4 @@ QSizeF ShapeSizeF::mapScaledTo(const QPointF &scaledOrigin, const QSizeF &origin return QSizeF(w, h); } - } // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/stereotype/shapevalue.h b/src/libs/3rdparty/modeling/qmt/stereotype/shapevalue.h index a460eef1026..ad65e0d6678 100644 --- a/src/libs/3rdparty/modeling/qmt/stereotype/shapevalue.h +++ b/src/libs/3rdparty/modeling/qmt/stereotype/shapevalue.h @@ -36,13 +36,11 @@ #include #include - namespace qmt { -class QMT_EXPORT ShapeValueF { - +class QMT_EXPORT ShapeValueF +{ public: - enum Origin { OriginSmart, OriginTop, @@ -61,8 +59,6 @@ public: UnitPercentage }; -public: - ShapeValueF() : m_value(0.0), m_unit(UnitRelative), @@ -77,41 +73,26 @@ public: { } -public: - qreal value() const { return m_value; } - void setValue(qreal value) { m_value = value; } - Unit unit() const { return m_unit; } - void setUnit(Unit unit) { m_unit = unit; } - Origin origin() const { return m_origin; } - void setOrigin(Origin origin) { m_origin = origin; } -public: - qreal mapTo(qreal origin, qreal size) const; - qreal mapScaledTo(qreal scaledOrigin, qreal originalSize, qreal actualSize) const; - qreal mapScaledTo(qreal scaledOrigin, qreal originalSize, qreal baseSize, qreal actualSize) const; private: - qreal m_value; - Unit m_unit; - Origin m_origin; }; - -class QMT_EXPORT ShapePointF { +class QMT_EXPORT ShapePointF +{ public: - ShapePointF() { } @@ -122,35 +103,23 @@ public: { } -public: - ShapeValueF x() const { return m_x; } - void setX(const ShapeValueF &x) { m_x = x; } - ShapeValueF y() const { return m_y; } - void setY(const ShapeValueF &y) { m_y = y; } -public: - QPointF mapTo(const QPointF &origin, const QSizeF &size) const; - QPointF mapScaledTo(const QPointF &scaledOrigin, const QSizeF &originalSize, const QSizeF &actualSize) const; - QPointF mapScaledTo(const QPointF &scaledOrigin, const QSizeF &originalSize, const QSizeF &baseSize, const QSizeF &actualSize) const; private: - ShapeValueF m_x; - ShapeValueF m_y; }; - -class QMT_EXPORT ShapeSizeF { +class QMT_EXPORT ShapeSizeF +{ public: - ShapeSizeF() { } @@ -161,28 +130,17 @@ public: { } -public: - ShapeValueF width() const { return m_width; } - void setWidth(const ShapeValueF &width) { m_width = width; } - ShapeValueF height() const { return m_height; } - void setHeight(const ShapeValueF &height) { m_height = height; } -public: - QSizeF mapTo(const QPointF &origin, const QSizeF &size) const; - QSizeF mapScaledTo(const QPointF &scaledOrigin, const QSizeF &originalSize, const QSizeF &actualSize) const; - QSizeF mapScaledTo(const QPointF &scaledOrigin, const QSizeF &originalSize, const QSizeF &baseSize, const QSizeF &actualSize) const; private: - ShapeValueF m_width; - ShapeValueF m_height; }; diff --git a/src/libs/3rdparty/modeling/qmt/stereotype/shapevisitor.h b/src/libs/3rdparty/modeling/qmt/stereotype/shapevisitor.h index d75c53aee40..b4df075d5eb 100644 --- a/src/libs/3rdparty/modeling/qmt/stereotype/shapevisitor.h +++ b/src/libs/3rdparty/modeling/qmt/stereotype/shapevisitor.h @@ -44,50 +44,31 @@ class PathShape; class ShapeVisitor { public: - ~ShapeVisitor() { } -public: - virtual void visitLine(LineShape *shapeLine) = 0; - virtual void visitRect(RectShape *shapeRect) = 0; - virtual void visitRoundedRect(RoundedRectShape *shapeRoundedRect) = 0; - virtual void visitCircle(CircleShape *shapeCircle) = 0; - virtual void visitEllipse(EllipseShape *shapeEllipse) = 0; - virtual void visitArc(ArcShape *shapeArc) = 0; - virtual void visitPath(PathShape *shapePath) = 0; }; - class ShapeConstVisitor { public: - ~ShapeConstVisitor() { } -public: - virtual void visitLine(const LineShape *shapeLine) = 0; - virtual void visitRect(const RectShape *shapeRect) = 0; - virtual void visitRoundedRect(const RoundedRectShape *shapeRoundedRect) = 0; - virtual void visitCircle(const CircleShape *shapeCircle) = 0; - virtual void visitEllipse(const EllipseShape *shapeEllipse) = 0; - virtual void visitArc(const ArcShape *shapeArc) = 0; - virtual void visitPath(const PathShape *shapePath) = 0; }; -} +} // namespace qmt #endif // QMT_SHAPEVISITOR_H diff --git a/src/libs/3rdparty/modeling/qmt/stereotype/stereotypecontroller.cpp b/src/libs/3rdparty/modeling/qmt/stereotype/stereotypecontroller.cpp index b393f69a787..6d0a02f44b3 100644 --- a/src/libs/3rdparty/modeling/qmt/stereotype/stereotypecontroller.cpp +++ b/src/libs/3rdparty/modeling/qmt/stereotype/stereotypecontroller.cpp @@ -83,9 +83,8 @@ QList StereotypeController::knownStereotypes(StereotypeIcon::Element st { QSet stereotypes; foreach (const StereotypeIcon &icon, d->m_iconIdToStereotypeIconsMap.values()) { - if (icon.elements().isEmpty() || icon.elements().contains(stereotypeElement)) { + if (icon.elements().isEmpty() || icon.elements().contains(stereotypeElement)) stereotypes += icon.stereotypes(); - } } QList list = stereotypes.toList(); std::sort(list.begin(), list.end()); @@ -95,24 +94,21 @@ QList StereotypeController::knownStereotypes(StereotypeIcon::Element st QString StereotypeController::findStereotypeIconId(StereotypeIcon::Element element, const QList &stereotypes) const { foreach (const QString &stereotype, stereotypes) { - if (d->m_stereotypeToIconIdMap.contains(qMakePair(element, stereotype))) { + if (d->m_stereotypeToIconIdMap.contains(qMakePair(element, stereotype))) return d->m_stereotypeToIconIdMap.value(qMakePair(element, stereotype)); - } else if (d->m_stereotypeToIconIdMap.contains(qMakePair(StereotypeIcon::ElementAny, stereotype))) { + else if (d->m_stereotypeToIconIdMap.contains(qMakePair(StereotypeIcon::ElementAny, stereotype))) return d->m_stereotypeToIconIdMap.value(qMakePair(StereotypeIcon::ElementAny, stereotype)); - } } return QString(); } QList StereotypeController::filterStereotypesByIconId(const QString &stereotypeIconId, const QList &stereotypes) const { - if (!d->m_iconIdToStereotypeIconsMap.contains(stereotypeIconId)) { + if (!d->m_iconIdToStereotypeIconsMap.contains(stereotypeIconId)) return stereotypes; - } QList filteredStereotypes = stereotypes; - foreach (const QString &stereotype, d->m_iconIdToStereotypeIconsMap.value(stereotypeIconId).stereotypes()) { + foreach (const QString &stereotype, d->m_iconIdToStereotypeIconsMap.value(stereotypeIconId).stereotypes()) filteredStereotypes.removeAll(stereotype); - } return filteredStereotypes; } @@ -137,11 +133,10 @@ QIcon StereotypeController::createIcon(StereotypeIcon::Element element, const QL qreal height = size.height() - margins.top() - margins.bottom(); qreal ratioWidth = height * stereotypeIcon.width() / stereotypeIcon.height(); qreal ratioHeight = width * stereotypeIcon.height() / stereotypeIcon.width(); - if (ratioWidth > width) { + if (ratioWidth > width) height = ratioHeight; - } else if (ratioHeight > height) { + else if (ratioHeight > height) width = ratioWidth; - } QSizeF shapeSize(width, height); ShapeSizeVisitor sizeVisitor(QPointF(0.0, 0.0), @@ -169,9 +164,8 @@ QIcon StereotypeController::createIcon(StereotypeIcon::Element element, const QL iconPainter.drawPixmap((iconPixmap.width() - pixmap.width()) / 2, (iconPixmap.width() - pixmap.height()) / 2, pixmap); icon = QIcon(iconPixmap); } - if (icon.isNull() && !defaultIconPath.isEmpty()) { + if (icon.isNull() && !defaultIconPath.isEmpty()) icon = QIcon(defaultIconPath); - } return icon; } @@ -179,14 +173,12 @@ QIcon StereotypeController::createIcon(StereotypeIcon::Element element, const QL void StereotypeController::addStereotypeIcon(const StereotypeIcon &stereotypeIcon) { if (stereotypeIcon.elements().isEmpty()) { - foreach (const QString &stereotype, stereotypeIcon.stereotypes()) { + foreach (const QString &stereotype, stereotypeIcon.stereotypes()) d->m_stereotypeToIconIdMap.insert(qMakePair(StereotypeIcon::ElementAny, stereotype), stereotypeIcon.id()); - } } else { foreach (StereotypeIcon::Element element, stereotypeIcon.elements()) { - foreach (const QString &stereotype, stereotypeIcon.stereotypes()) { + foreach (const QString &stereotype, stereotypeIcon.stereotypes()) d->m_stereotypeToIconIdMap.insert(qMakePair(element, stereotype), stereotypeIcon.id()); - } } } d->m_iconIdToStereotypeIconsMap.insert(stereotypeIcon.id(), stereotypeIcon); diff --git a/src/libs/3rdparty/modeling/qmt/stereotype/stereotypecontroller.h b/src/libs/3rdparty/modeling/qmt/stereotype/stereotypecontroller.h index 17f1ec6318f..73c3207d30e 100644 --- a/src/libs/3rdparty/modeling/qmt/stereotype/stereotypecontroller.h +++ b/src/libs/3rdparty/modeling/qmt/stereotype/stereotypecontroller.h @@ -37,55 +37,35 @@ #include - namespace qmt { class Toolbar; class Style; -class QMT_EXPORT StereotypeController : - public QObject +class QMT_EXPORT StereotypeController : public QObject { Q_OBJECT - class StereotypeControllerPrivate; public: explicit StereotypeController(QObject *parent = 0); - ~StereotypeController(); -signals: - -public: - QList stereotypeIcons() const; - QList toolbars() const; - QList knownStereotypes(StereotypeIcon::Element stereotypeElement) const; -public: - QString findStereotypeIconId(StereotypeIcon::Element element, const QList &stereotypes) const; - QList filterStereotypesByIconId(const QString &stereotypeIconId, const QList &stereotypes) const; - StereotypeIcon findStereotypeIcon(const QString &stereotypeIconId); - QIcon createIcon(StereotypeIcon::Element element, const QList &stereotypes, const QString &defaultIconPath, const Style *style, const QSize &size, const QMarginsF &margins); -public: - void addStereotypeIcon(const StereotypeIcon &stereotypeIcon); - void addToolbar(const Toolbar &toolbar); private: - StereotypeControllerPrivate *d; - }; } // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/stereotype/stereotypeicon.cpp b/src/libs/3rdparty/modeling/qmt/stereotype/stereotypeicon.cpp index 3528b81821b..654b1628327 100644 --- a/src/libs/3rdparty/modeling/qmt/stereotype/stereotypeicon.cpp +++ b/src/libs/3rdparty/modeling/qmt/stereotype/stereotypeicon.cpp @@ -54,9 +54,8 @@ void StereotypeIcon::setId(const QString &id) QString StereotypeIcon::title() const { - if (m_title.isEmpty()) { + if (m_title.isEmpty()) return m_id; - } return m_title; } diff --git a/src/libs/3rdparty/modeling/qmt/stereotype/stereotypeicon.h b/src/libs/3rdparty/modeling/qmt/stereotype/stereotypeicon.h index 279d1bed8ed..ecfe92317e5 100644 --- a/src/libs/3rdparty/modeling/qmt/stereotype/stereotypeicon.h +++ b/src/libs/3rdparty/modeling/qmt/stereotype/stereotypeicon.h @@ -37,13 +37,11 @@ #include #include - namespace qmt { class QMT_EXPORT StereotypeIcon { public: - enum Element { ElementAny, ElementPackage, @@ -75,96 +73,51 @@ public: TextalignNone }; -public: - StereotypeIcon(); - ~StereotypeIcon(); -public: - QString id() const { return m_id; } - void setId(const QString &id); - QString title() const; - void setTitle(const QString &title); - QSet elements() const { return m_elements; } - void setElements(const QSet &elements); - QSet stereotypes() const { return m_stereotypes; } - void setStereotypes(const QSet &stereotypes); - qreal width() const { return m_width; } - void setWidth(qreal width); - qreal height() const { return m_height; } - void setHeight(qreal height); - bool hasMinWidth() const { return m_minWidth > 0; } - qreal minWidth() const { return m_minWidth; } - void setMinWidth(qreal minWidth); - bool hasMinHeight() const { return m_minHeight > 0; } - qreal minHeight() const { return m_minHeight; } - void setMinHeight(qreal minHeight); - SizeLock sizeLock() const { return m_sizeLock; } - void setSizeLock(SizeLock sizeLock); - Display display() const { return m_display; } - void setDisplay(Display display); - TextAlignment textAlignment() const { return m_textAlignment; } - void setTextAlignment(TextAlignment textAlignment); - QColor baseColor() const { return m_baseColor; } - void setBaseColor(const QColor &baseColor); - IconShape iconShape() const { return m_iconShape; } - void setIconShape(const IconShape &iconShape); private: - QString m_id; - QString m_title; - QSet m_elements; - QSet m_stereotypes; - qreal m_width; - qreal m_height; - qreal m_minWidth; - qreal m_minHeight; - SizeLock m_sizeLock; - Display m_display; - TextAlignment m_textAlignment; - QColor m_baseColor; - IconShape m_iconShape; }; diff --git a/src/libs/3rdparty/modeling/qmt/stereotype/toolbar.cpp b/src/libs/3rdparty/modeling/qmt/stereotype/toolbar.cpp index 33833967bf9..889481bac4b 100644 --- a/src/libs/3rdparty/modeling/qmt/stereotype/toolbar.cpp +++ b/src/libs/3rdparty/modeling/qmt/stereotype/toolbar.cpp @@ -56,4 +56,4 @@ void Toolbar::setTools(const QList &tools) m_tools = tools; } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/stereotype/toolbar.h b/src/libs/3rdparty/modeling/qmt/stereotype/toolbar.h index ee0901fe6a9..707e8fb5f8f 100644 --- a/src/libs/3rdparty/modeling/qmt/stereotype/toolbar.h +++ b/src/libs/3rdparty/modeling/qmt/stereotype/toolbar.h @@ -36,13 +36,11 @@ #include #include - namespace qmt { class QMT_EXPORT Toolbar { public: - enum ToolType { TooltypeTool, TooltypeSeparator @@ -70,34 +68,22 @@ public: QString m_stereotype; }; -public: Toolbar(); - ~Toolbar(); -public: - QString id() const { return m_id; } - void setId(const QString &id); - int priority() const { return m_priority; } - void setPriority(int priority); - QList tools() const { return m_tools; } - void setTools(const QList &tools); private: - QString m_id; - int m_priority; - QList m_tools; }; -} +} // namespace qmt #endif // QMT_TOOLBAR_H diff --git a/src/libs/3rdparty/modeling/qmt/style/defaultstyle.cpp b/src/libs/3rdparty/modeling/qmt/style/defaultstyle.cpp index a0f5a51ab41..a0214b03d31 100644 --- a/src/libs/3rdparty/modeling/qmt/style/defaultstyle.cpp +++ b/src/libs/3rdparty/modeling/qmt/style/defaultstyle.cpp @@ -65,4 +65,4 @@ DefaultStyle::~DefaultStyle() { } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/style/defaultstyle.h b/src/libs/3rdparty/modeling/qmt/style/defaultstyle.h index c6a74533b6a..d2d6f4b88ef 100644 --- a/src/libs/3rdparty/modeling/qmt/style/defaultstyle.h +++ b/src/libs/3rdparty/modeling/qmt/style/defaultstyle.h @@ -33,21 +33,15 @@ #include "style.h" - namespace qmt { -class QMT_EXPORT DefaultStyle : - public Style +class QMT_EXPORT DefaultStyle : public Style { public: DefaultStyle(); - ~DefaultStyle(); - -public: - }; -} +} // namespace qmt #endif // QMT_DEFAULTSTYLE_H diff --git a/src/libs/3rdparty/modeling/qmt/style/defaultstyleengine.cpp b/src/libs/3rdparty/modeling/qmt/style/defaultstyleengine.cpp index 324140c1078..d6dd6e751e1 100644 --- a/src/libs/3rdparty/modeling/qmt/style/defaultstyleengine.cpp +++ b/src/libs/3rdparty/modeling/qmt/style/defaultstyleengine.cpp @@ -77,7 +77,6 @@ bool operator==(const ObjectStyleKey &lhs, const ObjectStyleKey &rhs) return lhs.m_elementType == rhs.m_elementType && lhs.m_objectVisuals == rhs.m_objectVisuals; } - class RelationStyleKey { public: @@ -92,7 +91,8 @@ public: DObject::VisualPrimaryRole m_visualPrimaryRole; }; -uint qHash(const RelationStyleKey &styleKey) { +uint qHash(const RelationStyleKey &styleKey) +{ return ::qHash(styleKey.m_elementType) ^ ::qHash(styleKey.m_visualPrimaryRole); } @@ -101,7 +101,6 @@ bool operator==(const RelationStyleKey &lhs, const RelationStyleKey &rhs) return lhs.m_elementType == rhs.m_elementType && lhs.m_visualPrimaryRole == rhs.m_visualPrimaryRole; } - class AnnotationStyleKey { public: @@ -113,7 +112,8 @@ public: DAnnotation::VisualRole m_visualRole; }; -uint qHash(const AnnotationStyleKey &styleKey) { +uint qHash(const AnnotationStyleKey &styleKey) +{ return ::qHash(styleKey.m_visualRole); } @@ -122,7 +122,6 @@ bool operator==(const AnnotationStyleKey &lhs, const AnnotationStyleKey &rhs) return lhs.m_visualRole == rhs.m_visualRole; } - class BoundaryStyleKey { public: @@ -131,7 +130,8 @@ public: } }; -uint qHash(const BoundaryStyleKey &styleKey) { +uint qHash(const BoundaryStyleKey &styleKey) +{ Q_UNUSED(styleKey); return 1; @@ -145,7 +145,6 @@ bool operator==(const BoundaryStyleKey &lhs, const BoundaryStyleKey &rhs) return true; } - DefaultStyleEngine::DefaultStyleEngine() { } @@ -218,11 +217,10 @@ const Style *DefaultStyleEngine::applyObjectStyle(const Style *baseStyle, StyleE style->setFillBrush(QBrush(fillColor)); } } - if (objectVisuals.visualSecondaryRole() == DObject::SecondaryRoleOutline) { + if (objectVisuals.visualSecondaryRole() == DObject::SecondaryRoleOutline) style->setExtraFillBrush(QBrush(Qt::white)); - } else { + else style->setExtraFillBrush(QBrush(fillColor.darker(120))); - } style->setNormalFont(normalFont); style->setSmallFont(baseStyle->smallFont()); style->setHeaderFont(headerFont); @@ -287,9 +285,8 @@ const Style *DefaultStyleEngine::applyObjectStyle(const Style *baseStyle, const updateProperties = true; } } - if (updateProperties) { + if (updateProperties) depths.insert(collidingDepth, properties); - } } } } @@ -299,11 +296,10 @@ const Style *DefaultStyleEngine::applyObjectStyle(const Style *baseStyle, const qSort(keys); foreach (int d, keys) { DepthProperties properties = depths.value(d); - if (properties.m_elementType == elementType && areStackingRoles(properties.m_visualPrimaryRole, properties.m_visualSecondaryRole, styledVisualPrimaryRole, styledVisualSecondaryRole)) { + if (properties.m_elementType == elementType && areStackingRoles(properties.m_visualPrimaryRole, properties.m_visualSecondaryRole, styledVisualPrimaryRole, styledVisualSecondaryRole)) ++depth; - } else { + else depth = 0; - } } } @@ -428,17 +424,16 @@ const Style *DefaultStyleEngine::applyBoundaryStyle(const Style *baseStyle, cons DefaultStyleEngine::ElementType DefaultStyleEngine::objectType(const DObject *object) { ElementType elementType; - if (dynamic_cast(object)) { + if (dynamic_cast(object)) elementType = TypePackage; - } else if (dynamic_cast(object)) { + else if (dynamic_cast(object)) elementType = TypeComponent; - } else if (dynamic_cast(object)) { + else if (dynamic_cast(object)) elementType = TypeClass; - } else if (dynamic_cast(object)) { + else if (dynamic_cast(object)) elementType = TypeItem; - } else { + else elementType = TypeOther; - } return elementType; } @@ -468,9 +463,8 @@ bool DefaultStyleEngine::areStackingRoles(DObject::VisualPrimaryRole rhsPrimaryR QColor DefaultStyleEngine::baseColor(ElementType elementType, ObjectVisuals objectVisuals) { - if (objectVisuals.visualSecondaryRole() == DObject::SecondaryRoleOutline) { + if (objectVisuals.visualSecondaryRole() == DObject::SecondaryRoleOutline) return QColor("#FFFFFF"); - } QColor baseColor; @@ -533,24 +527,22 @@ QColor DefaultStyleEngine::baseColor(ElementType elementType, ObjectVisuals obje QColor DefaultStyleEngine::lineColor(ElementType elementType, const ObjectVisuals &objectVisuals) { QColor lineColor; - if (objectVisuals.visualSecondaryRole() == DObject::SecondaryRoleOutline) { + if (objectVisuals.visualSecondaryRole() == DObject::SecondaryRoleOutline) lineColor = Qt::black; - } else if (objectVisuals.visualSecondaryRole() == DObject::SecondaryRoleSoften) { + else if (objectVisuals.visualSecondaryRole() == DObject::SecondaryRoleSoften) lineColor = Qt::gray; - } else { + else lineColor = baseColor(elementType, objectVisuals).darker(200).lighter(150).darker(100 + objectVisuals.depth() * 10); - } return lineColor; } QColor DefaultStyleEngine::fillColor(ElementType elementType, const ObjectVisuals &objectVisuals) { QColor fillColor; - if (objectVisuals.visualSecondaryRole() == DObject::SecondaryRoleOutline) { + if (objectVisuals.visualSecondaryRole() == DObject::SecondaryRoleOutline) fillColor = Qt::white; - } else { + else fillColor = baseColor(elementType, objectVisuals).lighter(150).darker(100 + objectVisuals.depth() * 10); - } return fillColor; } @@ -560,11 +552,10 @@ QColor DefaultStyleEngine::textColor(const DObject *object, int depth) QColor textColor; DObject::VisualPrimaryRole visualRole = object ? object->visualPrimaryRole() : DObject::PrimaryRoleNormal; - if (visualRole == DObject::DeprecatedPrimaryRoleSoften) { + if (visualRole == DObject::DeprecatedPrimaryRoleSoften) textColor = Qt::gray; - } else { + else textColor = Qt::black; - } return textColor; } @@ -573,12 +564,11 @@ QColor DefaultStyleEngine::textColor(ElementType elementType, const ObjectVisual Q_UNUSED(elementType); QColor textColor; - if (objectVisuals.visualSecondaryRole() == DObject::SecondaryRoleSoften) { + if (objectVisuals.visualSecondaryRole() == DObject::SecondaryRoleSoften) textColor = Qt::gray; - } else { + else textColor = Qt::black; - } return textColor; } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/style/defaultstyleengine.h b/src/libs/3rdparty/modeling/qmt/style/defaultstyleengine.h index e07a346fe28..7f853afd18d 100644 --- a/src/libs/3rdparty/modeling/qmt/style/defaultstyleengine.h +++ b/src/libs/3rdparty/modeling/qmt/style/defaultstyleengine.h @@ -42,7 +42,6 @@ QT_BEGIN_NAMESPACE class QColor; QT_END_NAMESPACE - namespace qmt { class ObjectStyleKey; @@ -50,36 +49,23 @@ class RelationStyleKey; class AnnotationStyleKey; class BoundaryStyleKey; - -class QMT_EXPORT DefaultStyleEngine : - public StyleEngine +class QMT_EXPORT DefaultStyleEngine : public StyleEngine { Q_DISABLE_COPY(DefaultStyleEngine) public: - DefaultStyleEngine(); - ~DefaultStyleEngine(); -public: - const Style *applyStyle(const Style *baseStyle, ElementType elementType, const Parameters *parameters); - const Style *applyObjectStyle(const Style *baseStyle, ElementType elementType, const ObjectVisuals &objectVisuals, const Parameters *parameters); - const Style *applyObjectStyle(const Style *baseStyle, const StyledObject &styledObject, const Parameters *parameters); - const Style *applyRelationStyle(const Style *baseStyle, const StyledRelation &styledRelation, const Parameters *parameters); - const Style *applyAnnotationStyle(const Style *baseStyle, const DAnnotation *annotation, const Parameters *parameters); - const Style *applyBoundaryStyle(const Style *baseStyle, const DBoundary *boundary, const Parameters *parameters); private: - const Style *applyAnnotationStyle(const Style *baseStyle, DAnnotation::VisualRole visualRole, const Parameters *parameters); - const Style *applyBoundaryStyle(const Style *baseStyle, const Parameters *parameters); ElementType objectType(const DObject *object); @@ -87,23 +73,17 @@ private: bool areStackingRoles(DObject::VisualPrimaryRole rhsPrimaryRole, DObject::VisualSecondaryRole rhsSecondaryRole, DObject::VisualPrimaryRole lhsPrimaryRole, DObject::VisualSecondaryRole lhsSecondaryRols); QColor baseColor(ElementType elementType, ObjectVisuals objectVisuals); - QColor lineColor(ElementType elementType, const ObjectVisuals &objectVisuals); - QColor fillColor(ElementType elementType, const ObjectVisuals &objectVisuals); - QColor textColor(const DObject *object, int depth); - QColor textColor(ElementType elementType, const ObjectVisuals &objectVisuals); -private: - QHash m_objectStyleMap; QHash m_relationStyleMap; QHash m_annotationStyleMap; QHash m_boundaryStyleMap; }; -} +} // namespace qmt #endif // QMT_DEFAULTSTYLEENGINE_H diff --git a/src/libs/3rdparty/modeling/qmt/style/objectvisuals.h b/src/libs/3rdparty/modeling/qmt/style/objectvisuals.h index 67259af8656..0bd43b8d1b0 100644 --- a/src/libs/3rdparty/modeling/qmt/style/objectvisuals.h +++ b/src/libs/3rdparty/modeling/qmt/style/objectvisuals.h @@ -46,43 +46,26 @@ public: bool emphasized, const QColor &baseColor, int depth); ~ObjectVisuals(); -public: - DObject::VisualPrimaryRole visualPrimaryRole() const { return m_visualPrimaryRole; } - void setVisualPrimaryRole(DObject::VisualPrimaryRole visualPrimaryRole); - DObject::VisualSecondaryRole visualSecondaryRole() const { return m_visualSecondaryRole; } - void setVisualSecondaryRole(DObject::VisualSecondaryRole visualSecondaryRole); - bool isEmphasized() const { return m_isEmphasized; } - void setEmphasized(bool emphasized); - QColor baseColor() const { return m_baseColor; } - void setBaseColor(const QColor &baseColor); - int depth() const { return m_depth; } - void setDepth(int depth); private: - DObject::VisualPrimaryRole m_visualPrimaryRole; - DObject::VisualSecondaryRole m_visualSecondaryRole; - bool m_isEmphasized; - QColor m_baseColor; - int m_depth; }; bool operator==(const ObjectVisuals &lhs, const ObjectVisuals &rhs); - uint qHash(const ObjectVisuals &objectVisuals); } // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/style/relationstarterstyle.cpp b/src/libs/3rdparty/modeling/qmt/style/relationstarterstyle.cpp index 5f54fe0d392..f3f905c7399 100644 --- a/src/libs/3rdparty/modeling/qmt/style/relationstarterstyle.cpp +++ b/src/libs/3rdparty/modeling/qmt/style/relationstarterstyle.cpp @@ -55,9 +55,8 @@ RelationStarterStyle::RelationStarterStyle() setHeaderFont(headerFont); } - RelationStarterStyle::~RelationStarterStyle() { } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/style/relationstarterstyle.h b/src/libs/3rdparty/modeling/qmt/style/relationstarterstyle.h index ceb47887fe5..424cc240b34 100644 --- a/src/libs/3rdparty/modeling/qmt/style/relationstarterstyle.h +++ b/src/libs/3rdparty/modeling/qmt/style/relationstarterstyle.h @@ -35,15 +35,13 @@ namespace qmt { -class QMT_EXPORT RelationStarterStyle : - public Style +class QMT_EXPORT RelationStarterStyle : public Style { public: RelationStarterStyle(); - ~RelationStarterStyle(); }; -} +} // namespace qmt #endif // QMT_RELATIONSTARTERSTYLE_H diff --git a/src/libs/3rdparty/modeling/qmt/style/style.cpp b/src/libs/3rdparty/modeling/qmt/style/style.cpp index 4578d543572..3b984ee71bf 100644 --- a/src/libs/3rdparty/modeling/qmt/style/style.cpp +++ b/src/libs/3rdparty/modeling/qmt/style/style.cpp @@ -91,4 +91,4 @@ void Style::setHeaderFont(const QFont &font) m_headerFont = font; } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/style/style.h b/src/libs/3rdparty/modeling/qmt/style/style.h index b117e39eeef..76be0f03c0f 100644 --- a/src/libs/3rdparty/modeling/qmt/style/style.h +++ b/src/libs/3rdparty/modeling/qmt/style/style.h @@ -38,94 +38,55 @@ #include #include - namespace qmt { class QMT_EXPORT Style { public: - enum Type { GlobalStyle, ModelSpecificStyle }; -public: - explicit Style(Type type); - virtual ~Style(); -public: - Type type() const { return m_type; } - QPen linePen() const { return m_linePen; } - void setLinePen(const QPen &pen); - QPen outerLinePen() const { return m_outerLinePen; } - void setOuterLinePen(const QPen &pen); - QPen innerLinePen() const { return m_innerLinePen; } - void setInnerLinePen(const QPen &pen); - QPen extraLinePen() const { return m_extraLinePen; } - void setExtraLinePen(const QPen &pen); - QBrush textBrush() const { return m_textBrush; } - void setTextBrush(const QBrush &brush); - QBrush fillBrush() const { return m_fillBrush; } - void setFillBrush(const QBrush &brush); - QBrush extraFillBrush() const { return m_extraFillBrush; } - void setExtraFillBrush(const QBrush &brush); - QFont normalFont() const { return m_normalFont; } - void setNormalFont(const QFont &font); - QFont smallFont() const { return m_smallFont; } - void setSmallFont(const QFont &font); - QFont headerFont() const { return m_headerFont; } - void setHeaderFont(const QFont &font); private: - Type m_type; - QPen m_linePen; - QPen m_outerLinePen; - QPen m_innerLinePen; - QPen m_extraLinePen; - QBrush m_textBrush; - QBrush m_fillBrush; - QBrush m_extraFillBrush; - QFont m_normalFont; - QFont m_smallFont; - QFont m_headerFont; - }; -} +} // namespace qmt #endif // QMT_STYLE_H diff --git a/src/libs/3rdparty/modeling/qmt/style/stylecontroller.cpp b/src/libs/3rdparty/modeling/qmt/style/stylecontroller.cpp index f35e9ba1a72..895b2ac8ef5 100644 --- a/src/libs/3rdparty/modeling/qmt/style/stylecontroller.cpp +++ b/src/libs/3rdparty/modeling/qmt/style/stylecontroller.cpp @@ -36,11 +36,9 @@ #include - namespace qmt { -class StyleController::Parameters : - public StyleEngine::Parameters +class StyleController::Parameters : public StyleEngine::Parameters { public: Parameters(StyleController *styleController) @@ -53,12 +51,9 @@ public: } private: - StyleController *m_styleController; - }; - StyleController::StyleController(QObject *parent) : QObject(parent), m_defaultStyle(new DefaultStyle), @@ -118,4 +113,4 @@ const Style *StyleController::relationStarterStyle() return m_relationStarterStyle.data(); } -} +} // namespace qmt diff --git a/src/libs/3rdparty/modeling/qmt/style/stylecontroller.h b/src/libs/3rdparty/modeling/qmt/style/stylecontroller.h index a269bda34fd..e8d0ce432e0 100644 --- a/src/libs/3rdparty/modeling/qmt/style/stylecontroller.h +++ b/src/libs/3rdparty/modeling/qmt/style/stylecontroller.h @@ -38,65 +38,42 @@ #include - namespace qmt { class Style; class ObjectVisuals; class StyledObject; class StyledRelation; - class DAnnotation; class DBoundary; - -class QMT_EXPORT StyleController : - public QObject +class QMT_EXPORT StyleController : public QObject { Q_OBJECT - class Parameters; public: - explicit StyleController(QObject *parent = 0); - ~StyleController(); -public: - bool suppressGradients() const { return m_suppressGradients; } - void setSuppressGradients(bool suppressGradients); -public: - const Style *adaptStyle(StyleEngine::ElementType elementType); - const Style *adaptObjectStyle(StyleEngine::ElementType elementType, const ObjectVisuals &objectVisuals); - const Style *adaptObjectStyle(const StyledObject &object); - const Style *adaptRelationStyle(const StyledRelation &relation); - const Style *adaptAnnotationStyle(const DAnnotation *annotation); - const Style *adaptBoundaryStyle(const DBoundary *boundary); - const Style *relationStarterStyle(); private: - QScopedPointer