packages: tcm/tcm-TSQD.patch (NEW) - TSQD support generated from debian sou...

baggins baggins at pld-linux.org
Fri Apr 15 14:06:08 CEST 2011


Author: baggins                      Date: Fri Apr 15 12:06:08 2011 GMT
Module: packages                      Tag: HEAD
---- Log message:
- TSQD support generated from debian sources (upstream no longer available)

---- Files affected:
packages/tcm:
   tcm-TSQD.patch (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: packages/tcm/tcm-TSQD.patch
diff -u /dev/null packages/tcm/tcm-TSQD.patch:1.1
--- /dev/null	Fri Apr 15 14:06:08 2011
+++ packages/tcm/tcm-TSQD.patch	Fri Apr 15 14:06:03 2011
@@ -0,0 +1,21184 @@
+diff -urN tcm-2.20/bin/linkx tcm-2.20+TSQD.orig/bin/linkx
+--- tcm-2.20/bin/linkx	2003-01-09 16:29:24.000000000 +0100
++++ tcm-2.20+TSQD.orig/bin/linkx	2004-07-21 20:04:40.000000000 +0200
+@@ -4,7 +4,7 @@
+ }
+ cd $TCM_HOME/bin
+ 
+-DFILES="tgd terd tesd tcrd tssd tucd tatd tstd trpg tpsd tdfd tefd tsnd tgtt tfrt tcpd tdpd tcbd tscd"
++DFILES="tgd terd tesd tcrd tssd tsqd tucd tatd tstd trpg tpsd tdfd tefd tsnd tgtt tfrt tcpd tdpd tcbd tscd"
+ TFILES="tgt ttut ttdt tfet"
+ 
+ # remove TCM tool executables and make softlinks
+diff -urN tcm-2.20/bin/linky tcm-2.20+TSQD.orig/bin/linky
+--- tcm-2.20/bin/linky	2003-01-10 11:17:01.000000000 +0100
++++ tcm-2.20+TSQD.orig/bin/linky	2004-07-21 20:04:58.000000000 +0200
+@@ -5,7 +5,7 @@
+ cd $TCM_HOME/bin
+ 
+ GDFILES="tgd"
+-DVFILES="terd tesd tcrd tssd tucd tcbd"
++DVFILES="terd tesd tcrd tssd tucd tcbd tsqd"
+ BVFILES="tatd tstd trpg tpsd tscd"
+ FVFILES="tdfd tefd tsnd"
+ TRILES="tgtt tfrt"
+diff -urN tcm-2.20/doc/developersguide/TechDoc.html tcm-2.20+TSQD.orig/doc/developersguide/TechDoc.html
+--- tcm-2.20/doc/developersguide/TechDoc.html	2003-01-07 16:27:55.000000000 +0100
++++ tcm-2.20+TSQD.orig/doc/developersguide/TechDoc.html	1970-01-01 01:00:00.000000000 +0100
+@@ -1,158 +0,0 @@
+-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+-<!--Converted with LaTeX2HTML 98.1p1 release (March 2nd, 1998)
+-originally by Nikos Drakos (nikos at cbl.leeds.ac.uk), CBLU, University of Leeds
+-* revised and updated by:  Marcus Hennecke, Ross Moore, Herb Swan
+-* with significant contributions from:
+-  Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
+-<HTML>
+-<HEAD>
+-<TITLE>Toolkit for Conceptual Modeling (TCM) Design and Implementation for version 2.01</TITLE>
+-<META NAME="description" CONTENT="Toolkit for Conceptual Modeling (TCM) Design and Implementation for version 2.01">
+-<META NAME="keywords" CONTENT="TechDoc">
+-<META NAME="resource-type" CONTENT="document">
+-<META NAME="distribution" CONTENT="global">
+-<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
+-<LINK REL="STYLESHEET" HREF="TechDoc.css">
+-<LINK REL="next" HREF="developersguidenode1.html">
+-</HEAD>
+-<BODY >
+-<!--Navigation Panel-->
+-<A NAME="tex2html194"
+- HREF="developersguidenode1.html">
+-<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next_motif.gif"></A> 
+-<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up_motif_gr.gif"> 
+-<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="previous_motif_gr.gif"> 
+-<A NAME="tex2html193"
+- HREF="developersguidenode1.html">
+-<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents_motif.gif"></A>  
+-<BR>
+-<B> Next:</B> <A NAME="tex2html195"
+- HREF="developersguidenode1.html">Contents</A>
+-<BR>
+-<BR>
+-<!--End of Navigation Panel-->
+-
+-<H1 ALIGN="CENTER">
+-<!-- MATH: $\includegraphics{p/Teapot2a.ps}$ -->
+-<IMG
+- WIDTH="145" HEIGHT="93" ALIGN="BOTTOM" BORDER="0"
+- SRC="developersguideimg1.gif"
+- ALT="\includegraphics{p/Teapot2a.ps}">
+-<BR>
+-Toolkit for Conceptual Modeling (TCM) <BR>
+-Design and Implementation <BR>
+-<FONT SIZE="-1">for version 2.01</FONT></H1>
+-<P ALIGN="CENTER"><STRONG><TABLE CELLPADDING=3>
+-<TR><TD ALIGN="CENTER">Frank Dehne</TD><TD ALIGN="CENTER">Henk R. van de Zandschulp</TD>
+-</TR>
+-<TR><TD ALIGN="CENTER"><FONT SIZE="-1">Division of Mathematics and Computer Science </FONT></TD><TD ALIGN="CENTER"><FONT SIZE="-1">Department of Computer Science </FONT></TD>
+-</TR>
+-<TR><TD ALIGN="CENTER"><FONT SIZE="-1">Faculty of Sciences, Vrije Universiteit </FONT></TD><TD ALIGN="CENTER"><FONT SIZE="-1">University of Twente </FONT></TD>
+-</TR>
+-<TR><TD ALIGN="CENTER"><FONT SIZE="-1">De Boelelaan 1081a, 1081 HV Amsterdam </FONT></TD><TD ALIGN="CENTER"><FONT SIZE="-1">P.O. Box 217, 7500 AE Enschede </FONT></TD>
+-</TR>
+-<TR><TD ALIGN="CENTER"><FONT SIZE="-1">The Netherlands </FONT></TD><TD ALIGN="CENTER"><FONT SIZE="-1">The Netherlands </FONT></TD>
+-</TR>
+-<TR><TD ALIGN="CENTER"><FONT SIZE="-1">frank at cs.vu.nl </FONT></TD><TD ALIGN="CENTER"><FONT SIZE="-1">henkz at cs.utwente.nl
+-</FONT></TD>
+-</TR>
+-</TABLE></STRONG></P>
+-<P ALIGN="CENTER"><STRONG>February 12, 2001</STRONG></P>
+-<P ALIGN="LEFT"></P>
+-
+-<P>
+-<BR><HR>
+-<!--Table of Child-Links-->
+-<A NAME="CHILD_LINKS"> </A>
+-<UL>
+-<LI><A NAME="tex2html196"
+- HREF="developersguidenode1.html">Contents</A>
+-<LI><A NAME="tex2html197"
+- HREF="developersguidenode2.html">1. Introduction</A>
+-<LI><A NAME="tex2html198"
+- HREF="developersguidenode3.html">2. System Architecture</A>
+-<LI><A NAME="tex2html199"
+- HREF="developersguidenode4.html">3. Source Code Organization</A>
+-<UL>
+-<LI><A NAME="tex2html200"
+- HREF="developersguidenode4.html#SECTION00410000000000000000">3.1 Source code versus design criteria</A>
+-<LI><A NAME="tex2html201"
+- HREF="developersguidenode4.html#SECTION00420000000000000000">3.2 Individual files and directories</A>
+-<LI><A NAME="tex2html202"
+- HREF="developersguidenode4.html#SECTION00430000000000000000">3.3 Object libraries</A>
+-</UL>
+-<LI><A NAME="tex2html203"
+- HREF="developersguidenode5.html">4. TCM User Interface</A>
+-<UL>
+-<LI><A NAME="tex2html204"
+- HREF="developersguidenode5.html#SECTION00510000000000000000">4.1 X/Motif user interface</A>
+-<LI><A NAME="tex2html205"
+- HREF="developersguidenode5.html#SECTION00520000000000000000">4.2 User interface implementation</A>
+-<UL>
+-<LI><A NAME="tex2html206"
+- HREF="developersguidenode5.html#SECTION00521000000000000000">4.2.1 Overview</A>
+-<LI><A NAME="tex2html207"
+- HREF="developersguidenode5.html#SECTION00522000000000000000">4.2.2 Application startup</A>
+-<LI><A NAME="tex2html208"
+- HREF="developersguidenode5.html#SECTION00523000000000000000">4.2.3 Main window structure</A>
+-<LI><A NAME="tex2html209"
+- HREF="developersguidenode5.html#SECTION00524000000000000000">4.2.4 Calling functions from the user interface</A>
+-</UL>
+-<LI><A NAME="tex2html210"
+- HREF="developersguidenode5.html#SECTION00530000000000000000">4.3 Xlib drawing</A>
+-</UL>
+-<LI><A NAME="tex2html211"
+- HREF="developersguidenode6.html">5. TCM Class Hierarchy</A>
+-<LI><A NAME="tex2html212"
+- HREF="developersguidenode7.html">6. Output Files</A>
+-<UL>
+-<LI><A NAME="tex2html213"
+- HREF="developersguidenode7.html#SECTION00710000000000000000">6.1 PostScript output</A>
+-<UL>
+-<LI><A NAME="tex2html214"
+- HREF="developersguidenode7.html#SECTION00711000000000000000">6.1.1 Plain PostScript</A>
+-<UL>
+-<LI><A NAME="tex2html215"
+- HREF="developersguidenode7.html#SECTION00711100000000000000">6.1.1.1 Header</A>
+-<LI><A NAME="tex2html216"
+- HREF="developersguidenode7.html#SECTION00711200000000000000">6.1.1.2 Pages</A>
+-</UL>
+-<LI><A NAME="tex2html217"
+- HREF="developersguidenode7.html#SECTION00712000000000000000">6.1.2 Encapsulated PostScript</A>
+-<LI><A NAME="tex2html218"
+- HREF="developersguidenode7.html#SECTION00713000000000000000">6.1.3 PSGrafport</A>
+-</UL>
+-<LI><A NAME="tex2html219"
+- HREF="developersguidenode7.html#SECTION00720000000000000000">6.2 TCM file format</A>
+-</UL>
+-<LI><A NAME="tex2html220"
+- HREF="developersguidenode8.html">7. Compiling and Porting TCM</A>
+-<UL>
+-<LI><A NAME="tex2html221"
+- HREF="developersguidenode8.html#SECTION00810000000000000000">7.1 Compiling TCM</A>
+-<UL>
+-<LI><A NAME="tex2html222"
+- HREF="developersguidenode8.html#SECTION00811000000000000000">7.1.1 Compilation configuration files</A>
+-<LI><A NAME="tex2html223"
+- HREF="developersguidenode8.html#SECTION00812000000000000000">7.1.2 Makefiles</A>
+-</UL>
+-<LI><A NAME="tex2html224"
+- HREF="developersguidenode8.html#SECTION00820000000000000000">7.2 Porting TCM</A>
+-<LI><A NAME="tex2html225"
+- HREF="developersguidenode8.html#SECTION00830000000000000000">7.3 G++ specific problems</A>
+-</UL>
+-<LI><A NAME="tex2html226"
+- HREF="developersguidenode9.html">8. Wish List and Future Plans</A>
+-<LI><A NAME="tex2html227"
+- HREF="developersguidenode10.html">Bibliography</A>
+-<LI><A NAME="tex2html228"
+- HREF="developersguidenode11.html">About this document ... </A>
+-</UL>
+-<!--End of Table of Child-Links-->
+-<BR><HR>
+-<ADDRESS>
+-<I>Henk van de Zandschulp</I>
+-<BR><I>2003-01-07</I>
+-</ADDRESS>
+-</BODY>
+-</HTML>
+diff -urN tcm-2.20/FILEMAP tcm-2.20+TSQD.orig/FILEMAP
+--- tcm-2.20/FILEMAP	2003-01-09 16:11:33.000000000 +0100
++++ tcm-2.20+TSQD.orig/FILEMAP	2004-07-21 20:01:26.000000000 +0200
+@@ -15,7 +15,7 @@
+ 
+ TCM_BIN (e.g. bin/)
+         tcm     (TCM startup program).
+- 
++
+         tatd    (Tool for UML Activity Diagrams).
+         tcbd    (Tool for UML Collaboration Diagrams).
+         tcpd    (Tool for UML Component Diagrams).
+@@ -35,11 +35,12 @@
+         tscd    (Tool for UML Statechart Diagrams).
+         tsnd    (Tool for System Network Diagrams).
+         tssd    (Tool for UML Static Structure Diagrams).
++	tsqd    (Tool for UML Sequence Diagrams).
+         tstd    (Tool for State Transition Diagrams).
+         ttdt    (Tool for Transaction Decomposition Tables).
+         ttut    (Tool for Transaction Use Tables).
+         tucd    (Tool for UML Use-Case Diagrams).
+- 
++
+         psf     (PostScript filter script in Perl).
+         text2ps (program that converts ASCII to PostScript).
+ 
+diff -urN tcm-2.20/lib/TCM tcm-2.20+TSQD.orig/lib/TCM
+--- tcm-2.20/lib/TCM	2003-01-10 11:13:14.000000000 +0100
++++ tcm-2.20+TSQD.orig/lib/TCM	2004-07-21 20:10:06.000000000 +0200
+@@ -60,7 +60,7 @@
+ TCM*StartupWindow*TATD.Background:	light blue
+ TCM*StartupWindow*TSCD.Background: 	light blue
+ TCM*StartupWindow*TCBD.Background:	light blue
+-TCM*StartupWindow*TSQD.Background:	light gray
++TCM*StartupWindow*TSQD.Background:	light blue
+ TCM*StartupWindow*TCPD.Background:	light blue
+ TCM*StartupWindow*TDPD.Background:	light blue
+ TCM*StartupWindow*TESD.Background:	light yellow
+@@ -91,7 +91,7 @@
+ 
+ #else
+ 
+-!! Monchrome resource. This is used when you have a black 
++!! Monchrome resource. This is used when you have a black
+ !! and white display.
+ TCM*Background:				white
+ #endif
+@@ -107,7 +107,7 @@
+ TCM*DocumentType.fontList:  	-*-helvetica-bold-r-*--12-*
+ TCM*StatusText.fontList: 	-*-helvetica-medium-r-*--11-*
+ 
+-!! Fonts used for TCM startup_window program. 
++!! Fonts used for TCM startup_window program.
+ TCM*StartupWindow*fontList: -*-helvetica-bold-r-*--12-*
+ TCM*StartupWindow*statusBar.fontList: -*-helvetica-medium-r-*--10-*
+ 
+diff -urN tcm-2.20/src/bitmaps/FOCBox.xbm tcm-2.20+TSQD.orig/src/bitmaps/FOCBox.xbm
+--- tcm-2.20/src/bitmaps/FOCBox.xbm	1970-01-01 01:00:00.000000000 +0100
++++ tcm-2.20+TSQD.orig/src/bitmaps/FOCBox.xbm	2002-02-28 11:56:35.000000000 +0100
+@@ -0,0 +1,12 @@
++#define FOCBox_width 32
++#define FOCBox_height 32
++static unsigned char FOCBox_bits[] = {
++ 0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,
++ 0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0xe0,0x0f,0x00,0x00,0x20,
++ 0x08,0x00,0x00,0x20,0x08,0x00,0x00,0x20,0x08,0x00,0x00,0x20,0x08,0x00,0x00,
++ 0x20,0x08,0x00,0x00,0x20,0x08,0x00,0x00,0x20,0x08,0x00,0x00,0x20,0x08,0x00,
++ 0x00,0x20,0x08,0x00,0x00,0x20,0x08,0x00,0x00,0x20,0x08,0x00,0x00,0x20,0x08,
++ 0x00,0x00,0x20,0x08,0x00,0x00,0x20,0x08,0x00,0x00,0x20,0x08,0x00,0x00,0x20,
++ 0x08,0x00,0x00,0x20,0x08,0x00,0x00,0x20,0x08,0x00,0x00,0xe0,0x0f,0x00,0x00,
++ 0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,
++ 0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00};
+diff -urN tcm-2.20/src/dg/anchorpoint.c tcm-2.20+TSQD.orig/src/dg/anchorpoint.c
+--- tcm-2.20/src/dg/anchorpoint.c	1970-01-01 01:00:00.000000000 +0100
++++ tcm-2.20+TSQD.orig/src/dg/anchorpoint.c	2001-08-03 09:23:49.000000000 +0200
+@@ -0,0 +1,61 @@
++////////////////////////////////////////////////////////////////////////////////
++//
++// This file is part of Toolkit for Conceptual Modeling (TCM).
++// (c) copyright 2001, University of Twente
++// Author: Henk van de Zandschulp (henkz at cs.utwente.nl)
++//
++// TCM is free software; you can redistribute it and/or modify
++// it under the terms of the GNU General Public License as published by
++// the Free Software Foundation; either version 2 of the License, or
++// (at your option) any later version.
++//
++// TCM is distributed in the hope that it will be useful,
++// but WITHOUT ANY WARRANTY; without even the implied warranty of
++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++// GNU General Public License for more details.
++//
++// You should have received a copy of the GNU General Public License
++// along with TCM; if not, write to the Free Software
++// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
++// 02111-1307, USA.
++////////////////////////////////////////////////////////////////////////////////
++#include "anchorpoint.h"
++#include "lstring.h"
++
++void AnchorPoint::Type2String(AnchorType t, string *s) {
++	if (t == START_FOC)
++		*s = "StartFOC";
++	else if (t == END_FOC)
++		*s = "End_FOC";
++	else if (t == START_ANCHOR)
++		*s = "StartAnchor";
++	else if (t == END_ANCHOR)
++		*s = "EndAnchor";
++	else if (t == MULTI_ANCHOR)
++		*s = "MultiAnchor";
++	else if (t == NON_DESTR_END)
++		*s = "NonDestructiveEnd";
++	else if (t == DESTR_END)
++		*s = "DestructiveEnd";
++	else 
++		*s = "None";
++}
++ 
++AnchorPoint::AnchorType AnchorPoint::String2Type(const string *s) {
++	if (*s %= "StartFOC")
++		return START_FOC;
++	if (*s %= "End_FOC")
++		return END_FOC;
++	if (*s %= "StartAnchor")
++		return START_ANCHOR;
++	if (*s %= "EndAnchor")
++		return END_ANCHOR;
++	if (*s %= "MultiAnchor")
++		return MULTI_ANCHOR;
++	if (*s %= "NonDestructiveEnd")
++		return NON_DESTR_END;
++	if (*s %= "DestructiveEnd")
++		return DESTR_END;
++	else 
++		return NONE;
++}
+diff -urN tcm-2.20/src/dg/anchorpoint.h tcm-2.20+TSQD.orig/src/dg/anchorpoint.h
+--- tcm-2.20/src/dg/anchorpoint.h	1970-01-01 01:00:00.000000000 +0100
++++ tcm-2.20+TSQD.orig/src/dg/anchorpoint.h	2001-08-03 16:25:45.000000000 +0200
+@@ -0,0 +1,65 @@
++//------------------------------------------------------------------------------
++// 
++// This file is part of Toolkit for Conceptual Modeling (TCM).
++// (c) copyright 2001, University of Twente
++// Author: Henk van de Zandschulp (henkz at cs.utwente.nl)
++//
++// TCM is free software; you can redistribute it and/or modify
++// it under the terms of the GNU General Public License as published by
++// the Free Software Foundation; either version 2 of the License, or
++// (at your option) any later version. 
++// 
++// TCM is distributed in the hope that it will be useful,
++// but WITHOUT ANY WARRANTY; without even the implied warranty of
++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++// GNU General Public License for more details.
++//
++// You should have received a copy of the GNU General Public License
++// along with TCM; if not, write to the Free Software
++// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
++// 02111-1307, USA.
++//-----------------------------------------------------------------------------
++#ifndef _ANCHORPOINT_H
++#define _ANCHORPOINT_H
++
++#include "lstring.h"
++
++/// anchorpoint to attach to 
++class AnchorPoint {
++/*@Doc: {\large {\bf scope:} diagram} */
++public:
++	///
++	enum AnchorType { NONE, START_FOC, END_FOC, 
++			START_ANCHOR, END_ANCHOR, MULTI_ANCHOR, NON_DESTR_END, DESTR_END};
++
++	/// Construct and initialize message.
++	AnchorPoint(int o, AnchorType a = NONE) {
++			offset = o; anchorType = a; }
++
++	/// Construct and initialize message.
++	AnchorPoint(int o) {
++			offset = o; anchorType = NONE; }
++
++	/// set offset 
++	void SetOffset(int o) {offset = o;} 
++	///
++	int GetOffset() const {return offset;}
++
++	/// set anchor type
++	void SetAnchorType(AnchorType t) {anchorType = t;} 
++	///
++	AnchorPoint::AnchorType GetAnchorType() const {return anchorType;}
++
++	/// e.g. convert "NonDestructiveEnd" to NON_DESTR_END.
++	static AnchorPoint::AnchorType String2Type(const string *s);
++
++	/// e.g. convert DESTR_END to "DestructiveEnd".
++	static void Type2String(AnchorType t, string *s);
++
++private:
++	///
++	int offset;
++	///
++	AnchorType anchorType;
++};
++#endif
+diff -urN tcm-2.20/src/dg/anchorpointnode.c tcm-2.20+TSQD.orig/src/dg/anchorpointnode.c
+--- tcm-2.20/src/dg/anchorpointnode.c	1970-01-01 01:00:00.000000000 +0100
++++ tcm-2.20+TSQD.orig/src/dg/anchorpointnode.c	2004-03-25 14:13:50.000000000 +0100
+@@ -0,0 +1,117 @@
++////////////////////////////////////////////////////////////////////////////////
++//
++// This file is part of Toolkit for Conceptual Modeling (TCM).
++// (c) copyright 2001, University of Twente
++// Author: Henk van de Zandschulp (henkz at cs.utwente.nl)
++//
++// TCM is free software; you can redistribute it and/or modify
++// it under the terms of the GNU General Public License as published by
++// the Free Software Foundation; either version 2 of the License, or
++// (at your option) any later version.
++//
++// TCM is distributed in the hope that it will be useful,
++// but WITHOUT ANY WARRANTY; without even the implied warranty of
++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++// GNU General Public License for more details.
++//
++// You should have received a copy of the GNU General Public License
++// along with TCM; if not, write to the Free Software
++// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
++// 02111-1307, USA.
++////////////////////////////////////////////////////////////////////////////////
++#include "inputfile.h"
++#include "outputfile.h"
++#include "lstring.h"
++#include "node.h"
++#include "anchorpointnode.h"
++#include "anchorpoint.h"
++
++AnchorPointNode::AnchorPointNode(Graph *g): Node(g) {
++	anchors = new List<AnchorPoint *>;
++}
++
++AnchorPointNode::AnchorPointNode(const AnchorPointNode &s): Node(s) {
++	anchors = new List<AnchorPoint *>;
++	for (s.anchors->first(); !s.anchors->done(); 
++			s.anchors->next()) {
++		AnchorPoint *a = s.anchors->cur();
++		anchors->add(new AnchorPoint(*a));
++	}
++}
++
++AnchorPointNode::~AnchorPointNode() {
++	anchors->clear();
++	delete anchors;
++}
++
++bool AnchorPointNode::HasAnchor(const AnchorPoint *p) {
++	for (anchors->first(); !anchors->done(); anchors->next()) {
++                if (anchors->cur()->GetOffset() == p->GetOffset())
++                        return True;
++        }
++        return False;
++}
++
++AnchorPointNode::AnchorErrorType AnchorPointNode::SetAnchor(
++                const AnchorPoint *p, unsigned n, bool update) {
++//HZ	StringList::Insert(anchors, p, n, update);
++        return AnchorPointNode::ANCHOR_OK;
++}
++
++bool AnchorPointNode::ReadMembers(InputFile *ifile, double format) {
++	if (!Node::ReadMembers(ifile, format))
++		return False;
++	string val;
++	if (!ifile->ReadAttribute("anchors", &val))
++		return False;
++	int numItems = val.toint();
++	for (int i=0; i<numItems; i++) {
++
++		// read position of the textShape1 text shape.
++		string val1, val2;
++		if (!ifile->ReadAttribute2("anchor", &val1, &val2))
++			return False;
++
++		int x = val1.toint();
++		AnchorPoint::AnchorType at = AnchorPoint::String2Type(&val2);
++
++		AnchorPoint ap = AnchorPoint(x, at);
++		AnchorPoint *pap = new AnchorPoint(x, at);
++
++		anchors->add(&ap);
++		anchors->add(pap);
++
++	}
++
++
++std::cout << "AnchorPoints {" << numItems << "} are : " << std::endl << std::flush;
++	string x;
++	for (int i=0; i<(int) numItems; i++) {
++
++
++		AnchorPoint::Type2String((*anchors)[i]->GetAnchorType(), &x);
++std::cout << "\t Anchor " << i <<
++	"\t Offset = " << (int) (*anchors)[i]->GetOffset() << 
++	"\t Type   = " << (int) (*anchors)[i]->GetAnchorType() << 
++	"\t SType  = " << x <<
++
++std::endl << std::flush;
++	}
++
++
++	return True;
++}
++
++void AnchorPointNode::WriteMembers(OutputFile *ofile) {
++	Node::WriteMembers(ofile);
++	int numItems = anchors->count();
++	(*ofile) << "\t{ anchors " << numItems << " }\n";
++	for (int i=0; i<numItems; i++) {
++		(*ofile) << "\t{ anchor " << (int) (*anchors)[i]->GetOffset() << 
++			" " << (int) (*anchors)[i]->GetAnchorType() << " }\n";
++	}
++}
++
++
++
++
+diff -urN tcm-2.20/src/dg/anchorpointnode.h tcm-2.20+TSQD.orig/src/dg/anchorpointnode.h
+--- tcm-2.20/src/dg/anchorpointnode.h	1970-01-01 01:00:00.000000000 +0100
++++ tcm-2.20+TSQD.orig/src/dg/anchorpointnode.h	2001-08-03 16:31:50.000000000 +0200
+@@ -0,0 +1,66 @@
++//------------------------------------------------------------------------------
++//
++// This file is part of Toolkit for Conceptual Modeling (TCM).
++// (c) copyright 2001, University of Twente
++// Author: Henk van de Zandschulp (henkz at cs.utwente.nl)
++//
++// TCM is free software; you can redistribute it and/or modify
++// it under the terms of the GNU General Public License as published by
++// the Free Software Foundation; either version 2 of the License, or
++// (at your option) any later version.
++//
++// TCM is distributed in the hope that it will be useful,
++// but WITHOUT ANY WARRANTY; without even the implied warranty of
++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++// GNU General Public License for more details.
++//
++// You should have received a copy of the GNU General Public License
++// along with TCM; if not, write to the Free Software
++// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
++// 02111-1307, USA.
++//-----------------------------------------------------------------------------
++#ifndef _ANCHORPOINTNODE_H
++#define _ANCHORPOINTNODE_H
++
++#include "node.h"
++#include "anchorpoint.h"
++
++/// A node that has an extra list of anchorpoints.
++class AnchorPointNode: public Node {
++/*@Doc: {\large {\bf scope:} diagram} */
++public:
++	///
++	AnchorPointNode(Graph *g);
++	///
++	AnchorPointNode(const AnchorPointNode &a);
++	///
++	virtual ~AnchorPointNode();
++	///
++	Subject *Clone() {return new AnchorPointNode(*this);}
++	///
++	Subject::NameErrType SetName(const string *name);
++	///
++	enum AnchorErrorType {
++		ANCHOR_OK, ANCHOR_SYNTAX_ERROR, ANCHOR_ALREADY_EXISTS};
++	///
++	virtual AnchorPointNode::AnchorErrorType SetAnchor(
++		const AnchorPoint *p, unsigned n, bool update); 
++	///
++	const AnchorPoint *GetAnchor(unsigned n) 
++		{return ((n < anchors->count()) ? (*anchors)[n] : 0);}
++	///
++	unsigned NrAnchors() {return anchors->count();}
++	///
++	bool HasAnchor(const AnchorPoint *p);
++	///
++	void WriteMembers(OutputFile *f);
++	///
++	bool ReadMembers(InputFile *f, double format);
++protected:
++	///
++	List<AnchorPoint *> *GetAnchors() {return anchors;}
++private:
++	///
++	List<AnchorPoint *> *anchors;
++};
++#endif
+diff -urN tcm-2.20/src/dg/createedgecmd.h tcm-2.20+TSQD.orig/src/dg/createedgecmd.h
+--- tcm-2.20/src/dg/createedgecmd.h	2003-01-09 15:52:42.000000000 +0100
++++ tcm-2.20+TSQD.orig/src/dg/createedgecmd.h	2004-07-21 20:22:43.000000000 +0200
+@@ -57,6 +57,12 @@
+ 	void AddPoint(Point *pt) {points->add(new Point(pt->x, pt->y));}
+ 	///
+ 	void EraseLines();
++	/// for TSQD
<<Diff was trimmed, longer than 597 lines>>


More information about the pld-cvs-commit mailing list