summaryrefslogtreecommitdiff
path: root/core/applets
authorllornkcor <llornkcor>2002-05-19 17:00:41 (UTC)
committer llornkcor <llornkcor>2002-05-19 17:00:41 (UTC)
commit61a917bec9006516115d94be8c49acadf4eba222 (patch) (side-by-side diff)
tree5cf91393455b95749978f28ab3f2a251c4c08b07 /core/applets
parent602ff2a6f588584bf47afa6faae08ce60b49047f (diff)
downloadopie-61a917bec9006516115d94be8c49acadf4eba222.zip
opie-61a917bec9006516115d94be8c49acadf4eba222.tar.gz
opie-61a917bec9006516115d94be8c49acadf4eba222.tar.bz2
changed keypress stuff, and added a secret key/button for zaurus, available from config [Defaults] toggleKey = 4148 (or the int for the wanted keypress), ipaqs is 4096=KeyEscape -record button
Diffstat (limited to 'core/applets') (more/less context) (show whitespace changes)
-rw-r--r--core/applets/vmemo/vmemo.cpp68
-rw-r--r--core/applets/vmemo/vmemo.h5
2 files changed, 39 insertions, 34 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
@@ -206,15 +206,25 @@ VMemo::VMemo( QWidget *parent, const char *_name )
if (uname(&name) != -1) {
QString release=name.release;
- if(release.find("embedix",0,TRUE) !=-1)
+ Config vmCfg("VMemo");
+ vmCfg.setGroup("Defaults");
+
+ if(release.find("embedix",0,TRUE) !=-1) {
+ int toggleKey = vmCfg.readNumEntry("toggleKey", -1);
systemZaurus=TRUE;
- else {
+ } 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&)) );
-// // Register the REC key press, for ipaq only
+ if( toggleKey != -1 ) {
QCopEnvelope e("QPE/Desktop", "keyRegister(int key, QString channel, QString message)");
- e << 4096;
+// e << 4096; // Key_Escape
+// e << Key_F5; //4148
+ e << toggleKey;
e << QString("QPE/VMemo");
e << QString("toggleRecord()");
@@ -231,8 +241,11 @@ void VMemo::receive( const QCString &msg, const QByteArray &data )
QDataStream stream( data, IO_ReadOnly );
if (msg == "toggleRecord()") {
- if (recording)
- mouseReleaseEvent(NULL);
- else
- mousePressEvent(NULL);
+ if (recording) {
+ fromToggle = TRUE;
+ stopRecording();
+ } else {
+ fromToggle = TRUE;
+ startRecording();
+ }
}
}
@@ -244,21 +257,18 @@ void VMemo::paintEvent( QPaintEvent* )
}
-void VMemo::mousePressEvent( QMouseEvent *me )
+void VMemo::mousePressEvent( QMouseEvent * )
{
- // just to be safe
- if (recording) {
- recording = FALSE;
- return;
+ 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
+void VMemo::mouseReleaseEvent( QMouseEvent * )
+{
+ stopRecording();
+}
+
+bool VMemo::startRecording() {
+ if ( recording)
+ return FALSE;;
Config config( "Sound" );
config.setGroup( "System" );
@@ -277,5 +287,5 @@ void VMemo::mousePressEvent( QMouseEvent *me )
QMessageBox::critical(0, "VMemo", "Could not open dsp device.\n"+errorMsg, "Abort");
recording = FALSE;
- return;
+ return FALSE;
}
@@ -298,10 +308,4 @@ void VMemo::mousePressEvent( QMouseEvent *me )
if( fileName.right(1).find('/') == -1)
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";
@@ -319,5 +323,5 @@ void VMemo::mousePressEvent( QMouseEvent *me )
QMessageBox::critical(0, "VMemo", err, "Abort");
close(dsp);
- return;
+ return FALSE;
}
@@ -335,8 +339,8 @@ void VMemo::mousePressEvent( QMouseEvent *me )
record();
+ return TRUE;
}
-void VMemo::mouseReleaseEvent( QMouseEvent * )
-{
+void VMemo::stopRecording() {
recording = FALSE;
}
@@ -480,5 +484,5 @@ void VMemo::record(void)
}
- } else {
+ } else { // this is specific for ipaqs that do not have 8 bit capabilities
signed short sound[512], monoBuffer[512];
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
@@ -38,5 +38,6 @@ public slots:
void mouseReleaseEvent( QMouseEvent * );
void receive( const QCString &msg, const QByteArray &data );
-
+ bool startRecording();
+ void stopRecording();
private:
bool useAlerts;
@@ -45,5 +46,5 @@ private:
int openDSP();
int openWAV(const char *filename);
-
+ bool fromToggle;
QPixmap vmemoPixmap;
QCopChannel *myChannel;