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.
Created attachment 13971 [details] patch to print primary keys underlined
Looks fine to me, please commit. Thanks for your work on the ER stuff - it's badly in need of improvement :)
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; }