-rw-r--r-- | library/lnkproperties.cpp | 23 | ||||
-rw-r--r-- | library/lnkproperties.h | 13 | ||||
-rw-r--r-- | library/lnkpropertiesbase_p.ui | 17 |
3 files changed, 52 insertions, 1 deletions
diff --git a/library/lnkproperties.cpp b/library/lnkproperties.cpp index e278cb2..abd430c 100644 --- a/library/lnkproperties.cpp +++ b/library/lnkproperties.cpp @@ -18,6 +18,10 @@ ** **********************************************************************/ +// WARNING: Do *NOT* define this yourself. The SL5xxx from SHARP does NOT +// have this class. +#define QTOPIA_INTERNAL_FSLP +#include "lnkproperties.h" #include "lnkproperties.h" #include "lnkpropertiesbase_p.h" #include "ir.h" @@ -74,7 +78,8 @@ LnkProperties::LnkProperties( AppLnk* l, QWidget* parent ) if ( lnk->type().contains('/') ) { // A document? (#### better predicate needed) connect(d->unlink,SIGNAL(clicked()),this,SLOT(unlinkLnk())); connect(d->duplicate,SIGNAL(clicked()),this,SLOT(duplicateLnk())); - + connect(d->delicon,SIGNAL(clicked()),this,SLOT(unlinkIcon())); + d->docname->setReadOnly( FALSE ); d->preload->hide(); d->spacer->hide(); @@ -130,6 +135,22 @@ void LnkProperties::unlinkLnk() } } + +/* + * remove only the link from documents, not also the file + */ +void LnkProperties::unlinkIcon() +{ + if ( QPEMessageBox::confirmDelete( this, tr("Delete Icon and leave file"), lnk->name() ) ) { + lnk->removeLinkFile(); + if ( QFile::exists(lnk->linkFile()) ) { + QMessageBox::warning( this, tr("Delete"), tr("Icon deletion failed.") ); + } else { + reject(); + } + } +} + void LnkProperties::setupLocations() { QFileInfo fi( lnk->file() ); diff --git a/library/lnkproperties.h b/library/lnkproperties.h index 501692e..38da5b2 100644 --- a/library/lnkproperties.h +++ b/library/lnkproperties.h @@ -17,6 +17,14 @@ ** not clear to you. ** **********************************************************************/ + + +// +// DO NOT ATTEMPT TO USE THIS CLASS +// + + + #ifndef LNKPROPERTIES_H #define LNKPROPERTIES_H #include <qstringlist.h> @@ -33,13 +41,18 @@ class LnkProperties : public QDialog Q_OBJECT public: +// WARNING: Do *NOT* define this yourself. The SL5xxx from SHARP does NOT +// have this class. +#ifdef QTOPIA_INTERNAL_FSLP LnkProperties( AppLnk* lnk, QWidget* parent = 0 ); ~LnkProperties(); +#endif void done(int); private slots: void beamLnk(); void unlinkLnk(); + void unlinkIcon(); void duplicateLnk(); signals: diff --git a/library/lnkpropertiesbase_p.ui b/library/lnkpropertiesbase_p.ui index d99b228..3d35bca 100644 --- a/library/lnkpropertiesbase_p.ui +++ b/library/lnkpropertiesbase_p.ui @@ -328,6 +328,23 @@ <bool>false</bool> </property> </widget> + + <widget> + <class>QPushButton</class> + <property stdset="1"> + <name>name</name> + <cstring>delicon</cstring> + </property> + <property stdset="1"> + <name>text</name> + <string>Del Icon</string> + </property> + <property stdset="1"> + <name>autoDefault</name> + <bool>false</bool> + </property> + </widget> + <widget> <class>QPushButton</class> <property stdset="1"> |