예제 #1
0
    def init_control_buttons(self):
        '''

        :return:
        '''

        # creates the groupbox object
        self.grp_control = cf.create_groupbox(self, QRect(10, 220, 491, 41),
                                              grp_font, "", "grp_control")

        # creates the button objects
        self.push_continue = cf.create_button(self.grp_control,
                                              QRect(10, 10, 231, 23),
                                              button_font,
                                              "Continue",
                                              "grp_continue",
                                              cb_fcn=self.continue_click)
        self.push_cancel = cf.create_button(self.grp_control,
                                            QRect(250, 10, 231, 23),
                                            button_font,
                                            "Cancel",
                                            "push_cancel",
                                            cb_fcn=self.cancel_click)

        # sets the continue button enabled properties
        self.push_continue.setEnabled(False)
예제 #2
0
    def init_control_obj(self):
        '''

        :return:
        '''

        # initialises the group object
        self.group_buttons = cf.create_groupbox(self, QRect(10, 250, 401, 41),
                                                grp_font, "", "group_buttons")

        # creates the control buttons
        self.push_continue = cf.create_button(self.group_buttons,
                                              QRect(10, 10, 186, 23),
                                              b_font,
                                              "Continue",
                                              "push_continue",
                                              cb_fcn=self.continue_click)
        self.push_cancel = cf.create_button(self.group_buttons,
                                            QRect(205, 10, 186, 23),
                                            b_font,
                                            "Cancel",
                                            "push_cancel",
                                            cb_fcn=self.cancel_click)

        # sets the other button objects
        self.push_continue.setEnabled(len(self.exp_name) > 0)
예제 #3
0
    def create_control_buttons(self):
        '''

        :return:
        '''

        # initialisations
        layout = QHBoxLayout()
        b_txt = ['Update Parameters', 'Cancel']
        cb_fcn = [self.update_parameters, self.user_cancel]
        b_name = ['update_parameters', 'user_cancel']

        # group box object
        b_wid = (self.grp_width - (1 + len(b_txt)) * dX) / len(b_txt)
        self.h_grpbx[self.n_grp] = QGroupBox("")

        # creates the load config file object
        for i in range(len(b_txt)):
            # creates the button object
            b_dim = QRect((i + 1)*dX + i * b_wid, dY, b_wid, 21)
            h_but = cf.create_button(self.h_grpbx[self.n_grp][0], b_dim, button_font, b_txt[i],
                                     cb_fcn=cb_fcn[i], name=b_name[i])
            h_but.setAutoDefault(False)

            # adds the objects to the layout
            layout.addWidget(h_but)

        # sets the box layout
        self.h_grpbx[self.n_grp][0].setLayout(layout)
예제 #4
0
    def init_expt_obj(self, i_type):
        '''

        :return:
        '''

        # creates the pushbutton icons
        icon_add = QIcon(os.path.join(iconDir, 'add.png'))
        icon_rmv = QIcon(os.path.join(iconDir, 'remove.png'))

        # creates the groupboxes
        self.group_expt = cf.create_groupbox(self, QRect(10, 10, 400,
                                                         230), grp_font,
                                             "Experimental Data Files",
                                             "group_expt")

        # creates the listbox object
        self.list_expt = cf.create_listbox(self.group_expt,
                                           QRect(10, 20, 341, 171),
                                           l_font,
                                           self.exp_name,
                                           "list_expt",
                                           cb_fcn=self.select_expt)
        self.list_expt.setSelectionMode(QAbstractItemView.ExtendedSelection)

        # creates the experiment list group buttons
        self.push_add = cf.create_button(self.group_expt,
                                         QRect(361, 65, 31, 31),
                                         grp_font,
                                         "",
                                         'push_add',
                                         icon=icon_add,
                                         tooltip='Add Experiments',
                                         cb_fcn=self.add_expts)
        self.push_rmv = cf.create_button(self.group_expt,
                                         QRect(361, 105, 31, 31),
                                         grp_font,
                                         "",
                                         'push_rmv',
                                         icon=icon_rmv,
                                         tooltip='Remove Experiments',
                                         cb_fcn=self.remove_expts)

        # experiment type combobox
        expt_text = [
            'Single Processed Experimental Data File (*.cdata)',
            'Single Free/Fixed Comparison Data File (*.ccomp)',
            'Multiple Processed Experimental Data File (*.mdata)',
            'Multiple Free/Fixed Comparison Data File (*.mcomp)'
        ]
        self.expt_type = cf.create_combobox(self.group_expt,
                                            l_font,
                                            expt_text,
                                            dim=QRect(10, 200, 381, 21))
        self.expt_type.setEnabled(len(self.exp_name) == 0)
        self.expt_type.setCurrentIndex(i_type)

        # sets the other button objects
        self.push_rmv.setEnabled(len(self.exp_files))
        self.push_add.setIconSize(QSize(31, 31))
        self.push_rmv.setIconSize(QSize(31, 31))

        # if a multi-data file is already loaded, then disable the add button
        if ('*.mdata' in expt_text[i_type]) or ('*.mcomp'
                                                in expt_text[i_type]):
            self.push_add.setEnabled(False)