@@ -80,20 +80,24 @@ typedef void (*projectm_playlist_preset_switch_failed_event)(const char* preset_
8080 * - Custom preset storage solutions
8181 *
8282 * When this callback is set and returns true, the playlist library will NOT attempt
83- * to load the preset file itself. The application is responsible for calling
84- * projectm_load_preset_file() or projectm_load_preset_data() with the preset content.
83+ * to load the preset file itself and will return immediately without firing any events.
84+ * The application takes full responsibility for:
85+ * - Calling projectm_load_preset_file() or projectm_load_preset_data() with the preset content
86+ * - Handling any loading errors
87+ * - Firing the preset_switched_event callback when the preset is ready (if desired)
8588 *
8689 * If the callback returns false or is not set, the playlist library will use the
8790 * default behavior of loading the preset from the filesystem.
8891 *
8992 * @note The filename pointer is only valid inside the callback. Make a copy if it needs
9093 * to be retained for later use.
94+ * @note Do not call any playlist preset-switching functions from within this callback.
9195 * @param index The playlist index of the preset to be loaded.
9296 * @param filename The preset filename/URL at this index. Can be used as a key or path.
9397 * @param hard_cut True if this should be a hard cut, false for a smooth transition.
9498 * @param user_data A user-defined data pointer that was provided when registering the callback,
9599 * e.g. context information.
96- * @return True if the application handled the preset loading, false to use default behavior.
100+ * @return True if the application handles preset loading, false to use default behavior.
97101 * @since 4.2.0
98102 */
99103typedef bool (* projectm_playlist_preset_load_event )(unsigned int index , const char * filename ,
0 commit comments