diff options
| -rw-r--r-- | lib/simulator.py | 57 | ||||
| -rw-r--r-- | messages.po | 40 |
2 files changed, 50 insertions, 47 deletions
diff --git a/lib/simulator.py b/lib/simulator.py index b9e8692b..4483d653 100644 --- a/lib/simulator.py +++ b/lib/simulator.py @@ -35,7 +35,7 @@ class ControlPanel(wx.Panel): self.slider = wx.Slider(self, -1, value=1, minValue=1, maxValue=self.num_stitches, style=wx.SL_HORIZONTAL | wx.SL_LABELS) self.slider.Bind(wx.EVT_SLIDER, self.on_slider) - self.stitchBox = IntCtrl(self, -1, value=0, min=0, max=self.num_stitches, limited=True, allow_none=False) + self.stitchBox = IntCtrl(self, -1, value=1, min=0, max=self.num_stitches, limited=True, allow_none=False) self.stitchBox.Bind(wx.EVT_TEXT, self.on_stitch_box) self.speedST = wx.StaticText(self, -1, label='', style=wx.ALIGN_CENTER) @@ -67,16 +67,16 @@ class ControlPanel(wx.Panel): (wx.ACCEL_NORMAL, wx.WXK_NUMPAD_UP, self.animation_speed_up), (wx.ACCEL_NORMAL, wx.WXK_DOWN, self.animation_slow_down), (wx.ACCEL_NORMAL, wx.WXK_NUMPAD_DOWN, self.animation_slow_down), - (wx.ACCEL_NORMAL, ord('+'), self.animation_one_frame_forward), - (wx.ACCEL_NORMAL, ord('='), self.animation_one_frame_forward), - (wx.ACCEL_SHIFT, ord('='), self.animation_one_frame_forward), - (wx.ACCEL_NORMAL, wx.WXK_ADD, self.animation_one_frame_forward), - (wx.ACCEL_NORMAL, wx.WXK_NUMPAD_ADD, self.animation_one_frame_forward), - (wx.ACCEL_NORMAL, wx.WXK_NUMPAD_UP, self.animation_one_frame_forward), - (wx.ACCEL_NORMAL, ord('-'), self.animation_one_frame_backward), - (wx.ACCEL_NORMAL, ord('_'), self.animation_one_frame_backward), - (wx.ACCEL_NORMAL, wx.WXK_SUBTRACT, self.animation_one_frame_backward), - (wx.ACCEL_NORMAL, wx.WXK_NUMPAD_SUBTRACT, self.animation_one_frame_backward), + (wx.ACCEL_NORMAL, ord('+'), self.animation_one_stitch_forward), + (wx.ACCEL_NORMAL, ord('='), self.animation_one_stitch_forward), + (wx.ACCEL_SHIFT, ord('='), self.animation_one_stitch_forward), + (wx.ACCEL_NORMAL, wx.WXK_ADD, self.animation_one_stitch_forward), + (wx.ACCEL_NORMAL, wx.WXK_NUMPAD_ADD, self.animation_one_stitch_forward), + (wx.ACCEL_NORMAL, wx.WXK_NUMPAD_UP, self.animation_one_stitch_forward), + (wx.ACCEL_NORMAL, ord('-'), self.animation_one_stitch_backward), + (wx.ACCEL_NORMAL, ord('_'), self.animation_one_stitch_backward), + (wx.ACCEL_NORMAL, wx.WXK_SUBTRACT, self.animation_one_stitch_backward), + (wx.ACCEL_NORMAL, wx.WXK_NUMPAD_SUBTRACT, self.animation_one_stitch_backward), (wx.ACCEL_NORMAL, ord('r'), self.animation_restart), (wx.ACCEL_NORMAL, ord('p'), self.on_pause_start_button), (wx.ACCEL_NORMAL, wx.WXK_SPACE, self.on_pause_start_button), @@ -92,6 +92,7 @@ class ControlPanel(wx.Panel): accel_table = wx.AcceleratorTable(accel_entries) self.SetAcceleratorTable(accel_table) + self.current_stitch = 1 self.set_speed(16) self.SetFocus() @@ -124,8 +125,10 @@ class ControlPanel(wx.Panel): self.drawing_panel.set_current_stitch(stitch) def on_current_stitch(self, stitch): - self.slider.SetValue(stitch) - self.stitchBox.SetValue(stitch) + if self.current_stitch != stitch: + self.current_stitch = stitch + self.slider.SetValue(stitch) + self.stitchBox.SetValue(stitch) def set_stitch_label(self, stitch): self.st1.SetLabel("Stitch # %d/%d" % (stitch, self.num_stitches)) @@ -158,11 +161,11 @@ class ControlPanel(wx.Panel): else: self.animation_start() - def animation_one_frame_forward(self, event): - pass + def animation_one_stitch_forward(self, event): + self.drawing_panel.one_stitch_forward() - def animation_one_frame_backward(self, event): - pass + def animation_one_stitch_backward(self, event): + self.drawing_panel.one_stitch_backward() def animation_quit(self, event): self.parent.quit() @@ -231,7 +234,6 @@ class DrawingPanel(wx.Panel): elif self.direction == 1 and self.current_stitch < self.num_stitches: self.go() - def animate(self): if not self.animating: return @@ -246,15 +248,7 @@ class DrawingPanel(wx.Panel): #print >> sys.stderr, time.time(), "animate", self.current_stitch, stitch_increment, self.last_frame_duration, frame_time - self.current_stitch += self.direction * stitch_increment - self.clamp_current_stitch() - self.stop_if_at_end() - - if self.control_panel: - self.control_panel.on_current_stitch(self.current_stitch) - - self.Refresh() - + self.set_current_stitch(self.current_stitch + self.direction * stitch_increment) wx.CallLater(int(1000 * frame_time), self.animate) def OnPaint(self, e): @@ -352,6 +346,9 @@ class DrawingPanel(wx.Panel): self.stop_if_at_end() self.Refresh() + if self.control_panel: + self.control_panel.on_current_stitch(self.current_stitch) + def restart(self): if self.direction == 1: self.current_stitch = 0 @@ -360,6 +357,12 @@ class DrawingPanel(wx.Panel): self.go() + def one_stitch_forward(self): + self.set_current_stitch(self.current_stitch + 1) + + def one_stitch_backward(self): + self.set_current_stitch(self.current_stitch - 1) + class SimulatorPanel(wx.Panel): """""" diff --git a/messages.po b/messages.po index 0a431bd1..a09b61e6 100644 --- a/messages.po +++ b/messages.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2018-08-26 14:32-0400\n" +"POT-Creation-Date: 2018-08-26 14:43-0400\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -674,79 +674,79 @@ msgstr "" msgid "Generate INX files" msgstr "" -#: lib/simulator.py:460 +#: lib/simulator.py:463 msgid "<<" msgstr "" -#: lib/simulator.py:460 +#: lib/simulator.py:463 msgid "Play reverse (arrow left)" msgstr "" -#: lib/simulator.py:461 +#: lib/simulator.py:464 msgid "-" msgstr "" -#: lib/simulator.py:461 +#: lib/simulator.py:464 msgid "Play one frame backward (+)" msgstr "" -#: lib/simulator.py:462 +#: lib/simulator.py:465 msgid "+" msgstr "" -#: lib/simulator.py:462 +#: lib/simulator.py:465 msgid "Play one frame forward (+)" msgstr "" -#: lib/simulator.py:463 +#: lib/simulator.py:466 msgid ">>" msgstr "" -#: lib/simulator.py:463 +#: lib/simulator.py:466 msgid "Play forward (arrow right)" msgstr "" -#: lib/simulator.py:464 +#: lib/simulator.py:467 msgid "^" msgstr "" -#: lib/simulator.py:464 +#: lib/simulator.py:467 msgid "Speed up (arrow up)" msgstr "" -#: lib/simulator.py:465 +#: lib/simulator.py:468 msgid "v" msgstr "" -#: lib/simulator.py:465 +#: lib/simulator.py:468 msgid "Slow down (arrow down)" msgstr "" -#: lib/simulator.py:466 +#: lib/simulator.py:469 msgid "Pause" msgstr "" -#: lib/simulator.py:466 +#: lib/simulator.py:469 msgid "Pause (P)" msgstr "" -#: lib/simulator.py:467 +#: lib/simulator.py:470 msgid "Restart" msgstr "" -#: lib/simulator.py:467 +#: lib/simulator.py:470 msgid "Restart (R)" msgstr "" -#: lib/simulator.py:468 +#: lib/simulator.py:471 msgid "Quit" msgstr "" -#: lib/simulator.py:468 +#: lib/simulator.py:471 msgid "Close (Q)" msgstr "" -#: lib/simulator.py:646 +#: lib/simulator.py:649 msgid "Stitch # " msgstr "" |
