Index: qmmp/src/plugins/Visual/projectm/CMakeLists.txt
===================================================================
--- qmmp/src/plugins/Visual/projectm/CMakeLists.txt	(revision 8708)
+++ qmmp/src/plugins/Visual/projectm/CMakeLists.txt	(revision 8709)
@@ -15,6 +15,12 @@
   MESSAGE(WARNING "Unsuppoted OpenGL implementation, projectM disabled")
 ENDIF(${Qt5Gui_OPENGL_IMPLEMENTATION} STREQUAL GL)
 
+pkg_search_module(PROJECTM_31 libprojectM>=3.1.0)
+
+IF(PROJECTM_31_FOUND)
+ADD_DEFINITIONS(-DPROJECTM_31)
+ENDIF(PROJECTM_31_FOUND)
+
 find_file(PROJECTM_CONFIG config.inp
           PATHS "/usr/share/projectM/" "/usr/local/share/projectM/")
 
Index: qmmp/src/plugins/Visual/projectm/projectm.pro
===================================================================
--- qmmp/src/plugins/Visual/projectm/projectm.pro	(revision 8708)
+++ qmmp/src/plugins/Visual/projectm/projectm.pro	(revision 8709)
@@ -13,6 +13,8 @@
 
 RESOURCES = translations/translations.qrc
 
+#DEFINES += PROJECTM_31
+
 unix {
     PKGCONFIG += libprojectM
     target.path = $$PLUGIN_DIR/Visual
Index: qmmp/src/plugins/Visual/projectm/projectmwrapper.cpp
===================================================================
--- qmmp/src/plugins/Visual/projectm/projectmwrapper.cpp	(revision 8708)
+++ qmmp/src/plugins/Visual/projectm/projectmwrapper.cpp	(revision 8709)
@@ -1,5 +1,5 @@
 /***************************************************************************
- *   Copyright (C) 2013 by Ilya Kotov                                      *
+ *   Copyright (C) 2013-2019 by Ilya Kotov                                 *
  *   forkotov02@ya.ru                                                      *
  *                                                                         *
  *   This program is free software; you can redistribute it and/or modify  *
@@ -40,8 +40,16 @@
         projectM::selectPreset(index);
 }
 
+#ifdef PROJECTM_31
+void ProjectMWrapper::presetSwitchedEvent(bool isHardCut, size_t index) const
+{
+    Q_UNUSED(isHardCut);
+    emit currentPresetChanged(index);
+}
+#else
 void ProjectMWrapper::presetSwitchedEvent(bool isHardCut, unsigned int index) const
 {
     Q_UNUSED(isHardCut);
     emit currentPresetChanged(index);
 }
+#endif
Index: qmmp/src/plugins/Visual/projectm/projectmwrapper.h
===================================================================
--- qmmp/src/plugins/Visual/projectm/projectmwrapper.h	(revision 8708)
+++ qmmp/src/plugins/Visual/projectm/projectmwrapper.h	(revision 8709)
@@ -1,5 +1,5 @@
 /***************************************************************************
- *   Copyright (C) 2013 by Ilya Kotov                                      *
+ *   Copyright (C) 2013-2019 by Ilya Kotov                                 *
  *   forkotov02@ya.ru                                                      *
  *                                                                         *
  *   This program is free software; you can redistribute it and/or modify  *
@@ -40,7 +40,11 @@
     void selectPreset(int index);
 
 private:
+#ifdef PROJECTM_31
+    void presetSwitchedEvent(bool isHardCut, size_t index) const override;
+#else
     void presetSwitchedEvent(bool isHardCut, unsigned int index) const override;
+#endif
 
 
 };
Index: qmmp
===================================================================
--- qmmp	(revision 8708)
+++ qmmp	(revision 8709)

Property changes on: qmmp
___________________________________________________________________
Modified: svn:mergeinfo
## -0,0 +0,1 ##
   Merged /trunk/qmmp:r8708
