Exemple #1
0
    def __init__(self, cg):
        super(WatchlistWindow, self).__init__()

        self.cg = cg
        self.ui = watchlist_ui.Ui_WatchlistWindow()
        self.ui.setupUi(self)

        for c, col in enumerate(WatchlistModel.columns + WatchlistModel.multiColumns):
            checkbox = QtGui.QCheckBox(col)
            checkbox.clicked.connect(self.onSelectColumns)
            self.ui.showColumns.layout().addWidget(checkbox)
            setattr(self.ui, col + '_checkbox', checkbox)# for guiSave()

        self.sortedMarkets = []
        self.sortColumns = {}
        self.recalcSortKeys = False
        self.selectedMarket = None
        self.ui.tableView.setAlternatingRowColors(True)
        header = self.ui.tableView.horizontalHeader()
        header.sectionClicked.connect(self.onHeaderSectionClicked)
        header.setResizeMode(QtGui.QHeaderView.Stretch)

        self.ui.tableView.mouseMoveEvent = self.listMouseMoveEvent
        self.ui.tableView.setMouseTracking(True)

        for i in range(len(ALL_TIMEFRAMES)):
            self.ui.showCharts.addItem(', '.join(ALL_TIMEFRAMES[:i+1]))
        for i in range(-len(ALL_TIMEFRAMES)+1, 0):
            self.ui.showCharts.addItem(', '.join(ALL_TIMEFRAMES[i:]))

        self.loadWatchlists()

        firstOne = None
        for name,watchlist in sorted(self.watchlists.items()):
            item = name
            if len(watchlist):
                item += ' (%i)' % len(watchlist)
            firstOne = item if name == 'Builtin' else firstOne
            self.ui.watchlistName.addItem(item)

        guiRestore(self.ui, gSettings)

        # Set the default selected item
        #self.ui.watchlistName.setCurrentIndex(self.ui.watchlistName.findText(firstOne))

        self.procRefresh = None
        self.ui.watchlistName.currentIndexChanged.connect(self.onWatchlistSelected)
        def onFilter():
            self.ui.filterEdit.setFocus()
            self.ui.filterEdit.selectAll()
        QtGui.QShortcut(QtGui.QKeySequence('Ctrl+F'), self, onFilter)
        self.ui.filterEdit.textChanged.connect(self.onSelectColumns)

        self.model = WatchlistModel(self)
        self.ui.tableView.setModel(self.model)
        selectionModel = self.ui.tableView.selectionModel()
        selectionModel.selectionChanged.connect(self.listSelectionChanged)
Exemple #2
0
    def __init__(self, marketPairList=[]):
        super(ChartWindow, self).__init__()
        self.setWindowTitle('qmarket')
        cw = QtGui.QWidget()
        self.setCentralWidget(cw)
        self.layout = QtGui.QGridLayout()
        zeroLayoutMargins(self.layout)
        cw.setLayout(self.layout)
        self.restoreGeometry(gSettings.value('geometry').toByteArray())
        QtGui.QShortcut(QtGui.QKeySequence('Q'), self, app.closeAllWindows)
        QtGui.QShortcut(QtGui.QKeySequence('W'), self, self.close)
        QtGui.QShortcut(QtGui.QKeySequence('N'), self,
                        lambda: ChartWindow().show())
        QtGui.QShortcut(
            QtGui.QKeySequence('Space'), self, lambda: self.mouseOverChartGroup
            .mainPlot().vb.menu.popup(QtGui.QCursor.pos()))

        # Set background palette to black
        pal = self.palette()
        pal.setColor(QtGui.QPalette.Window, Qt.black)
        self.setPalette(pal)

        self.closeEvent = self.closeEvent
        self.mouseOverChartGroup = None

        self.charts = MultiKeyDict()
        allWindows.append(self)

        coord = [0, 0]
        if marketPairList:
            if type(marketPairList) is tuple:
                marketPairList = [marketPairList]
            for marketPair in marketPairList:
                self.setChartAt(marketPair, coord)
                coord[ROW] += 1
        else:
            self.setChartAt(None, coord)
Exemple #3
0
 def createActions(self):
     self.openFileReadOnlyAction = QtGui.QAction(
         QtGui.QIcon(),
         'Open file(s) readonly',
         self,
         shortcut=QtGui.QKeySequence.Open,
         statusTip='Open an HDF5 file for reading',
         triggered=self.openFilesReadOnly)
     self.openFileReadWriteAction = QtGui.QAction(
         QtGui.QIcon(),
         '&Open file(s) read/write',
         self,
         # shortcut=QtGui.QKeySequence.Open,
         statusTip='Open an HDF5 file for editing',
         triggered=self.openFilesReadWrite)
     self.openFileOverwriteAction = QtGui.QAction(
         QtGui.QIcon(),
         'Overwrite file',
         self,
         # shortcut=QtGui.QKeySequence.Open,
         statusTip='Open an HDF5 file for writing (overwrite existing)',
         triggered=self.openFileOverwrite)
     self.createFileAction = QtGui.QAction(
         QtGui.QIcon(),
         '&New file',
         self,
         shortcut=QtGui.QKeySequence.New,
         statusTip='Create a new HDF5 file',
         triggered=self.createFile)
     self.closeFileAction = QtGui.QAction(
         QtGui.QIcon(),
         '&Close file(s)',
         self,
         shortcut=QtGui.QKeySequence(QtCore.Qt.CTRL + QtCore.Qt.Key_K),
         statusTip='Close selected files',
         triggered=self.sigCloseFiles)
     self.quitAction = QtGui.QAction(QtGui.QIcon(),
                                     '&Quit',
                                     self,
                                     shortcut=QtGui.QKeySequence.Quit,
                                     statusTip='Quit dataviz',
                                     triggered=self.doQuit)
     self.showAttributesAction = QtGui.QAction(
         QtGui.QIcon(),
         'Show attributes',
         self,
         shortcut=QtGui.QKeySequence(QtCore.Qt.Key_Return),
         statusTip='Show attributes',
         triggered=self.sigShowAttributes)
     self.showDatasetAction = QtGui.QAction(
         QtGui.QIcon(),
         'Show dataset',
         self,
         shortcut=QtGui.QKeySequence(QtCore.Qt.CTRL + QtCore.Qt.Key_Return),
         statusTip='Show dataset',
         triggered=self.sigShowDataset)
     self.plotDatasetAction = QtGui.QAction(
         QtGui.QIcon(),
         'Plot dataset',
         self,
         shortcut=QtGui.QKeySequence(QtCore.Qt.ALT + QtCore.Qt.Key_P),
         statusTip='Plot dataset',
         triggered=self.sigPlotDataset)