Can anyone give me a hint about how I can increase the number of connection points on the top/bottom of a Class in the UML set?You'd need to fix the following places (line numbers from newest CVS): class.c:188 (change assert) class.c:452 (umlclass_update_data setting connection pos) class.c:716 (more connection points allocated) class.c:749 (bound of for over connections) class.c:945 (bound of for over connections) class.c:955 (start of extra connections) class.c:1239 (umlclass_load doing element_init) class.c:1251 (... and setting up connections) class.c:1257 (... starting extra connections) Probably a good idea to have a define for the number of normal connections.
Okay. I've built a patchset (10k, attached) on objects/UML/class.[hc]. What this allows: A #define inside class.c allows anywhere from 8 to 32 connection points on the class in 4-point increments. I've tested it with 16 and 20 connection points and it works fine. I left it at 20 for the patch. Problem: If you load up a schema you built with the old 8-point tool, and the new tool has >8 connection points, once you click on the class, the relationships between the classes (or whatever you had connected to a connection point) go to wierd locations. I can't imagine what would happen if you built a schema on a >X point dia and tried to load it in an X-point dia. I assume segfaults. Thus, there must be some tool written that converts from the X-point to Y-point versions of the program in case anyone has a huge schema already built and wants the new number of connection points. I'm not sure how to go about this, but I imagine I could write a Perl script to do it. Ideas? It might actually be wise to revise my patch to make the first 8 points always be the four corners and four centrepoints between the corners, then the additional points be the rest...? It would make the code more complex but would make sure upgrading from 8-point schemas to X-point schemas always works fine. Downgrading is still odd. Thanks, -- Tim Ellis DBA, Gamet
Attachment:
class-connection-point-diffs.tar
Description: Unix tar archive