// SPDX-FileCopyrightText: 2011-2024 Filipe Coelho // SPDX-License-Identifier: GPL-2.0-or-later #pragma once #include "CarlaBackend.h" #ifdef __cplusplus using CARLA_BACKEND_NAMESPACE::PluginType; extern "C" { #endif // -------------------------------------------------------------------------------------------------------------------- typedef struct { const char* command; const char* name; const char* labelSetup; } JackAppDialogResults; typedef struct _HostSettings { bool showPluginBridges; bool showWineBridges; bool useSystemIcons; bool wineAutoPrefix; const char* wineExecutable; const char* wineFallbackPrefix; } HostSettings; typedef struct { uint build; uint type; uint hints; const char* category; const char* filename; const char* name; const char* label; const char* maker; uint64_t uniqueId; uint audioIns; uint audioOuts; uint cvIns; uint cvOuts; uint midiIns; uint midiOuts; uint parameterIns; uint parameterOuts; } PluginListDialogResults; #ifdef __cplusplus class PluginListDialog; #else struct PluginListDialog; #endif // -------------------------------------------------------------------------------------------------------------------- CARLA_PLUGIN_EXPORT const JackAppDialogResults* carla_frontend_createAndExecJackAppDialog(void* parent, const char* projectFilename); CARLA_PLUGIN_EXPORT PluginListDialog* carla_frontend_createPluginListDialog(void* parent, const HostSettings* hostSettings); CARLA_PLUGIN_EXPORT void carla_frontend_destroyPluginListDialog(PluginListDialog* dialog); // TODO get favorites CARLA_PLUGIN_EXPORT void carla_frontend_setPluginListDialogPath(PluginListDialog* dialog, int ptype, const char* path); CARLA_PLUGIN_EXPORT const PluginListDialogResults* carla_frontend_execPluginListDialog(PluginListDialog* dialog); // CARLA_PLUGIN_EXPORT const PluginListDialogResults* // carla_frontend_createAndExecPluginListDialog(void* parent, const HostSettings* hostSettings); // -------------------------------------------------------------------------------------------------------------------- #ifdef __cplusplus } #endif