@@ -58,20 +58,6 @@ ui_*.py | |||||
*.xz | *.xz | ||||
*.zip | *.zip | ||||
# PyQt widgets | |||||
source/canvaspreviewframe.py | |||||
source/carla_config.py | |||||
source/digitalpeakmeter.py | |||||
source/draggablegraphicsview.py | |||||
source/ledbutton.py | |||||
source/paramspinbox.py | |||||
source/pianoroll.py | |||||
source/pixmapbutton.py | |||||
source/pixmapdial.py | |||||
source/pixmapkeyboard.py | |||||
source/racklistwidget.py | |||||
source/widgets/carla_config.py | |||||
# Binaries | # Binaries | ||||
carla-bridge-qtcreator | carla-bridge-qtcreator | ||||
carla-bridge-native | carla-bridge-native | ||||
@@ -99,15 +85,11 @@ zynaddsubfx-ui | |||||
stoat-output.png | stoat-output.png | ||||
data/linux/unzipfx2cat32 | |||||
data/linux/unzipfx2cat64 | |||||
data/macos/*-svn/ | data/macos/*-svn/ | ||||
data/windows/Carla | data/windows/Carla | ||||
data/windows/CarlaControl | data/windows/CarlaControl | ||||
data/windows/Carla-*-win32/ | data/windows/Carla-*-win32/ | ||||
data/windows/Carla-*-win64/ | data/windows/Carla-*-win64/ | ||||
source/bridges/jackplugin/libjack.so.0 | |||||
source/frontend/Makefile | |||||
source/tests/ansi-pedantic-test_* | source/tests/ansi-pedantic-test_* | ||||
source/tests/CachedPlugins | source/tests/CachedPlugins | ||||
source/tests/CarlaRingBuffer | source/tests/CarlaRingBuffer | ||||
@@ -9,24 +9,6 @@ include source/Makefile.mk | |||||
# --------------------------------------------------------------------------------------------------------------------- | # --------------------------------------------------------------------------------------------------------------------- | ||||
LINK := ln -sf | |||||
ifeq ($(DEFAULT_QT),4) | |||||
PYUIC ?= pyuic4 -w | |||||
PYRCC ?= pyrcc4 -py3 | |||||
ifeq ($(HAVE_QT4),true) | |||||
HAVE_THEME = true | |||||
endif | |||||
else | |||||
PYUIC ?= pyuic5 | |||||
PYRCC ?= pyrcc5 | |||||
ifeq ($(HAVE_QT5),true) | |||||
HAVE_THEME = true | |||||
endif | |||||
endif | |||||
# --------------------------------------------------------------------------------------------------------------------- | |||||
PREFIX := /usr/local | PREFIX := /usr/local | ||||
BINDIR := $(PREFIX)/bin | BINDIR := $(PREFIX)/bin | ||||
LIBDIR := $(PREFIX)/lib | LIBDIR := $(PREFIX)/lib | ||||
@@ -42,15 +24,11 @@ endif | |||||
# --------------------------------------------------------------------------------------------------------------------- | # --------------------------------------------------------------------------------------------------------------------- | ||||
all: BIN RES UI WIDGETS | |||||
all: backend discovery bridges-plugin bridges-ui frontend interposer libjack plugin theme | |||||
# --------------------------------------------------------------------------------------------------------------------- | # --------------------------------------------------------------------------------------------------------------------- | ||||
# Binaries (native) | # Binaries (native) | ||||
BIN: backend discovery bridges-plugin bridges-ui interposer libjack plugin theme | |||||
# --------------------------------------------------------------------------------------------------------------------- | |||||
ALL_LIBS += $(MODULEDIR)/carla_engine.a | ALL_LIBS += $(MODULEDIR)/carla_engine.a | ||||
ALL_LIBS += $(MODULEDIR)/carla_engine_plugin.a | ALL_LIBS += $(MODULEDIR)/carla_engine_plugin.a | ||||
ALL_LIBS += $(MODULEDIR)/carla_plugin.a | ALL_LIBS += $(MODULEDIR)/carla_plugin.a | ||||
@@ -152,6 +130,11 @@ bridges-ui: libs | |||||
discovery: libs | discovery: libs | ||||
@$(MAKE) -C source/discovery | @$(MAKE) -C source/discovery | ||||
frontend: | |||||
ifeq ($(HAVE_PYQT),true) | |||||
@$(MAKE) -C source/frontend | |||||
endif | |||||
interposer: | interposer: | ||||
ifeq ($(LINUX),true) | ifeq ($(LINUX),true) | ||||
@$(MAKE) -C source/interposer | @$(MAKE) -C source/interposer | ||||
@@ -236,126 +219,6 @@ wine64: | |||||
$(MAKE) -C source/jackbridge wine64 | $(MAKE) -C source/jackbridge wine64 | ||||
cp -f $(MODULEDIR)/jackbridge-wine64.dll.so $(CURDIR)/bin/jackbridge-wine64.dll | cp -f $(MODULEDIR)/jackbridge-wine64.dll.so $(CURDIR)/bin/jackbridge-wine64.dll | ||||
# --------------------------------------------------------------------------------------------------------------------- | |||||
# Resources | |||||
ifeq ($(HAVE_PYQT),true) | |||||
RES = \ | |||||
bin/resources/carla_app.py \ | |||||
bin/resources/carla_backend.py \ | |||||
bin/resources/carla_backend_qt.py \ | |||||
bin/resources/carla_config.py \ | |||||
bin/resources/carla_control.py \ | |||||
bin/resources/carla_database.py \ | |||||
bin/resources/carla_host.py \ | |||||
bin/resources/carla_settings.py \ | |||||
bin/resources/carla_skin.py \ | |||||
bin/resources/carla_shared.py \ | |||||
bin/resources/carla_utils.py \ | |||||
bin/resources/carla_widgets.py \ | |||||
bin/resources/canvaspreviewframe.py \ | |||||
bin/resources/digitalpeakmeter.py \ | |||||
bin/resources/draggablegraphicsview.py \ | |||||
bin/resources/externalui.py \ | |||||
bin/resources/ledbutton.py \ | |||||
bin/resources/paramspinbox.py \ | |||||
bin/resources/patchcanvas.py \ | |||||
bin/resources/patchcanvas_theme.py \ | |||||
bin/resources/pianoroll.py \ | |||||
bin/resources/pixmapbutton.py \ | |||||
bin/resources/pixmapdial.py \ | |||||
bin/resources/pixmapkeyboard.py \ | |||||
bin/resources/racklistwidget.py \ | |||||
bin/resources/resources_rc.py \ | |||||
bin/resources/ui_carla_about.py \ | |||||
bin/resources/ui_carla_add_jack.py \ | |||||
bin/resources/ui_carla_database.py \ | |||||
bin/resources/ui_carla_edit.py \ | |||||
bin/resources/ui_carla_host.py \ | |||||
bin/resources/ui_carla_parameter.py \ | |||||
bin/resources/ui_carla_plugin_calf.py \ | |||||
bin/resources/ui_carla_plugin_classic.py \ | |||||
bin/resources/ui_carla_plugin_compact.py \ | |||||
bin/resources/ui_carla_plugin_default.py \ | |||||
bin/resources/ui_carla_plugin_presets.py \ | |||||
bin/resources/ui_carla_refresh.py \ | |||||
bin/resources/ui_carla_settings.py \ | |||||
bin/resources/ui_carla_settings_driver.py \ | |||||
bin/resources/ui_inputdialog_value.py \ | |||||
bin/resources/ui_midipattern.py \ | |||||
source/carla_config.py \ | |||||
source/resources_rc.py | |||||
RES: $(RES) | |||||
source/carla_config.py: | |||||
@echo "#!/usr/bin/env python3" > $@ | |||||
@echo "# -*- coding: utf-8 -*-" >> $@ | |||||
ifeq ($(DEFAULT_QT),4) | |||||
@echo "config_UseQt5 = False" >> $@ | |||||
else | |||||
@echo "config_UseQt5 = True" >> $@ | |||||
endif | |||||
source/resources_rc.py: resources/resources.qrc resources/*/*.png resources/*/*.svg | |||||
$(PYRCC) $< -o $@ | |||||
bin/resources/%.py: source/%.py | |||||
$(LINK) $(CURDIR)/source/$*.py bin/resources/ | |||||
else | |||||
RES: | |||||
endif | |||||
# --------------------------------------------------------------------------------------------------------------------- | |||||
# UI code | |||||
ifeq ($(HAVE_PYQT),true) | |||||
UIs = \ | |||||
source/ui_carla_about.py \ | |||||
source/ui_carla_add_jack.py \ | |||||
source/ui_carla_database.py \ | |||||
source/ui_carla_edit.py \ | |||||
source/ui_carla_host.py \ | |||||
source/ui_carla_parameter.py \ | |||||
source/ui_carla_plugin_calf.py \ | |||||
source/ui_carla_plugin_classic.py \ | |||||
source/ui_carla_plugin_compact.py \ | |||||
source/ui_carla_plugin_default.py \ | |||||
source/ui_carla_plugin_presets.py \ | |||||
source/ui_carla_refresh.py \ | |||||
source/ui_carla_settings.py \ | |||||
source/ui_carla_settings_driver.py \ | |||||
source/ui_inputdialog_value.py \ | |||||
source/ui_midipattern.py | |||||
UI: $(UIs) | |||||
source/ui_%.py: resources/ui/%.ui | |||||
$(PYUIC) $< -o $@ | |||||
else | |||||
UI: | |||||
endif | |||||
# --------------------------------------------------------------------------------------------------------------------- | |||||
# Widgets | |||||
WIDGETS = \ | |||||
source/canvaspreviewframe.py \ | |||||
source/digitalpeakmeter.py \ | |||||
source/draggablegraphicsview.py \ | |||||
source/ledbutton.py \ | |||||
source/paramspinbox.py \ | |||||
source/pianoroll.py \ | |||||
source/pixmapbutton.py \ | |||||
source/pixmapdial.py \ | |||||
source/pixmapkeyboard.py \ | |||||
source/racklistwidget.py | |||||
WIDGETS: $(WIDGETS) | |||||
source/%.py: source/widgets/%.py | |||||
$(LINK) widgets/$*.py $@ | |||||
# --------------------------------------------------------------------------------------------------------------------- | # --------------------------------------------------------------------------------------------------------------------- | ||||
clean: | clean: | ||||
@@ -363,16 +226,14 @@ clean: | |||||
$(MAKE) clean -C source/bridges-plugin | $(MAKE) clean -C source/bridges-plugin | ||||
$(MAKE) clean -C source/bridges-ui | $(MAKE) clean -C source/bridges-ui | ||||
$(MAKE) clean -C source/discovery | $(MAKE) clean -C source/discovery | ||||
$(MAKE) clean -C source/frontend | |||||
$(MAKE) clean -C source/interposer | $(MAKE) clean -C source/interposer | ||||
$(MAKE) clean -C source/libjack | $(MAKE) clean -C source/libjack | ||||
$(MAKE) clean -C source/modules | $(MAKE) clean -C source/modules | ||||
$(MAKE) clean -C source/native-plugins | $(MAKE) clean -C source/native-plugins | ||||
$(MAKE) clean -C source/plugin | $(MAKE) clean -C source/plugin | ||||
$(MAKE) clean -C source/theme | $(MAKE) clean -C source/theme | ||||
rm -f $(RES) | |||||
rm -f $(UIs) | |||||
rm -f $(WIDGETS) | |||||
rm -f *~ source/*~ source/*.pyc source/*_rc.py source/ui_*.py | |||||
rm -f *~ source/*~ | |||||
distclean: clean | distclean: clean | ||||
rm -f bin/*.exe bin/*.dll bin/*.dylib bin/*.so | rm -f bin/*.exe bin/*.dll bin/*.dylib bin/*.so | ||||
@@ -403,7 +264,6 @@ else | |||||
install -d $(DESTDIR)$(LIBDIR)/carla | install -d $(DESTDIR)$(LIBDIR)/carla | ||||
endif | endif | ||||
install -d $(DESTDIR)$(LIBDIR)/pkgconfig | install -d $(DESTDIR)$(LIBDIR)/pkgconfig | ||||
install -d $(DESTDIR)$(DATADIR)/carla/resources | |||||
install -d $(DESTDIR)$(INCLUDEDIR)/carla/includes | install -d $(DESTDIR)$(INCLUDEDIR)/carla/includes | ||||
ifeq ($(HAVE_PYQT),true) | ifeq ($(HAVE_PYQT),true) | ||||
@@ -416,6 +276,8 @@ ifeq ($(HAVE_PYQT),true) | |||||
install -d $(DESTDIR)$(DATADIR)/icons/hicolor/256x256/apps | install -d $(DESTDIR)$(DATADIR)/icons/hicolor/256x256/apps | ||||
install -d $(DESTDIR)$(DATADIR)/icons/hicolor/scalable/apps | install -d $(DESTDIR)$(DATADIR)/icons/hicolor/scalable/apps | ||||
install -d $(DESTDIR)$(DATADIR)/mime/packages | install -d $(DESTDIR)$(DATADIR)/mime/packages | ||||
install -d $(DESTDIR)$(DATADIR)/carla/resources | |||||
install -d $(DESTDIR)$(DATADIR)/carla/widgets | |||||
endif | endif | ||||
# ------------------------------------------------------------------------------------------------------------- | # ------------------------------------------------------------------------------------------------------------- | ||||
@@ -513,16 +375,20 @@ ifeq ($(HAVE_LIBLO),true) | |||||
$(DESTDIR)$(BINDIR)/carla-control | $(DESTDIR)$(BINDIR)/carla-control | ||||
endif | endif | ||||
# Install python code (gui) | |||||
# Install frontend | |||||
install -m 644 \ | install -m 644 \ | ||||
source/carla \ | |||||
source/carla-control \ | |||||
source/carla-jack-multi \ | |||||
source/carla-jack-single \ | |||||
source/carla-patchbay \ | |||||
source/carla-rack \ | |||||
source/*.py \ | |||||
$(DESTDIR)$(DATADIR)/carla | |||||
source/frontend/carla \ | |||||
source/frontend/carla-control \ | |||||
source/frontend/carla-jack-multi \ | |||||
source/frontend/carla-jack-single \ | |||||
source/frontend/carla-patchbay \ | |||||
source/frontend/carla-rack \ | |||||
source/frontend/*.py \ | |||||
$(DESTDIR)$(DATADIR)/carla/ | |||||
install -m 644 \ | |||||
source/frontend/widgets/*.py \ | |||||
$(DESTDIR)$(DATADIR)/carla/widgets/ | |||||
# Adjust LIBDIR and DATADIR value in python code | # Adjust LIBDIR and DATADIR value in python code | ||||
sed $(SED_ARGS) 's?X_LIBDIR_X = None?X_LIBDIR_X = "$(LIBDIR)"?' \ | sed $(SED_ARGS) 's?X_LIBDIR_X = None?X_LIBDIR_X = "$(LIBDIR)"?' \ | ||||
@@ -575,6 +441,7 @@ endif | |||||
install -m 644 resources/scalable/carla-control.svg $(DESTDIR)$(DATADIR)/icons/hicolor/scalable/apps | install -m 644 resources/scalable/carla-control.svg $(DESTDIR)$(DATADIR)/icons/hicolor/scalable/apps | ||||
# Install resources (re-use python files) | # Install resources (re-use python files) | ||||
$(LINK) ../widgets $(DESTDIR)$(DATADIR)/carla/resources | |||||
$(LINK) ../carla_app.py $(DESTDIR)$(DATADIR)/carla/resources | $(LINK) ../carla_app.py $(DESTDIR)$(DATADIR)/carla/resources | ||||
$(LINK) ../carla_backend.py $(DESTDIR)$(DATADIR)/carla/resources | $(LINK) ../carla_backend.py $(DESTDIR)$(DATADIR)/carla/resources | ||||
$(LINK) ../carla_backend_qt.py $(DESTDIR)$(DATADIR)/carla/resources | $(LINK) ../carla_backend_qt.py $(DESTDIR)$(DATADIR)/carla/resources | ||||
@@ -587,19 +454,9 @@ endif | |||||
$(LINK) ../carla_shared.py $(DESTDIR)$(DATADIR)/carla/resources | $(LINK) ../carla_shared.py $(DESTDIR)$(DATADIR)/carla/resources | ||||
$(LINK) ../carla_utils.py $(DESTDIR)$(DATADIR)/carla/resources | $(LINK) ../carla_utils.py $(DESTDIR)$(DATADIR)/carla/resources | ||||
$(LINK) ../carla_widgets.py $(DESTDIR)$(DATADIR)/carla/resources | $(LINK) ../carla_widgets.py $(DESTDIR)$(DATADIR)/carla/resources | ||||
$(LINK) ../canvaspreviewframe.py $(DESTDIR)$(DATADIR)/carla/resources | |||||
$(LINK) ../digitalpeakmeter.py $(DESTDIR)$(DATADIR)/carla/resources | |||||
$(LINK) ../draggablegraphicsview.py $(DESTDIR)$(DATADIR)/carla/resources | |||||
$(LINK) ../externalui.py $(DESTDIR)$(DATADIR)/carla/resources | $(LINK) ../externalui.py $(DESTDIR)$(DATADIR)/carla/resources | ||||
$(LINK) ../ledbutton.py $(DESTDIR)$(DATADIR)/carla/resources | |||||
$(LINK) ../paramspinbox.py $(DESTDIR)$(DATADIR)/carla/resources | |||||
$(LINK) ../patchcanvas.py $(DESTDIR)$(DATADIR)/carla/resources | $(LINK) ../patchcanvas.py $(DESTDIR)$(DATADIR)/carla/resources | ||||
$(LINK) ../patchcanvas_theme.py $(DESTDIR)$(DATADIR)/carla/resources | $(LINK) ../patchcanvas_theme.py $(DESTDIR)$(DATADIR)/carla/resources | ||||
$(LINK) ../pianoroll.py $(DESTDIR)$(DATADIR)/carla/resources | |||||
$(LINK) ../pixmapbutton.py $(DESTDIR)$(DATADIR)/carla/resources | |||||
$(LINK) ../pixmapdial.py $(DESTDIR)$(DATADIR)/carla/resources | |||||
$(LINK) ../pixmapkeyboard.py $(DESTDIR)$(DATADIR)/carla/resources | |||||
$(LINK) ../racklistwidget.py $(DESTDIR)$(DATADIR)/carla/resources | |||||
$(LINK) ../resources_rc.py $(DESTDIR)$(DATADIR)/carla/resources | $(LINK) ../resources_rc.py $(DESTDIR)$(DATADIR)/carla/resources | ||||
$(LINK) ../ui_carla_about.py $(DESTDIR)$(DATADIR)/carla/resources | $(LINK) ../ui_carla_about.py $(DESTDIR)$(DATADIR)/carla/resources | ||||
$(LINK) ../ui_carla_add_jack.py $(DESTDIR)$(DATADIR)/carla/resources | $(LINK) ../ui_carla_add_jack.py $(DESTDIR)$(DATADIR)/carla/resources | ||||
@@ -617,7 +474,7 @@ endif | |||||
$(LINK) ../ui_carla_settings_driver.py $(DESTDIR)$(DATADIR)/carla/resources | $(LINK) ../ui_carla_settings_driver.py $(DESTDIR)$(DATADIR)/carla/resources | ||||
$(LINK) ../ui_inputdialog_value.py $(DESTDIR)$(DATADIR)/carla/resources | $(LINK) ../ui_inputdialog_value.py $(DESTDIR)$(DATADIR)/carla/resources | ||||
$(LINK) ../ui_midipattern.py $(DESTDIR)$(DATADIR)/carla/resources | $(LINK) ../ui_midipattern.py $(DESTDIR)$(DATADIR)/carla/resources | ||||
endif | |||||
endif # HAVE_PYQT | |||||
# ------------------------------------------------------------------------------------------------------------- | # ------------------------------------------------------------------------------------------------------------- | ||||
@@ -837,7 +837,7 @@ Plugin Name | |||||
<customwidget> | <customwidget> | ||||
<class>PixmapDial</class> | <class>PixmapDial</class> | ||||
<extends>QDial</extends> | <extends>QDial</extends> | ||||
<header>pixmapdial.h</header> | |||||
<header>widgets/pixmapdial.h</header> | |||||
</customwidget> | </customwidget> | ||||
</customwidgets> | </customwidgets> | ||||
<resources> | <resources> | ||||
@@ -1145,24 +1145,24 @@ | |||||
<customwidget> | <customwidget> | ||||
<class>DigitalPeakMeter</class> | <class>DigitalPeakMeter</class> | ||||
<extends>QWidget</extends> | <extends>QWidget</extends> | ||||
<header>digitalpeakmeter.h</header> | |||||
<header>widgets/digitalpeakmeter.h</header> | |||||
<container>1</container> | <container>1</container> | ||||
</customwidget> | </customwidget> | ||||
<customwidget> | <customwidget> | ||||
<class>CanvasPreviewFrame</class> | <class>CanvasPreviewFrame</class> | ||||
<extends>QFrame</extends> | <extends>QFrame</extends> | ||||
<header>canvaspreviewframe.h</header> | |||||
<header>widgets/canvaspreviewframe.h</header> | |||||
<container>1</container> | <container>1</container> | ||||
</customwidget> | </customwidget> | ||||
<customwidget> | <customwidget> | ||||
<class>RackListWidget</class> | <class>RackListWidget</class> | ||||
<extends>QListWidget</extends> | <extends>QListWidget</extends> | ||||
<header>racklistwidget.h</header> | |||||
<header>widgets/racklistwidget.h</header> | |||||
</customwidget> | </customwidget> | ||||
<customwidget> | <customwidget> | ||||
<class>DraggableGraphicsView</class> | <class>DraggableGraphicsView</class> | ||||
<extends>QGraphicsView</extends> | <extends>QGraphicsView</extends> | ||||
<header>draggablegraphicsview.h</header> | |||||
<header>widgets/draggablegraphicsview.h</header> | |||||
</customwidget> | </customwidget> | ||||
</customwidgets> | </customwidgets> | ||||
<resources> | <resources> | ||||
@@ -87,7 +87,7 @@ | |||||
<customwidget> | <customwidget> | ||||
<class>ParamSpinBox</class> | <class>ParamSpinBox</class> | ||||
<extends>QWidget</extends> | <extends>QWidget</extends> | ||||
<header>paramspinbox.h</header> | |||||
<header>widgets/paramspinbox.h</header> | |||||
<container>1</container> | <container>1</container> | ||||
</customwidget> | </customwidget> | ||||
</customwidgets> | </customwidgets> | ||||
@@ -396,18 +396,18 @@ | |||||
<customwidget> | <customwidget> | ||||
<class>DigitalPeakMeter</class> | <class>DigitalPeakMeter</class> | ||||
<extends>QWidget</extends> | <extends>QWidget</extends> | ||||
<header>digitalpeakmeter.h</header> | |||||
<header>widgets/digitalpeakmeter.h</header> | |||||
<container>1</container> | <container>1</container> | ||||
</customwidget> | </customwidget> | ||||
<customwidget> | <customwidget> | ||||
<class>LEDButton</class> | <class>LEDButton</class> | ||||
<extends>QPushButton</extends> | <extends>QPushButton</extends> | ||||
<header>ledbutton.h</header> | |||||
<header>widgets/ledbutton.h</header> | |||||
</customwidget> | </customwidget> | ||||
<customwidget> | <customwidget> | ||||
<class>PixmapButton</class> | <class>PixmapButton</class> | ||||
<extends>QPushButton</extends> | <extends>QPushButton</extends> | ||||
<header>pixmapbutton.h</header> | |||||
<header>widgets/pixmapbutton.h</header> | |||||
</customwidget> | </customwidget> | ||||
</customwidgets> | </customwidgets> | ||||
<resources> | <resources> | ||||
@@ -335,18 +335,18 @@ | |||||
<customwidget> | <customwidget> | ||||
<class>DigitalPeakMeter</class> | <class>DigitalPeakMeter</class> | ||||
<extends>QWidget</extends> | <extends>QWidget</extends> | ||||
<header>digitalpeakmeter.h</header> | |||||
<header>widgets/digitalpeakmeter.h</header> | |||||
<container>1</container> | <container>1</container> | ||||
</customwidget> | </customwidget> | ||||
<customwidget> | <customwidget> | ||||
<class>LEDButton</class> | <class>LEDButton</class> | ||||
<extends>QPushButton</extends> | <extends>QPushButton</extends> | ||||
<header>ledbutton.h</header> | |||||
<header>widgets/ledbutton.h</header> | |||||
</customwidget> | </customwidget> | ||||
<customwidget> | <customwidget> | ||||
<class>PixmapButton</class> | <class>PixmapButton</class> | ||||
<extends>QPushButton</extends> | <extends>QPushButton</extends> | ||||
<header>pixmapbutton.h</header> | |||||
<header>widgets/pixmapbutton.h</header> | |||||
</customwidget> | </customwidget> | ||||
</customwidgets> | </customwidgets> | ||||
<resources> | <resources> | ||||
@@ -396,18 +396,18 @@ | |||||
<customwidget> | <customwidget> | ||||
<class>DigitalPeakMeter</class> | <class>DigitalPeakMeter</class> | ||||
<extends>QWidget</extends> | <extends>QWidget</extends> | ||||
<header>digitalpeakmeter.h</header> | |||||
<header>widgets/digitalpeakmeter.h</header> | |||||
<container>1</container> | <container>1</container> | ||||
</customwidget> | </customwidget> | ||||
<customwidget> | <customwidget> | ||||
<class>LEDButton</class> | <class>LEDButton</class> | ||||
<extends>QPushButton</extends> | <extends>QPushButton</extends> | ||||
<header>ledbutton.h</header> | |||||
<header>widgets/ledbutton.h</header> | |||||
</customwidget> | </customwidget> | ||||
<customwidget> | <customwidget> | ||||
<class>PixmapButton</class> | <class>PixmapButton</class> | ||||
<extends>QPushButton</extends> | <extends>QPushButton</extends> | ||||
<header>pixmapbutton.h</header> | |||||
<header>widgets/pixmapbutton.h</header> | |||||
</customwidget> | </customwidget> | ||||
</customwidgets> | </customwidgets> | ||||
<resources> | <resources> | ||||
@@ -463,18 +463,18 @@ | |||||
<customwidget> | <customwidget> | ||||
<class>DigitalPeakMeter</class> | <class>DigitalPeakMeter</class> | ||||
<extends>QWidget</extends> | <extends>QWidget</extends> | ||||
<header>digitalpeakmeter.h</header> | |||||
<header>widgets/digitalpeakmeter.h</header> | |||||
<container>1</container> | <container>1</container> | ||||
</customwidget> | </customwidget> | ||||
<customwidget> | <customwidget> | ||||
<class>LEDButton</class> | <class>LEDButton</class> | ||||
<extends>QPushButton</extends> | <extends>QPushButton</extends> | ||||
<header>ledbutton.h</header> | |||||
<header>widgets/ledbutton.h</header> | |||||
</customwidget> | </customwidget> | ||||
<customwidget> | <customwidget> | ||||
<class>PixmapButton</class> | <class>PixmapButton</class> | ||||
<extends>QPushButton</extends> | <extends>QPushButton</extends> | ||||
<header>pixmapbutton.h</header> | |||||
<header>widgets/pixmapbutton.h</header> | |||||
</customwidget> | </customwidget> | ||||
</customwidgets> | </customwidgets> | ||||
<resources> | <resources> | ||||
@@ -496,18 +496,18 @@ | |||||
<customwidget> | <customwidget> | ||||
<class>DigitalPeakMeter</class> | <class>DigitalPeakMeter</class> | ||||
<extends>QWidget</extends> | <extends>QWidget</extends> | ||||
<header>digitalpeakmeter.h</header> | |||||
<header>widgets/digitalpeakmeter.h</header> | |||||
<container>1</container> | <container>1</container> | ||||
</customwidget> | </customwidget> | ||||
<customwidget> | <customwidget> | ||||
<class>LEDButton</class> | <class>LEDButton</class> | ||||
<extends>QPushButton</extends> | <extends>QPushButton</extends> | ||||
<header>ledbutton.h</header> | |||||
<header>widgets/ledbutton.h</header> | |||||
</customwidget> | </customwidget> | ||||
<customwidget> | <customwidget> | ||||
<class>PixmapButton</class> | <class>PixmapButton</class> | ||||
<extends>QPushButton</extends> | <extends>QPushButton</extends> | ||||
<header>pixmapbutton.h</header> | |||||
<header>widgets/pixmapbutton.h</header> | |||||
</customwidget> | </customwidget> | ||||
</customwidgets> | </customwidgets> | ||||
<resources> | <resources> | ||||
@@ -464,12 +464,12 @@ | |||||
<customwidget> | <customwidget> | ||||
<class>PianoRollView</class> | <class>PianoRollView</class> | ||||
<extends>QGraphicsView</extends> | <extends>QGraphicsView</extends> | ||||
<header>pianoroll.h</header> | |||||
<header>widgets/pianoroll.h</header> | |||||
</customwidget> | </customwidget> | ||||
<customwidget> | <customwidget> | ||||
<class>ModeIndicator</class> | <class>ModeIndicator</class> | ||||
<extends>QWidget</extends> | <extends>QWidget</extends> | ||||
<header>pianoroll.h</header> | |||||
<header>widgets/pianoroll.h</header> | |||||
<container>1</container> | <container>1</container> | ||||
</customwidget> | </customwidget> | ||||
</customwidgets> | </customwidgets> | ||||
@@ -307,6 +307,23 @@ else | |||||
DEFAULT_QT ?= 4 | DEFAULT_QT ?= 4 | ||||
endif | endif | ||||
# --------------------------------------------------------------------------------------------------------------------- | |||||
# Set PyQt tools, part2 | |||||
ifeq ($(DEFAULT_QT),4) | |||||
PYUIC ?= pyuic4 -w | |||||
PYRCC ?= pyrcc4 -py3 | |||||
ifeq ($(HAVE_QT4),true) | |||||
HAVE_THEME = true | |||||
endif | |||||
else | |||||
PYUIC ?= pyuic5 | |||||
PYRCC ?= pyrcc5 | |||||
ifeq ($(HAVE_QT5),true) | |||||
HAVE_THEME = true | |||||
endif | |||||
endif | |||||
# --------------------------------------------------------------------------------------------------------------------- | # --------------------------------------------------------------------------------------------------------------------- | ||||
# Set base defines | # Set base defines | ||||
@@ -542,6 +559,11 @@ else | |||||
SED_ARGS=-i -e | SED_ARGS=-i -e | ||||
endif | endif | ||||
# --------------------------------------------------------------------------------------------------------------------- | |||||
# Set command used for file symlinking | |||||
LINK := ln -sf | |||||
# --------------------------------------------------------------------------------------------------------------------- | # --------------------------------------------------------------------------------------------------------------------- | ||||
ifneq (,$(wildcard $(CWD)/native-plugins/external/Makefile.mk)) | ifneq (,$(wildcard $(CWD)/native-plugins/external/Makefile.mk)) | ||||
@@ -0,0 +1,116 @@ | |||||
#!/usr/bin/make -f | |||||
# Makefile for carla-frontend # | |||||
# --------------------------- # | |||||
# Created by falkTX | |||||
# | |||||
CWD=.. | |||||
include $(CWD)/Makefile.mk | |||||
# ---------------------------------------------------------------------------------------------------------------------- | |||||
BINDIR := $(CWD)/../bin | |||||
RESDIR := $(CWD)/../resources | |||||
ifeq ($(DEBUG),true) | |||||
OBJDIR := $(CWD)/../build/frontend/Debug | |||||
MODULEDIR := $(CWD)/../build/modules/Debug | |||||
else | |||||
OBJDIR := $(CWD)/../build/frontend/Release | |||||
MODULEDIR := $(CWD)/../build/modules/Release | |||||
endif | |||||
# --------------------------------------------------------------------------------------------------------------------- | |||||
# UI code | |||||
UIs = \ | |||||
ui_carla_about.py \ | |||||
ui_carla_add_jack.py \ | |||||
ui_carla_database.py \ | |||||
ui_carla_edit.py \ | |||||
ui_carla_host.py \ | |||||
ui_carla_parameter.py \ | |||||
ui_carla_plugin_calf.py \ | |||||
ui_carla_plugin_classic.py \ | |||||
ui_carla_plugin_compact.py \ | |||||
ui_carla_plugin_default.py \ | |||||
ui_carla_plugin_presets.py \ | |||||
ui_carla_refresh.py \ | |||||
ui_carla_settings.py \ | |||||
ui_carla_settings_driver.py \ | |||||
ui_inputdialog_value.py \ | |||||
ui_midipattern.py | |||||
# --------------------------------------------------------------------------------------------------------------------- | |||||
# Resources | |||||
RES = \ | |||||
carla_config.py \ | |||||
resources_rc.py \ | |||||
$(BINDIR)/resources/widgets \ | |||||
$(BINDIR)/resources/carla_app.py \ | |||||
$(BINDIR)/resources/carla_backend.py \ | |||||
$(BINDIR)/resources/carla_backend_qt.py \ | |||||
$(BINDIR)/resources/carla_config.py \ | |||||
$(BINDIR)/resources/carla_control.py \ | |||||
$(BINDIR)/resources/carla_database.py \ | |||||
$(BINDIR)/resources/carla_host.py \ | |||||
$(BINDIR)/resources/carla_settings.py \ | |||||
$(BINDIR)/resources/carla_skin.py \ | |||||
$(BINDIR)/resources/carla_shared.py \ | |||||
$(BINDIR)/resources/carla_utils.py \ | |||||
$(BINDIR)/resources/carla_widgets.py \ | |||||
$(BINDIR)/resources/externalui.py \ | |||||
$(BINDIR)/resources/patchcanvas.py \ | |||||
$(BINDIR)/resources/patchcanvas_theme.py \ | |||||
$(BINDIR)/resources/resources_rc.py \ | |||||
$(BINDIR)/resources/ui_carla_about.py \ | |||||
$(BINDIR)/resources/ui_carla_add_jack.py \ | |||||
$(BINDIR)/resources/ui_carla_database.py \ | |||||
$(BINDIR)/resources/ui_carla_edit.py \ | |||||
$(BINDIR)/resources/ui_carla_host.py \ | |||||
$(BINDIR)/resources/ui_carla_parameter.py \ | |||||
$(BINDIR)/resources/ui_carla_plugin_calf.py \ | |||||
$(BINDIR)/resources/ui_carla_plugin_classic.py \ | |||||
$(BINDIR)/resources/ui_carla_plugin_compact.py \ | |||||
$(BINDIR)/resources/ui_carla_plugin_default.py \ | |||||
$(BINDIR)/resources/ui_carla_plugin_presets.py \ | |||||
$(BINDIR)/resources/ui_carla_refresh.py \ | |||||
$(BINDIR)/resources/ui_carla_settings.py \ | |||||
$(BINDIR)/resources/ui_carla_settings_driver.py \ | |||||
$(BINDIR)/resources/ui_inputdialog_value.py \ | |||||
$(BINDIR)/resources/ui_midipattern.py | |||||
# ---------------------------------------------------------------------------------------------------------------------- | |||||
all: $(UIs) $(RES) | |||||
# ---------------------------------------------------------------------------------------------------------------------- | |||||
ui_%.py: $(RESDIR)/ui/%.ui | |||||
$(PYUIC) $< -o $@ | |||||
carla_config.py: | |||||
@echo "#!/usr/bin/env python3" > $@ | |||||
@echo "# -*- coding: utf-8 -*-" >> $@ | |||||
ifeq ($(DEFAULT_QT),4) | |||||
@echo "config_UseQt5 = False" >> $@ | |||||
else | |||||
@echo "config_UseQt5 = True" >> $@ | |||||
endif | |||||
resources_rc.py: $(RESDIR)/resources.qrc $(RESDIR)/*/*.png $(RESDIR)/*/*.svg | |||||
$(PYRCC) $< -o $@ | |||||
$(BINDIR)/resources/%: % | |||||
$(LINK) $(CURDIR)/$* $(BINDIR)/resources/ | |||||
# ---------------------------------------------------------------------------------------------------------------------- | |||||
clean: | |||||
rm -rf $(UIs) $(RES) __pycache__ *.pyc | |||||
debug: | |||||
$(MAKE) DEBUG=true | |||||
# ---------------------------------------------------------------------------------------------------------------------- |
@@ -47,8 +47,8 @@ from carla_settings import * | |||||
from carla_utils import * | from carla_utils import * | ||||
from carla_widgets import * | from carla_widgets import * | ||||
from digitalpeakmeter import DigitalPeakMeter | |||||
from pixmapkeyboard import PixmapKeyboardHArea | |||||
from widgets.digitalpeakmeter import DigitalPeakMeter | |||||
from widgets.pixmapkeyboard import PixmapKeyboardHArea | |||||
# ------------------------------------------------------------------------------------------------------------ | # ------------------------------------------------------------------------------------------------------------ | ||||
# Try Import OpenGL | # Try Import OpenGL |
@@ -636,8 +636,8 @@ def getPaths(libPrefix = None): | |||||
pathResources = os.path.join(libPrefix, datadir, "carla", "resources") | pathResources = os.path.join(libPrefix, datadir, "carla", "resources") | ||||
# standalone, local source | # standalone, local source | ||||
elif CWDl.endswith("source"): | |||||
pathBinaries = os.path.abspath(os.path.join(CWD, "..", "bin")) | |||||
elif CWDl.endswith("frontend"): | |||||
pathBinaries = os.path.abspath(os.path.join(CWD, "..", "..", "bin")) | |||||
pathResources = os.path.join(pathBinaries, "resources") | pathResources = os.path.join(pathBinaries, "resources") | ||||
# plugin | # plugin |
@@ -43,8 +43,8 @@ import ui_carla_plugin_default | |||||
import ui_carla_plugin_presets | import ui_carla_plugin_presets | ||||
from carla_widgets import * | from carla_widgets import * | ||||
from digitalpeakmeter import DigitalPeakMeter | |||||
from pixmapdial import PixmapDial | |||||
from widgets.digitalpeakmeter import DigitalPeakMeter | |||||
from widgets.pixmapdial import PixmapDial | |||||
# ------------------------------------------------------------------------------------------------------------ | # ------------------------------------------------------------------------------------------------------------ | ||||
# Plugin Skin Rules (WORK IN PROGRESS) | # Plugin Skin Rules (WORK IN PROGRESS) | ||||
@@ -1882,6 +1882,7 @@ def getColorAndSkinStyle(host, pluginId): | |||||
progCount = host.get_midi_program_count(pluginId) | progCount = host.get_midi_program_count(pluginId) | ||||
color = getColorFromCategory(pluginInfo['category']) | color = getColorFromCategory(pluginInfo['category']) | ||||
print(color, pluginInfo['type'], pluginName) | |||||
# Samplers | # Samplers | ||||
if pluginInfo['type'] == PLUGIN_SF2: | if pluginInfo['type'] == PLUGIN_SF2: | ||||
@@ -1920,7 +1921,7 @@ def getColorAndSkinStyle(host, pluginId): | |||||
# DISTRHO Plugins (needs to be last) | # DISTRHO Plugins (needs to be last) | ||||
if pluginMaker.startswith("falkTX, ") or pluginMaker == "DISTRHO" or pluginLabel.startswith("http://distrho.sf.net/plugins/"): | if pluginMaker.startswith("falkTX, ") or pluginMaker == "DISTRHO" or pluginLabel.startswith("http://distrho.sf.net/plugins/"): | ||||
return pluginLabel.replace("http://distrho.sf.net/plugins/","") | |||||
return (color, pluginLabel.replace("http://distrho.sf.net/plugins/","")) | |||||
return (color, "default") | return (color, "default") | ||||
@@ -42,8 +42,8 @@ import ui_carla_parameter | |||||
from carla_shared import * | from carla_shared import * | ||||
from carla_utils import * | from carla_utils import * | ||||
from paramspinbox import CustomInputDialog | |||||
from pixmapkeyboard import PixmapKeyboardHArea | |||||
from widgets.paramspinbox import CustomInputDialog | |||||
from widgets.pixmapkeyboard import PixmapKeyboardHArea | |||||
# ------------------------------------------------------------------------------------------------------------ | # ------------------------------------------------------------------------------------------------------------ | ||||
# Carla GUI defines | # Carla GUI defines |
@@ -0,0 +1 @@ | |||||
@@ -40,7 +40,7 @@ from carla_utils import * | |||||
from carla_app import CarlaApplication | from carla_app import CarlaApplication | ||||
from externalui import ExternalUI | from externalui import ExternalUI | ||||
from digitalpeakmeter import DigitalPeakMeter | |||||
from widgets.digitalpeakmeter import DigitalPeakMeter | |||||
# ----------------------------------------------------------------------- | # ----------------------------------------------------------------------- | ||||
# External UI | # External UI | ||||
@@ -38,7 +38,7 @@ else: | |||||
from carla_shared import * | from carla_shared import * | ||||
from carla_utils import * | from carla_utils import * | ||||
from pianoroll import * | |||||
from widgets.pianoroll import * | |||||
import ui_midipattern | import ui_midipattern | ||||
@@ -42,7 +42,7 @@ from carla_utils import * | |||||
from carla_app import CarlaApplication | from carla_app import CarlaApplication | ||||
from externalui import ExternalUI | from externalui import ExternalUI | ||||
from paramspinbox import ParamSpinBox | |||||
from widgets.paramspinbox import ParamSpinBox | |||||
# ----------------------------------------------------------------------- | # ----------------------------------------------------------------------- | ||||
# External UI | # External UI | ||||