summaryrefslogtreecommitdiff
path: root/core
Side-by-side diff
Diffstat (limited to 'core') (more/less context) (ignore whitespace changes)
-rw-r--r--core/applets/vmemo/vmemo.cpp116
-rw-r--r--core/applets/vmemo/vmemo.h5
2 files changed, 63 insertions, 58 deletions
diff --git a/core/applets/vmemo/vmemo.cpp b/core/applets/vmemo/vmemo.cpp
index e14d532..7e91ef0 100644
--- a/core/applets/vmemo/vmemo.cpp
+++ b/core/applets/vmemo/vmemo.cpp
@@ -199,25 +199,35 @@ VMemo::VMemo( QWidget *parent, const char *_name )
{
- setFixedHeight( 18 );
- setFixedWidth( 14 );
+ setFixedHeight( 18 );
+ setFixedWidth( 14 );
- recording = FALSE;
+ recording = FALSE;
- struct utsname name; /* check for embedix kernel running on the zaurus*/
- if (uname(&name) != -1) {
- QString release=name.release;
- if(release.find("embedix",0,TRUE) !=-1)
- systemZaurus=TRUE;
- else {
- systemZaurus=FALSE;
- myChannel = new QCopChannel( "QPE/VMemo", this );
- connect( myChannel, SIGNAL(received(const QCString&, const QByteArray&)),
- this, SLOT(receive(const QCString&, const QByteArray&)) );
-
-// // Register the REC key press, for ipaq only
- QCopEnvelope e("QPE/Desktop", "keyRegister(int key, QString channel, QString message)");
- e << 4096;
- e << QString("QPE/VMemo");
- e << QString("toggleRecord()");
- }
- }
+ struct utsname name; /* check for embedix kernel running on the zaurus*/
+ if (uname(&name) != -1) {
+ QString release=name.release;
+ Config vmCfg("VMemo");
+ vmCfg.setGroup("Defaults");
+
+ if(release.find("embedix",0,TRUE) !=-1) {
+ int toggleKey = vmCfg.readNumEntry("toggleKey", -1);
+ systemZaurus=TRUE;
+ } else {
+ int toggleKey = vmCfg.readNumEntry("toggleKey", 4096);
+//default key for ipaq record button is Key_Escape = 4096
+ systemZaurus=FALSE;
+ }
+
+ myChannel = new QCopChannel( "QPE/VMemo", this );
+ connect( myChannel, SIGNAL(received(const QCString&, const QByteArray&)),
+ this, SLOT(receive(const QCString&, const QByteArray&)) );
+
+ if( toggleKey != -1 ) {
+ QCopEnvelope e("QPE/Desktop", "keyRegister(int key, QString channel, QString message)");
+// e << 4096; // Key_Escape
+// e << Key_F5; //4148
+ e << toggleKey;
+ e << QString("QPE/VMemo");
+ e << QString("toggleRecord()");
+ }
+ }
}
@@ -230,9 +240,12 @@ void VMemo::receive( const QCString &msg, const QByteArray &data )
{
- QDataStream stream( data, IO_ReadOnly );
- if (msg == "toggleRecord()") {
- if (recording)
- mouseReleaseEvent(NULL);
- else
- mousePressEvent(NULL);
- }
+ QDataStream stream( data, IO_ReadOnly );
+ if (msg == "toggleRecord()") {
+ if (recording) {
+ fromToggle = TRUE;
+ stopRecording();
+ } else {
+ fromToggle = TRUE;
+ startRecording();
+ }
+ }
}
@@ -245,19 +258,16 @@ void VMemo::paintEvent( QPaintEvent* )
-void VMemo::mousePressEvent( QMouseEvent *me )
+void VMemo::mousePressEvent( QMouseEvent * )
{
- // just to be safe
- if (recording) {
- recording = FALSE;
- return;
- }
+ startRecording();
+}
+
+void VMemo::mouseReleaseEvent( QMouseEvent * )
+{
+ stopRecording();
+}
+
+bool VMemo::startRecording() {
- /*
- No mousePress/mouseRelease recording on the iPAQ. The REC button on the iPAQ calls these functions
- mousePressEvent and mouseReleaseEvent with a NULL parameter.
- */
-// #if defined(QT_QWS_IPAQ) || defined(QT_QWS_EBX)
-// if (!systemZaurus )
-// return;
-// #endif
-
+ if ( recording)
+ return FALSE;;
Config config( "Sound" );
@@ -278,3 +288,3 @@ void VMemo::mousePressEvent( QMouseEvent *me )
recording = FALSE;
- return;
+ return FALSE;
}
@@ -287,4 +297,4 @@ void VMemo::mousePressEvent( QMouseEvent *me )
QString fName;
- Config cfg( "Sound" );
- cfg.setGroup( "System" );
+ Config cfg( "Sound" );
+ cfg.setGroup( "System" );
fName = QPEApplication::documentDir() ;
@@ -299,8 +309,2 @@ void VMemo::mousePressEvent( QMouseEvent *me )
fileName+="/";
-
-// if(systemZaurus)
-// fileName=vmCfg.readEntry("Dir", "/mnt/cf/"); // zaurus does not have /mnt/ramfs
-// else
-// fileName=vmCfg.readEntry("Dir", "/mnt/ramfs/");
-
fName = "vm_"+ dt.toString()+ ".wav";
@@ -320,3 +324,3 @@ void VMemo::mousePressEvent( QMouseEvent *me )
close(dsp);
- return;
+ return FALSE;
}
@@ -336,6 +340,6 @@ void VMemo::mousePressEvent( QMouseEvent *me )
record();
+ return TRUE;
}
-void VMemo::mouseReleaseEvent( QMouseEvent * )
-{
+void VMemo::stopRecording() {
recording = FALSE;
@@ -481,3 +485,3 @@ void VMemo::record(void)
- } else {
+ } else { // this is specific for ipaqs that do not have 8 bit capabilities
diff --git a/core/applets/vmemo/vmemo.h b/core/applets/vmemo/vmemo.h
index 3972877..701663f 100644
--- a/core/applets/vmemo/vmemo.h
+++ b/core/applets/vmemo/vmemo.h
@@ -39,3 +39,4 @@ public slots:
void receive( const QCString &msg, const QByteArray &data );
-
+ bool startRecording();
+ void stopRecording();
private:
@@ -46,3 +47,3 @@ private:
int openWAV(const char *filename);
-
+ bool fromToggle;
QPixmap vmemoPixmap;