summaryrefslogtreecommitdiffstats
path: root/pulsecaster/ui.py
diff options
context:
space:
mode:
authorPaul W. Frields <stickster@gmail.com>2010-12-21 16:21:16 -0500
committerPaul W. Frields <stickster@gmail.com>2010-12-21 16:21:16 -0500
commit14a085855a1b9e45317ea2ce467a237b53283069 (patch)
tree3c12bf2385cdb9f719ae6fee8eb424a78c3fe232 /pulsecaster/ui.py
parent7e7cbb25464152928a14fd1ed9aea36a4d0e5ff8 (diff)
downloadpulsecaster-14a085855a1b9e45317ea2ce467a237b53283069.tar.gz
pulsecaster-14a085855a1b9e45317ea2ce467a237b53283069.tar.xz
pulsecaster-14a085855a1b9e45317ea2ce467a237b53283069.zip
Dynamically generate file chooser, remove from builder
Diffstat (limited to 'pulsecaster/ui.py')
-rw-r--r--pulsecaster/ui.py23
1 files changed, 13 insertions, 10 deletions
diff --git a/pulsecaster/ui.py b/pulsecaster/ui.py
index 4da0286..7016851 100644
--- a/pulsecaster/ui.py
+++ b/pulsecaster/ui.py
@@ -117,14 +117,6 @@ class PulseCasterUI:
self.about.set_program_name(NAME)
self.about.set_logo(self.icontheme.load_icon('pulsecaster', 96, gtk.ICON_LOOKUP_FORCE_SVG))
- self.file_chooser = self.builder.get_object('file_chooser')
- self.file_chooser_cancel_button = self.builder.get_object('file_chooser_cancel_button')
- self.file_chooser_cancel_button.connect('clicked', self.hideFileChooser)
- self.file_chooser_save_button = self.builder.get_object('file_chooser_save_button')
- self.file_chooser_save_button.connect('clicked', self.updateFileSinkPath)
- self.file_chooser.set_do_overwrite_confirmation(True)
- self.file_chooser.connect('confirm-overwrite', self._confirm_overwrite)
-
# Create PulseAudio backing
self.pa = PulseObj(clientName=NAME)
@@ -258,7 +250,18 @@ class PulseCasterUI:
self.about.hide()
def showFileChooser(self, *args):
- self.file_chooser.show()
+ self.file_chooser = gtk.FileChooserDialog(title=_('Save your recording'),
+ action=gtk.FILE_CHOOSER_ACTION_SAVE,
+ buttons=('Cancel', gtk.RESPONSE_CANCEL,
+ 'OK', gtk.RESPONSE_OK))
+ self.file_chooser.set_local_only(True)
+ response = self.file_chooser.run()
+ if response == gtk.RESPONSE_OK:
+ self.updateFileSinkPath()
+ elif response == gtk.RESPONSE_CANCEL:
+ self.hideFileChooser()
+ elif response == gtk.RESPONSE_DELETE_EVENT:
+ self.hideFileChooser()
def hideFileChooser(self, *args):
if not self.filesinkpath:
@@ -274,7 +277,7 @@ class PulseCasterUI:
self._remove_tempfile(self.tempfile, self.temppath)
else:
return
- self.file_chooser.hide()
+ self.file_chooser.destroy()
def updateFileSinkPath(self, *args):
self.filesinkpath = self.file_chooser.get_filename()