Ejemplo n.º 1
0
 def __init__(self, parent=None):
     super(OptionCalculator, self).__init__(parent)
     self.setupUi(self)
     #show
     self.show()
     #define signal&slot
     self.connect(self.fresh_quotes_button, SIGNAL('clicked()'),
                  self.__onRefreshQuoteBtClicked)
     self.connect(self.edit_position_button, SIGNAL('clicked()'),
                  self.__onEditPosBtClicked)
     self.connect(self.plot_button, SIGNAL('clicked()'),
                  self.__onPlotBtClicked)
     self.connect(self, SIGNAL('PLOT_SENSIBILITY'),
                  self.__plotGreeksSensibility)
     self.connect(self, SIGNAL('PLOT_EXERCISE_CURVE'),
                  self.__plotExerciseCurve)
     self.connect(self, SIGNAL('SET_ETF_DISPLAY'), self.__setEtfDataDisplay)
     self.connect(self, SIGNAL('SET_CENTRAL_DISPLAY'),
                  self.__setCentralTableDisplay)
     self.connect(self, SIGNAL('ENGINE_ERROR'), self.__notifyErrorOccur)
     #init position vtable
     self.option_data = MatrixModel(self)
     self.pos_deleg = AutoFormDelegate(self)
     self.position_vtable.setItemDelegate(self.pos_deleg)
     self.position_vtable.setModel(self.option_data)
     self.option_data.setSize(0, OPTION_DF_HEADERS)
     #init stock_position vtable
     self.stock_data = MatrixModel(self)
     self.stpos_deleg = AutoFormDelegate(self)
     self.stock_position_vtable.setItemDelegate(self.stpos_deleg)
     self.stock_position_vtable.setModel(self.stock_data)
     self.stock_data.setSize(0, STOCK_DF_HEADERS)
     #init portfolio vtable
     self.portfolio_data = MatrixModel(self)
     self.ptf_deleg = AutoFormDelegate(self)
     self.portfolio_vtable.setItemDelegate(self.ptf_deleg)
     self.portfolio_vtable.setModel(self.portfolio_data)
     self.portfolio_data.setSize(0, PORTFOLIO_DF_HEADERS)
     #gui communication
     self.msg = None
     self.msg_event = None
     self.msg_thread = None
     #data engine
     self.engine = None
     #flow control
     self.is_updating = False
     self.auto_refresh_timer = None
     #qt child
     self.edit_dialog = PosEditor(self)
     self.edit_dialog.setControler(self)
     return
Ejemplo n.º 2
0
 def __init__(self, parent=None):
     super(PosEditor, self).__init__(parent)
     self.setupUi(self)
     self.setModal(True)
     #signal&slot
     self.connect(self.cancel_button, SIGNAL("clicked()"),
                  self.onCancelBtClicked)
     self.connect(self.save_button, SIGNAL("clicked()"),
                  self.onSaveAllBtClicked)
     self.connect(self.reload_button, SIGNAL("clicked()"),
                  self.onReloadBtClicked)
     self.connect(self.save_csv_button, SIGNAL("clicked()"),
                  self.onSaveCsvBtClicked)
     self.connect(self.addrow_button, SIGNAL("clicked()"),
                  self.onAddrowBtClicked)
     self.connect(self.delrows_button, SIGNAL("clicked()"),
                  self.onDelRowBtClicked)
     #init mvc impl
     self.model = MatrixModel(self)
     self.delegate = AutoFormDelegate(self)
     self.position_edit_vtable.setItemDelegate(self.delegate)
     self.position_edit_vtable.setModel(self.model)
     #init data
     self.controler = None
     self.model.setSize(0, PosEditor.EDIT_TABLE_HEADERS)