Skip to main content

Overview

The TreeUML unit provides specialized shapes for creating UML (Unified Modeling Language) diagrams in TeeTree. These shapes support class diagrams, use case diagrams, activity diagrams, and other UML diagram types.

Inheritance Hierarchy

Base Classes

TUMLShape

UML Shape

Base class for all UML shapes.
Description: Alias for TCustomTreeShape, provides foundation for UML-specific shapes.

TUMLRectangle

UML Rectangle

Base rectangular shape for UML elements.
Default Properties:
  • ImageIndex: tiNone (no default image)
  • VertTextAlign: vtaTop (text aligned to top)
Usage:

Class Diagram Shapes

TClassShape

Class

Represents a class in UML class diagrams.
Description: Rectangle divided into three sections:
  1. Class name (top)
  2. Attributes (middle)
  3. Methods (bottom)
Features:
  • Automatically draws horizontal divider lines
  • Top section for class name
  • Text aligned to top by default
Usage:
Drawing Behavior:
  • Draws horizontal line after first text line (class name)
  • Draws another line to separate attributes from methods
  • Lines are calculated based on text height

TInterfaceShape

Interface

Represents an interface in UML diagrams.
Description: Similar to class shape but with only two sections:
  1. Interface name (with stereotype)
  2. Methods
Usage:

TPackageShape

Package

Represents a package or namespace.
Description: Rectangle with a tab at the top-left corner. Features:
  • Custom polygon shape with tab
  • Tab size: 1/4 height, 1/3 width
  • Horizontal line separates tab from main body
Usage:

Use Case Diagram Shapes

TActorShape

Actor

Represents an actor in use case diagrams.
Description: Stick figure representing a user or external system. Drawing Components:
  • Circle for head (top 1/3)
  • Horizontal line for arms (at 1/3 from top)
  • Vertical line for body
  • Two diagonal lines for legs
Usage:

TActionShape

Action/Use Case

Represents a use case or action.
Description: Ellipse/oval shape. Features:
  • Custom curved shape with rounded ends
  • Uses bezier-like curves for smooth appearance
  • 34 points for smooth rendering
Usage:

Activity Diagram Shapes

TProcShape

Procedure/Activity

Represents a procedure or activity node.
Description: Circle with an incoming arrow on the left side. Default Style: tssCircle Features:
  • Draws a small incoming arrow line
  • Arrow positioned at left-center
Usage:

TStoreShape

Data Store

Represents a data store or database in activity diagrams.
Description: Circle with an outgoing arrow at the bottom. Default Style: tssCircle Features:
  • Draws a small outgoing arrow line at bottom-center
  • Arrow points downward
Usage:

Documentation Shapes

TNoteShape

Note/Comment

Represents a note or comment annotation.
Description: Rectangle with a folded corner (dog-ear effect). Features:
  • Folded corner at top-right
  • Corner fold is 10% of shape size
  • Lines drawn to show fold
Usage:

Complete UML Class Diagram Example

Use Case Diagram Example

Activity Diagram Example

UML Shape Registration

UML shapes are automatically registered in the component palette under the “UML” tab:
  • Package
  • Class
  • Interface
  • Action
  • Actor
  • Procedure
  • Note
  • Store

Common UML Patterns

Inheritance

Use connections with triangle arrows:

Association

Use simple lines:

Aggregation

Use diamond arrow:

Composition

Use filled diamond:

Dependency

Use dashed line:

See Also

Basic Shapes

Fundamental geometric shapes

Flowchart Shapes

Process diagram shapes

Electric Shapes

Circuit diagram shapes

Custom Shapes

Create custom shapes