summaryrefslogtreecommitdiffstats
path: root/bin/commander/mainwindow.py
blob: 2e752aab818202658ae0a3beefe8b0a3325c7ae9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
#!/usr/bin/env python
# -*- coding: iso8859-15 -*-

from appinfo import *
from packageview import *
from mainwindowbase import *
from aboutdialog import *
from provideritem import *
from packages import Packages
from pythonshell import EPythonShell
from oe import *

class MainWindow( MainWindowBase ):

    def __init__( self, parent = None, name = None, fl = 0 ):
        MainWindowBase.__init__(self, parent, name, fl )
        self.setCaption( appcaption )
        self.createStatusBar()

    def createStatusBar( self ):
        self.numPackages = QLabel( "No Packages available.", self.statusBar() )
        self.statusBar().addWidget( self.numPackages, True )

    #
    # slots
    #

    def fileNew(self):
        print "MainWindowBase.fileNew(): Not implemented yet"
        QMessageBox.information( self, "%s V%s" % ( appname, appversion ), "Not implemented yet" )

    def fileOpen(self):
        print "MainWindowBase.fileOpen(): Not implemented yet"
        QMessageBox.information( self, "%s V%s" % ( appname, appversion ), "Not implemented yet" )

    def fileSave(self):
        print "MainWindowBase.fileSave(): Not implemented yet"
        QMessageBox.information( self, "%s V%s" % ( appname, appversion ), "Not implemented yet" )

    def fileSaveAs(self):
        print "MainWindowBase.fileSaveAs(): Not implemented yet"
        QMessageBox.information( self, "%s V%s" % ( appname, appversion ), "Not implemented yet" )

    def filePrint(self):
        print "MainWindowBase.filePrint(): Not implemented yet"
        QMessageBox.information( self, "%s V%s" % ( appname, appversion ), "Not implemented yet" )

    def fileExit(self):
        self.close()

    def editUndo(self):
        print "MainWindowBase.editUndo(): Not implemented yet"
        QMessageBox.information( self, "%s V%s" % ( appname, appversion ), "Not implemented yet" )

    def editRedo(self):
        print "MainWindowBase.editRedo(): Not implemented yet"
        QMessageBox.information( self, "%s V%s" % ( appname, appversion ), "Not implemented yet" )

    def editCut(self):
        print "MainWindowBase.editCut(): Not implemented yet"
        QMessageBox.information( self, "%s V%s" % ( appname, appversion ), "Not implemented yet" )

    def editCopy(self):
        print "MainWindowBase.editCopy(): Not implemented yet"
        QMessageBox.information( self, "%s V%s" % ( appname, appversion ), "Not implemented yet" )

    def editPaste(self):
        print "MainWindowBase.editPaste(): Not implemented yet"
        QMessageBox.information( self, "%s V%s" % ( appname, appversion ), "Not implemented yet" )

    def editFind(self):
        print "MainWindowBase.editFind(): Not implemented yet"
        QMessageBox.information( self, "%s V%s" % ( appname, appversion ), "Not implemented yet" )

    def editPreferences(self):
        print "MainWindowBase.editPreferences(): Not implemented yet"
        QMessageBox.information( self, "%s V%s" % ( appname, appversion ), "Not implemented yet" )

    def helpIndex(self):
        print "MainWindowBase.helpIndex(): Not implemented yet"
        QMessageBox.information( self, "%s V%s" % ( appname, appversion ), "Not implemented yet" )

    def helpContents(self):
        print "MainWindowBase.helpContents(): Not implemented yet"
        QMessageBox.information( self, "%s V%s" % ( appname, appversion ), "Not implemented yet" )

    def buildAllPackages(self):
        print "MainWindowBase.buildAllPackages(): Not implemented yet"
        QMessageBox.information( self, "%s V%s" % ( appname, appversion ), "Not implemented yet" )

    def buildSelectedPackages(self):
        print "MainWindowBase.buildSelected(): Not implemented yet"
        QMessageBox.information( self, "%s V%s" % ( appname, appversion ), "Not implemented yet" )

    def buildRescanPackages(self):
        d = QProgressDialog( "<p>Rescanning Packages...<br>Please wait...</p>", "Cancel", 100, None, "dlgrescan", False )
        d.setCaption( appcaption )
        d.show()
        p = Packages.instance()
        self.statusBar().message( "Rescanning Packages - please wait..." )
        p.scan( lambda current, last, name: d.setProgress( current, last ) or
                                            qApp.processEvents() or
                                            d.setLabelText( "<p>Rescanning Packages...<br>%s</p>" % name.split( "/" )[-1] ) )
        d.hide()
        self.statusBar().message( "Done. Scanned %d Packages." % p.numPackages(), 2000 )
        self.numPackages.setText( "%s Packages available." % p.numPackages() )

        self.packageView.clear()
        for package in p.names():
            i = ProviderItem( self.packageView, package )
            #i.setBuildStatus( status="waiting" )
            
        self.packageView.expandAll()

    def debugConsole(self):
        shell = EPythonShell( None, { 'p':Packages.instance(), 'data':data, 'exit':lambda:shell.close(),
                                      'pv':self.packageView } )
        shell.show()
        shell.resize( QSize( 500, 300 ) )

    def helpAbout(self):
            d = AboutDialog()
            d.exec_loop()

#------------------------------------------------------------------------#
# main
#------------------------------------------------------------------------#

if __name__ == "__main__":
    import sys
    from qt import *
    app = QApplication( sys.argv )
    mw = MainWindow()
    mw.show()
    app.setMainWidget( mw )
    app.exec_loop()