示例#1
0
    def __init__(self):
        from ui_functions import PlotStock, PlotVolatility, PlotSimpleStrategy, PlotFBProphet, UIFunctions
        super(Stocks, self).__init__()
        self.ui = Ui_MainWindow()
        self.ui.setupUi(self)
        self.ui.browser = QtWebEngineWidgets.QWebEngineView(self)
        self.ui.stackedWidget.addWidget(self.ui.browser)

        ##-- Видимость
        self.ui.comboBox.setVisible(False)
        UIFunctions.simple_strategy_utils_not_visible(self)
        self.ui.button_fb.setVisible(False)

        # Смена значений
        ##-- меняется значение в ComboBox - перестраивается график
        self.ui.comboBox.currentIndexChanged.connect(
            lambda: self.thread_plot_volatility.start())
        self.ui.comboBox.currentIndexChanged.connect(
            lambda: UIFunctions.plot_change_perc_finish_thread(self))

        ##-- меняется значение в Short - перестраивается график
        self.ui.spinBox_short.valueChanged.connect(self.spinBox_short_changed)
        self.ui.horizontalSlider_short.valueChanged.connect(
            self.slider_short_changed)
        self.ui.spinBox_long.valueChanged.connect(self.spinBox_long_changed)
        self.ui.horizontalSlider_long.valueChanged.connect(
            self.slider_long_changed)
        ##-- меняется значение в spinBox_fbprophet - перестраивается график
        self.ui.button_fb.clicked.connect(self.spinBox_fb_changed)

        ## Потоки
        self.thread_plot_stock = PlotStock(mainwindow=self)
        self.thread_plot_volatility = PlotVolatility(mainwindow=self)
        self.thread_simple_strategy = PlotSimpleStrategy(mainwindow=self)
        self.thread_plot_fbprophet = PlotFBProphet(mainwindow=self)

        # TOGGLE MENU
        self.ui.Btn_Toggle.clicked.connect(
            lambda: UIFunctions.toggleMenu(self, 250, True))
        self.ui.btnFind.clicked.connect(self.threads_start)
        self.ui.btnFind.clicked.connect(
            lambda: UIFunctions.plot_stock_when_finish_thread(self))
        self.ui.Btn_page_1.clicked.connect(
            lambda: UIFunctions.plot_stock(self))
        self.ui.Btn_page_2.clicked.connect(
            lambda: UIFunctions.plot_change_perc(self))
        self.ui.Btn_page_3.clicked.connect(
            lambda: UIFunctions.plot_simple_strategy(self))
        self.ui.Btn_page_4.clicked.connect(
            lambda: UIFunctions.plot_fbprophet(self))

        ##-- комбинация клавиш
        self.shortcut_create = QShortcut(QtGui.QKeySequence("Shift+Return"),
                                         self)
        self.shortcut_create.activated.connect(self.threads_start)
        self.shortcut_create.activated.connect(
            lambda: UIFunctions.plot_stock_when_finish_thread(self))

        self.main = None
        self.ui.btn_back.clicked.connect(self.back)
示例#2
0
    def __init__(self):
        QMainWindow.__init__(self)
        self.ui = Ui_SplashScreen()
        self.setGeometry(400, 150, 0, 0)
        self.ui.setupUi(self)

        self.functions = UIFunctions(self)

        ## UI ==> INTERFACE CODES
        ########################################################################

        ## REMOVE TITLE BAR
        self.functions.removeTileBare()

        ## DROP SHADOW EFFECT
        self.shadow = QGraphicsDropShadowEffect(self)
        self.shadow.setBlurRadius(20)
        self.shadow.setXOffset(0)
        self.shadow.setYOffset(0)
        self.shadow.setColor(QColor(0, 0, 0, 60))
        self.ui.dropShadowFrame.setGraphicsEffect(self.shadow)

        ## QTIMER ==> START
        self.timer = QtCore.QTimer()
        self.timer.timeout.connect(self.progress)
        # TIMER IN MILLISECONDS
        self.timer.start(35)

        ## SHOW ==> MAIN WINDOW
        ########################################################################
        self.show()
示例#3
0
 def spinBox_short_changed(self):
     try:
         new_short_value = self.ui.spinBox_short.value()
         self.ui.horizontalSlider_short.setValue(new_short_value)
         self.thread_simple_strategy.start()
         UIFunctions.plot_simple_strategy_finish_thread(self)
     except Exception as e:
         print(e)
示例#4
0
 def spinBox_fb_changed(self):
     try:
         new_value = self.ui.spinBox_fbprophet.value()
         self.ui.spinBox_fbprophet.setValue(new_value)
         self.thread_plot_fbprophet.days = new_value
         self.thread_plot_fbprophet.start()
         UIFunctions.plot_fbprophet_finish_thread(self)
     except Exception as e:
         print(e)
    def __init__(self):
        QMainWindow.__init__(self)
        self.ui = Ui_MainWindow()
        self.setGeometry(200, 100, 0, 0)
        self.ui.setupUi(self)
        self.functions = UIFunctions(self)

        ## REMOVE ==> STANDARD TITLE BAR
        self.functions.removeTileBare()

        self.ui.frame_top.mouseDoubleClickEvent = self.functions.dobleClickMaximizeRestore
        self.mousePressEvent = self.functions.mousePressEvent
        self.ui.frame_top.mouseMoveEvent = self.functions.moveWindow

        ## ==> CREATE MENUS
        ########################################################################

        ## ==> START PAGE in Stacked Widget
        self.ui.stackedWidget.setCurrentWidget(self.ui.page_home)
        self.functions.labelPage("Home")

        ## Stacked Widget Switching Pages
        self.ui.home_btn.clicked.connect(
            lambda: self.ui.stackedWidget.setCurrentWidget(self.ui.page_home))
        self.ui.home_btn.clicked.connect(
            lambda: self.functions.labelPage("Home"))

        self.ui.about_btn.clicked.connect(
            lambda: self.ui.stackedWidget.setCurrentWidget(self.ui.page_about))
        self.ui.about_btn.clicked.connect(
            lambda: self.functions.labelPage("About"))

        self.ui.sorting_btn.clicked.connect(
            lambda: self.ui.stackedWidget.setCurrentWidget(self.ui.page_sorting
                                                           ))
        self.ui.sorting_btn.clicked.connect(
            lambda: self.functions.labelPage("Sorting"))

        self.ui.tree_btn.clicked.connect(
            lambda: self.ui.stackedWidget.setCurrentWidget(self.ui.page_tree))
        self.ui.tree_btn.clicked.connect(
            lambda: self.functions.labelPage("Tree"))

        self.ui.linkedlist_btn.clicked.connect(
            lambda: self.ui.stackedWidget.setCurrentWidget(self.ui.
                                                           page_linkedlist))
        self.ui.linkedlist_btn.clicked.connect(
            lambda: self.functions.labelPage("LinkedList"))

        ## ==> TOGGLE MENU
        self.ui.btn_toggle.clicked.connect(
            lambda: self.functions.toggleMenu(50, 30, "frame_left_menu"))

        ## SHOW ==> DROP SHADOW
        self.shadow = QGraphicsDropShadowEffect(self)
        self.shadow.setBlurRadius(17)
        self.shadow.setXOffset(0)
        self.shadow.setYOffset(0)
        self.shadow.setColor(QColor(0, 0, 0, 150))
        self.ui.frame_main.setGraphicsEffect(self.shadow)

        # CLOSE WINDOW
        self.ui.btn_close.clicked.connect(lambda: self.close())

        ## ==> MAXIMIZE/RESTORE
        self.ui.btn_maximize_restore.clicked.connect(
            lambda: self.functions.maximize_restore())

        # MINIMIZE
        self.ui.btn_minimize.clicked.connect(lambda: self.showMinimized())

        ## ==> RESIZE WINDOW
        self.sizegrip = QSizeGrip(self.ui.frame_size_grip)