Skip to content

Commit e685f9e

Browse files
committed
Update dpf and plugins
Signed-off-by: falkTX <falktx@falktx.com>
1 parent 6ecedf2 commit e685f9e

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

92 files changed

+4343
-3642
lines changed

dpf/Makefile.base.mk

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -274,10 +274,10 @@ BASE_OPTS = -O2 -ffast-math -fdata-sections -ffunction-sections
274274
endif
275275

276276
ifeq ($(DEBUG),true)
277-
BASE_FLAGS += -DDEBUG -O0 -g
278-
ifneq ($(HAIKU),true)
279-
BASE_FLAGS += -fsanitize=address
280-
endif
277+
BASE_FLAGS += -DDEBUG -DDPF_DEBUG -O0 -g
278+
# ifneq ($(HAIKU),true)
279+
# BASE_FLAGS += -fsanitize=address
280+
# endif
281281
LINK_OPTS =
282282
ifeq ($(WASM),true)
283283
LINK_OPTS += -sASSERTIONS=1
@@ -427,6 +427,7 @@ endif
427427
else ifeq ($(WINDOWS),true)
428428

429429
DGL_SYSTEM_LIBS += -lcomdlg32
430+
DGL_SYSTEM_LIBS += -ldwmapi
430431
DGL_SYSTEM_LIBS += -lgdi32
431432
# DGL_SYSTEM_LIBS += -lole32
432433

@@ -600,6 +601,14 @@ ifneq ($(WINDOWS_ICON_ID),)
600601
BUILD_CXX_FLAGS += -DDGL_WINDOWS_ICON_ID=$(WINDOWS_ICON_ID)
601602
endif
602603

604+
ifneq ($(X11_WINDOW_ICON_NAME),)
605+
BUILD_CXX_FLAGS += -DDGL_X11_WINDOW_ICON_NAME=$(X11_WINDOW_ICON_NAME)
606+
endif
607+
608+
ifneq ($(X11_WINDOW_ICON_SIZE),)
609+
BUILD_CXX_FLAGS += -DDGL_X11_WINDOW_ICON_SIZE=$(X11_WINDOW_ICON_SIZE)
610+
endif
611+
603612
ifeq ($(USE_GLES2),true)
604613
BUILD_CXX_FLAGS += -DDGL_USE_OPENGL3 -DDGL_USE_GLES -DDGL_USE_GLES2
605614
endif

dpf/Makefile.plugins.mk

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ endif
4646
DGL_BUILD_DIR = $(DPF_PATH)/build$(BUILD_DIR_SUFFIX)
4747

4848
BUILD_C_FLAGS += -I.
49-
BUILD_CXX_FLAGS += -I. -I$(DPF_PATH)/distrho -I$(DPF_PATH)/dgl
49+
BUILD_CXX_FLAGS += -I. -I$(DPF_PATH)/distrho -I$(DPF_PATH)/dgl -I$(DPF_PATH)/dgl/src/pugl-upstream/include
5050

5151
ifeq ($(HAVE_ALSA),true)
5252
BASE_FLAGS += -DHAVE_ALSA
@@ -296,9 +296,9 @@ static = $(TARGET_DIR)/$(NAME).a
296296

297297
ifeq ($(MACOS),true)
298298
BUNDLE_RESOURCES = Info.plist PkgInfo Resources/empty.lproj
299-
vst2files += $(BUNDLE_RESOURCES=%:$(TARGET_DIR)/$(NAME).vst/Contents/%)
300-
vst3files += $(BUNDLE_RESOURCES=%:$(TARGET_DIR)/$(NAME).vst3/Contents/%)
301-
clapfiles += $(BUNDLE_RESOURCES=%:$(TARGET_DIR)/$(NAME).clap/Contents/%)
299+
vst2files += $(BUNDLE_RESOURCES:%=$(TARGET_DIR)/$(NAME).vst/Contents/%)
300+
vst3files += $(BUNDLE_RESOURCES:%=$(TARGET_DIR)/$(NAME).vst3/Contents/%)
301+
clapfiles += $(BUNDLE_RESOURCES:%=$(TARGET_DIR)/$(NAME).clap/Contents/%)
302302
endif
303303

304304
ifneq ($(HAVE_DGL),true)

dpf/cmake/DPF-plugin.cmake

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -380,6 +380,8 @@ function(dpf__build_lv2 NAME HAS_UI MONOLITHIC)
380380
dpf__add_lv2_ttl_generator()
381381
add_dependencies("${NAME}-lv2" lv2_ttl_generator)
382382

383+
separate_arguments(CMAKE_CROSSCOMPILING_EMULATOR)
384+
383385
add_custom_command(TARGET "${NAME}-lv2" POST_BUILD
384386
COMMAND
385387
${CMAKE_CROSSCOMPILING_EMULATOR}
@@ -732,7 +734,7 @@ function(dpf__add_dgl_system_libs)
732734
elseif(HAIKU)
733735
target_link_libraries(dgl-system-libs INTERFACE "be")
734736
elseif(WIN32)
735-
target_link_libraries(dgl-system-libs INTERFACE "gdi32" "comdlg32")
737+
target_link_libraries(dgl-system-libs INTERFACE "comdlg32" "dwmapi" "gdi32")
736738
else()
737739
find_package(PkgConfig)
738740
pkg_check_modules(DBUS "dbus-1")

dpf/dgl/Base.hpp

Lines changed: 90 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
22
* DISTRHO Plugin Framework (DPF)
3-
* Copyright (C) 2012-2022 Filipe Coelho <falktx@falktx.com>
3+
* Copyright (C) 2012-2023 Filipe Coelho <falktx@falktx.com>
44
*
55
* Permission to use, copy, modify, and/or distribute this software for any purpose with
66
* or without fee is hereby granted, provided that the above copyright notice and this
@@ -62,55 +62,87 @@ enum Modifier {
6262
*/
6363
enum Key {
6464
// Convenience symbols for ASCII control characters
65-
kKeyBackspace = 0x08,
66-
kKeyEscape = 0x1B,
67-
kKeyDelete = 0x7F,
65+
kKeyBackspace = 0x00000008U, ///< Backspace
66+
kKeyEnter = 0x0000000DU, ///< Enter
67+
kKeyEscape = 0x0000001BU, ///< Escape
68+
kKeyDelete = 0x0000007FU, ///< Delete
69+
kKeySpace = 0x00000020U, ///< Space
70+
71+
// Unicode Private Use Area
72+
kKeyF1 = 0x0000E000U, ///< F1
73+
kKeyF2, ///< F2
74+
kKeyF3, ///< F3
75+
kKeyF4, ///< F4
76+
kKeyF5, ///< F5
77+
kKeyF6, ///< F6
78+
kKeyF7, ///< F7
79+
kKeyF8, ///< F8
80+
kKeyF9, ///< F9
81+
kKeyF10, ///< F10
82+
kKeyF11, ///< F11
83+
kKeyF12, ///< F12
84+
kKeyPageUp = 0xE031, ///< Page Up
85+
kKeyPageDown, ///< Page Down
86+
kKeyEnd, ///< End
87+
kKeyHome, ///< Home
88+
kKeyLeft, ///< Left
89+
kKeyUp, ///< Up
90+
kKeyRight, ///< Right
91+
kKeyDown, ///< Down
92+
kKeyPrintScreen = 0xE041U, ///< Print Screen
93+
kKeyInsert, ///< Insert
94+
kKeyPause, ///< Pause/Break
95+
kKeyMenu, ///< Menu
96+
kKeyNumLock, ///< Num Lock
97+
kKeyScrollLock, ///< Scroll Lock
98+
kKeyCapsLock, ///< Caps Lock
99+
kKeyShiftL = 0xE051U, ///< Left Shift,
100+
kKeyShiftR, ///< Right Shift
101+
kKeyControlL, ///< Left Control
102+
kKeyControlR, ///< Right Control
103+
kKeyAltL, ///< Left Alt
104+
kKeyAltR, ///< Right Alt / AltGr
105+
kKeySuperL, ///< Left Super
106+
kKeySuperR, ///< Right Super
107+
kKeyPad0 = 0xE060U, ///< Keypad 0
108+
kKeyPad1, ///< Keypad 1
109+
kKeyPad2, ///< Keypad 2
110+
kKeyPad3, ///< Keypad 3
111+
kKeyPad4, ///< Keypad 4
112+
kKeyPad5, ///< Keypad 5
113+
kKeyPad6, ///< Keypad 6
114+
kKeyPad7, ///< Keypad 7
115+
kKeyPad8, ///< Keypad 8
116+
kKeyPad9, ///< Keypad 9
117+
kKeyPadEnter, ///< Keypad Enter
118+
kKeyPadPageUp = 0xE071U, ///< Keypad Page Up
119+
kKeyPadPageDown, ///< Keypad Page Down
120+
kKeyPadEnd, ///< Keypad End
121+
kKeyPadHome, ///< Keypad Home
122+
kKeyPadLeft, ///< Keypad Left
123+
kKeyPadUp, ///< Keypad Up
124+
kKeyPadRight, ///< Keypad Right
125+
kKeyPadDown, ///< Keypad Down
126+
kKeyPadClear = 0xE09DU, ///< Keypad Clear/Begin
127+
kKeyPadInsert, ///< Keypad Insert
128+
kKeyPadDelete, ///< Keypad Delete
129+
kKeyPadEqual, ///< Keypad Equal
130+
kKeyPadMultiply = 0xE0AAU, ///< Keypad Multiply
131+
kKeyPadAdd, ///< Keypad Add
132+
kKeyPadSeparator, ///< Keypad Separator
133+
kKeyPadSubtract, ///< Keypad Subtract
134+
kKeyPadDecimal, ///< Keypad Decimal
135+
kKeyPadDivide, ///< Keypad Divide
68136

69137
// Backwards compatibility with old DPF
70138
kCharBackspace DISTRHO_DEPRECATED_BY("kKeyBackspace") = kKeyBackspace,
71139
kCharEscape DISTRHO_DEPRECATED_BY("kKeyEscape") = kKeyEscape,
72140
kCharDelete DISTRHO_DEPRECATED_BY("kKeyDelete") = kKeyDelete,
73141

74-
// Unicode Private Use Area
75-
kKeyF1 = 0xE000,
76-
kKeyF2,
77-
kKeyF3,
78-
kKeyF4,
79-
kKeyF5,
80-
kKeyF6,
81-
kKeyF7,
82-
kKeyF8,
83-
kKeyF9,
84-
kKeyF10,
85-
kKeyF11,
86-
kKeyF12,
87-
kKeyLeft,
88-
kKeyUp,
89-
kKeyRight,
90-
kKeyDown,
91-
kKeyPageUp,
92-
kKeyPageDown,
93-
kKeyHome,
94-
kKeyEnd,
95-
kKeyInsert,
96-
kKeyShift,
97-
kKeyShiftL = kKeyShift,
98-
kKeyShiftR,
99-
kKeyControl,
100-
kKeyControlL = kKeyControl,
101-
kKeyControlR,
102-
kKeyAlt,
103-
kKeyAltL = kKeyAlt,
104-
kKeyAltR,
105-
kKeySuper,
106-
kKeySuperL = kKeySuper,
107-
kKeySuperR,
108-
kKeyMenu,
109-
kKeyCapsLock,
110-
kKeyScrollLock,
111-
kKeyNumLock,
112-
kKeyPrintScreen,
113-
kKeyPause
142+
kKeyShift DISTRHO_DEPRECATED_BY("kKeyShiftL") = kKeyShiftL,
143+
kKeyControl DISTRHO_DEPRECATED_BY("kKeyControlL") = kKeyControlL,
144+
kKeyAlt DISTRHO_DEPRECATED_BY("kKeyAltL") = kKeyAltL,
145+
kKeySuper DISTRHO_DEPRECATED_BY("kKeySuperL") = kKeySuperL,
114146
};
115147

116148
/**
@@ -159,15 +191,20 @@ enum MouseButton {
159191
This is a portable subset of mouse cursors that exist on X11, MacOS, and Windows.
160192
*/
161193
enum MouseCursor {
162-
kMouseCursorArrow, ///< Default pointing arrow
163-
kMouseCursorCaret, ///< Caret (I-Beam) for text entry
164-
kMouseCursorCrosshair, ///< Cross-hair
165-
kMouseCursorHand, ///< Hand with a pointing finger
166-
kMouseCursorNotAllowed, ///< Operation not allowed
167-
kMouseCursorLeftRight, ///< Left/right arrow for horizontal resize
168-
kMouseCursorUpDown, ///< Up/down arrow for vertical resize
169-
kMouseCursorDiagonal, ///< Top-left to bottom-right arrow for diagonal resize
170-
kMouseCursorAntiDiagonal ///< Bottom-left to top-right arrow for diagonal resize
194+
kMouseCursorArrow, ///< Default pointing arrow
195+
kMouseCursorCaret, ///< Caret (I-Beam) for text entry
196+
kMouseCursorCrosshair, ///< Cross-hair
197+
kMouseCursorHand, ///< Hand with a pointing finger
198+
kMouseCursorNotAllowed, ///< Operation not allowed
199+
kMouseCursorLeftRight, ///< Left/right arrow for horizontal resize
200+
kMouseCursorUpDown, ///< Up/down arrow for vertical resize
201+
kMouseCursorUpLeftDownRight, ///< Diagonal arrow for down/right resize
202+
kMouseCursorUpRightDownLeft, ///< Diagonal arrow for down/left resize
203+
kMouseCursorAllScroll, ///< Omnidirectional "arrow" for scrolling
204+
205+
// Backwards compatibility with old DPF
206+
kMouseCursorDiagonal DISTRHO_DEPRECATED_BY("kMouseCursorUpLeftDownRight") = kMouseCursorUpLeftDownRight,
207+
kMouseCursorAntiDiagonal DISTRHO_DEPRECATED_BY("kMouseCursorUpRightDownLeft") = kMouseCursorUpRightDownLeft
171208
};
172209

173210
/**

dpf/dgl/src/ApplicationPrivateData.cpp

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*
22
* DISTRHO Plugin Framework (DPF)
3-
* Copyright (C) 2012-2021 Filipe Coelho <falktx@falktx.com>
3+
* Copyright (C) 2012-2023 Filipe Coelho <falktx@falktx.com>
44
*
55
* Permission to use, copy, modify, and/or distribute this software for any purpose with
66
* or without fee is hereby granted, provided that the above copyright notice and this
@@ -47,7 +47,7 @@ static bool isThisTheMainThread(const d_ThreadHandle mainThreadHandle) noexcept
4747

4848
const char* Application::getClassName() const noexcept
4949
{
50-
return puglGetClassName(pData->world);
50+
return puglGetWorldString(pData->world, PUGL_CLASS_NAME);
5151
}
5252

5353
// --------------------------------------------------------------------------------------------------------------------
@@ -68,9 +68,9 @@ Application::PrivateData::PrivateData(const bool standalone)
6868

6969
puglSetWorldHandle(world, this);
7070
#ifdef __EMSCRIPTEN__
71-
puglSetClassName(world, "canvas");
71+
puglSetWorldString(world, PUGL_CLASS_NAME, "canvas");
7272
#else
73-
puglSetClassName(world, DISTRHO_MACRO_AS_STRING(DGL_NAMESPACE));
73+
puglSetWorldString(world, PUGL_CLASS_NAME, DISTRHO_MACRO_AS_STRING(DGL_NAMESPACE));
7474
#endif
7575
}
7676

@@ -160,17 +160,15 @@ void Application::PrivateData::quit()
160160

161161
double Application::PrivateData::getTime() const
162162
{
163-
DISTRHO_SAFE_ASSERT_RETURN(world != nullptr, 0.0);
164-
165-
return puglGetTime(world);
163+
return world != nullptr ? puglGetTime(world) : 0.0;
166164
}
167165

168166
void Application::PrivateData::setClassName(const char* const name)
169167
{
170-
DISTRHO_SAFE_ASSERT_RETURN(world != nullptr,);
171168
DISTRHO_SAFE_ASSERT_RETURN(name != nullptr && name[0] != '\0',);
172169

173-
puglSetClassName(world, name);
170+
if (world != nullptr)
171+
puglSetWorldString(world, PUGL_CLASS_NAME, name);
174172
}
175173

176174
// --------------------------------------------------------------------------------------------------------------------

0 commit comments

Comments
 (0)