Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
64 changes: 64 additions & 0 deletions res/qml/legacy/Button.qml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
import QtQuick
import QtQuick.Controls
// import skin.mixxx.org // for ColorScheme singleton

Button {
id: control
property color color: "transparent"
implicitHeight: 24
implicitWidth: Math.max(implicitHeight, Math.max(implicitBackgroundWidth + leftInset + rightInset, implicitContentWidth + leftPadding + rightPadding))
font.bold: true

contentItem: Text {
text: control.text
font: control.font
opacity: enabled ? 1.0 : 0.3
color: checked ? "#000000" : "#908070"
// color: checked ? "#000000" : ColorScheme.buttonText
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
elide: Text.ElideRight
}

background: Rectangle {
color: control.color
Rectangle {
width: parent.width
height: parent.height
border.color: "#000000"
border.width: 1
color: "transparent"
}
Rectangle {
width: parent.width
height: parent.height
border.color: "#000000"
border.width: 1
radius: 2
color: "transparent"
}
Rectangle {
x: 1
y: 1
width: parent.width - 2
height: parent.height - 2
color: "transparent"
border.color: control.pressed ? "#60000000" : "#04ffffff"
border.width: 1
radius: 2
}
Rectangle {
x: 2
y: 1
width: parent.width - 3
height: 1
color: control.pressed ? "#04ffffff" : "#0cffffff"
}
Image {
width: control.width
height: control.height
source: control.icon.source
fillMode: Image.PreserveAspectFit
}
}
}
30 changes: 30 additions & 0 deletions res/qml/legacy/CenterMixerComponent.qml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts

import "." as E

Item {
id: root
width: mixer.implicitWidth
height: mixer.implicitHeight

RowLayout {
spacing: 0
id: mixer
E.Mixer {
Layout.fillHeight: true
}
Item {
Layout.fillHeight: true
width: childrenRect.width
E.MainMix {
height: parent.height / 2
}
E.HeadphoneMix {
y: parent.height / 2
height: parent.height / 2
}
}
}
}
5 changes: 5 additions & 0 deletions res/qml/legacy/ColorScheme.qml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import QtQuick

QtObject {
property color buttonText
}
5 changes: 5 additions & 0 deletions res/qml/legacy/ColorSchemeBright.qml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import QtQuick

ColorScheme {
buttonText: "#ffffff"
}
5 changes: 5 additions & 0 deletions res/qml/legacy/ColorSchemeDefault.qml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import QtQuick

ColorScheme {
buttonText: "#908070"
}
37 changes: 37 additions & 0 deletions res/qml/legacy/CueButton.qml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
import QtQuick
import QtQuick.Controls

import "." as E

E.Button {
id: control
property int cueId: 0
implicitWidth: 24
implicitHeight: 24
color: checked ? "#c06020" : "#202020"
text: cueId
font.pixelSize: 14
MouseArea {
width: parent.width
height: parent.height
propagateComposedEvents: true
acceptedButtons: Qt.LeftButton | Qt.RightButton
onPressed: mouse => {
if ((mouse.button == Qt.RightButton) && (mouse.modifiers & Qt.ShiftModifier)) {
if (control.checked) {
control.toggle();
}
} else if (!control.checked) {
control.toggle();
}
// propagate to Button for pressed state
mouse.accepted = false;
}
}
onPressed: {
}
onReleased: {
}
onClicked: {
}
}
147 changes: 147 additions & 0 deletions res/qml/legacy/Deck.qml
Original file line number Diff line number Diff line change
@@ -0,0 +1,147 @@
import QtQuick
import QtQuick.Controls
import QtQuick.Layouts

import "." as E

E.Frame {
color: "#202020"
Layout.minimumWidth: 200
padding: 4
ColumnLayout {
height: parent.height
width: parent.width
spacing: 0
Item {
Layout.fillHeight: true
}
// Playback/Cue
RowLayout {
// Playback/Cue section
GridLayout {
columnSpacing: 2
rowSpacing: 2
columns: 2
// Cue
Button {
text: "CUE"
color: "#141414"
}
// Reverse
Button {
color: "#141414"
implicitWidth: 24
}
// Play/Pause
Button {
color: "#141414"
Layout.columnSpan: 2
Layout.fillWidth: true
}
}
// Spacer
Item {
Layout.fillWidth: true
}
// Hotcues section
GridLayout {
columnSpacing: 2
rowSpacing: 2
columns: 4
CueButton {
text: "1"
}
CueButton {
text: "2"
}
CueButton {
text: "3"
}
CueButton {
text: "4"
}
CueButton {
text: "5"
}
CueButton {
text: "6"
}
CueButton {
text: "7"
}
CueButton {
text: "8"
}
}
// spacer
Item {
Layout.fillWidth: true
}
// Intro/Outro section
GridLayout {
columnSpacing: 2
rowSpacing: 2
columns: 2
IntroOutroButton {
}
IntroOutroButton {
}
IntroOutroButton {
}
IntroOutroButton {
}
}
// spacer
Item {
Layout.fillWidth: true
}
// Beatloop section
ColumnLayout {
spacing: 2
RowLayout {
spacing: 2
LoopButton {
}
SpinBox {
editable: true
from: 0
to: 512
}
}
RowLayout {
Layout.maximumWidth: childrenRect.width
spacing: 2
LoopToggleButton {
}
LoopButton {
}
LoopButton {
}
}
}
// spacer
Item {
Layout.fillWidth: true
}
// Loopjump section
ColumnLayout {
spacing: 2
RowLayout {
SpinBox {
editable: true
from: 0
to: 512
}
}
RowLayout {
spacing: 2
Layout.maximumWidth: childrenRect.width
LoopButton {
}
LoopButton {
}
}
}
}
}
}
Loading