diff options
Diffstat (limited to 'voctogui')
-rw-r--r-- | voctogui/lib/ui.py | 18 | ||||
-rw-r--r-- | voctogui/ui/stream-live.svg | 63 | ||||
-rw-r--r-- | voctogui/ui/voctogui.ui | 43 |
3 files changed, 114 insertions, 10 deletions
diff --git a/voctogui/lib/ui.py b/voctogui/lib/ui.py index c8ae1c5..73faca7 100644 --- a/voctogui/lib/ui.py +++ b/voctogui/lib/ui.py @@ -26,6 +26,7 @@ class Ui(UiBuilder): self.configure_video_main() self.configure_video_previews() self.configure_audio_selector() + self.configure_streamblank_selector() def configure_video_main(self): self.log.info('Initializing Main Video and Main Audio-Level View') @@ -109,6 +110,23 @@ class Ui(UiBuilder): combo.set_active_id('moofar') + def configure_streamblank_selector(self): + livebtn = self.get_check_widget('stream_live') + blankbtn = self.get_check_widget('stream_blank') + toolbar = blankbtn.get_parent() + pos = toolbar.get_item_index(blankbtn) + + for idx, name in enumerate(['pause', 'nostream']): + if idx == 0: + new_btn = blankbtn + else: + new_icon = Gtk.Image.new_from_pixbuf(blankbtn.get_icon_widget().get_pixbuf()) + new_btn = Gtk.RadioToolButton(group=livebtn) + new_btn.set_icon_widget(new_icon) + toolbar.insert(new_btn, pos+1) + + new_btn.set_label("Stream %s" % name) + def show(self): self.log.info('Running Video-Playback Pipelines') diff --git a/voctogui/ui/stream-live.svg b/voctogui/ui/stream-live.svg new file mode 100644 index 0000000..6f16a60 --- /dev/null +++ b/voctogui/ui/stream-live.svg @@ -0,0 +1,63 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="32" + height="32" + id="svg3052" + version="1.1" + inkscape:version="0.48.5 r10040" + sodipodi:docname="blank-stream.svg"> + <defs + id="defs3054" /> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="22.4" + inkscape:cx="1.5807145" + inkscape:cy="15.895534" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="false" + inkscape:window-width="1920" + inkscape:window-height="1014" + inkscape:window-x="0" + inkscape:window-y="27" + inkscape:window-maximized="1" /> + <metadata + id="metadata3057"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(0,-1020.3622)"> + <rect + style="color:#000000;fill:#00ff00;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.50000000000000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" + id="rect3062" + width="30" + height="16.875" + x="1" + y="1027.9247" /> + </g> +</svg> diff --git a/voctogui/ui/voctogui.ui b/voctogui/ui/voctogui.ui index 4fb75f5..fc4ddc7 100644 --- a/voctogui/ui/voctogui.ui +++ b/voctogui/ui/voctogui.ui @@ -2,11 +2,6 @@ <!-- Generated with glade 3.18.3 --> <interface> <requires lib="gtk+" version="3.12"/> - <object class="GtkImage" id="img-blank-stream"> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="pixbuf">blank-stream.svg</property> - </object> <object class="GtkImage" id="img-composite-fullscreen"> <property name="visible">True</property> <property name="can_focus">False</property> @@ -27,6 +22,16 @@ <property name="can_focus">False</property> <property name="pixbuf">composite-side-by-side-preview.svg</property> </object> + <object class="GtkImage" id="img-blank-stream"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="pixbuf">blank-stream.svg</property> + </object> + <object class="GtkImage" id="img-stream-live"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="pixbuf">stream-live.svg</property> + </object> <object class="GtkListStore" id="liststore_audio"> <columns> <!-- column-name name --> @@ -58,7 +63,7 @@ <property name="hexpand">True</property> <property name="toolbar_style">both</property> <child> - <object class="GtkToggleToolButton" id="composite-fullscreen"> + <object class="GtkRadioToolButton" id="composite-fullscreen"> <property name="visible">True</property> <property name="can_focus">False</property> <property name="label" translatable="yes">Fullscreen</property> @@ -72,12 +77,13 @@ </packing> </child> <child> - <object class="GtkToggleToolButton" id="composite-picture-in-picture"> + <object class="GtkRadioToolButton" id="composite-picture-in-picture"> <property name="visible">True</property> <property name="can_focus">False</property> <property name="label" translatable="yes">Picture in Picture</property> <property name="use_underline">True</property> <property name="icon_widget">img-composite-picture-in-picture</property> + <property name="group">composite-fullscreen</property> <accelerator key="F2" signal="clicked"/> </object> <packing> @@ -86,12 +92,13 @@ </packing> </child> <child> - <object class="GtkToggleToolButton" id="composite-side-by-side-equal"> + <object class="GtkRadioToolButton" id="composite-side-by-side-equal"> <property name="visible">True</property> <property name="can_focus">False</property> <property name="label" translatable="yes">Side-by-side Equal</property> <property name="use_underline">True</property> <property name="icon_widget">img-composite-side-by-side-equal</property> + <property name="group">composite-fullscreen</property> <accelerator key="F3" signal="clicked"/> </object> <packing> @@ -100,12 +107,13 @@ </packing> </child> <child> - <object class="GtkToggleToolButton" id="composite-side-by-side-preview"> + <object class="GtkRadioToolButton" id="composite-side-by-side-preview"> <property name="visible">True</property> <property name="can_focus">False</property> <property name="label" translatable="yes">Side-by-side Preview</property> <property name="use_underline">True</property> <property name="icon_widget">img-composite-side-by-side-preview</property> + <property name="group">composite-fullscreen</property> <accelerator key="F4" signal="clicked"/> </object> <packing> @@ -124,12 +132,27 @@ </packing> </child> <child> - <object class="GtkMenuToolButton" id="stream_blank"> + <object class="GtkRadioToolButton" id="stream_live"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Stream Live</property> + <property name="use_underline">True</property> + <property name="icon_widget">img-stream-live</property> + <property name="active">True</property> + </object> + <packing> + <property name="expand">False</property> + <property name="homogeneous">True</property> + </packing> + </child> + <child> + <object class="GtkRadioToolButton" id="stream_blank"> <property name="visible">True</property> <property name="can_focus">False</property> <property name="label" translatable="yes">Blank Stream</property> <property name="use_underline">True</property> <property name="icon_widget">img-blank-stream</property> + <property name="group">stream_live</property> </object> <packing> <property name="expand">False</property> |