summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--noncore/apps/advancedfm/advancedfm.h4
-rw-r--r--noncore/apps/advancedfm/advancedfmMenu.cpp20
2 files changed, 20 insertions, 4 deletions
diff --git a/noncore/apps/advancedfm/advancedfm.h b/noncore/apps/advancedfm/advancedfm.h
index 3250a66..f31956c 100644
--- a/noncore/apps/advancedfm/advancedfm.h
+++ b/noncore/apps/advancedfm/advancedfm.h
@@ -1,49 +1,50 @@
/***************************************************************************
advancedfm.h
-------------------
** Created: Sat Mar 9 23:33:09 2002
copyright : (C) 2002 by ljp
email : ljp@llornkcor.com
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
***************************************************************************/
#ifndef ADVANCEDFM_H
#define ADVANCEDFM_H
#define QTOPIA_INTERNAL_FSLP // to get access to fileproperties
#define QT_QWS_OPIE
//#include <opie/otabwidget.h>
+#include <opie/oprocess.h>
#include <qpe/ir.h>
#include <qvariant.h>
#include <qdialog.h>
#include <qmainwindow.h>
#include <qstringlist.h>
#include <qdir.h>
#include <qstring.h>
#include <qpoint.h>
#include <qtimer.h>
class OTabWidget;
class QVBoxLayout;
class QHBoxLayout;
class QGridLayout;
class QComboBox;
class QListView;
class QListviewItem;
class QLabel;
class QProgressBar;
class QSpinBox;
class QTabWidget;
class QWidget;
class QPEToolBar;
class QPEMenuBar;
class QPopupMenu;
class QFile;
class QListViewItem;
class QLineEdit;
class MenuButton;
//class QPushButton;
@@ -134,37 +135,38 @@ protected slots:
void docButtonPushed();
void SDButtonPushed();
void CFButtonPushed();
void QPEButtonPushed();
void upDir();
void currentPathComboChanged();
void copy();
void copyAs();
void copySameDir();
void currentPathComboActivated(const QString &);
void fillCombo(const QString &);
bool copyFile( const QString & , const QString & );
void move();
void fileStatus();
void doAbout();
void doBeam();
void fileBeamFinished( Ir *);
private:
MenuButton *menuButton;
QString oldName;
QTimer menuTimer;
void startProcess(const QString &);
bool eventFilter( QObject * , QEvent * );
void cancelRename();
void doRename(QListView *);
void okRename();
void customDirsToMenu();
void addCustomDir();
void removeCustomDir();
private slots:
- void processEnded();
+ void processEnded(OProcess *);
+ void oprocessStderr(OProcess *, char *, int);
void gotoCustomDir(const QString &);
};
#endif // ADVANCEDFM_H
diff --git a/noncore/apps/advancedfm/advancedfmMenu.cpp b/noncore/apps/advancedfm/advancedfmMenu.cpp
index a82d69a..eac13f6 100644
--- a/noncore/apps/advancedfm/advancedfmMenu.cpp
+++ b/noncore/apps/advancedfm/advancedfmMenu.cpp
@@ -695,80 +695,94 @@ void AdvancedFm::doBeam()
Ir *file = new Ir(this, "IR");
connect(file, SIGNAL(done(Ir*)), this, SLOT( fileBeamFinished( Ir * )));
file->send( curFile, curFile );
}
}
}
}
void AdvancedFm::fileBeamFinished( Ir *)
{
QMessageBox::message( tr("Advancedfm Beam out"), tr("Ir sent.") ,tr("Ok") );
}
void AdvancedFm::selectAll()
{
// if (TabWidget->getCurrentTab() == 0) {
QListView *thisView = CurrentView();
thisView->selectAll(true);
thisView->setSelected( thisView->firstChild(),false);
// } else {
// Remote_View->selectAll(true);
// Remote_View->setSelected( Remote_View->firstChild(),false);
// }
}
void AdvancedFm::startProcess(const QString & cmd)
{
QStringList command;
OProcess *process;
process = new OProcess();
connect(process, SIGNAL(processExited(OProcess *)),
- this, SLOT( processEnded()));
+ this, SLOT( processEnded(OProcess *)));
+
+ connect(process, SIGNAL( receivedStderr(OProcess *, char *, int)),
+ this, SLOT( oprocessStderr(OProcess *, char *, int)));
command << "/bin/sh";
command << "-c";
command << cmd.latin1();
*process << command;
- if(!process->start(OProcess::NotifyOnExit) )
+ if(!process->start(OProcess::NotifyOnExit, OProcess::All) )
qDebug("could not start process");
}
-void AdvancedFm::processEnded()
+void AdvancedFm::processEnded(OProcess *)
{
// populateLocalView();
populateView();
}
+void AdvancedFm::oprocessStderr(OProcess*, char *buffer, int buflen) {
+ qWarning("received stderrt %d bytes", buflen);
+
+ QString lineStr = buffer;
+// lineStr=lineStr.left(lineStr.length()-1);
+ QMessageBox::warning( this, tr("Error"), lineStr ,tr("Ok") );
+
+// OutputEdit->append(lineStr);
+// OutputEdit->setCursorPosition( OutputEdit->numLines() + 1,0,FALSE);
+}
+
bool AdvancedFm::eventFilter( QObject * o, QEvent * e )
{
if ( o->inherits( "QLineEdit" ) )
{
if ( e->type() == QEvent::KeyPress )
{
QKeyEvent *ke = (QKeyEvent*)e;
if ( ke->key() == Key_Return ||
ke->key() == Key_Enter )
{
okRename();
return true;
}
else if ( ke->key() == Key_Escape )
{
cancelRename();
return true;
}
}
else if ( e->type() == QEvent::FocusOut )
{
cancelRename();
return true;
}
}
if ( o->inherits( "QListView" ) )
{
if ( e->type() == QEvent::FocusOut )
{
printf("focusIn\n");
}