/[thuban]/branches/WIP-pyshapelib-bramz/Thuban/Model/base.py
ViewVC logotype

Annotation of /branches/WIP-pyshapelib-bramz/Thuban/Model/base.py

Parent Directory Parent Directory | Revision Log Revision Log


Revision 6 - (hide annotations)
Tue Aug 28 15:41:52 2001 UTC (23 years, 6 months ago) by bh
Original Path: trunk/thuban/Thuban/Model/base.py
File MIME type: text/x-python
File size: 1309 byte(s)
import all the source files

1 bh 6 # Copyright (c) 2001 by Intevation GmbH
2     # Authors:
3     # Bernhard Herzog <[email protected]>
4     #
5     # This program is free software under the GPL (>=v2)
6     # Read the file COPYING coming with Thuban for details.
7    
8     """
9     Various base classes that didn't fir elsewhere
10     """
11    
12     __version__ = "$Revision$"
13    
14     from Thuban.Lib.connector import Publisher
15    
16     from messages import TITLE_CHANGED
17    
18     class TitledObject:
19    
20     """Mix-in class for objects that have titles"""
21    
22     def __init__(self, title):
23     self.title = title
24    
25     def Title(self):
26     return self.title
27    
28     def SetTitle(self, title):
29     self.title = title
30     self.issue(TITLE_CHANGED, self)
31    
32    
33     class Modifiable(Publisher):
34    
35     """Class for objects maintaining a modified flag."""
36    
37     def __init__(self):
38     self.modified = 0
39    
40     def WasModified(self):
41     """Return true if the layer was modified"""
42     return self.modified
43    
44     def UnsetModified(self):
45     """Unset the modified flag"""
46     self.modified = 0
47    
48     def changed(self, channel = None, *args):
49     """Set the modified flag and issue a mesage on the given channel
50     with arguments args. Call this method whenever anything has
51     changed in a layer"""
52     self.modified = 1
53     if channel is not None:
54     apply(self.issue, (channel, args))

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26