circuitpython-keymanager 1.2.0__py3-none-any.whl → 1.2.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: circuitpython-keymanager
3
- Version: 1.2.0
3
+ Version: 1.2.1
4
4
  Summary: Tools to manage notes in musical applications. Includes note priority, arpeggiation, and sequencing.
5
5
  Author-email: Cooper Dalrymple <me@dcdalrymple.com>
6
6
  License: MIT
@@ -0,0 +1,6 @@
1
+ relic_keymanager.py,sha256=yG_GMzovYLHDs6lif6-ATGRupgt-7mSfyPHt6gId65g,39585
2
+ circuitpython_keymanager-1.2.1.dist-info/licenses/LICENSE,sha256=Kg8MNewibW0EZzuQ0LXwQuxM_Y_rvtyHAmUqqo-XIYw,1083
3
+ circuitpython_keymanager-1.2.1.dist-info/METADATA,sha256=gSMikNIggGNVn2PGfeStPDiL91lrpy7gegdYiaLDrvo,4577
4
+ circuitpython_keymanager-1.2.1.dist-info/WHEEL,sha256=aeYiig01lYGDzBgS8HxWXOg3uV61G9ijOsup-k9o1sk,91
5
+ circuitpython_keymanager-1.2.1.dist-info/top_level.txt,sha256=CxXrg_QSCDRhgDhuhJEjYFyOq8lxfxnhpj4uI6J69jw,17
6
+ circuitpython_keymanager-1.2.1.dist-info/RECORD,,
relic_keymanager.py CHANGED
@@ -24,7 +24,7 @@ Implementation Notes
24
24
 
25
25
  # imports
26
26
 
27
- __version__ = "1.2.0"
27
+ __version__ = "1.2.1"
28
28
  __repo__ = "https://github.com/relic-se/CircuitPython_KeyManager.git"
29
29
 
30
30
  import asyncio
@@ -742,6 +742,12 @@ class Sequencer(Timer):
742
742
  called. Must have 1 parameter for sequencer position index. Ie: :code:`def step(pos):`.
743
743
  """
744
744
 
745
+ on_loop: Callable[[int], None] = None
746
+ """The callback method that is called when a the sequencer :attr:`position` reaches
747
+ :attr:`loop_end` and begins back at :attr:`loop_start`. Must have 1 parameter for sequencer
748
+ position index, typically :attr:`loop_start`. Ie: :code:`def loop(pos):`.
749
+ """
750
+
745
751
  def _update(self):
746
752
  self._pos += 1
747
753
  end = self._get_end()
@@ -750,6 +756,7 @@ class Sequencer(Timer):
750
756
  if self._loop_type == LoopType.SINGLE:
751
757
  self.active = False
752
758
  return
759
+ self._do_loop()
753
760
  for i in range(self._tracks):
754
761
  note = self._data[i][self._pos]
755
762
  if note and note[0] > 0 and note[1] > 0:
@@ -759,6 +766,10 @@ class Sequencer(Timer):
759
766
  if callable(self.on_step):
760
767
  self.on_step(self._pos)
761
768
 
769
+ def _do_loop(self):
770
+ if callable(self.on_loop):
771
+ self.on_loop(self._pos)
772
+
762
773
 
763
774
  class KeyboardMode:
764
775
  """An enum-like class representing Keyboard note handling modes."""
@@ -1,6 +0,0 @@
1
- relic_keymanager.py,sha256=-C25Br80tW29ihkn1Hp07MK_CEGzG18-jTSVrL1sj-8,39148
2
- circuitpython_keymanager-1.2.0.dist-info/licenses/LICENSE,sha256=Kg8MNewibW0EZzuQ0LXwQuxM_Y_rvtyHAmUqqo-XIYw,1083
3
- circuitpython_keymanager-1.2.0.dist-info/METADATA,sha256=U4SSPP9_c6fgWJsvd65k0qqg0VxXrThbcVDoUfiIUTU,4577
4
- circuitpython_keymanager-1.2.0.dist-info/WHEEL,sha256=aeYiig01lYGDzBgS8HxWXOg3uV61G9ijOsup-k9o1sk,91
5
- circuitpython_keymanager-1.2.0.dist-info/top_level.txt,sha256=CxXrg_QSCDRhgDhuhJEjYFyOq8lxfxnhpj4uI6J69jw,17
6
- circuitpython_keymanager-1.2.0.dist-info/RECORD,,