kivio_sml_stencil_spawner.h
1/*
2 * Kivio - Visual Modelling and Flowcharting
3 * Copyright (C) 2000-2001 theKompany.com & Dave Marotti
4 *
5 * This program is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU General Public License
7 * as published by the Free Software Foundation; either version 2
8 * of the License, or (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
18 */
19#ifndef KIVIO_SML_STENCIL_SPAWNER_H
20#define KIVIO_SML_STENCIL_SPAWNER_H
21
22#include <tqdom.h>
23#include <tqptrlist.h>
24#include <tqstring.h>
25
26#include "kivio_stencil_spawner.h"
27
28class KivioStencilSpawnerSet;
29class KivioStencil;
30class KivioSMLStencil;
31class KivioConnectorTarget;
32class TQPainter;
33class TQPixmap;
34class TQRect;
35
36class KivioSMLStencilSpawner : public KivioStencilSpawner
37{
38protected:
39 KivioSMLStencil *m_pStencil;
40 TQString m_filename;
41
42 // Target list
43 TQPtrList<KivioConnectorTarget>*m_pTargets;
44
45protected:
46 void loadShape( TQDomNode & );
47 TQString readDesc( const TQString & );
48
49public:
50 KivioSMLStencilSpawner( KivioStencilSpawnerSet * );
51 virtual ~KivioSMLStencilSpawner();
52
53 virtual bool load( const TQString & );
54 virtual bool loadXML( const TQString &, TQDomDocument & );
55
56 virtual TQDomElement saveXML( TQDomDocument & );
57
58 virtual TQString &filename() { return m_filename; }
59
60 virtual KivioStencil *newStencil();
61
62 TQPtrList <KivioConnectorTarget> *targets() { return m_pTargets; }
63};
64
65#endif
66
67