[Bio] / PyGUI / Catalogpanel.py Repository:
ViewVC logotype

Diff of /PyGUI/Catalogpanel.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.2, Thu Jul 31 15:54:29 2003 UTC revision 1.11, Thu Sep 25 23:48:06 2003 UTC
# Line 1  Line 1 
1  from wxPython.wx import *  from wxPython.wx import *
2  from FaST.BssFactory import BssFactory  from FaST.BssFactory import BssFactory
3    from FaST.WitFactory import WitFactory
4  from FaST.RecoElem import RecoElem  from FaST.RecoElem import RecoElem
5  from RecoElempanel import RecoElemWindow  from RecoElempanel import RecoElemWindow
6    
7  class CatalogWindow:  class CatalogWindow:
8    #    def __init__(self, parent):
9    #    def initCatEvents(self ):
10    #    def initCatData( self ):
11    #    def loadBssCatalog(self, bssItemId):
12    #    def loadWitCatalog(self, witItemId):
13    #    def onLeftClick(self,treeEvent):
14    #    def onLoadBtnPress(self, event):
15    #    def bssLoader( self, bssCatEntry ):
16    #    def witOrgLoader(self,  orgName ):
17    #    def witPwyLoader(self,  pwyName ):
18    
19        #------------------------------------------------------------------------
20      def __init__(self, parent):      def __init__(self, parent):
21        #------------------------------------------------------------------------
22          self.parent = parent          self.parent = parent
23          self.to_re = parent.re          self.to_re = parent.re
24          self.selected = None       #remember last selected catalog entry          self.selected = None       #remember last selected catalog entry
25                                     #..is used when LOAD button is hit.                                     #..is used when LOAD button is hit.
26    
27            self.initCatEvents()
28            self.initCatData()
29            return
30    
31    
32        #------------------------------------------------------------------------
33        def initCatEvents(self ):
34        #------------------------------------------------------------------------
35          button1= self.parent.OK_button          button1= self.parent.OK_button
36          EVT_BUTTON(self.parent, self.parent.loadbtn.GetId(),          EVT_BUTTON(self.parent, self.parent.loadbtn.GetId(),
37                     self.onLoadBtnPress)                     self.onLoadBtnPress)
38            EVT_TREE_SEL_CHANGED(self.parent.catalog_tree,
39                                 self.parent.catalog_treeId,
40                                 self.onLeftClick)
41            EVT_LEFT_DCLICK (self.parent.catalog_tree, self.onLeftDClick)
42    
43            return
44    
45        #------------------------------------------------------------------------
46        def initCatData( self ):
47        #------------------------------------------------------------------------
48            self.parent.catalogRootId = self.parent.catalog_tree.AddRoot("Data Sources")
49    
50            bssItemId=self.parent.catalog_tree.AppendItem(self.parent.catalogRootId,
51                                                       "BioSimScratch" )
52            witItemId=self.parent.catalog_tree.AppendItem(self.parent.catalogRootId,
53                                                       "WIT3" )
54    
55            self.loadBssCatalog( bssItemId )
56            self.loadWitCatalog( witItemId )
57    
58            self.parent.catalog_tree.Expand( self.parent.catalogRootId)
59          return          return
60    
61      def InitLsCat(self):      #------------------------------------------------------------------------
62        def loadBssCatalog(self, bssItemId):
63        #------------------------------------------------------------------------
64          b=BssFactory()          b=BssFactory()
65          cpanel_list = b.getLsCat()          for catEntryTuple in b.getLsCat():
66                id=self.parent.catalog_tree.AppendItem(bssItemId, catEntryTuple[0])
67                self.parent.catalog_tree.SetPyData(id, (self.bssLoader, catEntryTuple) )
68    
69            return
70    
71        #------------------------------------------------------------------------
72        def loadWitCatalog(self, witItemId):
73        #------------------------------------------------------------------------
74            w=WitFactory()
75    
76            pwyItemId=self.parent.catalog_tree.AppendItem(witItemId, "Pathways" )
77    
78            pwyList = w.listPathways( )
79            for pwy in pwyList:
80                id=self.parent.catalog_tree.AppendItem(pwyItemId, pwy)
81                self.parent.catalog_tree.SetPyData(id, (self.witPwyLoader,pwy) )
82    
83            orgItemId=self.parent.catalog_tree.AppendItem(witItemId, "Organisms" )
84    
85            orgList = w.listOrganisms( )
86            for org in orgList:
87                id=self.parent.catalog_tree.AppendItem(orgItemId, org)
88                self.parent.catalog_tree.SetPyData(id, (self.witOrgLoader, org ))
89    
90          for x in cpanel_list:          return
91              self.parent.catalog_listbox.Append(x[0], x[1])  
92        #------------------------------------------------------------------------
93        def onLeftClick(self,treeEvent):
94        #------------------------------------------------------------------------
95            item = treeEvent.GetItem()
96    
97            catEntryTuple = self.parent.tree_ctr.GetPyData(item)
98            if (catEntryTuple == None ):
99                return
100            self.selected = catEntryTuple
101    
         EVT_LISTBOX(self.parent, self.parent.catalog_listbox.GetId(), self.onLeftClick)  
102          return          return
103        #------------------------------------------------------------------------
104        def onLeftDClick(self,treeEvent):
105        #------------------------------------------------------------------------
106            pt = treeEvent.GetPosition()
107    
108            item = self.parent.tree_ctr.HitTest(pt)
109    
110            print item
111            catEntryTuple = self.parent.tree_ctr.GetPyData(item)
112            #print catEntryTuple, "catEntryTuple"
113            #self.selected = catEntryTuple
114    
115            #catEntryTuple = self.selected
116            #apply(catEntryTuple[0], [catEntryTuple[1]])
117    
     def onLeftClick(self,event):  
         pt=self.parent.catalog_listbox.GetSelection()  
         self.selected =int (self.parent.catalog_listbox.GetClientData(pt))  
118          return          return
119    
120    
121        #------------------------------------------------------------------------
122      def onLoadBtnPress(self, event):      def onLoadBtnPress(self, event):
123        #------------------------------------------------------------------------
124            if ( self.selected == None ):
125                print "No selection in onLoadBtnPress"
126                return
127    
128            catEntryTuple = self.selected
129            apply( catEntryTuple[0], [catEntryTuple[1]] )
130    
131            return
132    
133        #------------------------------------------------------------------------
134        def bssLoader( self, bssCatEntry ):
135        #------------------------------------------------------------------------
136          wxBeginBusyCursor()          wxBeginBusyCursor()
137          b=BssFactory()          b=BssFactory()
138          top= b.getRecoElemById( self.selected )          top= b.getRecoElemById( bssCatEntry[1] )
139            self.to_re.AddRecoElemTree(self.parent.rootId, top)
140            wxEndBusyCursor()
141    
142            return
143    
144        #------------------------------------------------------------------------
145        def witOrgLoader(self,  orgName ):
146        #------------------------------------------------------------------------
147            wxBeginBusyCursor()
148            w=WitFactory()
149            top= w.getRxnByOrg( orgName )
150          self.to_re.AddRecoElemTree(self.parent.rootId, top)          self.to_re.AddRecoElemTree(self.parent.rootId, top)
151          wxEndBusyCursor()          wxEndBusyCursor()
152          return          return
153    
154        #------------------------------------------------------------------------
155        def witPwyLoader(self,  pwyName ):
156        #------------------------------------------------------------------------
157            wxBeginBusyCursor()
158            w=WitFactory()
159            top= w.getRxnByPwy( pwyName )
160            self.to_re.AddRecoElemTree(self.parent.rootId, top)
161            wxEndBusyCursor()
162            return

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.11

MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3