コード例 #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)
コード例 #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)