[Bio] / ModelEditor / ModelEditor Repository:
ViewVC logotype

View of /ModelEditor/ModelEditor

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.6 - (download) (annotate)
Fri Nov 19 23:22:49 2004 UTC (14 years, 6 months ago) by efrank
Branch: MAIN
Changes since 1.5: +2 -2 lines
migrate FoundryId to FoundryInfo.

rewrite base object model classes in KahOM and FoundryId to use SchemaTools
   for their data nuggets.

code runs package level test for these two packages successfully.

everything else is now broken.....

we'r ready for the migration.

#!/usr/bin/env python

#import signal
from wxPython.wx import *

from ModelEditor.MainLayout        import MainLayout 
from ModelEditor.RXpanel           import RXPanel
from ModelEditor.RecoElempanel     import RecoElempanel
from ModelEditor.Catalogpanel      import Catalogpanel
from ModelEditor.MetabolitePanel   import MetabolitePanel
from ModelEditor.EnzymeWindow      import EnzymeWindow
from ModelEditor.HelpPanel         import HelpPanel
from ModelEditor.FontManager       import FontManager
from ModelEditor.MainMenuBar       import MainMenuBar
from FaST.BssFactory         import BssFactory
from CatalogServices.Catalog import Catalog

#need to change panel to Panel. lower case panel is already in cvs.

from wxPython.grid import *


class MyApp(wxApp):
    def OnInit(self):
        frame = Gui(None, -1, "test")
        frame.Show()
        return 1


class Gui(MainLayout):
  
    def __init__(self, *args, **kwds):

        #self.factoryMgr = None
        MainLayout.__init__(self, *args, **kwds)

        self.rootId        = None        # root ID for recoelem tree.  why here??
        self.catalogRootId = None        # root ID for catalog tree.
        self.fontManager    = FontManager(self)
        self.mainMenuBar    = MainMenuBar(self)
	self.rx             = RXPanel(self)
        self.re             = RecoElempanel(self)
        self.cat            = Catalogpanel(self)
        self.met            = MetabolitePanel(self)
        self.enzyme         = EnzymeWindow(self)
        self.help           = HelpPanel(self)
        self.meAGMgr        = None       #MeAGMgr instance to manage ag issues
        
        EVT_CLOSE(self, self.mainMenuBar.exitApp)

        #signal.signal(signal.SIGINT, self.signalHandler)
        #signal.signal(signal.SIGTERM, self.signalHandler)
        #signal.signal(signal.SIGHUP, self.signalHandler)

        try:
            b = BssFactory('biosimscratch/bss@db02', 'oracle' )
            #b = BssFactory('pgsql.mcs.anl.gov:5432:kahdb:trust:inme', "postgres")
            #b = BssFactory('porta-video:5432:KahSCDb:trust:inme', "postgres")
            #b = BssFactory('fl-gentoo-test:5432:KahSCDb:trust:inme', "postgres")
	    #b = BssFactory('140.221.204.254:5432:KahSCDb:trust:inme', "postgres")
            Catalog.instance().addDataFactory( b)
        except NotImplementedError:
            pass

        return

    def error( self, message):
        dlg = wxMessageDialog(self, message, style=wxOK)
        dlg.ShowModal()
        dlg.Destroy()
        return

    #------------------------------------------------------------------------
    def signalHandler(self, signum, frame):
    #------------------------------------------------------------------------
        """
        signal handler for sigint, sigterm, and sigHUP to let us close down cleanly.
        We need to disconnect from AG.
        """

        print "ModelEditor:signalHandler: caught signal=", signum

        try:
            theMgr = self.cat.meAGMgr
            if (not theMgr == None):
                theMgr.done()
        except Exception, e:
            print e

        self.mainMenuBar.exitApp(None)
        return


########################################################################
if __name__ == "__main__":
    app = MyApp(0)     
    app.MainLoop()     


MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3