Esempio n. 1
0
void UmlRelation::html(Q3CString, unsigned int, unsigned int) {
  bool extension;
  
  switch (relationKind()) {
  case aGeneralisation:
  case aRealization:
  case aDependency:
    return;
  case aDirectionalAssociation:
    extension = (parent()->stereotype() == "stereotype") &&
      (roleType()->stereotype() == "metaclass");
    break;
  default:
    extension = FALSE;
  }

  define();

  if (extension)
    fw.write("<table><tr><td><div class=\"element\">Extension</div></td></tr></table>");
  else {
    fw.write("<table><tr><td><div class=\"element\">Relation <b>");
    writeq(name());
    fw.write("</b></div></td></tr></table>");
  }

  Q3CString s = description();

  if (!s.isEmpty()) {
    fw.write("<p>");
    if (! javaDecl().isEmpty())
      gen_java_decl(s, TRUE);
    else if (! phpDecl().isEmpty())
      gen_php_decl(s, TRUE);
    else if (! pythonDecl().isEmpty())
      gen_python_decl(s);
    else
      gen_cpp_decl(s, TRUE);
    fw.write("<br /></p>");
  }

  if (extension) {
    fw.write("<p>Extend ");
    roleType()->write();
    fw.write("</p>");
  }
  else {
    fw.write("<p>Declaration :</p><ul>");
    
    fw.write("<li>Uml : ");
    gen_uml_decl();
    fw.write("</li>");
    
    s = cppDecl();
    
    if (!s.isEmpty()) {
      fw.write("<li>C++ : ");
      gen_cpp_decl(s, FALSE);
      fw.write("</li>");
    }
    
    s = javaDecl();
    
    if (!s.isEmpty()) {
      fw.write("<li>Java : ");
      gen_java_decl(s, FALSE);
      fw.write("</li>");
    }
    
    s = phpDecl();
    
    if (!s.isEmpty()) {
      fw.write("<li>Php : ");
      gen_php_decl(s, FALSE);
      fw.write("</li>");
    }
    
    s = pythonDecl();
    
    if (!s.isEmpty()) {
      fw.write("<li>Python : ");
      gen_python_decl(s);
      fw.write("</li>");
    }
    
    fw.write("</ul>");
  }

  annotation_constraint();
  write_properties();
 
  unload(FALSE, FALSE);
}
Esempio n. 2
0
void UmlOperation::html(Q3CString, unsigned int, unsigned int)
{
    define();

    fw.write("<table><tr><td><div class=\"element\">Operation <b>");
    writeq(name());
    fw.write("</b></div></td></tr></table>");

    Q3CString s = description();

    if (! s.isEmpty()) {
        fw.write("<p>");

        if (! javaDecl().isEmpty())
            gen_java_decl(s, TRUE);
        else if (! phpDecl().isEmpty())
            gen_php_decl(s, TRUE);
        else if (! pythonDecl().isEmpty())
            gen_python_decl(s, TRUE);
        else
            gen_cpp_decl(s, TRUE);

        fw.write("<br /></p>");
    }

    fw.write("<p>Declaration :</p><ul>");

    fw.write("<li>Uml : ");
    gen_uml_decl();
    fw.write("</li>");

    s = cppDecl();

    if (!s.isEmpty()) {
        fw.write("<li>C++ : ");
        gen_cpp_decl(s, FALSE);
        fw.write("</li>");
    }

    s = javaDecl();

    if (!s.isEmpty()) {
        fw.write("<li>Java : ");
        gen_java_decl(s, FALSE);
        fw.write("</li>");
    }

    s = phpDecl();

    if (!s.isEmpty()) {
        fw.write("<li>Php : ");
        gen_php_decl(s, FALSE);
        fw.write("</li>");
    }

    s = pythonDecl();

    if (!s.isEmpty()) {
        fw.write("<li>Python : ");
        gen_python_decl(s, FALSE);
        fw.write("</li>");
    }

    fw.write("</ul>");

    annotation_constraint();
    write_properties();

    unload(FALSE, FALSE);
}