00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef UMLNAMESPACE_H
00013 #define UMLNAMESPACE_H
00014
00015 #include <string>
00016 #include <QtCore/QString>
00017
00018
00023 namespace Uml {
00024
00025 enum Model_Type
00026 {
00027 mt_Logical,
00028 mt_UseCase,
00029 mt_Component,
00030 mt_Deployment,
00031 mt_EntityRelationship,
00032 N_MODELTYPES
00033 };
00034
00035 enum Object_Type
00036 {
00037 ot_UMLObject = 100,
00038 ot_Actor,
00039 ot_UseCase,
00040 ot_Package,
00041 ot_Interface,
00042 ot_Datatype,
00043 ot_Enum,
00044 ot_Class,
00045 ot_Association,
00046 ot_Attribute,
00047 ot_Operation,
00048 ot_EnumLiteral,
00049 ot_Template,
00050 ot_Component,
00051 ot_Artifact,
00052 ot_Node,
00053 ot_Stereotype,
00054 ot_Role,
00055 ot_Entity,
00056 ot_EntityAttribute,
00057 ot_Folder,
00058 ot_EntityConstraint,
00059 ot_UniqueConstraint,
00060 ot_ForeignKeyConstraint,
00061 ot_CheckConstraint,
00062 ot_Category
00063 };
00064
00065 class Visibility {
00066 public:
00067 enum Value {
00068 Public,
00069 Private,
00070 Protected,
00071 Implementation,
00072 FromParent = 3
00073 };
00074 Visibility();
00075 Visibility(Value v);
00076 static QString toString(Value value, bool mnemonic = false);
00077 static Visibility fromString(const QString& vis);
00085 QString toString(bool mnemonic = false) const;
00086 operator Value () const;
00087 private:
00088 Value _v;
00089 };
00090
00091 enum Widget_Type
00092 {
00093 wt_UMLWidget = 300,
00094 wt_Actor,
00095 wt_UseCase,
00096 wt_Class,
00097 wt_Interface,
00098 wt_Datatype,
00099 wt_Enum,
00100 wt_Entity,
00101 wt_Package,
00102 wt_Object,
00103 wt_Note,
00104 wt_Box,
00105 wt_Message,
00106 wt_Text,
00107 wt_State,
00108 wt_Activity,
00109 wt_Component,
00110 wt_Artifact,
00111 wt_Node,
00112 wt_Association,
00113 wt_ForkJoin,
00114 wt_Precondition,
00115 wt_CombinedFragment,
00116 wt_FloatingDashLine,
00117 wt_Signal,
00118 wt_Pin,
00119 wt_ObjectNode,
00120 wt_Region,
00121 wt_Category
00122 };
00123
00124 enum Diagram_Type
00125 {
00126
00127
00128 dt_Undefined = 0,
00129 dt_Class,
00130 dt_UseCase,
00131 dt_Sequence,
00132 dt_Collaboration,
00133 dt_State,
00134 dt_Activity,
00135 dt_Component,
00136 dt_Deployment,
00137 dt_EntityRelationship
00138 };
00139
00140 enum Association_Type
00141 {
00142 at_Generalization = 500,
00143 at_Aggregation,
00144 at_Dependency,
00145 at_Association,
00146 at_Association_Self,
00147 at_Coll_Message,
00148 at_Seq_Message,
00149 at_Coll_Message_Self,
00150 at_Seq_Message_Self,
00151 at_Containment,
00152 at_Composition,
00153 at_Realization,
00154 at_UniAssociation,
00155 at_Anchor,
00156 at_State,
00157 at_Activity,
00158 at_Exception,
00159 at_Category2Parent,
00160 at_Child2Category,
00161 at_Relationship,
00162 at_Unknown = - 1
00163 };
00164
00165 enum Signature_Type
00166 {
00167 st_NoSig = 600,
00168 st_ShowSig,
00169 st_SigNoVis,
00170 st_NoSigNoVis
00171 };
00172
00173 enum Text_Role
00174 {
00175 tr_Floating = 700,
00176 tr_MultiA,
00177 tr_MultiB,
00178 tr_Name,
00179 tr_Seq_Message,
00180 tr_Seq_Message_Self,
00181 tr_Coll_Message,
00182 tr_Coll_Message_Self,
00183 tr_State,
00184 tr_RoleAName,
00185 tr_RoleBName,
00186 tr_ChangeA,
00187 tr_ChangeB
00188 };
00189
00190 enum ListView_Type
00191 {
00192
00193
00194 lvt_View = 800,
00195 lvt_Logical_View,
00196 lvt_UseCase_View,
00197 lvt_Logical_Folder,
00198 lvt_UseCase_Folder,
00199 lvt_UseCase_Diagram,
00200 lvt_Collaboration_Diagram,
00201 lvt_Class_Diagram,
00202 lvt_State_Diagram,
00203 lvt_Activity_Diagram,
00204 lvt_Sequence_Diagram,
00205 lvt_Actor,
00206 lvt_UseCase,
00207 lvt_Class,
00208 lvt_Attribute,
00209 lvt_Operation,
00210 lvt_Template,
00211 lvt_Interface,
00212 lvt_Package,
00213 lvt_Component_Diagram,
00214 lvt_Component_Folder,
00215 lvt_Component_View,
00216 lvt_Component,
00217 lvt_Diagrams,
00218 lvt_Artifact,
00219 lvt_Deployment_Diagram,
00220 lvt_Deployment_Folder,
00221 lvt_Deployment_View,
00222 lvt_Node,
00223 lvt_Datatype,
00224 lvt_Datatype_Folder,
00225 lvt_Enum,
00226 lvt_Entity,
00227 lvt_EntityAttribute,
00228 lvt_EntityRelationship_Diagram,
00229 lvt_EntityRelationship_Folder,
00230 lvt_EntityRelationship_Model,
00231 lvt_Subsystem,
00232 lvt_Model,
00233 lvt_EnumLiteral,
00234 lvt_UniqueConstraint,
00235 lvt_PrimaryKeyConstraint,
00236 lvt_ForeignKeyConstraint,
00237 lvt_CheckConstraint,
00238 lvt_Category,
00239 lvt_Unknown = -1
00240 };
00241
00242 enum Icon_Type
00243 {
00244 it_Home = 0,
00245 it_Folder_Cyan,
00246 it_Folder_Cyan_Open,
00247 it_Folder_Green,
00248 it_Folder_Green_Open,
00249 it_Folder_Grey,
00250 it_Folder_Grey_Open,
00251 it_Folder_Red,
00252 it_Folder_Red_Open,
00253 it_Folder_Violet,
00254 it_Folder_Violet_Open,
00255 it_Folder_Orange,
00256 it_Folder_Orange_Open,
00257 it_Diagram,
00258 it_Class,
00259 it_Template,
00260 it_Package,
00261 it_Subsystem,
00262 it_Component,
00263 it_Node,
00264 it_Artifact,
00265 it_Interface,
00266 it_Datatype,
00267 it_Enum,
00268 it_Entity,
00269 it_Actor,
00270 it_UseCase,
00271 it_Category,
00272 it_Public_Method,
00273 it_Private_Method,
00274 it_Protected_Method,
00275 it_Public_Attribute,
00276 it_Private_Attribute,
00277 it_Protected_Attribute,
00278 it_Unique_Constraint,
00279 it_PrimaryKey_Constraint,
00280 it_ForeignKey_Constraint,
00281 it_Check_Constraint,
00282 it_Diagram_Activity,
00283 it_Diagram_Class,
00284 it_Diagram_Collaboration,
00285 it_Diagram_Component,
00286 it_Diagram_Deployment,
00287 it_Diagram_EntityRelationship,
00288 it_Diagram_Sequence,
00289 it_Diagram_State,
00290 it_Diagram_Usecase,
00291 N_ICONTYPES
00292 };
00293
00294 enum Changeability_Type
00295 {
00296 chg_Changeable = 900,
00297 chg_Frozen,
00298 chg_AddOnly
00299 };
00300
00301 enum Sequence_Message_Type
00302 {
00303
00304 sequence_message_synchronous = 1000,
00305 sequence_message_asynchronous,
00306 sequence_message_creation,
00307 sequence_message_lost,
00308 sequence_message_found
00309 };
00310
00311 enum DBIndex_Type
00312 {
00313 None = 1100,
00314 Primary,
00315 Index,
00316 Unique
00317 };
00318
00322 enum Role_Type { A, B };
00323
00331 enum Parameter_Direction { pd_In, pd_InOut, pd_Out };
00332
00336 enum Programming_Language {
00337 pl_ActionScript,
00338 pl_Ada,
00339 pl_Cpp,
00340 pl_CSharp,
00341 pl_D,
00342 pl_IDL,
00343 pl_Java,
00344 pl_JavaScript,
00345 pl_MySQL,
00346 pl_Pascal,
00347 pl_Perl,
00348 pl_PHP,
00349 pl_PHP5,
00350 pl_PostgreSQL,
00351 pl_Python,
00352 pl_Ruby,
00353 pl_SQL,
00354 pl_Tcl,
00355 pl_XMLSchema,
00356 pl_Ocl,
00357 pl_Reserved
00358 };
00359
00363 typedef std::string IDType;
00364
00368 const IDType id_None = "-1";
00369 const IDType id_Reserved = "0";
00370
00371 # define STR2ID(id) qPrintable(id)
00372 # define ID2STR(id) QString(id.c_str())
00373
00374
00375 #define uDebug() kDebug(8060)
00376 #define uError() kError(8060)
00377 #define uWarning() kWarning(8060)
00378
00382 bool tagEq (const QString& tag, const QString& pattern);
00383
00384 }
00385
00386 #endif