+
+int moods_event_handler(enum afs_events event, struct para_buffer *pb,
+ void *data)
+{
+ switch(event) {
+ case ATTRIBUTE_ADD:
+ case ATTRIBUTE_REMOVE:
+ case ATTRIBUTE_RENAME:
+ return reload_current_mood();
+ case AFSI_CHANGE: {
+ struct afsi_change_event_data *aced = data;
+ return mood_update_audio_file(aced->aft_row, aced->old_afsi);
+ }
+ case AFHI_CHANGE:
+ case AUDIO_FILE_RENAME:
+ case AUDIO_FILE_ADD:
+ return mood_update_audio_file(data, NULL);
+ case AUDIO_FILE_REMOVE:
+ return mood_delete_audio_file(data);
+ default:
+ return 1;
+ }
+ return 1;
+}
+