[SCM] drumkv1/master: Merge.
mira-guest at users.alioth.debian.org
mira-guest at users.alioth.debian.org
Mon Jun 26 22:30:46 UTC 2017
New upstream version 0.8.3
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
X-Git-Refname: refs/heads/master
X-Git-Reftype: branch
X-Git-Oldrev: 1438c0b972d7d3b8c0b9b56bb68f58b973de5999
X-Git-Newrev: 2f9439f9197b031d3b764b40d4eebd135e6346cf
The following commit has been merged in the master branch:
commit 2f9439f9197b031d3b764b40d4eebd135e6346cf
Merge: 1438c0b972d7d3b8c0b9b56bb68f58b973de5999 91b1bc9a819d4818fa9d01c6b4d858beb9187f91
Author: JaromÃr MikeÅ¡ <mira.mikes at seznam.cz>
Date: Tue Jun 27 00:30:17 2017 +0200
Merge.
diff --combined ChangeLog
index 2dcc199,8908f1b..a172ed0
--- a/ChangeLog
+++ b/ChangeLog
@@@ -4,6 -4,16 +4,19 @@@ drumkv1 - an old-school drum-kit sample
ChangeLog
++<<<<<<< HEAD
++=======
+ 0.8.3 2017-06-21 A Summer'17 release.
+
+ - Added StartupWMClass entry to desktop file.
+ - Long overdue, some brand new and fundamental icons revamp.
+ - Left-clicking on each element fake-LED now triggers it as
+ an internal MIDI note-on/off event. Play (current element)
+ menu item has been also added to the the element list and
+ sample display right-click context-menu.
+
+
++>>>>>>> upstream/0.8.3
0.8.2 2017-05-02 Pre-LAC2017 release frenzy.
- A custom knob/spin-box behavioral option have been added:
diff --combined configure
index 7645334,d786e53..108223d
--- a/configure
+++ b/configure
@@@ -1,6 -1,6 +1,10 @@@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
++<<<<<<< HEAD
+# Generated by GNU Autoconf 2.69 for drumkv1 0.8.2.
++=======
+ # Generated by GNU Autoconf 2.69 for drumkv1 0.8.3.
++>>>>>>> upstream/0.8.3
#
# Report bugs to <rncbc at rncbc.org>.
#
@@@ -580,8 -580,8 +584,13 @@@ MAKEFLAGS
# Identity of this package.
PACKAGE_NAME='drumkv1'
PACKAGE_TARNAME='drumkv1'
++<<<<<<< HEAD
+PACKAGE_VERSION='0.8.2'
+PACKAGE_STRING='drumkv1 0.8.2'
++=======
+ PACKAGE_VERSION='0.8.3'
+ PACKAGE_STRING='drumkv1 0.8.3'
++>>>>>>> upstream/0.8.3
PACKAGE_BUGREPORT='rncbc at rncbc.org'
PACKAGE_URL=''
@@@ -1306,7 -1306,7 +1315,11 @@@ if test "$ac_init_help" = "long"; the
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
++<<<<<<< HEAD
+\`configure' configures drumkv1 0.8.2 to adapt to many kinds of systems.
++=======
+ \`configure' configures drumkv1 0.8.3 to adapt to many kinds of systems.
++>>>>>>> upstream/0.8.3
Usage: $0 [OPTION]... [VAR=VALUE]...
@@@ -1367,7 -1367,7 +1380,11 @@@ f
if test -n "$ac_init_help"; then
case $ac_init_help in
++<<<<<<< HEAD
+ short | recursive ) echo "Configuration of drumkv1 0.8.2:";;
++=======
+ short | recursive ) echo "Configuration of drumkv1 0.8.3:";;
++>>>>>>> upstream/0.8.3
esac
cat <<\_ACEOF
@@@ -1497,7 -1497,7 +1514,11 @@@ f
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
++<<<<<<< HEAD
+drumkv1 configure 0.8.2
++=======
+ drumkv1 configure 0.8.3
++>>>>>>> upstream/0.8.3
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@@ -1874,7 -1874,7 +1895,11 @@@ cat >config.log <<_ACEO
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
++<<<<<<< HEAD
+It was created by drumkv1 $as_me 0.8.2, which was
++=======
+ It was created by drumkv1 $as_me 0.8.3, which was
++>>>>>>> upstream/0.8.3
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@@ -4000,7 -4000,7 +4025,7 @@@ f
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_gxx_version_major" >&5
$as_echo "$ac_cv_gxx_version_major" >&6; }
ac_gxx_version_major=$ac_cv_gxx_version_major
- if test $ac_gxx_version_major -gt 4 -a $ac_gxx_version_major -lt 6; then
+ if test $ac_gxx_version_major -ge 4 -a $ac_gxx_version_major -lt 6; then
CXXFLAGS="-std=c++11 $CXXFLAGS"
fi
@@@ -4685,8 -4685,8 +4710,8 @@@ ac_cflags="-ffast-math $ac_cflags
# Check for core SNDFILE library.
pkg_failed=no
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SNDFILE" >&5
- $as_echo_n "checking for SNDFILE... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sndfile" >&5
+ $as_echo_n "checking for sndfile... " >&6; }
if test -n "$SNDFILE_CFLAGS"; then
pkg_cv_SNDFILE_CFLAGS="$SNDFILE_CFLAGS"
@@@ -4726,7 -4726,7 +4751,7 @@@ f
if test $pkg_failed = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
@@@ -4744,7 -4744,7 +4769,7 @@@ f
ac_sndfile="no"
elif test $pkg_failed = untried; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
ac_sndfile="no"
else
@@@ -4783,8 -4783,8 +4808,8 @@@ ac_clean_targets="
if test "x$ac_jack" = "xyes"; then
pkg_failed=no
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for JACK" >&5
- $as_echo_n "checking for JACK... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for jack >= 0.100.0" >&5
+ $as_echo_n "checking for jack >= 0.100.0... " >&6; }
if test -n "$JACK_CFLAGS"; then
pkg_cv_JACK_CFLAGS="$JACK_CFLAGS"
@@@ -4824,7 -4824,7 +4849,7 @@@ f
if test $pkg_failed = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
@@@ -4842,7 -4842,7 +4867,7 @@@ f
ac_jack="no"
elif test $pkg_failed = untried; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
ac_jack="no"
else
@@@ -4922,8 -4922,8 +4947,8 @@@ $as_echo "$as_me: WARNING: *** JACK ses
if test "x$ac_alsa_midi" = "xyes"; then
pkg_failed=no
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ALSA" >&5
- $as_echo_n "checking for ALSA... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for alsa" >&5
+ $as_echo_n "checking for alsa... " >&6; }
if test -n "$ALSA_CFLAGS"; then
pkg_cv_ALSA_CFLAGS="$ALSA_CFLAGS"
@@@ -4963,7 -4963,7 +4988,7 @@@ f
if test $pkg_failed = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
@@@ -4981,7 -4981,7 +5006,7 @@@ f
ac_alsa_midi="no"
elif test $pkg_failed = untried; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
ac_alsa_midi="no"
else
@@@ -5062,8 -5062,8 +5087,8 @@@ f
if test "x$ac_liblo" = "xyes"; then
pkg_failed=no
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBLO" >&5
- $as_echo_n "checking for LIBLO... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for liblo" >&5
+ $as_echo_n "checking for liblo... " >&6; }
if test -n "$LIBLO_CFLAGS"; then
pkg_cv_LIBLO_CFLAGS="$LIBLO_CFLAGS"
@@@ -5103,7 -5103,7 +5128,7 @@@ f
if test $pkg_failed = yes; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
@@@ -5121,7 -5121,7 +5146,7 @@@ f
ac_liblo="no"
elif test $pkg_failed = untried; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
ac_liblo="no"
else
@@@ -6328,7 -6328,7 +6353,11 @@@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_wr
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
++<<<<<<< HEAD
+This file was extended by drumkv1 $as_me 0.8.2, which was
++=======
+ This file was extended by drumkv1 $as_me 0.8.3, which was
++>>>>>>> upstream/0.8.3
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@@ -6390,7 -6390,7 +6419,11 @@@ _ACEO
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
++<<<<<<< HEAD
+drumkv1 config.status 0.8.2
++=======
+ drumkv1 config.status 0.8.3
++>>>>>>> upstream/0.8.3
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
diff --combined configure.ac
index 6a880c8,c6097d9..5a4643d
--- a/configure.ac
+++ b/configure.ac
@@@ -1,5 -1,5 +1,9 @@@
# Process this file with autoconf to produce a configure script.
++<<<<<<< HEAD
+AC_INIT(drumkv1, 0.8.2, rncbc at rncbc.org)
++=======
+ AC_INIT(drumkv1, 0.8.3, rncbc at rncbc.org)
++>>>>>>> upstream/0.8.3
AC_CONFIG_SRCDIR(src/drumkv1.cpp)
AC_CONFIG_HEADERS(src/config.h)
@@@ -225,7 -225,7 +229,7 @@@ AC_CACHE_CHECK([for g++ major version]
ac_gxx_version_major=$(($ac_cv_gxx_version_major + 0))
])
ac_gxx_version_major=$ac_cv_gxx_version_major
- if test $ac_gxx_version_major -gt 4 -a $ac_gxx_version_major -lt 6; then
+ if test $ac_gxx_version_major -ge 4 -a $ac_gxx_version_major -lt 6; then
CXXFLAGS="-std=c++11 $CXXFLAGS"
fi
diff --combined drumkv1.spec.in
index 153bde5,7dab164..5274f48
--- a/drumkv1.spec.in
+++ b/drumkv1.spec.in
@@@ -1,6 -1,6 +1,10 @@@
%define name @PACKAGE_TARNAME@
%define version @PACKAGE_VERSION@
++<<<<<<< HEAD
+%define release 28
++=======
+ %define release 29
++>>>>>>> upstream/0.8.3
%define _prefix @ac_prefix@
@@@ -87,6 -87,8 +91,11 @@@ BuildRequires: lv2-deve
%{_datadir}/man/man1/%{name}*.1.gz
%changelog
++<<<<<<< HEAD
++=======
+ * Wed Jun 21 2017 Rui Nuno Capela <rncbc at rncbc.org> 0.8.3
+ - A Summer'17 release.
++>>>>>>> upstream/0.8.3
* Tue May 2 2017 Rui Nuno Capela <rncbc at rncbc.org> 0.8.2
- Pre-LAC2017 release frenzy.
* Tue Mar 21 2017 Rui Nuno Capela <rncbc at rncbc.org> 0.8.1
diff --combined src/drumkv1.cpp
index a66c2f6,3f6461e..3ac70ec
--- a/src/drumkv1.cpp
+++ b/src/drumkv1.cpp
@@@ -850,6 -850,8 +850,11 @@@ public
void midiInEnabled(bool on);
uint32_t midiInCount();
++<<<<<<< HEAD
++=======
+ void directNoteOn(int note, int vel);
+
++>>>>>>> upstream/0.8.3
protected:
void allSoundOff();
@@@ -939,6 -941,10 +944,10 @@@ private
drumkv1_reverb m_reverb;
drumkv1_phasor m_phasor;
+
+ volatile int m_direct_chan;
+ volatile int m_direct_note;
+ volatile int m_direct_vel;
};
@@@ -1647,6 -1653,22 +1656,22 @@@ void drumkv1_impl::allNotesOff (void
elem->aux1.reset();
elem = elem->next();
}
+
+ m_direct_chan = m_direct_note = m_direct_vel = -1;
+ }
+
+
+ // direct note-on triggered on next cycle...
+ void drumkv1_impl::directNoteOn ( int note, int vel )
+ {
+ if (vel > 0) {
+ const int ch1 = int(*m_def.channel);
+ m_direct_chan = (ch1 > 0 ? ch1 - 1 : 0) & 0x0f;
+ m_direct_note = note;
+ m_direct_vel = vel;
+ } else {
+ m_direct_vel = 0;
+ }
}
@@@ -1766,6 -1788,20 +1791,20 @@@ void drumkv1_impl::process ( float **in
::memset(outs[k], 0, nframes * sizeof(float));
}
+ // process direct note on/off...
+ if (m_direct_chan >= 0 && m_direct_note >= 0 && m_direct_vel >= 0) {
+ struct note_data { uint8_t status, note, vel; } data;
+ data.status = (m_direct_vel > 0 ? 0x90 : 0x80) | m_direct_chan;
+ data.note = m_direct_note;
+ data.vel = m_direct_vel;
+ process_midi((uint8_t *) &data, sizeof(data));
+ if (m_direct_vel == 0) {
+ m_direct_chan = -1;
+ m_direct_note = -1;
+ }
+ m_direct_vel = -1;
+ }
+
drumkv1_elem *elem = m_elem_list.next();
while (elem) {
#if 0
@@@ -2385,5 -2421,13 +2424,16 @@@ uint32_t drumkv1::midiInCount (void
}
++<<<<<<< HEAD
++=======
+ // MIDI direct note on/off triggering
+
+ void drumkv1::directNoteOn ( int note, int vel )
+ {
+ m_pImpl->directNoteOn(note, vel);
+ }
+
+
++>>>>>>> upstream/0.8.3
// end of drumkv1.cpp
diff --combined src/drumkv1.h
index c9e2679,ebcd244..3b63e8c
--- a/src/drumkv1.h
+++ b/src/drumkv1.h
@@@ -180,6 -180,8 +180,11 @@@ public
void midiInEnabled(bool on);
uint32_t midiInCount();
++<<<<<<< HEAD
++=======
+ void directNoteOn(int note, int vel);
+
++>>>>>>> upstream/0.8.3
protected:
virtual void selectSample(int key) = 0;
diff --combined src/drumkv1.qrc
index e7578ef,06b7b3f..17dadba
--- a/src/drumkv1.qrc
+++ b/src/drumkv1.qrc
@@@ -2,6 -2,7 +2,10 @@@
<qresource>
<file>images/ledOn.png</file>
<file>images/ledOff.png</file>
++<<<<<<< HEAD
++=======
+ <file>images/playSample.png</file>
++>>>>>>> upstream/0.8.3
<file>images/presetNew.png</file>
<file>images/presetOpen.png</file>
<file>images/presetSave.png</file>
diff --combined src/drumkv1_ui.cpp
index 8907ebe,a5f8de2..a6ba7e5
--- a/src/drumkv1_ui.cpp
+++ b/src/drumkv1_ui.cpp
@@@ -151,4 -151,10 +151,13 @@@ uint32_t drumkv1_ui::midiInCount (void
}
++<<<<<<< HEAD
++=======
+ void drumkv1_ui::directNoteOn ( int note, int vel )
+ {
+ m_pDrumk->directNoteOn(note, vel);
+ }
+
+
++>>>>>>> upstream/0.8.3
// end of drumkv1_ui.cpp
diff --combined src/drumkv1_ui.h
index bf471e8,02f3106..6a752e8
--- a/src/drumkv1_ui.h
+++ b/src/drumkv1_ui.h
@@@ -68,6 -68,8 +68,11 @@@ public
void midiInEnabled(bool bEnabled);
uint32_t midiInCount();
++<<<<<<< HEAD
++=======
+ void directNoteOn(int note, int vel);
+
++>>>>>>> upstream/0.8.3
private:
drumkv1 *m_pDrumk;
diff --combined src/drumkv1widget_elements.cpp
index a983b0e,1c0fc3c..eb5ce0e
--- a/src/drumkv1widget_elements.cpp
+++ b/src/drumkv1widget_elements.cpp
@@@ -254,10 -254,9 +254,9 @@@ int drumkv1widget_elements_model::colum
// Constructor.
drumkv1widget_elements::drumkv1widget_elements ( QWidget *pParent )
- : QTreeView(pParent), m_pModel(NULL)
+ : QTreeView(pParent), m_pModel(NULL),
+ m_pDragSample(NULL), m_iDirectNoteOn(-1)
{
- m_pDragSample = NULL;
-
resetDragState();
}
@@@ -343,8 -342,14 +342,14 @@@ void drumkv1widget_elements::doubleClic
void drumkv1widget_elements::mousePressEvent ( QMouseEvent *pMouseEvent )
{
if (pMouseEvent->button() == Qt::LeftButton) {
- m_dragState = DragStart;
- m_posDrag = pMouseEvent->pos();
+ const QPoint& pos = pMouseEvent->pos();
+ if (pos.x() > 0 && pos.x() < 16) {
+ directNoteOn(QTreeView::indexAt(pos).row());
+ return; // avoid double-clicks...
+ } else {
+ m_dragState = DragStart;
+ m_posDrag = pos;
+ }
}
QTreeView::mousePressEvent(pMouseEvent);
@@@ -381,6 -386,8 +386,8 @@@ void drumkv1widget_elements::mouseRelea
{
QTreeView::mouseReleaseEvent(pMouseEvent);
+ directNoteOff();
+
m_pDragSample = NULL;
resetDragState();
}
@@@ -472,5 -479,44 +479,47 @@@ void drumkv1widget_elements::midiInLedN
}
++<<<<<<< HEAD
++=======
+ // Direct note-on/off methods.
+ void drumkv1widget_elements::directNoteOn ( int key )
+ {
+ if (m_pModel == NULL || key < 0)
+ return;
+
+ drumkv1_ui *pDrumkUi = m_pModel->instance();
+ if (pDrumkUi == NULL)
+ return;
+
+ drumkv1_sample *pSample = pDrumkUi->sample();
+ if (pSample == NULL)
+ return;
+
+ const float v = pDrumkUi->paramValue(drumkv1::DEF1_VELOCITY);
+ const int vel = int(79.375f * v + 47.625f) & 0x7f;
+ pDrumkUi->directNoteOn(key, vel); // note-on!
+ m_iDirectNoteOn = key;
+
+ const float srate_ms = 0.001f * pSample->sampleRate();
+ const int timeout_ms = int(float(pSample->length() >> 1) / srate_ms);
+ QTimer::singleShot(timeout_ms, this, SLOT(directNoteOff()));
+ }
+
+
+ void drumkv1widget_elements::directNoteOff (void)
+ {
+ if (m_pModel == NULL || m_iDirectNoteOn < 0)
+ return;
+
+ drumkv1_ui *pDrumkUi = m_pModel->instance();
+ if (pDrumkUi == NULL)
+ return;
+
+ pDrumkUi->directNoteOn(m_iDirectNoteOn, 0); // note-off!
+
+ m_iDirectNoteOn = -1;
+ }
+
++>>>>>>> upstream/0.8.3
// end of drumkv1widget_elements.cpp
diff --combined src/drumkv1widget_elements.h
index 433a4a8,d0efeaa..9210b7b
--- a/src/drumkv1widget_elements.h
+++ b/src/drumkv1widget_elements.h
@@@ -132,6 -132,9 +132,12 @@@ public
// MIDI input status update
void midiInLedNote(int key, int vel);
++<<<<<<< HEAD
++=======
+ // Direct note-on methods.
+ void directNoteOn(int key);
+
++>>>>>>> upstream/0.8.3
signals:
// Emitted signals.
@@@ -147,6 -150,9 +153,9 @@@ protected slots
void currentRowChanged(const QModelIndex&, const QModelIndex&);
void doubleClicked(const QModelIndex&);
+ // Direct note-off/timeout methods.
+ void directNoteOff();
+
protected:
// Mouse interaction.
@@@ -176,6 -182,8 +185,8 @@@ private
QPoint m_posDrag;
drumkv1_sample *m_pDragSample;
+
+ int m_iDirectNoteOn;
};
--
drumkv1 packaging
More information about the pkg-multimedia-commits
mailing list