示例#1
0
    def GetFiles(self, i, pause_dir):
        snd_file = self.flist.GetItem(i, 0).GetText()
        snd_path = os.path.join(self.snd_dir, snd_file)

        labels_path = mf.get_labels_path(self.snd_dir, i + 1)

        pause_path = os.path.join(pause_dir, snd_file)

        return snd_path, labels_path, pause_path
示例#2
0
    def SetFlistIcon(self):
        for i in range(self.flist.GetItemCount()):
            labels_path = mf.get_labels_path(self.snd_dir, i + 1)

            if os.path.exists(labels_path):
                image_no = IMG_HAS_LABELS
            else:
                image_no = IMG_NO_LABELS

            self.flist.SetItemImage(i, image_no, image_no)
示例#3
0
    def OnSelectSnd(self, evt):
        # 同じファイルは読み直さない
        if self.conf.list_index == evt.m_itemIndex:
            return

        self.ConfirmSave()

        snd_path = os.path.join(self.snd_dir, evt.GetText())
        labels_path = mf.get_labels_path(self.snd_dir, evt.m_itemIndex + 1)
        self.conf.list_index = evt.m_itemIndex

        self.SetSound(snd_path, labels_path)
示例#4
0
    def UpdateFlist(self):
        '''
        音声ファイル一覧画面を更新する
        '''

        self.ConfirmSave()

        self.flist.DeleteAllItems()

        snd_files = mf.get_snd_files(self.snd_dir)

        if not snd_files:
            self.conf.list_index = 0
            self.snd = None
            self.view.SetVolume(None)
            self.view.SetLabels(Labels(), '')
            self.EnableUI()
            return

        snd_files.sort()

        for i, name in enumerate(snd_files):
            labels_path = mf.get_labels_path(self.snd_dir, i + 1)

            if os.path.exists(labels_path):
                image_no = IMG_HAS_LABELS
            else:
                image_no = IMG_NO_LABELS

            self.flist.InsertImageStringItem(i, name, image_no)

        list_index = self.conf.list_index
        list_index = max(0, min(list_index, self.flist.ItemCount - 1))
        self.conf.list_index = list_index

        self.conf.list_index = -1  # OnSelectSndで波形画面を更新するため
        self.flist.Select(list_index)
        self.flist.EnsureVisible(list_index)
        self.flist.SetColumnWidth(0, self.conf.flist_width)