Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/main' into abletonlink2
Browse files Browse the repository at this point in the history
  • Loading branch information
JoergAtGithub committed Nov 1, 2024
2 parents e181503 + edae0ca commit f142616
Show file tree
Hide file tree
Showing 204 changed files with 7,556 additions and 8,027 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/build-checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:
name: ${{ matrix.name }}
steps:
- name: Check out repository
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.1
- name: Install build dependencies
run: tools/debian_buildenv.sh setup
- name: Create build directory
Expand Down Expand Up @@ -157,7 +157,7 @@ jobs:
- name: "Upload Coverage Report to coveralls.io"
if: matrix.name == 'coverage'
continue-on-error: true
uses: coverallsapp/[email protected].0
uses: coverallsapp/[email protected].4
with:
flag-name: ubuntu-22.04
path-to-lcov: build/lcov.info
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@ jobs:
artifact-windows-win64: ${{ steps.prepare_deploy.outputs.artifact-windows-win64 }}
steps:
- name: "Check out repository"
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.1
with:
# This is necessary for making `git describe` work.
fetch-depth: 0
Expand Down Expand Up @@ -316,7 +316,7 @@ jobs:
env:
AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }}
if: runner.os == 'Windows' && env.AZURE_TENANT_ID
uses: azure/trusted-signing-action@v0.4.0
uses: azure/trusted-signing-action@v0.5.0
with:
azure-tenant-id: ${{ secrets.AZURE_TENANT_ID }}
azure-client-id: ${{ secrets.AZURE_CLIENT_ID }}
Expand Down Expand Up @@ -371,7 +371,7 @@ jobs:
env:
AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }}
if: runner.os == 'Windows' && env.AZURE_TENANT_ID
uses: azure/trusted-signing-action@v0.4.0
uses: azure/trusted-signing-action@v0.5.0
with:
azure-tenant-id: ${{ secrets.AZURE_TENANT_ID }}
azure-client-id: ${{ secrets.AZURE_CLIENT_ID }}
Expand Down Expand Up @@ -473,7 +473,7 @@ jobs:
- name: "Upload GitHub Actions artifacts"
if: matrix.artifacts_path != null
uses: actions/[email protected].0
uses: actions/[email protected].3
with:
name: ${{ matrix.artifacts_name }}
path: ${{ matrix.artifacts_path }}
Expand All @@ -489,7 +489,7 @@ jobs:
if: always() && github.repository == 'mixxxdj/mixxx'
steps:
- name: "Check out repository"
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.1
with:
fetch-depth: 0

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/git.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,6 @@ jobs:
runs-on: ubuntu-22.04

steps:
- uses: actions/checkout@v4.1.7
- uses: actions/checkout@v4.2.1
- name: Block Fixup Commit Merge
uses: 13rac1/[email protected]
6 changes: 3 additions & 3 deletions .github/workflows/pre-commit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
container: holzhaus/mixxx-ci:20220930
steps:
- name: "Check out repository"
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.1
with:
# Unfortunately we need the whole history and can't use a shallow clone
# because the Appstream Metadata hook parses the history to find the
Expand Down Expand Up @@ -67,14 +67,14 @@ jobs:

- name: "Upload patch artifact"
if: failure() && env.UPLOAD_PATCH_FILE != null
uses: actions/[email protected].0
uses: actions/[email protected].3
with:
name: ${{ env.UPLOAD_PATCH_FILE }}
path: ${{ env.UPLOAD_PATCH_FILE }}

- name: "Upload pre-commit.log"
if: failure() && env.UPLOAD_PATCH_FILE == null
uses: actions/[email protected].0
uses: actions/[email protected].3
with:
name: pre-commit.log
path: /github/home/.cache/pre-commit/pre-commit.log
Expand Down
1 change: 1 addition & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,7 @@ repos:
rev: v0.13.0
hooks:
- id: markdownlint-cli2
language_version: lts
- repo: https://github.com/python-jsonschema/check-jsonschema
rev: 0.29.1
hooks:
Expand Down
2,069 changes: 0 additions & 2,069 deletions CHANGELOG.md.backup

This file was deleted.

8 changes: 8 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -796,6 +796,7 @@ add_library(mixxx-lib STATIC EXCLUDE_FROM_ALL
src/effects/backends/builtin/linkwitzriley8eqeffect.cpp
src/effects/backends/builtin/loudnesscontoureffect.cpp
src/effects/backends/builtin/metronomeeffect.cpp
src/effects/backends/builtin/metronomeclick.cpp
src/effects/backends/builtin/moogladder4filtereffect.cpp
src/effects/backends/builtin/compressoreffect.cpp
src/effects/backends/builtin/parametriceqeffect.cpp
Expand Down Expand Up @@ -1147,6 +1148,7 @@ add_library(mixxx-lib STATIC EXCLUDE_FROM_ALL
src/track/tracknumbers.cpp
src/track/trackrecord.cpp
src/track/trackref.cpp
src/util/autofilereloader.cpp
src/util/battery/battery.cpp
src/util/cache.cpp
src/util/clipboard.cpp
Expand Down Expand Up @@ -2104,6 +2106,7 @@ add_executable(mixxx-test
src/test/imageutils_test.cpp
src/test/indexrange_test.cpp
src/test/itunesxmlimportertest.cpp
src/test/keyfactorytest.cpp
src/test/keyutilstest.cpp
src/test/lcstest.cpp
src/test/learningutilstest.cpp
Expand Down Expand Up @@ -2821,15 +2824,19 @@ if(QML)
src/qml/qmlvisibleeffectsmodel.cpp
src/qml/qmlchainpresetmodel.cpp
src/qml/qmlwaveformoverview.cpp
src/qml/qmlmixxxcontrollerscreen.cpp
# The following sources need to be in this target to get QML_ELEMENT properly interpreted
src/control/controlmodel.cpp
src/control/controlsortfiltermodel.cpp
# needed for qml/qmlautoreload.cpp
src/util/autofilereloader.cpp
)

# qt_finalize_target takes care that the resources :/mixxx.org/imports/Mixxx/
# and :/mixxx.org/imports/Mixxx/Controls are placed into beginning of the binary
qt_finalize_target(mixxx)


install(
DIRECTORY
"${CMAKE_CURRENT_SOURCE_DIR}/res/qml"
Expand Down Expand Up @@ -3501,6 +3508,7 @@ if (STEM)
src/sources/soundsourcestem.cpp
src/track/steminfoimporter.cpp
src/track/steminfo.cpp
src/widget/wstemlabel.cpp
)
if(QOPENGL)
target_sources(mixxx-lib PRIVATE
Expand Down
107 changes: 83 additions & 24 deletions res/controllers/Denon-MC7000-scripts.js
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,16 @@ MC7000.jogParams = {
}
};

// Parameter button settings (the orange buttons at the bottom left/right of the controller).
MC7000.parameterButtonSettings = {
// Parameter button mode. Available modes are `starsAndColor`, `beatjump` and `introOutro`.
mode: engine.getSetting("parameterButtonMode") ?? "starsAndColor",
// Whether to use the parameter buttons to change the pitch range during
// pitch play mode. If this option is enabled, the pitch change
// functionality overrides the normal parameter button mode during pitch play.
parameterButtonPitchPlayOverrideEnabled: engine.getSetting("parameterButtonPitchPlayOverrideEnabled") ?? true,
};

/*/////////////////////////////////
// USER VARIABLES END //
/////////////////////////////////*/
Expand Down Expand Up @@ -162,9 +172,6 @@ MC7000.prevVuLevel = [0, 0, 0, 0];
MC7000.prevJogLED = [0, 0, 0, 0];
MC7000.prevPadLED = [0, 0, 0, 0];

// Param Buttons for Pitch Play
MC7000.paramButton = [0, 0, 0, 0];

/*
Color Codes:
Colors are encoded using the following schema: Take the individual components of the color (R, G, B). Then use
Expand Down Expand Up @@ -952,35 +959,87 @@ MC7000.censor = function(channel, control, value, status, group) {
}
}
};
// Param Button for Pitch Play to decrease pitch, or decrease star rating otherwise
MC7000.StarsDown = function(channel, control, value, status, group) {
const deckNumber = script.deckFromGroup(group);
const deckIndex = deckNumber - 1;
if (value > 0x00) {
if (MC7000.PADMode[deckIndex] === "Pitch") {
for (let padIdx = 0; padIdx < 8; padIdx++) {
MC7000.halftoneToPadMap[deckIndex][padIdx] = MC7000.halftoneToPadMap[deckIndex][padIdx] - 8; // pitch down
}
} else {
engine.setValue(group, "stars_down", true); // stars down
}

// Parameter Buttons
MC7000.parameterButton = function(value, group, {isLeftButton, isShiftPressed}) {
if (value === 0) {
return;
}
};
// Param Button for Pitch Play to increase pitch, or increase star rating otherwise
MC7000.StarsUp = function(channel, control, value, status, group) {

const deckNumber = script.deckFromGroup(group);
const deckIndex = deckNumber - 1;
if (value > 0x00) {
if (MC7000.PADMode[deckIndex] === "Pitch") {
for (let padIdx = 0; padIdx < 8; padIdx++) {
MC7000.halftoneToPadMap[deckIndex][padIdx] = MC7000.halftoneToPadMap[deckIndex][padIdx] + 8; // pitch up
const settings = MC7000.parameterButtonSettings;

if (settings.parameterButtonPitchPlayOverrideEnabled && MC7000.PADMode[deckIndex] === "Pitch") {
const pitchDelta = isLeftButton ? -8 : 8;
for (let padIdx = 0; padIdx < 8; padIdx++) {
MC7000.halftoneToPadMap[deckIndex][padIdx] += pitchDelta;
}
} else {
switch (settings.mode) {
case "starsAndColor":
if (isShiftPressed) {
script.triggerControl(group, `track_color_${isLeftButton ? "prev" : "next"}`);
} else {
script.triggerControl(group, `stars_${isLeftButton ? "down" : "up"}`);
}
} else {
engine.setValue(group, "stars_up", true); // stars up
break;
case "beatjump":
if (isShiftPressed) {
const beatJumpSize = engine.getValue(group, "beatjump_size");
const indexDelta = isLeftButton ? -1 : 1;
const newIndex = Math.max(0, Math.min(MC7000.beatJump.length - 1, MC7000.beatJump.indexOf(beatJumpSize) + indexDelta));
const newBeatJumpSize = MC7000.beatJump[newIndex];
engine.setValue(group, "beatjump_size", newBeatJumpSize);
} else {
script.triggerControl(group, `beatjump_${isLeftButton ? "backward" : "forward"}`);
}
break;
case "introOutro":
{
const cue = isLeftButton ? "intro_end" : "outro_start";
const action = isShiftPressed ? "clear" : "activate";
script.triggerControl(group, `${cue}_${action}`);
}
break;
default:
break;
}
}
};

// Parameter Button '<'
MC7000.parameterButtonLeft = function(channel, control, value, status, group) {
MC7000.parameterButton(value, group, {
isLeftButton: true,
isShiftPressed: false
});
};

// Parameter Button '>'
MC7000.parameterButtonRight = function(channel, control, value, status, group) {
MC7000.parameterButton(value, group, {
isLeftButton: false,
isShiftPressed: false
});
};

// Parameter Button '<' + 'SHIFT'
MC7000.parameterButtonLeftShifted = function(channel, control, value, status, group) {
MC7000.parameterButton(value, group, {
isLeftButton: true,
isShiftPressed: true
});
};

// Parameter Button '>' + 'SHIFT'
MC7000.parameterButtonRightShifted = function(channel, control, value, status, group) {
MC7000.parameterButton(value, group, {
isLeftButton: false,
isShiftPressed: true
});
};

// Set Crossfader Curve
MC7000.crossFaderCurve = function(control, value) {
script.crossfaderCurve(value);
Expand Down
Loading

0 comments on commit f142616

Please sign in to comment.