示例#1
0
    def on_btn_session_load_clicked(self):
        self.get_sdfname()

        f = open(op.join(sdft.REPORT_FOLDER, "session", self.sdf_name+".session"), "rb")
        self.statusbar.showMessage("loading session {}...".format(self.sdf_name), 2000)
        self.sdf_dict = {}
        [self.sdf_info_dict, self.sdf_name_order, self.curr_sdf_name] = pickle.load(f)
        f.close()
        for num, sdf_name in enumerate(self.sdf_name_order):
            sdf = sdft.load_sdf(op.join(sdft.REPORT_FOLDER, "session", "session_{}_{:02d}".format(self.sdf_name, num)))
            self.sdf_dict[sdf_name] = sdf

        self.create_index()
        self.init_curr_sdf(self.curr_sdf_name)

        self.statusbar.showMessage("session loaded.", 2000)
示例#2
0
    def on_btn_session_load_clicked(self):
        self.get_sdfname()

        f = open(
            op.join(sdft.REPORT_FOLDER, "session", self.sdf_name + ".session"),
            "rb")
        self.statusbar.showMessage(
            "loading session {}...".format(self.sdf_name), 2000)
        self.sdf_dict = {}
        [self.sdf_info_dict, self.sdf_name_order,
         self.curr_sdf_name] = pickle.load(f)
        f.close()
        for num, sdf_name in enumerate(self.sdf_name_order):
            sdf = sdft.load_sdf(
                op.join(sdft.REPORT_FOLDER, "session",
                        "session_{}_{:02d}".format(self.sdf_name, num)))
            self.sdf_dict[sdf_name] = sdf

        self.create_index()
        self.init_curr_sdf(self.curr_sdf_name)

        self.statusbar.showMessage("session loaded.", 2000)
示例#3
0
    def on_btn_sdf_load_clicked(self):

        #TODO: check that the specified file does exist.

        self.sdf_dict = {}
        self.sdf_info_dict = {}
        self.sdf_name_order = []

        self.get_sdfname()

        self.statusbar.showMessage("loading sd file {}.".format(self.sdf_filename), 2000)

        self.sdf_dict[self.sdf_name] = sdft.load_sdf(self.sdf_filename)
        # [<origin>, "factsearch", "n_molwt < 500", <num_of_molecules>, <remark>]
        self.sdf_info_dict[self.sdf_name] = ["", "", "", str(len(self.sdf_dict[self.sdf_name])), "original sdf"]
        self.sdf_name_order.append(self.sdf_name)

        self.create_index()

        # for cluster enumerator:
        # match sdf names of the form cluster_001_009
        CLUSTERFILE = False
        split_name = self.sdf_name.split("_")
        if len(split_name) >= 3:
            if len(split_name[-2]) == 3 and len(split_name[-1]) == 3:
                try:
                    self.cluster_ind = int(split_name[-2])
                    self.cluster_max = int(split_name[-1])
                    CLUSTERFILE = True

                except ValueError:
                    CLUSTERFILE = False
                    print("  ** no cluster file")

        if not CLUSTERFILE:
            self.btn_load_next_cluster.setEnabled(False)
            self.btn_load_prev_cluster.setEnabled(False)
        else:
            self.cluster_name = "_".join(split_name[:-2])
            if self.cluster_ind > 0:
                self.btn_load_prev_cluster.setEnabled(True)
            else:
                self.btn_load_prev_cluster.setEnabled(False)
            if self.cluster_ind < self.cluster_max:
                self.btn_load_next_cluster.setEnabled(True)
            else:
                self.btn_load_next_cluster.setEnabled(False)

        # check, if the name of the sdf is in the config dict BROWSE_OPTIONS
        #   to enable linking to websites based on an identifier
        self.btn_browse.setEnabled(False)
        for name in config.BROWSE_OPTIONS:
            if name in self.sdf_name:
                self.btn_browse.setEnabled(True)
                self.browse_key = config.BROWSE_OPTIONS[name][0]
                self.browse_key_type = config.BROWSE_OPTIONS[name][1]
                self.url_templ = config.BROWSE_OPTIONS[name][2]
                break

        self.init_curr_sdf(self.sdf_name)

        self.statusbar.showMessage("{} molecules loaded into entry {} from file {}.".format(self.curr_sdf_num_of_mols, self.sdf_name, self.sdf_filename), 5000)
示例#4
0
    def on_btn_sdf_load_clicked(self):

        #TODO: check that the specified file does exist.

        self.sdf_dict = {}
        self.sdf_info_dict = {}
        self.sdf_name_order = []

        self.get_sdfname()

        self.statusbar.showMessage(
            "loading sd file {}.".format(self.sdf_filename), 2000)

        self.sdf_dict[self.sdf_name] = sdft.load_sdf(self.sdf_filename)
        # [<origin>, "factsearch", "n_molwt < 500", <num_of_molecules>, <remark>]
        self.sdf_info_dict[self.sdf_name] = [
            "", "", "",
            str(len(self.sdf_dict[self.sdf_name])), "original sdf"
        ]
        self.sdf_name_order.append(self.sdf_name)

        self.create_index()

        # for cluster enumerator:
        # match sdf names of the form cluster_001_009
        CLUSTERFILE = False
        split_name = self.sdf_name.split("_")
        if len(split_name) >= 3:
            if len(split_name[-2]) == 3 and len(split_name[-1]) == 3:
                try:
                    self.cluster_ind = int(split_name[-2])
                    self.cluster_max = int(split_name[-1])
                    CLUSTERFILE = True

                except ValueError:
                    CLUSTERFILE = False
                    print("  ** no cluster file")

        if not CLUSTERFILE:
            self.btn_load_next_cluster.setEnabled(False)
            self.btn_load_prev_cluster.setEnabled(False)
        else:
            self.cluster_name = "_".join(split_name[:-2])
            if self.cluster_ind > 0:
                self.btn_load_prev_cluster.setEnabled(True)
            else:
                self.btn_load_prev_cluster.setEnabled(False)
            if self.cluster_ind < self.cluster_max:
                self.btn_load_next_cluster.setEnabled(True)
            else:
                self.btn_load_next_cluster.setEnabled(False)

        # check, if the name of the sdf is in the config dict BROWSE_OPTIONS
        #   to enable linking to websites based on an identifier
        self.btn_browse.setEnabled(False)
        for name in config.BROWSE_OPTIONS:
            if name in self.sdf_name:
                self.btn_browse.setEnabled(True)
                self.browse_key = config.BROWSE_OPTIONS[name][0]
                self.browse_key_type = config.BROWSE_OPTIONS[name][1]
                self.url_templ = config.BROWSE_OPTIONS[name][2]
                break

        self.init_curr_sdf(self.sdf_name)

        self.statusbar.showMessage(
            "{} molecules loaded into entry {} from file {}.".format(
                self.curr_sdf_num_of_mols, self.sdf_name, self.sdf_filename),
            5000)