audio/sooperlooper: Updated for version 1.7.2.

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
B. Watson 2014-09-12 01:50:04 +07:00 committed by Willy Sudiarto Raharjo
parent 538723a8c7
commit a690951e27
4 changed files with 203 additions and 4 deletions

View file

@ -0,0 +1,177 @@
Author: Jaromír Mikeš <mira.mikes@seznam.cz>, Olly Betts <olly@survex.com>
Description: build against wx 3.0.
Forwarded: yes
Index: sooperlooper/src/gui/main_panel.cpp
===================================================================
--- sooperlooper.orig/src/gui/main_panel.cpp
+++ sooperlooper/src/gui/main_panel.cpp
@@ -448,7 +448,7 @@ MainPanel::init_loopers (int count)
while (count < (int)_looper_panels.size()) {
looperpan = _looper_panels.back();
_looper_panels.pop_back();
- _main_sizer->Remove(looperpan);
+ _main_sizer->Detach(looperpan);
looperpan->Destroy();
}
}
@@ -1277,7 +1277,7 @@ void MainPanel::misc_action (bool releas
}
- wxString filename = do_file_selector (wxT("Choose file to save loop"), wxT("wav"), wxT("WAVE files (*.wav)|*.wav;*.WAV;*.Wav"), wxSAVE|wxCHANGE_DIR|wxOVERWRITE_PROMPT);
+ wxString filename = do_file_selector (wxT("Choose file to save loop"), wxT("wav"), wxT("WAVE files (*.wav)|*.wav;*.WAV;*.Wav"), wxFD_SAVE|wxFD_CHANGE_DIR|wxFD_OVERWRITE_PROMPT);
if ( !filename.empty() )
{
@@ -1296,7 +1296,7 @@ void MainPanel::misc_action (bool releas
index = 0;
}
- wxString filename = do_file_selector (wxT("Choose file to open"), wxT(""), wxT("*.slsess"), wxOPEN|wxCHANGE_DIR);
+ wxString filename = do_file_selector (wxT("Choose file to open"), wxT(""), wxT("*.slsess"), wxFD_OPEN|wxFD_CHANGE_DIR);
if ( !filename.empty() )
{
@@ -1408,7 +1408,7 @@ void MainPanel::set_curr_loop (int index
void MainPanel::do_load_session ()
{
- wxString filename = do_file_selector (wxT("Choose session to load"), wxT("*.slsess"), wxT("*.slsess"), wxOPEN|wxCHANGE_DIR);
+ wxString filename = do_file_selector (wxT("Choose session to load"), wxT("*.slsess"), wxT("*.slsess"), wxFD_OPEN|wxFD_CHANGE_DIR);
if ( !filename.empty() )
{
@@ -1419,7 +1419,7 @@ void MainPanel::do_load_session ()
void MainPanel::do_save_session (bool write_audio)
{
- wxString filename = do_file_selector (wxT("Choose file to save session"), wxT("slsess"), wxT("*.slsess"), wxSAVE|wxCHANGE_DIR|wxOVERWRITE_PROMPT);
+ wxString filename = do_file_selector (wxT("Choose file to save session"), wxT("slsess"), wxT("*.slsess"), wxFD_SAVE|wxFD_CHANGE_DIR|wxFD_OVERWRITE_PROMPT);
if ( !filename.empty() )
{
Index: sooperlooper/src/gui/pix_button.cpp
===================================================================
--- sooperlooper.orig/src/gui/pix_button.cpp
+++ sooperlooper/src/gui/pix_button.cpp
@@ -250,7 +250,7 @@ PixButton::OnMouseEvents (wxMouseEvent &
pt.x += bounds.x;
pt.y += bounds.y;
- if (bounds.Inside(pt)) {
+ if (bounds.Contains(pt)) {
clicked (get_mouse_button(ev)); // emit
if (ev.MiddleUp() && ev.ControlDown()) {
Index: sooperlooper/src/gui/looper_panel.cpp
===================================================================
--- sooperlooper.orig/src/gui/looper_panel.cpp
+++ sooperlooper/src/gui/looper_panel.cpp
@@ -1428,7 +1428,7 @@ LooperPanel::clicked_events (int button,
if (cmd == wxT("save"))
{
wxString filename = _mainpanel->do_file_selector (wxT("Choose file to save loop"),
- wxT("wav"), wxT("WAVE files (*.wav)|*.wav;*.WAV;*.Wav"), wxSAVE|wxCHANGE_DIR|wxOVERWRITE_PROMPT);
+ wxT("wav"), wxT("WAVE files (*.wav)|*.wav;*.WAV;*.Wav"), wxFD_SAVE|wxFD_CHANGE_DIR|wxFD_OVERWRITE_PROMPT);
if ( !filename.empty() )
{
@@ -1442,7 +1442,7 @@ LooperPanel::clicked_events (int button,
}
else if (cmd == wxT("load"))
{
- wxString filename = _mainpanel->do_file_selector(wxT("Choose file to open"), wxT(""), wxT("Audio files (*.wav,*.aif)|*.wav;*.WAV;*.Wav;*.aif;*.aiff;*.AIF;*.AIFF|All files (*.*)|*.*"), wxOPEN|wxCHANGE_DIR);
+ wxString filename = _mainpanel->do_file_selector(wxT("Choose file to open"), wxT(""), wxT("Audio files (*.wav,*.aif)|*.wav;*.WAV;*.Wav;*.aif;*.aiff;*.AIF;*.AIFF|All files (*.*)|*.*"), wxFD_OPEN|wxFD_CHANGE_DIR);
if ( !filename.empty() )
{
Index: sooperlooper/src/gui/keyboard_target.cpp
===================================================================
--- sooperlooper.orig/src/gui/keyboard_target.cpp
+++ sooperlooper/src/gui/keyboard_target.cpp
@@ -553,10 +553,10 @@ KeyboardTarget::keycode_from_name (const
keycode = WXK_RETURN;
}
else if ( keyname == wxT("PGUP") ) {
- keycode = WXK_PRIOR;
+ keycode = WXK_PAGEUP;
}
else if ( keyname == wxT("PGDN") ) {
- keycode = WXK_NEXT;
+ keycode = WXK_PAGEDOWN;
}
else if ( keyname == wxT("LEFT") ) {
keycode = WXK_LEFT;
@@ -630,10 +630,10 @@ wxString KeyboardTarget::name_from_keyco
case WXK_RETURN:
text += wxT("return");
break;
- case WXK_PRIOR:
+ case WXK_PAGEUP:
text += wxT("pageup");
break;
- case WXK_NEXT:
+ case WXK_PAGEDOWN:
text += wxT("pagedown");
break;
case WXK_LEFT:
Index: sooperlooper/src/gui/check_box.cpp
===================================================================
--- sooperlooper.orig/src/gui/check_box.cpp
+++ sooperlooper/src/gui/check_box.cpp
@@ -237,7 +237,7 @@ CheckBox::OnMouseEvents (wxMouseEvent &e
}
else if (ev.LeftUp())
{
- if (bounds.Inside(ev.GetPosition())) {
+ if (bounds.Contains(ev.GetPosition())) {
// toggle value
_value = !_value;
Index: sooperlooper/src/gui/midi_bind_panel.cpp
===================================================================
--- sooperlooper.orig/src/gui/midi_bind_panel.cpp
+++ sooperlooper/src/gui/midi_bind_panel.cpp
@@ -880,7 +880,7 @@ void MidiBindPanel::on_button (wxCommand
}
else if (ev.GetId() == ID_LoadButton)
{
- wxString filename = _parent->do_file_selector(wxT("Choose midi binding file to open"), wxT(""), wxT("*.slb"), wxOPEN|wxCHANGE_DIR);
+ wxString filename = _parent->do_file_selector(wxT("Choose midi binding file to open"), wxT(""), wxT("*.slb"), wxFD_OPEN|wxFD_CHANGE_DIR);
if ( !filename.empty() )
{
_parent->get_loop_control().load_midi_bindings(filename, _append_check->GetValue());
@@ -888,7 +888,7 @@ void MidiBindPanel::on_button (wxCommand
}
else if (ev.GetId() == ID_SaveButton)
{
- wxString filename = _parent->do_file_selector(wxT("Choose midi binding file to save"), wxT(""), wxT("*.slb"), wxSAVE|wxCHANGE_DIR|wxOVERWRITE_PROMPT);
+ wxString filename = _parent->do_file_selector(wxT("Choose midi binding file to save"), wxT(""), wxT("*.slb"), wxFD_SAVE|wxFD_CHANGE_DIR|wxFD_OVERWRITE_PROMPT);
if ( !filename.empty() )
{
Index: sooperlooper/src/gui/config_panel.cpp
===================================================================
--- sooperlooper.orig/src/gui/config_panel.cpp
+++ sooperlooper/src/gui/config_panel.cpp
@@ -378,7 +378,7 @@ void ConfigPanel::on_button (wxCommandEv
else if (ev.GetId() == ID_MidiBrowseButton) {
_parent->get_keyboard().set_enabled(false);
- wxString filename = _parent->do_file_selector(wxT("Choose midi binding file to use"), wxT(""), wxT("*.slb"), wxOPEN|wxCHANGE_DIR);
+ wxString filename = _parent->do_file_selector(wxT("Choose midi binding file to use"), wxT(""), wxT("*.slb"), wxFD_OPEN|wxFD_CHANGE_DIR);
_parent->get_keyboard().set_enabled(true);
if ( !filename.empty() )
@@ -389,8 +389,8 @@ void ConfigPanel::on_button (wxCommandEv
else if (ev.GetId() == ID_SessionBrowseButton) {
_parent->get_keyboard().set_enabled(false);
- wxString filename = _parent->do_file_selector(wxT("Choose session file to use"), wxT(""), wxT("*.slsess"), wxOPEN|wxCHANGE_DIR);
- //wxString filename = wxFileSelector(wxT("Choose session file to use"), wxT(""), wxT(""), wxT(""), wxT("*.slsess"), wxOPEN|wxCHANGE_DIR);
+ wxString filename = _parent->do_file_selector(wxT("Choose session file to use"), wxT(""), wxT("*.slsess"), wxFD_OPEN|wxFD_CHANGE_DIR);
+ //wxString filename = wxFileSelector(wxT("Choose session file to use"), wxT(""), wxT(""), wxT(""), wxT("*.slsess"), wxFD_OPEN|wxFD_CHANGE_DIR);
_parent->get_keyboard().set_enabled(true);
if ( !filename.empty() )

View file

@ -3,6 +3,10 @@ recording, overdubbing, multiplying, reversing and more. It allows
for multiple simultaneous multi-channel loops limited only by your
computer's available memory.
If you have wxGTK3 installed and would prefer to build sooperlooper
with it (instead of the default wxPython 2.8), set WXVER=3.0 in the
script's environment.
This package uses POSIX filesystem capabilities to execute with
elevated privileges (required for realtime audio processing). This
may be considered a security/stability risk. Please read

View file

@ -6,8 +6,14 @@
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
# 20140910 bkw:
# - update for v1.7.2
# - explicitly use the correct config script for wx, instead of relying
# on /usr/bin/wx-config
# - add option to build against wxGTK3
PRGNAM=sooperlooper
VERSION=${VERSION:-1.7.0}
VERSION=${VERSION:-1.7.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@ -40,6 +46,14 @@ fi
set -e
# We can't trust the /usr/bin/wx-config symlink.
# Find the correct wx-config, if it exists. User can override by setting WXVER
# in the env, or by setting WXCONFIG to the full path.
WXVER=${WXVER:-2.8}
WXMAYBE="$( ls /usr/lib$LIBDIRSUFFIX/wx/config/*-$WXVER 2>/dev/null | head -1 )"
WXCONFIG=${WXCONFIG:-$WXMAYBE}
WXCONFIG=${WXCONFIG:-/usr/bin/wx-config}
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
@ -53,10 +67,14 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
# allow building with wx 3.0, using a patch from Debian
[ "$WXVER" = "3.0" ] && patch -p1 < $CWD/04-build_with_wx_30.patch
# Note: the CFLAGS are actually ignored here. Oh well.
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--with-wxconfig-path=$WXCONFIG \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \

View file

@ -1,8 +1,8 @@
PRGNAM="sooperlooper"
VERSION="1.7.0"
VERSION="1.7.2"
HOMEPAGE="http://essej.net/sooperlooper/"
DOWNLOAD="http://essej.net/sooperlooper/sooperlooper-1.7.0.tar.gz"
MD5SUM="ce1111ab22e5e8947632101d920ce500"
DOWNLOAD="http://essej.net/sooperlooper/sooperlooper-1.7.2.tar.gz"
MD5SUM="72fe8e2585a3e0bca641b0ef67d18cd6"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="jack-audio-connection-kit liblo libsigc++-legacy12 rubberband wxPython"