示例#1
0
    def _build_window(self):
        vbox = gtk.VBox()
        
        #table = gtk.Table(2,3, False)
        grid = gtk.Grid()
        
        src_label = gtk.Label('Source:')
        #table.attach(src_label, 0, 1, 0, 1, gtk.EXPAND, gtk.EXPAND)
        grid.attach(src_label, 0, 0, 1, 1)
        src_entry = gtk.Entry()
        src_entry.set_width_chars(50)
        #table.attach(src_entry, 1, 2, 0, 1, gtk.EXPAND, gtk.EXPAND)
        grid.attach(src_entry, 1, 0, 1, 1)
        src_browse_button = gtk.Button('Browse')
        #table.attach(src_browse_button, 2, 3, 0, 1, gtk.EXPAND, gtk.EXPAND)
        grid.attach(src_browse_button, 2, 0, 1, 1)

        if self.filter_type == FilterWindow.FILTER_TYPES.FILE:
            src_browse_button.connect('clicked', lambda w: UIUtils.browse_file('Select file', src_entry, [UIUtils.CSV_FILE_FILTER, UIUtils.ALL_FILE_FILTER]))
        elif self.filter_type == FilterWindow.FILTER_TYPES.FOLDER:
            src_browse_button.connect('clicked', lambda w: UIUtils.browse_folder('Select folder', src_entry)) #[UIUtils.CSV_FILE_FILTER, UIUtils.ALL_FILE_FILTER]))

        dest_label = gtk.Label('Destination:')
        #table.attach(dest_label, 0, 1, 1, 2, gtk.EXPAND, gtk.EXPAND)
        grid.attach(dest_label, 0, 1, 1, 1)
        dest_entry = gtk.Entry()
        dest_entry.set_width_chars(50)
        #table.attach(dest_entry, 1, 2, 1, 2, gtk.EXPAND, gtk.EXPAND)
        grid.attach(dest_entry, 1, 1, 1, 1)
        dest_browse_button = gtk.Button('Browse')
        #table.attach(dest_browse_button, 2, 3, 1, 2, gtk.EXPAND, gtk.EXPAND)
        grid.attach(dest_browse_button, 2, 1, 1, 1)

        dest_browse_button.connect('clicked', lambda w: UIUtils.browse_folder('Select folder', dest_entry))#, [UIUtils.CSV_FILE_FILTER, UIUtils.ALL_FILE_FILTER]))

        vbox.pack_start(grid, True, True, 0)
            
        button_box = gtk.HButtonBox()
        button_box.set_layout(gtk.ButtonBoxStyle.EDGE)
        cancel_button = gtk.Button(stock=gtk.STOCK_CANCEL, label='Cancel')
        cancel_button.connect('clicked', lambda w: self.window.destroy())
        button_box.add(cancel_button)

        ok_button = gtk.Button(stock=gtk.STOCK_OK, label='Ok')
        ok_button.connect('clicked', lambda w: self._process(src_entry.get_text(), dest_entry.get_text()))
        button_box.add(ok_button)

        vbox.pack_start(button_box, True, True, 0)
        
        self.window.add(vbox)
示例#2
0
    def build_window(self):
        vbox = gtk.VBox()

        last_update_label = gtk.Label()
        markup = 'None'
        if DBConstants.SETTINGS.LAST_NAPTIME_UPDATE:
            markup = UIUtils.utc_to_local_str(
                DBConstants.SETTINGS.LAST_NAPTIME_UPDATE)
        last_update_label.set_markup('Last Update: <b>%s</b>' % (markup))
        vbox.pack_start(last_update_label, True, True, 0)

        last_path_label = gtk.Label()
        last_path_label.set_markup(
            'Last Path: <b>%s</b>' %
            (str(DBConstants.SETTINGS.LAST_NAPTIME_FOLDER)))
        vbox.pack_start(last_path_label, True, True, 0)

        hbox = gtk.HBox()
        folder_label = gtk.Label('Naptime Folder:')
        folder_entry = gtk.Entry()
        folder_entry.set_width_chars(50)
        browse_button = gtk.Button('Browse')
        browse_button.connect('clicked', lambda w: UIUtils.browse_folder(
            'Select naptime folder', folder_entry
        ))  #, [UIUtils.CSV_FILE_FILTER, UIUtils.ALL_FILE_FILTER]))
        hbox.pack_start(folder_label, True, False, 0)
        hbox.pack_start(folder_entry, True, False, 0)
        hbox.pack_start(browse_button, True, False, 0)
        vbox.pack_start(hbox, True, False, 0)

        button_box = gtk.HButtonBox()
        button_box.set_layout(gtk.ButtonBoxStyle.EDGE)
        cancel_button = gtk.Button(stock=gtk.STOCK_CANCEL, label='Cancel')
        cancel_button.connect('clicked', lambda w: self.window.destroy())
        button_box.add(cancel_button)

        update_button = gtk.Button(stock=gtk.STOCK_OK, label='Update')
        update_button.connect(
            'clicked', lambda w: self.update_db(folder_entry.get_text()))
        button_box.add(update_button)

        vbox.pack_end(button_box, True, True, 0)

        self.window.add(vbox)
    def _build_settings_grid(self):
        #table = gtk.Table(5, 3)
        grid = gtk.Grid()

        csv_label = gtk.Label('CSV File:')
        csv_label.set_justify(gtk.JUSTIFY_RIGHT)
        #table.attach(csv_label, 0, 1, 0, 1, gtk.EXPAND, gtk.EXPAND)
        grid.attach(csv_label, 0, 0, 1, 1)

        csv_entry = gtk.Entry()
        csv_entry.set_width_chars(60)
        #table.attach(csv_entry, 1, 2, 0, 1, gtk.EXPAND, gtk.EXPAND)
        grid.attach(csv_entry, 1, 0, 1, 1)
        self.csv_entry = csv_entry

        csv_button = gtk.Button('Browse')
        #table.attach(csv_button, 2, 3, 0, 1, gtk.EXPAND, gtk.EXPAND)
        grid.attach(csv_button, 2, 0, 1, 1)
        csv_button.connect(
            'clicked',
            lambda w: UIUtils.browse_file('Select csv file', csv_entry, [
                UIUtils.CSV_FILE_FILTER, UIUtils.ALL_FILE_FILTER
            ]))

        wav_label = gtk.Label('Wav Folder:')
        wav_label.set_justify(gtk.JUSTIFY_RIGHT)
        #table.attach(wav_label, 0, 1, 1, 2, gtk.EXPAND, gtk.EXPAND)
        grid.attach(wav_label, 0, 1, 1, 1)

        wav_entry = gtk.Entry()
        wav_entry.set_width_chars(60)
        #table.attach(wav_entry, 1, 2, 1, 2, gtk.EXPAND, gtk.EXPAND)
        grid.attach(wav_entry, 1, 1, 1, 1)
        self.wav_entry = wav_entry

        wav_button = gtk.Button('Browse')
        #table.attach(wav_button, 2, 3, 1, 2, gtk.EXPAND, gtk.EXPAND)
        grid.attach(wav_button, 2, 1, 1, 1)
        wav_button.connect(
            'clicked', lambda w: UIUtils.browse_folder(
                'Select parent wav folder', wav_entry))

        blocks_label = gtk.Label('Blocks per Activity:')
        blocks_label.set_justify(gtk.JUSTIFY_RIGHT)
        #table.attach(blocks_label, 0, 1, 2, 3, gtk.EXPAND, gtk.EXPAND)
        grid.attach(blocks_label, 0, 2, 1, 1)

        spin_adj = gtk.Adjustment(value=3,
                                  lower=1,
                                  upper=1000,
                                  step_incr=1,
                                  page_incr=10)
        blocks_spinner = gtk.SpinButton(adjustment=spin_adj)
        #table.attach(blocks_spinner, 1, 2, 2, 3, gtk.EXPAND, gtk.EXPAND)
        grid.attach(blocks_spinner, 1, 2, 1, 1)
        self.blocks_spinner = blocks_spinner

        vbox = gtk.VBox(spacing=5)
        #table.attach(vbox, 1, 2, 3, 5)
        grid.attach(vbox, 1, 3, 1, 2)

        csv_entry.connect('changed',
                          lambda w: self._build_treeviews(w.get_text(), vbox))

        return grid