[chirp_devel] [PATCH] Allow editing name and comment in import dialog. Feature #150
Tom Hayward
Wed Apr 25 10:06:16 PDT 2012
# HG changeset patch
# User Tom Hayward <tom at tomh.us>
# Date 1335373554 21600
# Node ID cc7ce23661dabc51fe4b922fa82350764489a7ed
# Parent 27dd3b9d5d6dd413b25e9d4b6bde729301d1a973
Allow editing name and comment in import dialog. Feature #150
diff -r 27dd3b9d5d6d -r cc7ce23661da chirpui/importdialog.py
--- a/chirpui/importdialog.py Wed Apr 25 08:11:06 2012 -0700
+++ b/chirpui/importdialog.py Wed Apr 25 11:05:54 2012 -0600
@@ -113,40 +113,50 @@
def _edited(self, rend, path, new, col):
iter = self.__store.get_iter(path)
- nloc, = self.__store.get(iter, self.col_nloc)
+
+ if col == self.col_nloc:
+ nloc, = self.__store.get(iter, self.col_nloc)
- try:
- val = int(new)
- except ValueError:
- common.show_error(_("Invalid value. Must be an integer."))
+ try:
+ val = int(new)
+ except ValueError:
+ common.show_error(_("Invalid value. Must be an integer."))
+ return
+
+ if val == nloc:
+ return
+
+ if self._check_for_dupe(val):
+ d = gtk.MessageDialog(parent=self, buttons=gtk.BUTTONS_OK)
+ d.set_property("text",
+ _("Location {number} is already being "
+ "imported").format(number=val))
+ d.run()
+ d.destroy()
+ return
+
+ self.record_use_of(val)
+
+ elif col == self.col_name or col == self.col_comm:
+ val = str(new)
+
+ else:
return
- if val == nloc:
- return
-
- if self._check_for_dupe(val):
- d = gtk.MessageDialog(parent=self, buttons=gtk.BUTTONS_OK)
- d.set_property("text",
- _("Location {number} is already being "
- "imported").format(number=val))
- d.run()
- d.destroy()
- return
-
- self.record_use_of(val)
-
self.__store.set(iter, col, val)
def get_import_list(self):
import_list = []
iter = self.__store.get_iter_first()
while iter:
- old, new, enb = self.__store.get(iter,
+ old, new, name, comm, enb = self.__store.get(iter,
self.col_oloc,
self.col_nloc,
+ self.col_name,
+ self.col_comm,
self.col_import)
if enb:
- import_list.append((old, new))
+ import_list.append((old, new, name, comm))
iter = self.__store.iter_next(iter)
return import_list
@@ -238,7 +248,7 @@
src_features = self.src_radio.get_features()
- for old, new in import_list:
+ for old, new, name, comm in import_list:
i += 1
print "%sing %i -> %i" % (self.ACTION, old, new)
@@ -248,7 +258,9 @@
mem = import_logic.import_mem(self.dst_radio,
src_features,
src,
- {"number" : new})
+ {"number" : new,
+ "name" : name,
+ "comment": comm})
except import_logic.ImportError, e:
print e
error_messages[new] = str(e)
@@ -271,7 +283,7 @@
return i
def make_view(self):
- editable = [self.col_nloc]
+ editable = [self.col_nloc, self.col_name, self.col_comm]
self.__store = gtk.ListStore(gobject.TYPE_BOOLEAN, # Import
gobject.TYPE_INT, # Source loc
More information about the chirp_devel
mailing list