summaryrefslogtreecommitdiff
authorzecke <zecke>2002-10-21 22:35:37 (UTC)
committer zecke <zecke>2002-10-21 22:35:37 (UTC)
commitd6a40efdb9d81d39972a1304bd62ac60bb45e996 (patch) (side-by-side diff)
tree47cc96d6457e809621f40610737407532f04f98c
parent151729eb3e4e4cfbb69db1f027e74188cf55c328 (diff)
downloadopie-d6a40efdb9d81d39972a1304bd62ac60bb45e996.zip
opie-d6a40efdb9d81d39972a1304bd62ac60bb45e996.tar.gz
opie-d6a40efdb9d81d39972a1304bd62ac60bb45e996.tar.bz2
Fix scriptiong Open the file before reading from it
Add text/all to the mimetypes this makes recording, saving and running work
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--noncore/apps/opie-console/mainwindow.cpp2
-rw-r--r--noncore/apps/opie-console/script.cpp1
2 files changed, 3 insertions, 0 deletions
diff --git a/noncore/apps/opie-console/mainwindow.cpp b/noncore/apps/opie-console/mainwindow.cpp
index afac542..7ffeca7 100644
--- a/noncore/apps/opie-console/mainwindow.cpp
+++ b/noncore/apps/opie-console/mainwindow.cpp
@@ -251,110 +251,112 @@ TabWidget* MainWindow::tabWidget() {
return m_consoleWindow;
}
void MainWindow::populateProfiles() {
m_sessionsPop->clear();
Profile::ValueList list = manager()->all();
for (Profile::ValueList::Iterator it = list.begin(); it != list.end(); ++it ) {
m_sessionsPop->insertItem( (*it).name() );
}
}
MainWindow::~MainWindow() {
delete m_factory;
manager()->save();
}
MetaFactory* MainWindow::factory() {
return m_factory;
}
Session* MainWindow::currentSession() {
return m_curSession;
}
QList<Session> MainWindow::sessions() {
return m_sessions;
}
void MainWindow::slotNew() {
ProfileEditorDialog dlg(factory() );
dlg.showMaximized();
int ret = dlg.exec();
if ( ret == QDialog::Accepted ) {
create( dlg.profile() );
}
}
void MainWindow::slotRecordScript() {
if (currentSession()) {
currentSession()->emulationHandler()->startRecording();
}
}
void MainWindow::slotSaveScript() {
if (currentSession() && currentSession()->emulationHandler()->isRecording()) {
MimeTypes types;
QStringList script;
script << "text/plain";
+ script << "text/all";
types.insert("Script", script);
QString filename = OFileDialog::getSaveFileName(2, "/", QString::null, types);
if (!filename.isEmpty()) {
currentSession()->emulationHandler()->script()->saveTo(filename);
currentSession()->emulationHandler()->clearScript();
}
}
}
void MainWindow::slotRunScript() {
if (currentSession()) {
MimeTypes types;
QStringList script;
script << "text/plain";
+ script << "text/all";
types.insert("Script", script);
QString filename = OFileDialog::getOpenFileName(2, "/", QString::null, types);
if (!filename.isEmpty()) {
Script script(DocLnk(filename).file());
currentSession()->emulationHandler()->runScript(&script);
}
}
}
void MainWindow::slotConnect() {
if ( currentSession() ) {
bool ret = currentSession()->layer()->open();
if(!ret) QMessageBox::warning(currentSession()->widgetStack(),
QObject::tr("Failed"),
QObject::tr("Connecting failed for this session."));
else {
m_connect->setEnabled( false );
m_disconnect->setEnabled( true );
}
}
}
void MainWindow::slotDisconnect() {
if ( currentSession() ) {
currentSession()->layer()->close();
m_connect->setEnabled( true );
m_disconnect->setEnabled( false );
}
}
void MainWindow::slotTerminate() {
if ( currentSession() )
currentSession()->layer()->close();
slotClose();
/* FIXME move to the next session */
}
void MainWindow::slotConfigure() {
ConfigDialog conf( manager()->all(), factory() );
conf.showMaximized();
int ret = conf.exec();
if ( QDialog::Accepted == ret ) {
manager()->setProfiles( conf.list() );
manager()->save();
populateProfiles();
diff --git a/noncore/apps/opie-console/script.cpp b/noncore/apps/opie-console/script.cpp
index 9cb1cd3..e6e9d6d 100644
--- a/noncore/apps/opie-console/script.cpp
+++ b/noncore/apps/opie-console/script.cpp
@@ -1,29 +1,30 @@
#include <qfile.h>
#include <qtextstream.h>
#include "script.h"
Script::Script() {
}
Script::Script(const QString fileName) {
QFile file(fileName);
+ file.open(IO_ReadOnly );
m_script = file.readAll();
}
void Script::saveTo(const QString fileName) const {
QFile file(fileName);
file.open(IO_WriteOnly);
file.writeBlock(m_script);
file.close();
}
void Script::append(const QByteArray &data) {
int size = m_script.size();
m_script.resize(size + data.size());
memcpy(m_script.data() + size, data.data(), data.size());
}
QByteArray Script::script() const {
return m_script;
}