Maelstrom: Updated UI audio system to use more flexible sound names

https://github.com/libsdl-org/Maelstrom/commit/640987c9219a6893eb5165d3a2ad1be7dcc3ab31

From 640987c9219a6893eb5165d3a2ad1be7dcc3ab31 Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Sat, 5 Jan 2013 17:15:58 -0800
Subject: [PATCH] Updated UI audio system to use more flexible sound names

---
 Maelstrom_Data.zip                            | Bin 14925988 -> 14925988 bytes
 Makefile.in                                   | 257 +++++++++---------
 Xcode-iOS/Maelstrom-Info.plist                |  22 +-
 Xcode-iOS/Maelstrom.xcodeproj/project.pbxproj |  59 +++-
 aclocal.m4                                    | 209 +++++++-------
 configure                                     |  67 ++++-
 game/MaelstromUI.cpp                          |   4 +-
 game/MaelstromUI.h                            |   2 +-
 game/Makefile.in                              | 137 ++++++----
 maclib/Makefile.in                            | 137 ++++++----
 physfs/Makefile.in                            | 153 +++++++----
 screenlib/Makefile.in                         | 137 ++++++----
 screenlib/UIElementButton.cpp                 |   7 +-
 screenlib/UIElementButton.h                   |   2 +-
 screenlib/UIPanel.cpp                         |  15 +-
 screenlib/UIPanel.h                           |   4 +-
 screenlib/UISoundInterface.h                  |   2 +-
 utils/Makefile.in                             | 153 +++++++----
 18 files changed, 820 insertions(+), 547 deletions(-)

diff --git a/Maelstrom_Data.zip b/Maelstrom_Data.zip
index c3a029d41367e8acad84e796735e158c21b91cc2..131e9871f7a9c946f4cb583bcc42036ccf87154e 100644
GIT binary patch
delta 41948
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

delta 41962
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

(Patch may be truncated, please check the link at the top of this post.)