export as json or csv
This commit is contained in:
@@ -79,7 +79,6 @@ def text_dialog(parent, title, label, ok_label, default=None):
|
||||
|
||||
|
||||
|
||||
|
||||
def address_field(addresses):
|
||||
hbox = QHBoxLayout()
|
||||
address_e = QLineEdit()
|
||||
@@ -95,7 +94,49 @@ def address_field(addresses):
|
||||
hbox.addWidget(address_e)
|
||||
return hbox, address_e
|
||||
|
||||
|
||||
|
||||
def filename_field(parent, config, defaultname, select_msg):
|
||||
|
||||
vbox = QVBoxLayout()
|
||||
vbox.addWidget(QLabel(_("Format")))
|
||||
gb = QGroupBox("format", parent)
|
||||
b1 = QRadioButton(gb)
|
||||
b1.setText(_("CSV"))
|
||||
b1.setChecked(True)
|
||||
b2 = QRadioButton(gb)
|
||||
b2.setText(_("json"))
|
||||
vbox.addWidget(b1)
|
||||
vbox.addWidget(b2)
|
||||
|
||||
hbox = QHBoxLayout()
|
||||
|
||||
directory = config.get('io_dir', unicode(os.path.expanduser('~')))
|
||||
path = os.path.join( directory, defaultname )
|
||||
filename_e = QLineEdit()
|
||||
filename_e.setText(path)
|
||||
|
||||
def func():
|
||||
text = unicode(filename_e.text())
|
||||
_filter = "*.csv" if text.endswith(".csv") else "*.json" if text.endswith(".json") else None
|
||||
p = unicode( QFileDialog.getSaveFileName(None, select_msg, text, _filter))
|
||||
if p:
|
||||
filename_e.setText(p)
|
||||
|
||||
button = QPushButton(_('File'))
|
||||
button.clicked.connect(func)
|
||||
hbox.addWidget(button)
|
||||
hbox.addWidget(filename_e)
|
||||
vbox.addLayout(hbox)
|
||||
|
||||
def set_csv(v):
|
||||
text = unicode(filename_e.text())
|
||||
text = text.replace(".json",".csv") if v else text.replace(".csv",".json")
|
||||
filename_e.setText(text)
|
||||
|
||||
b1.clicked.connect(lambda: set_csv(True))
|
||||
b2.clicked.connect(lambda: set_csv(False))
|
||||
|
||||
return vbox, filename_e, b1
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user