-rw-r--r-- | noncore/tools/formatter/formatter.control | 10 | ||||
-rw-r--r-- | noncore/tools/formatter/formatter.cpp | 419 | ||||
-rw-r--r-- | noncore/tools/formatter/formatter.h | 59 | ||||
-rw-r--r-- | noncore/tools/formatter/formatter.pro | 10 | ||||
-rw-r--r-- | noncore/tools/formatter/formatter.ui | 286 | ||||
-rw-r--r-- | noncore/tools/formatter/inputDialog.cpp | 44 | ||||
-rw-r--r-- | noncore/tools/formatter/inputDialog.h | 34 | ||||
-rw-r--r-- | noncore/tools/formatter/main.cpp | 25 | ||||
-rw-r--r-- | noncore/tools/formatter/output.cpp | 38 | ||||
-rw-r--r-- | noncore/tools/formatter/output.h | 33 | ||||
-rw-r--r-- | noncore/tools/formatter/outputEdit.ui | 40 | ||||
-rw-r--r-- | pics/formatter/devices.png | bin | 0 -> 1608 bytes |
12 files changed, 998 insertions, 0 deletions
diff --git a/noncore/tools/formatter/formatter.control b/noncore/tools/formatter/formatter.control new file mode 100644 index 0000000..ba3ccf1 --- a/dev/null +++ b/noncore/tools/formatter/formatter.control @@ -0,0 +1,10 @@ +Files: $PKG_DIR/bin/formatter $PKG_DIR/pics/formatter/* $PKG_DIR/apps/Applications/formatter.desktop +Priority: optional +Package: formatter +Section: opie/applications +Maintainer: L.J. Potter <ljp@llornkcor.com> +Architecture: arm +Version: $QPE_VERSION-$SUB_VERSION +Depends: opie-base ($QPE_VERSION) +Description: Formatter + The filesystem formatting and mountpoint app for the Opie environment. diff --git a/noncore/tools/formatter/formatter.cpp b/noncore/tools/formatter/formatter.cpp new file mode 100644 index 0000000..8c8ef2a --- a/dev/null +++ b/noncore/tools/formatter/formatter.cpp @@ -0,0 +1,419 @@ +/**************************************************************************** +** formatter.cpp +** +** Copyright: Thu Apr 11 11:01:13 2002 +** by: L. J. Potter +** +****************************************************************************/ + +#include "formatter.h" +#include "inputDialog.h" +#include "output.h" + +#include <qpe/qpemenubar.h> +#include <qpe/qpetoolbar.h> +#include <qpe/qpeapplication.h> +#include <qpe/resource.h> +#include <qpe/config.h> +#include <qpe/mimetype.h> +#include <qpe/qcopenvelope_qws.h> +#include <qpe/storage.h> + +#include <qmultilineedit.h> +#include <qstring.h> +#include <qlist.h> +#include <qstringlist.h> +#include <qdir.h> +#include <qfile.h> + +#include <qtstream.h> + +#include <qcombobox.h> +#include <qpopupmenu.h> +#include <qmessagebox.h> +#include <qregexp.h> + +#include <qlabel.h> +#include <qlineedit.h> +#include <qpushbutton.h> +#include <qtabwidget.h> +#include <qwidget.h> +#include <qlayout.h> +#include <qvariant.h> + +#include <unistd.h> +#include <stdio.h> +#include <stdlib.h> +#include <sys/vfs.h> +#include <mntent.h> + +#define BLANK ' ' +#define DELIMITER '#' + +/* +Blah blah blah blah */ +FormatterApp::FormatterApp( QWidget* parent, const char* name, bool modal, WFlags fl ) + : QMainWindow( parent, name, fl ) +// : QDialog( parent, name, modal, fl ) +{ + if ( !name ) + setName( "FormatterApp" ); + connect( qApp,SIGNAL( aboutToQuit()),SLOT( cleanUp()) ); + + setCaption( tr( "Formatter" ) ); + FormatterAppLayout = new QGridLayout( this ); + FormatterAppLayout->setSpacing( 2); + FormatterAppLayout->setMargin( 2 ); + + TabWidget = new QTabWidget( this, "TabWidget" ); + + tab = new QWidget( TabWidget, "tab" ); + tabLayout = new QGridLayout( tab ); + tabLayout->setSpacing( 6); + tabLayout->setMargin( 11); + + storageComboBox = new QComboBox( FALSE, tab, "storageComboBox" ); + + tabLayout->addMultiCellWidget( storageComboBox, 0, 0, 0, 1 ); + + TextLabel4 = new QLabel( tab, "TextLabel4" ); + TextLabel4->setText( tr( "Storage Type" ) ); + + tabLayout->addMultiCellWidget( TextLabel4, 1, 1, 0, 1 ); + + TextLabel2 = new QLabel( tab, "TextLabel2" ); + TextLabel2->setText( tr( "File Systems" ) ); + + tabLayout->addMultiCellWidget( TextLabel2, 4, 4, 0, 1 ); + + fileSystemsCombo = new QComboBox( FALSE, tab, "fileSystemsCombo" ); + + tabLayout->addMultiCellWidget( fileSystemsCombo, 3, 3, 0, 1 ); + QSpacerItem* spacer = new QSpacerItem( 20, 20, QSizePolicy::Minimum, QSizePolicy::Expanding ); + tabLayout->addItem( spacer, 2, 1 ); + + formatPushButton = new QPushButton( tab, "formatPushButton" ); + formatPushButton->setText( tr( "Format" ) ); + + tabLayout->addMultiCellWidget( formatPushButton, 6, 6, 0, 1 ); + QSpacerItem* spacer_2 = new QSpacerItem( 20, 20, QSizePolicy::Minimum, QSizePolicy::Expanding ); + tabLayout->addItem( spacer_2, 5, 0 ); + TabWidget->insertTab( tab, tr( "Main" ) ); + + tab_2 = new QWidget( TabWidget, "tab_2" ); + tabLayout_2 = new QGridLayout( tab_2 ); + tabLayout_2->setSpacing( 6); + tabLayout_2->setMargin( 11); + + mountPointLineEdit = new QLineEdit( tab_2, "mountPointLineEdit" ); + + tabLayout_2->addMultiCellWidget( mountPointLineEdit, 0, 0, 0, 1 ); + + deviceComboBox = new QComboBox( FALSE, tab_2, "deviceComboBox" ); + + tabLayout_2->addMultiCellWidget( deviceComboBox, 3, 3, 0, 1 ); + + TextLabel5 = new QLabel( tab_2, "TextLabel5" ); + TextLabel5->setText( tr( "CAUTION:\n" + "Changing parameters on this \n" + "page may cause your system \n" + "to stop functioning properly!!" ) );//idiot message + + tabLayout_2->addMultiCellWidget( TextLabel5, 6, 6, 0, 1 ); + + editPushButton = new QPushButton( tab_2, "editPushButton" ); + editPushButton->setText( tr( "Edit fstab" ) ); + + tabLayout_2->addMultiCellWidget( editPushButton, 7, 7, 0, 0 ); + + fsckButton = new QPushButton( tab_2, "fsckPushButton" ); + fsckButton->setText( tr( "Check Disk" ) ); + + tabLayout_2->addMultiCellWidget( fsckButton, 7, 7, 1, 1 ); + + TextLabel3 = new QLabel( tab_2, "TextLabel3" ); + TextLabel3->setText( tr( "Device" ) ); + + tabLayout_2->addMultiCellWidget( TextLabel3, 4, 4, 0, 1 ); + QSpacerItem* spacer_3 = new QSpacerItem( 20, 20, QSizePolicy::Minimum, QSizePolicy::Expanding ); + tabLayout_2->addItem( spacer_3, 5, 0 ); + + TextLabel1 = new QLabel( tab_2, "TextLabel1" ); + TextLabel1->setText( tr( "Mount Point" ) ); + + tabLayout_2->addMultiCellWidget( TextLabel1, 1, 1, 0, 1 ); + QSpacerItem* spacer_4 = new QSpacerItem( 20, 20, QSizePolicy::Minimum, QSizePolicy::Expanding ); + tabLayout_2->addItem( spacer_4, 2, 1 ); + TabWidget->insertTab( tab_2, tr( "Advanced" ) ); + + FormatterAppLayout->addWidget( TabWidget, 0, 0 ); + + connect( formatPushButton ,SIGNAL(released()),this,SLOT( doFormat()) ); + connect( editPushButton ,SIGNAL(released()),this,SLOT( editFstab()) ); + connect( fsckButton ,SIGNAL(released()),this,SLOT( doFsck()) ); + + connect( fileSystemsCombo,SIGNAL(activated(int)),this,SLOT( fsComboSelected(int ) )); + connect( storageComboBox,SIGNAL(activated(int)),this,SLOT( storageComboSelected(int ) )); + connect( deviceComboBox,SIGNAL(activated(int)),this,SLOT( deviceComboSelected(int ) )); + + + fillCombos(); +} + +/* + * Destroys the object and frees any allocated resources + frickin no duh?!? + */ +FormatterApp::~FormatterApp() +{ + +} + +void FormatterApp::doFormat() { + int err=0; + Output *outDlg; + QString umountS, remountS; + QString text = storageComboBox->currentText(); + QString currentText = storageComboBox->currentText(); + QString cmd = currentText.right( currentText.length() - currentText.find(" -> ",0,TRUE) - 4); + QString fs = fileSystemsCombo->currentText(); + + if( currentText.find("CF",0,TRUE) != -1) { + umountS = "/sbin/cardctl eject"; + remountS = "/sbin/cardctl insert"; + } + if( currentText.find("SD",0,TRUE) != -1) { + umountS = "/etc/sdcontrol compeject"; + remountS = "/etc/sdcontrol insert"; + } + + switch ( QMessageBox::warning(this,tr("Format?!?"),tr("Really format\n") + currentText + + tr("\nwith ") + fs + tr(" filesystem?!?"),tr("Yes"),tr("No"),0,1,1) ) { + case 0: { + if(fs == "vfat") + cmd = "mkdosfs " + cmd; + else if(fs == "ext2") + cmd = "mke2fs " + cmd; + else { + QMessageBox::warning(this, tr("Formatter"),tr("Could not format.\nUnknown type"), tr("Ok")); + break; + } +// cmd = "ls -l"; + outDlg = new Output(this, tr("Formatter Output"),FALSE); + outDlg->showMaximized(); + outDlg->show(); + qApp->processEvents(); + FILE *fp; + char line[130]; + outDlg->OutputEdit->append( tr("Trying to eject.") + currentText ); + sleep(1); + fp = popen( (const char *) umountS, "r"); + if ( !fp ) { + qDebug("Could not execute '" + umountS + "'! err=%d", fp); + QMessageBox::warning( this, tr("CardMonitor"), tr("Card eject failed!"), tr("&OK") ); + pclose(fp); + return; + } else { + outDlg->OutputEdit->append( currentText + tr("\nhas been successfully ejected.")); + + while ( fgets( line, sizeof line, fp)) { + outDlg->OutputEdit->append(line); + } + } + pclose(fp); +// err = system( (const char *) umountS); + + qDebug("Command would be: "+cmd); + outDlg->OutputEdit->append( tr("Trying to format.") ); + + fp = popen( (const char *) cmd, "r"); + while ( fgets( line, sizeof line, fp)) { + outDlg->OutputEdit->append(line); + } + outDlg->OutputEdit->append( currentText + tr("\nhas been successfully formatted.")); + pclose(fp); + + outDlg->OutputEdit->append( tr("Trying to insert.") + currentText ); + fp = popen( (const char *) remountS, "r"); + if ( !fp) { + qDebug("Could not execute '" + remountS + "'! err=%d", err); + QMessageBox::warning( this, tr("Formatter"), tr("Card insert failed!"), tr("&OK") ); + + } else { + outDlg->OutputEdit->append( currentText + tr("\nhas been successfully inserted.")); + while ( fgets( line, sizeof line, fp)) { + outDlg->OutputEdit->append(line); + } + } + pclose(fp); + sleep(1); + + outDlg->OutputEdit->append(tr("You can now close the output window.")); + outDlg->close(); + if(outDlg) + delete outDlg; + } + break; + }; +} + +void FormatterApp::fillCombos() { + + StorageInfo storageInfo; + const QList<FileSystem> &fs = storageInfo.fileSystems(); + QListIterator<FileSystem> it ( fs ); + QString storage; + for( ; it.current(); ++it ){ + const QString name = (*it)->name(); + const QString path = (*it)->path(); + const QString disk = (*it)->disk(); + const QString options = (*it)->options(); + if( name.find( tr("Internal"),0,TRUE) == -1) { + storageComboBox->insertItem(name +" -> "+disk); + } + deviceComboBox->insertItem(disk); + } + parsetab(); + fileSystemsCombo->insertStringList( fsList,-1); +// for(int i = 0; i < fileSystemsCombo->count(); i++) { +// if( fsType == fileSystemsCombo->text(i)) +// fileSystemsCombo->setCurrentItem(i); +// } + storageComboSelected(0); + deviceComboSelected(0); +} + + +void FormatterApp::fsComboSelected(int index) { + +} + +void FormatterApp::storageComboSelected(int index ) { + + QString currentText = storageComboBox->text(index); + QString nameS = currentText.left( currentText.find("->",0,TRUE)); + + TextLabel4->setText( tr( "Storage Type : ") + nameS ); + currentText = currentText.right( currentText.length() - currentText.find(" -> ",0,TRUE) - 4); + + QString fsType = getFileSystemType((const QString &) currentText); +// qDebug(fsType); + for(int i = 0; i < fileSystemsCombo->count(); i++) { + if( fsType == fileSystemsCombo->text(i)) + fileSystemsCombo->setCurrentItem(i); + } +// deviceComboSelected(index); +} + +void FormatterApp::deviceComboSelected(int index) { + + StorageInfo storageInfo; + QString totalS, usedS, avS, diskS, nameS, fsType, selectedText; + + selectedText = deviceComboBox->text(index); + + const QList<FileSystem> &fs = storageInfo.fileSystems(); + QListIterator<FileSystem> it ( fs ); + QString storage; + for( ; it.current(); ++it ){ + const QString name = (*it)->name(); + const QString path = (*it)->path(); + const QString disk = (*it)->disk(); +// const QString options = (*it)->options(); + if( selectedText == disk) { + diskS = disk; nameS= name; + mountPointLineEdit->setText(path); + long mult = (*it)->blockSize() / 1024; + long div = 1024 / (*it)->blockSize(); + if ( !mult ) mult = 1; + if ( !div ) div = 1; + long total = (*it)->totalBlocks() * mult / div; + long totalMb = total/1024; + long avail = (*it)->availBlocks() * mult / div; + long availMb = avail/1024; + long used = total - avail; + long usedMb = used/1024; + totalS.sprintf(tr("Total: %1 kB ( %d mB)\n").arg( total ), totalMb ); + usedS.sprintf(tr("Used: %1 kB ( %d mB)\n").arg(used) ,usedMb); + avS.sprintf( tr("Available: %1 kB ( %d mB)").arg(avail), availMb ); + } + } + fsType = getFileSystemType((const QString &)selectedText); + + TextLabel5->setText("Type: "+ nameS+" Formatted with "+ fsType + " \n" + totalS + usedS + avS); +// storageComboSelected(0); +} + +void FormatterApp::cleanUp() { + +} + + +void FormatterApp::editFstab() { + QCopEnvelope e("QPE/Application/textedit","setDocument(QString)"); + e << (const QString &)"/etc/fstab"; +} + +void FormatterApp::parsetab() { + + fileSystemTypeList.clear(); + fsList.clear(); + struct mntent *me; + FILE *mntfp = setmntent( "/etc/mtab", "r" ); + if ( mntfp ) { + while ( (me = getmntent( mntfp )) != 0 ) { + QString deviceName = me->mnt_fsname; + QString filesystemType = me->mnt_type; + if(deviceName != "none") { + if( fsList.contains(filesystemType) == 0 + & filesystemType.find("proc",0,TRUE) == -1 + & filesystemType.find("cramfs",0,TRUE) == -1) + fsList << filesystemType; + fileSystemTypeList << deviceName+"::"+filesystemType; + } + } + } + endmntent( mntfp ); + +// QFile f("/etc/fstab"); +// if ( f.open(IO_ReadOnly) ) { +// QTextStream t (&f); +// QString s; +// while (! t.eof()) { +// s=t.readLine(); +// s=s.simplifyWhiteSpace(); +// if ( (!s.isEmpty() ) && (s.find(" ")!=0) ) { +// s=s.remove(0,s.find(BLANK)+1 ); // devicename +// s=s.remove(0,s.find(BLANK)+1 ); // mountpoint +// s=s.remove(0,s.find(BLANK)+1 ); // fs +// } +// } +// } +// f.close(); +} + +QString FormatterApp::getFileSystemType(const QString ¤tText) { + + parsetab(); //why did TT forget filesystem type? + + for ( QStringList::Iterator it = fileSystemTypeList.begin(); it != fileSystemTypeList.end(); ++it ) { + QString temp = (*it); + if( temp.find( currentText,0,TRUE) != -1) { + return temp.right( temp.length() - temp.find("::",0,TRUE) - 2); +// qDebug(fsType); + } + } + return ""; +} + +void FormatterApp::doFsck() { + + QString selectedDevice = deviceComboBox->currentText(); + QString fsType = getFileSystemType((const QString &)selectedDevice); + QString cmd; + qDebug( selectedDevice +" "+ fsType); + if(fsType == "vfat") cmd = "dosfsck -vy "; + if(fsType == "ext2") cmd = "e2fsck -cpvy "; + cmd += selectedDevice; + +} diff --git a/noncore/tools/formatter/formatter.h b/noncore/tools/formatter/formatter.h new file mode 100644 index 0000000..a566ec0 --- a/dev/null +++ b/noncore/tools/formatter/formatter.h @@ -0,0 +1,59 @@ +/**************************************************************************** +** formatter.h +** +** Copyright: Thu Apr 11 11:01:01 2002 +** by: L.J. Potter +** +****************************************************************************/ + +#ifndef FORMATTERAPP_H +#define FORMATTERAPP_H + +#include <qvariant.h> +//#include <qdialog.h> +#include <qmainwindow.h> + +class QVBoxLayout; +class QHBoxLayout; +class QGridLayout; +class QComboBox; +class QLabel; +class QLineEdit; +class QPushButton; +class QTabWidget; +class QWidget; +class QStringList; + +class FormatterApp : public QMainWindow +//public QDialog +{ + Q_OBJECT + +public: + FormatterApp( QWidget* parent = 0, const char* name = 0, bool modal = FALSE, WFlags fl = 0 ); + ~FormatterApp(); + + QTabWidget *TabWidget; + QWidget *tab, *tab_2;; + QLabel *TextLabel1, *TextLabel2, *TextLabel3, *TextLabel4, *TextLabel5; + QComboBox *storageComboBox, *fileSystemsCombo, *deviceComboBox; + QPushButton *formatPushButton, *editPushButton, *fsckButton; + QLineEdit* mountPointLineEdit; + QStringList fileSystemTypeList, fsList; +protected: + QGridLayout *FormatterAppLayout, *tabLayout, *tabLayout_2; + QString getFileSystemType(const QString &); + +protected slots: + void doFormat(); + void fillCombos(); + void cleanUp(); + void fsComboSelected(int); + void storageComboSelected(int ); + void deviceComboSelected(int ); + void editFstab(); + void parsetab(); + void doFsck(); +}; + +#endif // FORMATTERAPP_H diff --git a/noncore/tools/formatter/formatter.pro b/noncore/tools/formatter/formatter.pro new file mode 100644 index 0000000..b69da44 --- a/dev/null +++ b/noncore/tools/formatter/formatter.pro @@ -0,0 +1,10 @@ +TEMPLATE = app +CONFIG += qt warn_on release +HEADERS = formatter.h inputDialog.h output.h +SOURCES = formatter.cpp inputDialog.cpp output.cpp main.cpp +TARGET = formatter +REQUIRES = medium-config +DESTDIR = $(OPIEDIR)/bin +INCLUDEPATH += $(OPIEDIR)/include +DEPENDPATH += $(OPIEDIR)/include +LIBS += -lqpe diff --git a/noncore/tools/formatter/formatter.ui b/noncore/tools/formatter/formatter.ui new file mode 100644 index 0000000..6b7462c --- a/dev/null +++ b/noncore/tools/formatter/formatter.ui @@ -0,0 +1,286 @@ +<!DOCTYPE UI><UI> +<class>FormatterApp</class> +<widget> + <class>QDialog</class> + <property stdset="1"> + <name>name</name> + <cstring>FormatterApp</cstring> + </property> + <property stdset="1"> + <name>geometry</name> + <rect> + <x>0</x> + <y>0</y> + <width>237</width> + <height>359</height> + </rect> + </property> + <property stdset="1"> + <name>caption</name> + <string>Formatter</string> + </property> + <grid> + <property stdset="1"> + <name>margin</name> + <number>11</number> + </property> + <property stdset="1"> + <name>spacing</name> + <number>6</number> + </property> + <widget row="0" column="0" > + <class>QTabWidget</class> + <property stdset="1"> + <name>name</name> + <cstring>TabWidget</cstring> + </property> + <widget> + <class>QWidget</class> + <property stdset="1"> + <name>name</name> + <cstring>tab</cstring> + </property> + <attribute> + <name>title</name> + <string>Main</string> + </attribute> + <grid> + <property stdset="1"> + <name>margin</name> + <number>11</number> + </property> + <property stdset="1"> + <name>spacing</name> + <number>6</number> + </property> + <widget row="0" column="0" rowspan="1" colspan="2" > + <class>QComboBox</class> + <property stdset="1"> + <name>name</name> + <cstring>storageComboBox</cstring> + </property> + </widget> + <widget row="1" column="0" rowspan="1" colspan="2" > + <class>QLabel</class> + <property stdset="1"> + <name>name</name> + <cstring>TextLabel4</cstring> + </property> + <property stdset="1"> + <name>text</name> + <string>Storage Type</string> + </property> + </widget> + <widget row="4" column="0" rowspan="1" colspan="2" > + <class>QLabel</class> + <property stdset="1"> + <name>name</name> + <cstring>TextLabel2</cstring> + </property> + <property stdset="1"> + <name>text</name> + <string>File Systems</string> + </property> + </widget> + <widget row="3" column="0" rowspan="1" colspan="2" > + <class>QComboBox</class> + <item> + <property> + <name>text</name> + <string>DOS </string> + </property> + </item> + <item> + <property> + <name>text</name> + <string>EXT2</string> + </property> + </item> + <property stdset="1"> + <name>name</name> + <cstring>fileSystemsCombo</cstring> + </property> + </widget> + <spacer row="2" column="1" > + <property> + <name>name</name> + <cstring>Spacer3</cstring> + </property> + <property stdset="1"> + <name>orientation</name> + <enum>Vertical</enum> + </property> + <property stdset="1"> + <name>sizeType</name> + <enum>Expanding</enum> + </property> + <property> + <name>sizeHint</name> + <size> + <width>20</width> + <height>20</height> + </size> + </property> + </spacer> + <widget row="6" column="0" rowspan="1" colspan="2" > + <class>QPushButton</class> + <property stdset="1"> + <name>name</name> + <cstring>formatPushButton</cstring> + </property> + <property stdset="1"> + <name>text</name> + <string>Format</string> + </property> + </widget> + <spacer row="5" column="0" > + <property> + <name>name</name> + <cstring>Spacer2</cstring> + </property> + <property stdset="1"> + <name>orientation</name> + <enum>Vertical</enum> + </property> + <property stdset="1"> + <name>sizeType</name> + <enum>Expanding</enum> + </property> + <property> + <name>sizeHint</name> + <size> + <width>20</width> + <height>20</height> + </size> + </property> + </spacer> + </grid> + </widget> + <widget> + <class>QWidget</class> + <property stdset="1"> + <name>name</name> + <cstring>tab</cstring> + </property> + <attribute> + <name>title</name> + <string>Advanced</string> + </attribute> + <grid> + <property stdset="1"> + <name>margin</name> + <number>11</number> + </property> + <property stdset="1"> + <name>spacing</name> + <number>6</number> + </property> + <widget row="0" column="0" rowspan="1" colspan="2" > + <class>QLineEdit</class> + <property stdset="1"> + <name>name</name> + <cstring>mountPointLineEdit</cstring> + </property> + </widget> + <widget row="3" column="0" rowspan="1" colspan="2" > + <class>QComboBox</class> + <property stdset="1"> + <name>name</name> + <cstring>deviceComboBox</cstring> + </property> + </widget> + <widget row="6" column="0" rowspan="1" colspan="2" > + <class>QLabel</class> + <property stdset="1"> + <name>name</name> + <cstring>TextLabel5</cstring> + </property> + <property stdset="1"> + <name>text</name> + <string>CAUTION: +Changing perimeters on this +page may cause your system +to stop functioning properly!!</string> + </property> + </widget> + <widget row="7" column="0" rowspan="1" colspan="2" > + <class>QPushButton</class> + <property stdset="1"> + <name>name</name> + <cstring>editPushButton</cstring> + </property> + <property stdset="1"> + <name>text</name> + <string>Edit fstab</string> + </property> + </widget> + <widget row="4" column="0" rowspan="1" colspan="2" > + <class>QLabel</class> + <property stdset="1"> + <name>name</name> + <cstring>TextLabel3</cstring> + </property> + <property stdset="1"> + <name>text</name> + <string>Device</string> + </property> + </widget> + <spacer row="5" column="0" > + <property> + <name>name</name> + <cstring>Spacer4</cstring> + </property> + <property stdset="1"> + <name>orientation</name> + <enum>Vertical</enum> + </property> + <property stdset="1"> + <name>sizeType</name> + <enum>Expanding</enum> + </property> + <property> + <name>sizeHint</name> + <size> + <width>20</width> + <height>20</height> + </size> + </property> + </spacer> + <widget row="1" column="0" rowspan="1" colspan="2" > + <class>QLabel</class> + <property stdset="1"> + <name>name</name> + <cstring>TextLabel1</cstring> + </property> + <property stdset="1"> + <name>text</name> + <string>Mount Point</string> + </property> + </widget> + <spacer row="2" column="1" > + <property> + <name>name</name> + <cstring>Spacer5</cstring> + </property> + <property stdset="1"> + <name>orientation</name> + <enum>Vertical</enum> + </property> + <property stdset="1"> + <name>sizeType</name> + <enum>Expanding</enum> + </property> + <property> + <name>sizeHint</name> + <size> + <width>20</width> + <height>20</height> + </size> + </property> + </spacer> + </grid> + </widget> + </widget> + </grid> +</widget> +</UI> diff --git a/noncore/tools/formatter/inputDialog.cpp b/noncore/tools/formatter/inputDialog.cpp new file mode 100644 index 0000000..373db3b --- a/dev/null +++ b/noncore/tools/formatter/inputDialog.cpp @@ -0,0 +1,44 @@ +/**************************************************************************** + inputDialog.cpp + ------------------- +** 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. * + ***************************************************************************/ + +#include "inputDialog.h" + +#include <qlineedit.h> +#include <qlayout.h> +#include <qvariant.h> +#include <qtooltip.h> +#include <qwhatsthis.h> + + +InputDialog::InputDialog( QWidget* parent, const char* name, bool modal, WFlags fl ) + : QDialog( parent, name, modal, fl ) +{ + if ( !name ) + setName( "InputDialog" ); + resize( 234, 50 ); + setMaximumSize( QSize( 240, 50 ) ); + setCaption( tr(name ) ); + + LineEdit1 = new QLineEdit( this, "LineEdit1" ); + LineEdit1->setGeometry( QRect( 10, 10, 216, 22 ) ); +} + +InputDialog::~InputDialog() +{ + inputText= LineEdit1->text(); + +} + +void InputDialog::setTextEdit(const QString &string) +{ + LineEdit1->setText(string); +} diff --git a/noncore/tools/formatter/inputDialog.h b/noncore/tools/formatter/inputDialog.h new file mode 100644 index 0000000..dfe0e8a --- a/dev/null +++ b/noncore/tools/formatter/inputDialog.h @@ -0,0 +1,34 @@ +/*************************************************************************** + inputDialog.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 INPUTDIALOG_H +#define INPUTDIALOG_H + +#include <qvariant.h> +#include <qdialog.h> +class QVBoxLayout; +class QHBoxLayout; +class QGridLayout; +class QLineEdit; + +class InputDialog : public QDialog +{ + Q_OBJECT + +public: + InputDialog( QWidget* parent = 0, const char* name = 0, bool modal = FALSE, WFlags fl = 0 ); + ~InputDialog(); + QString inputText; + QLineEdit* LineEdit1; + void setTextEdit(const QString &); +}; + +#endif // INPUTDIALOG_H diff --git a/noncore/tools/formatter/main.cpp b/noncore/tools/formatter/main.cpp new file mode 100644 index 0000000..f67c9f2 --- a/dev/null +++ b/noncore/tools/formatter/main.cpp @@ -0,0 +1,25 @@ + +/*************************************************************************** + main.cpp - description + ------------------- + begin : March 10, 2002 + copyright : (C) 2002 by llornkcor + 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. * + ***************************************************************************/ +#include <qpe/qpeapplication.h> + +#include "formatter.h" + +int main(int argc, char *argv[]) +{ + QPEApplication a(argc, argv); + + FormatterApp formatterApp; + a.showMainWidget( &formatterApp); + return a.exec(); +} + diff --git a/noncore/tools/formatter/output.cpp b/noncore/tools/formatter/output.cpp new file mode 100644 index 0000000..6970f58 --- a/dev/null +++ b/noncore/tools/formatter/output.cpp @@ -0,0 +1,38 @@ +/**************************************************************************** +** outputEdit.cpp +** +** Copyright: Fri Apr 12 15:12:58 2002 L.J. Potter <ljp@llornkcor.com> +****************************************************************************/ +#include "output.h" + +#include <qmultilineedit.h> +#include <qpushbutton.h> +#include <qlayout.h> +#include <qvariant.h> +#include <qtooltip.h> +#include <qwhatsthis.h> + +Output::Output( QWidget* parent, const char* name, bool modal, WFlags fl ) + : QDialog( parent, name, modal, fl ) +{ + if ( !name ) + setName( "Output" ); + resize( 196, 269 ); + setCaption( name ); + OutputLayout = new QGridLayout( this ); + OutputLayout->setSpacing( 6 ); + OutputLayout->setMargin( 11 ); + + OutputEdit = new QMultiLineEdit( this, "OutputEdit" ); + + OutputLayout->addWidget( OutputEdit, 0, 0 ); +} + +/* + * Destroys the object and frees any allocated resources + */ +Output::~Output() +{ + // no need to delete child widgets, Qt does it all for us +} + diff --git a/noncore/tools/formatter/output.h b/noncore/tools/formatter/output.h new file mode 100644 index 0000000..84adccd --- a/dev/null +++ b/noncore/tools/formatter/output.h @@ -0,0 +1,33 @@ +/**************************************************************************** +** Form interface generated from reading ui file 'outputEdit.ui' +** +** Created: Fri Apr 12 15:12:44 2002 +** by: The User Interface Compiler (uic) +** +** WARNING! All changes made in this file will be lost! +****************************************************************************/ +#ifndef OUTPUT_H +#define OUTPUT_H + +#include <qvariant.h> +#include <qdialog.h> +class QVBoxLayout; +class QHBoxLayout; +class QGridLayout; +class QMultiLineEdit; + +class Output : public QDialog +{ + Q_OBJECT + +public: + Output( QWidget* parent = 0, const char* name = 0, bool modal = FALSE, WFlags fl = 0 ); + ~Output(); + + QMultiLineEdit* OutputEdit; + +protected: + QGridLayout* OutputLayout; +}; + +#endif // OUTPUT_H diff --git a/noncore/tools/formatter/outputEdit.ui b/noncore/tools/formatter/outputEdit.ui new file mode 100644 index 0000000..ab89d4c --- a/dev/null +++ b/noncore/tools/formatter/outputEdit.ui @@ -0,0 +1,40 @@ +<!DOCTYPE UI><UI> +<class>Output</class> +<widget> + <class>QDialog</class> + <property stdset="1"> + <name>name</name> + <cstring>Output</cstring> + </property> + <property stdset="1"> + <name>geometry</name> + <rect> + <x>0</x> + <y>0</y> + <width>196</width> + <height>269</height> + </rect> + </property> + <property stdset="1"> + <name>caption</name> + <string>Output</string> + </property> + <grid> + <property stdset="1"> + <name>margin</name> + <number>11</number> + </property> + <property stdset="1"> + <name>spacing</name> + <number>6</number> + </property> + <widget row="0" column="0" > + <class>QMultiLineEdit</class> + <property stdset="1"> + <name>name</name> + <cstring>OutputEdit</cstring> + </property> + </widget> + </grid> +</widget> +</UI> diff --git a/pics/formatter/devices.png b/pics/formatter/devices.png Binary files differnew file mode 100644 index 0000000..95a5bdf --- a/dev/null +++ b/pics/formatter/devices.png |