root/trunk/RBSkinning/RBSkinning/dotSkin/DOTSkinObject.py

Revision 395, 2.2 kB (checked in by sholloway, 6 years ago)

Moved all references from Foundation to RBFoundation

Line 
1 #!/usr/bin/env python
2 ##~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3 ##~ License
4 ##~
5 ##- The RuneBlade Foundation library is intended to ease some
6 ##- aspects of writing intricate Jabber, XML, and User Interface (wxPython, etc.)
7 ##- applications, while providing the flexibility to modularly change the
8 ##- architecture. Enjoy.
9 ##~
10 ##~ Copyright (C) 2002  TechGame Networks, LLC.
11 ##~
12 ##~ This library is free software; you can redistribute it and/or
13 ##~ modify it under the terms of the BSD style License as found in the
14 ##~ LICENSE file included with this distribution.
15 ##~
16 ##~ TechGame Networks, LLC can be reached at:
17 ##~ 3578 E. Hartsel Drive #211
18 ##~ Colorado Springs, Colorado, USA, 80920
19 ##~
20 ##~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
21
22 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
23 #~ Imports
24 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
25
26 from RBSkinning import SkinObject
27
28 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
29 #~ Class Initialization
30 #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
31
32 class DOTSkinObject(SkinObject.SkinObject):
33     #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
34     #~ Constants / Variables / Etc.
35     #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
36
37     default_settings = SkinObject.SkinObject.default_settings.copy()
38     default_settings[SkinObject.SkinObject.BaseSettingsInherit] += 'dotDef,'
39     _DOTRelatedAttributes = {}
40
41     #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
42     #~ Protected Methods
43     #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
44
45     def _OutputDOTSettings(self, joinstr=', '):
46         result = []
47         for idx in filter(self._DOTRelatedAttributes.has_key, self.settings):
48             result.append('%s="%s"' % (idx, self.settings[idx]))
49         if joinstr is not None:
50             return joinstr.join(result)
51         else: return result
52
53     #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
54
55     def _toDOT(self, joinstr='\n', close=1):
56         result = []
57         for each in self.Elements():
58             try: toDOT = each._toDOT
59             except AttributeError: pass
60             else: result.append(toDOT(joinstr))
61         if joinstr is not None:
62             return joinstr.join(result)
63         else: return result
Note: See TracBrowser for help on using the browser.