diff options
author | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2010-07-31 19:51:49 +0000 |
---|---|---|
committer | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2010-07-31 19:51:49 +0000 |
commit | 4ae0c208b66e0f7954e194384464fe2d0a2c56dd (patch) | |
tree | b0a7cd1c184f0003c0292eb416ed27f674f9cc43 /umbrello/umbrello/codegenerators/dwriter.cpp | |
parent | 1964ea0fb4ab57493ca2ebb709c8d3b5395fd653 (diff) | |
download | tdesdk-4ae0c208b66e0f7954e194384464fe2d0a2c56dd.tar.gz tdesdk-4ae0c208b66e0f7954e194384464fe2d0a2c56dd.zip |
Trinity Qt initial conversion
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdesdk@1157652 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'umbrello/umbrello/codegenerators/dwriter.cpp')
-rw-r--r-- | umbrello/umbrello/codegenerators/dwriter.cpp | 148 |
1 files changed, 74 insertions, 74 deletions
diff --git a/umbrello/umbrello/codegenerators/dwriter.cpp b/umbrello/umbrello/codegenerators/dwriter.cpp index 3e16b136..088ab9c1 100644 --- a/umbrello/umbrello/codegenerators/dwriter.cpp +++ b/umbrello/umbrello/codegenerators/dwriter.cpp @@ -19,9 +19,9 @@ // own header #include "dwriter.h" // qt includes -#include <qfile.h> -#include <qtextstream.h> -#include <qregexp.h> +#include <tqfile.h> +#include <tqtextstream.h> +#include <tqregexp.h> // kde includes #include <kdebug.h> // app includes @@ -45,14 +45,14 @@ Uml::Programming_Language DWriter::getLanguage() { } // FIXME: doesn't work yet -void DWriter::writeModuleDecl(UMLClassifier *c, QTextStream &d) { +void DWriter::writeModuleDecl(UMLClassifier *c, TQTextStream &d) { if(!c->getPackage().isEmpty()) d << "module " << c->getPackage() << ";" << m_endl; writeBlankLine(d); } -void DWriter::writeModuleImports(UMLClassifier *c, QTextStream &d) { +void DWriter::writeModuleImports(UMLClassifier *c, TQTextStream &d) { // another preparation, determine what we have UMLAssociationList associations = c->getSpecificAssocs(Uml::at_Association); // BAD! only way to get "general" associations. UMLAssociationList uniAssociations = c->getUniAssociationToBeImplemented(); @@ -74,7 +74,7 @@ void DWriter::writeModuleImports(UMLClassifier *c, QTextStream &d) { for (UMLPackage *con = imports.first(); con; con = imports.next()) { if (con->getBaseType() == Uml::ot_Datatype) continue; - QString pkg = con->getPackage(); + TQString pkg = con->getPackage(); if (!pkg.isEmpty() && pkg != c->getPackage()) d << "import " << pkg << "." << cleanName(con->getName()) << ";" << m_endl; @@ -91,7 +91,7 @@ void DWriter::writeClass(UMLClassifier *c) { isInterface = c->isInterface(); - QString fileName = cleanName(c->getName().lower()); + TQString fileName = cleanName(c->getName().lower()); //find an appropriate name for our file fileName = findFileName(c, ".d"); @@ -101,21 +101,21 @@ void DWriter::writeClass(UMLClassifier *c) { } // check that we may open that file for writing - QFile file; + TQFile file; if ( !openFile(file, fileName) ) { emit codeGenerated(c, false); return; } // open text stream to file - QTextStream d(&file); + TQTextStream d(&file); //try to find a heading file (license, coments, etc) - QString str; + TQString str; str = getHeadingFile(".d"); if(!str.isEmpty()) { - str.replace(QRegExp("%filename%"),fileName); - str.replace(QRegExp("%filepath%"),file.name()); + str.replace(TQRegExp("%filename%"),fileName); + str.replace(TQRegExp("%filepath%"),file.name()); d<<str<<m_endl; } @@ -278,7 +278,7 @@ void DWriter::writeClass(UMLClassifier *c) { emit codeGenerated(c, true); } -void DWriter::writeClassDecl(UMLClassifier *c, QTextStream &d) { +void DWriter::writeClassDecl(UMLClassifier *c, TQTextStream &d) { // class documentation if (!c->getDoc().isEmpty()) { @@ -311,7 +311,7 @@ void DWriter::writeClassDecl(UMLClassifier *c, QTextStream &d) { } // (c) class name - QString classname = cleanName(c->getName()); // our class name + TQString classname = cleanName(c->getName()); // our class name d << classname; // (d) template parameters @@ -367,11 +367,11 @@ void DWriter::writeClassDecl(UMLClassifier *c, QTextStream &d) { } } -void DWriter::writeProtectionMod(Uml::Visibility visibility, QTextStream &d) { +void DWriter::writeProtectionMod(Uml::Visibility visibility, TQTextStream &d) { d << m_indentation << scopeToDDecl(visibility) << ":" << m_endl << m_endl; } -void DWriter::writeAttributeDecl(Uml::Visibility visibility, UMLAttributeList &atlist, QTextStream &d) { +void DWriter::writeAttributeDecl(Uml::Visibility visibility, UMLAttributeList &atlist, TQTextStream &d) { if (atlist.count()==0) return; writeProtectionMod(visibility, d); @@ -400,14 +400,14 @@ void DWriter::writeAttributeDecl(Uml::Visibility visibility, UMLAttributeList &a d << cleanName(at->getName()); // initial value - QString initVal = fixInitialStringDeclValue(at->getInitialValue(), at->getTypeName()); + TQString initVal = fixInitialStringDeclValue(at->getInitialValue(), at->getTypeName()); if (!initVal.isEmpty()) d << " = " << initVal; d << ";" << m_endl << m_endl; } } void DWriter::writeAttributeDecls(UMLAttributeList &atpub, UMLAttributeList &atprot, - UMLAttributeList &atpriv, QTextStream &d ) { + UMLAttributeList &atpriv, TQTextStream &d ) { writeAttributeDecl(Uml::Visibility::Public, atpub, d); writeAttributeDecl(Uml::Visibility::Protected, atprot, d); @@ -415,31 +415,31 @@ void DWriter::writeAttributeDecls(UMLAttributeList &atpub, UMLAttributeList &atp //TODO: export and package } -void DWriter::writeAttributeMethods(UMLAttributeList &atpub, Uml::Visibility visibility, QTextStream &d) { +void DWriter::writeAttributeMethods(UMLAttributeList &atpub, Uml::Visibility visibility, TQTextStream &d) { if (atpub.count()==0) return; writeProtectionMod(visibility, d); for(UMLAttribute *at=atpub.first(); at; at=atpub.next()) { - QString fieldName = cleanName(at->getName()); + TQString fieldName = cleanName(at->getName()); writeSingleAttributeAccessorMethods( at->getTypeName(), "m_" + fieldName, fieldName, at->getDoc(), visibility, Uml::chg_Changeable, at->getStatic(), d); } } -void DWriter::writeComment(const QString &comment, const QString &myIndent, - QTextStream &d, bool dDocStyle) { +void DWriter::writeComment(const TQString &comment, const TQString &myIndent, + TQTextStream &d, bool dDocStyle) { if(dDocStyle) { d << myIndent << "/**" << m_endl; } - QStringList lines = QStringList::split("\n", comment); + TQStringList lines = TQStringList::split("\n", comment); if (lines.count() == 0) lines << comment; for (uint i = 0; i < lines.count(); ++i) { - QString tmp = lines[i]; + TQString tmp = lines[i]; while (tmp.length() > 77) { uint l = tmp.left(77).findRev(' '); @@ -460,7 +460,7 @@ void DWriter::writeComment(const QString &comment, const QString &myIndent, } } -void DWriter::writeDocumentation(QString header, QString body, QString end, QString indent, QTextStream &d) { +void DWriter::writeDocumentation(TQString header, TQString body, TQString end, TQString indent, TQTextStream &d) { d << indent << "/**" << m_endl; if (!header.isEmpty()) d << formatDoc(header, indent+" * "); @@ -468,14 +468,14 @@ void DWriter::writeDocumentation(QString header, QString body, QString end, QStr d << formatDoc(body, indent+" * "); if (!end.isEmpty()) { - QStringList lines = QStringList::split( "\n", end); + TQStringList lines = TQStringList::split( "\n", end); for (uint i= 0; i < lines.count(); i++) d << formatDoc(lines[i], indent + " * "); } d<<indent<< " */" << m_endl; } -void DWriter::writeAssociationDecls(UMLAssociationList associations, Uml::IDType id, QTextStream &d) { +void DWriter::writeAssociationDecls(UMLAssociationList associations, Uml::IDType id, TQTextStream &d) { if( forceSections() || !associations.isEmpty() ) { @@ -497,23 +497,23 @@ void DWriter::writeAssociationDecls(UMLAssociationList associations, Uml::IDType // print RoleB decl if (printRoleB) { - QString fieldClassName = cleanName(getUMLObjectName(a->getObject(Uml::B))); + TQString fieldClassName = cleanName(getUMLObjectName(a->getObject(Uml::B))); writeAssociationRoleDecl(fieldClassName, a->getRoleName(Uml::B), a->getMulti(Uml::B), a->getRoleDoc(Uml::B), a->getVisibility(Uml::B), d); } // print RoleA decl if (printRoleA) { - QString fieldClassName = cleanName(getUMLObjectName(a->getObject(Uml::A))); + TQString fieldClassName = cleanName(getUMLObjectName(a->getObject(Uml::A))); writeAssociationRoleDecl(fieldClassName, a->getRoleName(Uml::A), a->getMulti(Uml::A), a->getRoleDoc(Uml::A), a->getVisibility(Uml::A), d); } } } } -void DWriter::writeAssociationRoleDecl(QString fieldClassName, - QString roleName, QString multi, - QString doc, Uml::Visibility /*visib*/, QTextStream &d) { +void DWriter::writeAssociationRoleDecl(TQString fieldClassName, + TQString roleName, TQString multi, + TQString doc, Uml::Visibility /*visib*/, TQTextStream &d) { // ONLY write out IF there is a rolename given // otherwise its not meant to be declared in the code if (roleName.isEmpty()) return; @@ -527,7 +527,7 @@ void DWriter::writeAssociationRoleDecl(QString fieldClassName, // declare the association based on whether it is this a single variable // or a List (Vector). One day this will be done correctly with special // multiplicity object that we don't have to figure out what it means via regex. - if(multi.isEmpty() || multi.contains(QRegExp("^[01]$"))) { + if(multi.isEmpty() || multi.contains(TQRegExp("^[01]$"))) { d << m_indentation << fieldClassName << " "; if (hasAccessors) d << "m_"; @@ -548,7 +548,7 @@ void DWriter::writeAssociationRoleDecl(QString fieldClassName, writeBlankLine(d); } -void DWriter::writeAssociationMethods (UMLAssociationList associations, UMLClassifier *thisClass, QTextStream &d) { +void DWriter::writeAssociationMethods (UMLAssociationList associations, UMLClassifier *thisClass, TQTextStream &d) { if( forceSections() || !associations.isEmpty() ) { for(UMLAssociation *a = associations.first(); a; a = associations.next()) { // insert the methods to access the role of the other @@ -556,7 +556,7 @@ void DWriter::writeAssociationMethods (UMLAssociationList associations, UMLClass if (a->getObjectId(Uml::A) == thisClass->getID()) { // only write out IF there is a rolename given if(!a->getRoleName(Uml::B).isEmpty()) { - QString fieldClassName = getUMLObjectName(a->getObject(Uml::B)); + TQString fieldClassName = getUMLObjectName(a->getObject(Uml::B)); writeAssociationRoleMethod(fieldClassName, a->getRoleName(Uml::B), a->getMulti(Uml::B), a->getRoleDoc(Uml::B), @@ -568,7 +568,7 @@ void DWriter::writeAssociationMethods (UMLAssociationList associations, UMLClass if (a->getObjectId(Uml::B) == thisClass->getID()) { // only write out IF there is a rolename given if(!a->getRoleName(Uml::A).isEmpty()) { - QString fieldClassName = getUMLObjectName(a->getObject(Uml::A)); + TQString fieldClassName = getUMLObjectName(a->getObject(Uml::A)); writeAssociationRoleMethod(fieldClassName, a->getRoleName(Uml::A), a->getMulti(Uml::A), a->getRoleDoc(Uml::A), @@ -581,30 +581,30 @@ void DWriter::writeAssociationMethods (UMLAssociationList associations, UMLClass } } -void DWriter::writeAssociationRoleMethod (QString fieldClassName, QString roleName, QString multi, - QString description, Uml::Visibility visib, Uml::Changeability_Type change, - QTextStream &d) { - if(multi.isEmpty() || multi.contains(QRegExp("^[01]$"))) { - QString fieldVarName = "m_" + deCapitaliseFirstLetter(roleName); +void DWriter::writeAssociationRoleMethod (TQString fieldClassName, TQString roleName, TQString multi, + TQString description, Uml::Visibility visib, Uml::Changeability_Type change, + TQTextStream &d) { + if(multi.isEmpty() || multi.contains(TQRegExp("^[01]$"))) { + TQString fieldVarName = "m_" + deCapitaliseFirstLetter(roleName); writeSingleAttributeAccessorMethods( fieldClassName, fieldVarName, roleName, description, visib, change, false, d); } else { - QString fieldVarName = "m_" + pluralize(deCapitaliseFirstLetter(roleName)); + TQString fieldVarName = "m_" + pluralize(deCapitaliseFirstLetter(roleName)); writeVectorAttributeAccessorMethods( fieldClassName, fieldVarName, pluralize(roleName), description, visib, change, d); } } -void DWriter::writeVectorAttributeAccessorMethods (QString fieldClassName, QString fieldVarName, - QString fieldName, QString description, +void DWriter::writeVectorAttributeAccessorMethods (TQString fieldClassName, TQString fieldVarName, + TQString fieldName, TQString description, Uml::Visibility /*visibility*/, Uml::Changeability_Type changeType, - QTextStream &d) { + TQTextStream &d) { fieldClassName = fixTypeName(fieldClassName); - QString fieldNameUP = unPluralize(fieldName); - QString fieldNameUC = Codegen_Utils::capitalizeFirstLetter(fieldNameUP); + TQString fieldNameUP = unPluralize(fieldName); + TQString fieldNameUC = Codegen_Utils::capitalizeFirstLetter(fieldNameUP); // ONLY IF changeability is NOT Frozen if (changeType != Uml::chg_Frozen) { @@ -646,12 +646,12 @@ void DWriter::writeVectorAttributeAccessorMethods (QString fieldClassName, QStri } -void DWriter::writeSingleAttributeAccessorMethods(QString fieldClassName, - QString fieldVarName, QString fieldName, QString description, Uml::Visibility /*visibility*/, - Uml::Changeability_Type change, bool isFinal, QTextStream &d) { +void DWriter::writeSingleAttributeAccessorMethods(TQString fieldClassName, + TQString fieldVarName, TQString fieldName, TQString description, Uml::Visibility /*visibility*/, + Uml::Changeability_Type change, bool isFinal, TQTextStream &d) { fieldClassName = fixTypeName(fieldClassName); - QString fieldNameUC = Codegen_Utils::capitalizeFirstLetter(fieldName); + TQString fieldNameUC = Codegen_Utils::capitalizeFirstLetter(fieldName); if (fieldName.left(2) == "m_") fieldName = fieldName.right(fieldName.length()-2); // set method @@ -676,7 +676,7 @@ void DWriter::writeSingleAttributeAccessorMethods(QString fieldClassName, d << startline << "}" << m_endl << m_endl; } -void DWriter::writeConstructor(UMLClassifier *c, QTextStream &d) { +void DWriter::writeConstructor(UMLClassifier *c, TQTextStream &d) { if (forceDoc()) { @@ -688,7 +688,7 @@ void DWriter::writeConstructor(UMLClassifier *c, QTextStream &d) { } // write the first constructor - QString className = cleanName(c->getName()); + TQString className = cleanName(c->getName()); d << m_indentation << "public this("<<") { }"; } @@ -696,7 +696,7 @@ void DWriter::writeConstructor(UMLClassifier *c, QTextStream &d) { // IF the type is "string" we need to declare it as // the D Object "String" (there is no string primative in D). // Same thing again for "bool" to "boolean" -QString DWriter::fixTypeName(const QString& string) { +TQString DWriter::fixTypeName(const TQString& string) { if (string.isEmpty()) return "void"; if (string == "string") @@ -710,8 +710,8 @@ QString DWriter::fixTypeName(const QString& string) { return string; } -QStringList DWriter::defaultDatatypes() { - QStringList l; +TQStringList DWriter::defaultDatatypes() { + TQStringList l; l << "void" << "bool" << "byte" @@ -805,7 +805,7 @@ void DWriter::getInterfacesOperationsToBeImplemented(UMLClassifier *c, UMLOperat } } -void DWriter::writeOperations(UMLClassifier *c, QTextStream &d) { +void DWriter::writeOperations(UMLClassifier *c, TQTextStream &d) { UMLOperationList opl; UMLOperationList oppub,opprot,oppriv; oppub.setAutoDelete(false); @@ -862,16 +862,16 @@ void DWriter::writeOperations(UMLClassifier *c, QTextStream &d) { } -void DWriter::writeOperations(UMLOperationList &oplist, QTextStream &d) { +void DWriter::writeOperations(UMLOperationList &oplist, TQTextStream &d) { UMLAttributeList atl; - QString str; + TQString str; // generate method decl for each operation given for(UMLOperation *op=oplist.first(); op; op=oplist.next()) { - QString returnStr = ""; + TQString returnStr = ""; // write documentation - QString methodReturnType = fixTypeName(op->getTypeName()); + TQString methodReturnType = fixTypeName(op->getTypeName()); //TODO: return type comment if(methodReturnType != "void") { @@ -888,12 +888,12 @@ void DWriter::writeOperations(UMLOperationList &oplist, QTextStream &d) { int i = atl.count(); int j = 0; for (UMLAttribute *at = atl.first(); at; at = atl.next(), j++) { - QString typeName = fixTypeName(at->getTypeName()); - QString atName = cleanName(at->getName()); + TQString typeName = fixTypeName(at->getTypeName()); + TQString atName = cleanName(at->getName()); str += typeName + ' ' + atName + (!(at->getInitialValue().isEmpty()) ? - (QString(" = ")+at->getInitialValue()) : - QString("")) + (TQString(" = ")+at->getInitialValue()) : + TQString("")) + ((j < i-1)?", ":""); returnStr += "@param " + atName+' '+at->getDoc() + m_endl; } @@ -912,7 +912,7 @@ void DWriter::writeOperations(UMLOperationList &oplist, QTextStream &d) { } } -QString DWriter::fixInitialStringDeclValue(QString value, QString type) { +TQString DWriter::fixInitialStringDeclValue(TQString value, TQString type) { // check for strings only if (!value.isEmpty() && type == "String") { if (!value.startsWith("\"")) @@ -923,8 +923,8 @@ QString DWriter::fixInitialStringDeclValue(QString value, QString type) { return value; } -QString DWriter::scopeToDDecl(Uml::Visibility scope) { - QString scopeString; +TQString DWriter::scopeToDDecl(Uml::Visibility scope) { + TQString scopeString; switch(scope) { case Uml::Visibility::Public: scopeString = "public"; break; @@ -937,20 +937,20 @@ QString DWriter::scopeToDDecl(Uml::Visibility scope) { } // methods like this _shouldn't_ be needed IF we properly did things thruought the code. -QString DWriter::getUMLObjectName(UMLObject *obj) { - return(obj!=0)?obj->getName():QString("NULL"); +TQString DWriter::getUMLObjectName(UMLObject *obj) { + return(obj!=0)?obj->getName():TQString("NULL"); } -QString DWriter::deCapitaliseFirstLetter(QString string) { +TQString DWriter::deCapitaliseFirstLetter(TQString string) { string.replace( 0, 1, string[0].lower()); return string; } -QString DWriter::pluralize(QString string) { +TQString DWriter::pluralize(TQString string) { return string + (string.right(1) == "s" ? "es" : "s"); } -QString DWriter::unPluralize(QString string) { +TQString DWriter::unPluralize(TQString string) { // does not handle special cases liek datum -> data, etc. if (string.length() > 2 && string.right(3) == "ses") { @@ -964,7 +964,7 @@ QString DWriter::unPluralize(QString string) { return string; } -void DWriter::writeBlankLine(QTextStream &d) { +void DWriter::writeBlankLine(TQTextStream &d) { d << m_endl; } |