From 90825e2392b2d70e43c7a25b8a3752299a933894 Mon Sep 17 00:00:00 2001 From: toma Date: Wed, 25 Nov 2009 17:56:58 +0000 Subject: Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdebindings@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- qtjava/javalib/examples/sound/SoundPlayer.java | 116 +++++++++++++++++++++++++ 1 file changed, 116 insertions(+) create mode 100644 qtjava/javalib/examples/sound/SoundPlayer.java (limited to 'qtjava/javalib/examples/sound/SoundPlayer.java') diff --git a/qtjava/javalib/examples/sound/SoundPlayer.java b/qtjava/javalib/examples/sound/SoundPlayer.java new file mode 100644 index 00000000..ad6cf7a7 --- /dev/null +++ b/qtjava/javalib/examples/sound/SoundPlayer.java @@ -0,0 +1,116 @@ +/*************************************************************************** +* $Id$ +** +* Copyright (C) 1992-2000 Trolltech AS. All rights reserved. +** +* This file is part of an example program for Qt. This example +* program may be used, distributed and modified without limitation. +** +****************************************************************************/ + +import org.kde.qt.*; + + +class SoundPlayer extends QMainWindow { + +private QSound bucket3; +private QSound bucket4; + +// +// Very simple example of QSound.play(filename) +// +// 99% of this program is just boilerplate Qt code to put up a nice +// window so you think something special is happening. +// + + +SoundPlayer() +{ + super(); + bucket3 = new QSound("sounds/3.wav"); + bucket4 = new QSound("sounds/4.wav"); + + if (!QSound.isAvailable()) { + // Bail out. Programs in which sound is not critical + // could just silently (hehe) ignore the lack of a server. + // + QMessageBox.warning(this,"No Sound", + "

Sorry, you are not running the Network Audio System." + + "

If you have the `au' command, run it in the background before this program. " + + "The latest release of the Network Audio System can be obtained from:" + + "

\n"
+		+ "  \n"
+		+ "   ftp.ncd.com:/pub/ncd/technology/src/nas\n"
+		+ "   ftp.x.org:/contrib/audio/nas\n"
+		+ "
" + + "

Release 1.2 of NAS is also included with the X11R6" + + "contrib distribution." + + "

After installing NAS, you will then need to reconfigure Qt with NAS sound support"); + } + + QPopupMenu file = new QPopupMenu(this); + file.insertItem("Play &1", this, SLOT("doPlay1()"), new QKeySequence(CTRL+Key_1)); + file.insertItem("Play &2", this, SLOT("doPlay2()"), new QKeySequence(CTRL+Key_2)); + file.insertItem("Play from bucket &3", this, SLOT("doPlay3()"), new QKeySequence(CTRL+Key_3)); + file.insertItem("Play from bucket &4", this, SLOT("doPlay4()"), new QKeySequence(CTRL+Key_4)); + file.insertSeparator(); + file.insertItem("Play 3 and 4 together", this, SLOT("doPlay34()")); + file.insertItem("Play all together", this, SLOT("doPlay1234()")); + file.insertSeparator(); + file.insertItem("E&xit", qApp(), SLOT("quit()")); + menuBar().insertItem("&File", file); +} + +void doPlay1() +{ + QSound.play("sounds/1.wav"); +} + +void doPlay2() +{ + QSound.play("sounds/2.wav"); +} + +void doPlay3() +{ + bucket3.play(); +} + +void doPlay4() +{ + bucket4.play(); +} + +void doPlay34() +{ + // Some sound platforms will only play one sound at a time + bucket3.play(); + bucket4.play(); +} + +void doPlay1234() +{ + // Some sound platforms will only play one sound at a time + QSound.play("sounds/1.wav"); + QSound.play("sounds/2.wav"); + bucket3.play(); + bucket4.play(); +} + +public static void main(String[] args) +{ + QApplication app = new QApplication(args); + SoundPlayer sp = new SoundPlayer(); + app.setMainWidget(sp); + sp.setCaption("Qt Example - Sounds"); + sp.show(); + app.exec(); + return; +} + + static { + qtjava.initialize(); + } + +} + -- cgit v1.2.1