Bug 118570 - ER diagrams need to underline the attribute name of primary keys
Summary: ER diagrams need to underline the attribute name of primary keys
Status: RESOLVED FIXED
Alias: None
Product: umbrello
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: unspecified Linux
: NOR normal
Target Milestone: ---
Assignee: Umbrello Development Group
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-12-18 14:38 UTC by Matthias Kretz
Modified: 2005-12-20 20:09 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments
patch to print primary keys underlined (874 bytes, patch)
2005-12-18 14:40 UTC, Matthias Kretz
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Matthias Kretz 2005-12-18 14:38:07 UTC
Version:           unknown (using KDE 3.5.0, Kubuntu Package 4:3.5.0-0ubuntu0breezy1 breezy)
Compiler:          Target: i486-linux-gnu
OS:                Linux (i686) release 2.6.12-10-686

The classical way to draw ER diagrams shows attributes as ellipses with primary keys underlined. To make sense of an ER diagram it is often necessary to see which attributes are primary keys.
Umbrello's ER diagrams don't mark primary keys at all. Other programs show a key next to the attribute name, which would solve the problem as well.
I'd suggest to just show the primary key attribute names underlined.

Patch follows.
Comment 1 Matthias Kretz 2005-12-18 14:40:33 UTC
Created attachment 13971 [details]
patch to print primary keys underlined
Comment 2 Oliver Kellogg 2005-12-18 17:41:33 UTC
Looks fine to me, please commit.
Thanks for your work on the ER stuff - it's badly in need of improvement :)
Comment 3 Oliver Kellogg 2005-12-20 20:09:05 UTC
SVN commit 490084 by okellogg:

draw(): Patch from Matthias Kretz displays primary keys underlined.
BUG:118570


 M  +1 -1      ChangeLog  
 M  +8 -0      umbrello/entitywidget.cpp  


--- branches/KDE/3.5/kdesdk/umbrello/ChangeLog #490083:490084
@@ -1,7 +1,7 @@
 Version 1.5.1
 
 * Bugs fixed / wishes implemented (see http://bugs.kde.org)
-109963 117875 117791
+109963 117791 117875 117990 118570
 
 Version 1.5
 
--- branches/KDE/3.5/kdesdk/umbrello/umbrello/entitywidget.cpp #490083:490084
@@ -104,8 +104,16 @@
     for (entityattribute = list.first(); entityattribute; entityattribute = list.next()) {
         QString text = entityattribute->getName();
         p.setPen( QPen(Qt::black) );
+        UMLEntityAttribute* casted = dynamic_cast<UMLEntityAttribute*>( entityattribute );
+        if( casted && casted->getIndexType() == Uml::Primary )
+        {
+            font.setUnderline( true );
+            p.setFont( font );
+            font.setUnderline( false );
+        }
         p.drawText(offsetX + ENTITY_MARGIN, offsetY + y,
                    fontMetrics.width(text), fontHeight, Qt::AlignVCenter, text);
+        p.setFont( font );
         y+=fontHeight;
     }