Add a rotation button to the drawings

pull/145/head
Peter Hutterer 2019-07-16 21:17:09 +10:00
parent 3e23e8bc31
commit ec33e3f0af
2 changed files with 28 additions and 2 deletions

View File

@ -12,6 +12,11 @@
<property name="can_focus">False</property>
<property name="icon_name">edit-delete-symbolic</property>
</object>
<object class="GtkImage" id="image_rotate">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="icon_name">object-rotate-left-symbolic</property>
</object>
<template class="Drawing" parent="GtkBox">
<property name="visible">True</property>
<property name="can_focus">False</property>
@ -68,6 +73,20 @@
<property name="position">2</property>
</packing>
</child>
<child>
<object class="GtkButton" id="btn_rotate">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="image">image_rotate</property>
<signal name="clicked" handler="_on_rotate_button_clicked" swapped="no"/>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">3</property>
</packing>
</child>
<child>
<object class="GtkButton" id="btn_download">
<property name="visible">True</property>
@ -80,7 +99,7 @@
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">3</property>
<property name="position">4</property>
</packing>
</child>
</object>

View File

@ -60,7 +60,7 @@ class Drawing(Gtk.Box):
self.timestamp = svg.timestamp
def refresh(self):
self.svg = svg = JsonSvg(self.json_data)
self.svg = svg = JsonSvg(self.json_data, self.orientation)
self.image_svg.set_from_file(svg.filename)
@GObject.Property
@ -101,3 +101,10 @@ class Drawing(Gtk.Box):
@Gtk.Template.Callback('_on_delete_button_clicked')
def _on_delete_button_clicked(self, button):
Config.instance().delete_drawing(self.timestamp)
@Gtk.Template.Callback('_on_rotate_button_clicked')
def _on_rotate_button_clicked(self, button):
orientations = ['portrait', 'landscape', 'reverse-portrait', 'reverse-landscape'] * 2
o = orientations[orientations.index(self.orientation) + 1]
self.orientation = o
self.refresh()