diff options
| author | 2008-05-09 16:16:43 +0000 | |
|---|---|---|
| committer | 2008-05-09 16:16:43 +0000 | |
| commit | 5e117fb3a2208593d69074f77e0d47484206bd51 (patch) | |
| tree | 34b31cc316b93239d7f82a2f199fffa23442ba77 /src/modules/addon | |
| parent | quick fix (diff) | |
| download | KVIrc-5e117fb3a2208593d69074f77e0d47484206bd51.tar.gz KVIrc-5e117fb3a2208593d69074f77e0d47484206bd51.tar.bz2 KVIrc-5e117fb3a2208593d69074f77e0d47484206bd51.zip | |
more work on addon module (wip)
git-svn-id: https://svn.kvirc.de/svn/trunk/kvirc@1720 17fca916-40b9-46aa-a4ea-0a15b648b75c
Diffstat (limited to 'src/modules/addon')
| -rw-r--r-- | src/modules/addon/packaddondialog.cpp | 118 | ||||
| -rw-r--r-- | src/modules/addon/packaddondialog.h | 26 |
2 files changed, 92 insertions, 52 deletions
diff --git a/src/modules/addon/packaddondialog.cpp b/src/modules/addon/packaddondialog.cpp index b5114da33..31ecfd374 100644 --- a/src/modules/addon/packaddondialog.cpp +++ b/src/modules/addon/packaddondialog.cpp @@ -63,16 +63,6 @@ KviPackAddonDialog::KviPackAddonDialog(QWidget * pParent) : KviTalWizard(pParent) { - m_szPackagePath = QDir::homeDirPath(); - KviQString::ensureLastCharIs(m_szPackagePath,QChar(KVI_PATH_SEPARATOR_CHAR)); - /* - m_szPackagePath += szPackageName; - m_szPackagePath += "-"; - m_szPackagePath += szPackageVersion; - m_szPackagePath += "."; - m_szPackagePath += KVI_FILEEXTENSION_ADDONPACKAGE; - */ - setWindowTitle(__tr2qs_ctx("Export Addon - KVIrc","addon")); setMinimumSize(400,350); @@ -95,7 +85,6 @@ KviPackAddonDialog::KviPackAddonDialog(QWidget * pParent) addPage(pPage,__tr2qs_ctx("Welcome","addon")); - setBackEnabled(pPage,false); setNextEnabled(pPage,true); setHelpEnabled(pPage,false); @@ -109,15 +98,13 @@ KviPackAddonDialog::KviPackAddonDialog(QWidget * pParent) setNextEnabled(m_pPackAddonInfoCreateWidget,true); setFinishEnabled(m_pPackAddonInfoCreateWidget,false); - // select script files - - // select image dir - - // select help dir - - // select sound dir - - + // file selection + m_pPackAddonFileSelectionWidget = new KviPackAddonFileSelectionWidget(this); + addPage(m_pPackAddonFileSelectionWidget,__tr2qs_ctx("Package Files","addon")); + setBackEnabled(m_pPackAddonFileSelectionWidget,true); + setHelpEnabled(m_pPackAddonFileSelectionWidget,false); + setNextEnabled(m_pPackAddonFileSelectionWidget,true); + setFinishEnabled(m_pPackAddonFileSelectionWidget,false); // final results m_pPackAddonInfoWidget=new KviPackAddonInfoWidget(this); @@ -128,7 +115,6 @@ KviPackAddonDialog::KviPackAddonDialog(QWidget * pParent) setFinishEnabled(m_pPackAddonInfoWidget,true); } - void KviPackAddonDialog::accept() { if(!packAddon())return; @@ -139,10 +125,10 @@ bool KviPackAddonDialog::packAddon() { //m_pPathSelector->commit(); - QString szPackageAuthor = m_pPackAddonInfoCreateWidget->packagerName(); + QString szPackageAuthor = m_pPackAddonInfoCreateWidget->authorName(); QString szPackageName = m_pPackAddonInfoCreateWidget->packageName(); - QString szPackageDescription = m_pPackAddonInfoCreateWidget->packageVersion(); - QString szPackageVersion = m_pPackAddonInfoCreateWidget->packageDescription(); + QString szPackageVersion = m_pPackAddonInfoCreateWidget->packageVersion(); + QString szPackageDescription = m_pPackAddonInfoCreateWidget->packageDescription(); QString szTmp = QDateTime::currentDateTime().toString(); KviPackageWriter f; @@ -154,6 +140,17 @@ bool KviPackAddonDialog::packAddon() f.addInfoField("Description",szPackageDescription); f.addInfoField("Date",szTmp); f.addInfoField("Application","KVIrc " KVI_VERSION "." KVI_SOURCES_DATE); + + // create addon name + m_szPackagePath = QDir::homeDirPath(); + KviQString::ensureLastCharIs(m_szPackagePath,QChar(KVI_PATH_SEPARATOR_CHAR)); + m_szPackagePath += szPackageName; + m_szPackagePath += "-"; + m_szPackagePath += szPackageVersion; + m_szPackagePath += "."; + m_szPackagePath += KVI_FILEEXTENSION_ADDONPACKAGE; + qDebug("Addon name: %s",m_szPackagePath.toUtf8().data()); + /* szTmp.setNum(m_pThemeInfoList->count()); f.addInfoField("AddonCount",szTmp); @@ -217,36 +214,26 @@ KviPackAddonInfoWidget::KviPackAddonInfoWidget(KviPackAddonDialog *pParent) m_pLabelInfo = new QLabel(this); pLayout->addWidget(m_pLabelInfo,1,0); -/* - m_pPackageName = new QLabel(this); - pLayout->addWidget(m_pPackageName,2,0); - - m_pPackageVersion = new QLabel(this); - pLayout->addWidget(m_pPackageVersion,3,0); - - m_pPackageDescription = new QLabel(this); - pLayout->addWidget(m_pPackageDescription,4,0);//,1,2); -*/ -//pLayout->setRowStretch(0,1); } + void KviPackAddonInfoWidget::showEvent(QShowEvent *) { - KviPackAddonCreateInfoPackageWidget *createWidget=m_pParent->m_pPackAddonInfoCreateWidget; - QString szText=__tr2qs_ctx("Package Author:","addon")+" "+createWidget->packagerName()+"<br>"; - szText+=__tr2qs_ctx("Package Name:","addon")+" "+createWidget->packageName()+"<br>"; - szText+=__tr2qs_ctx("Package Version:","addon")+" "+createWidget->packageVersion()+"<br>"; - szText+=__tr2qs_ctx("Package Description:","addon")+" "+createWidget->packageDescription()+"<br>"; + KviPackAddonCreateInfoPackageWidget * pCreateWidget=m_pParent->m_pPackAddonInfoCreateWidget; + KviPackAddonFileSelectionWidget * pFileWidget = m_pParent->m_pPackAddonFileSelectionWidget; + + QString szText = __tr2qs_ctx("Package Author:","addon") + " " + pCreateWidget->authorName() + "<br>"; + szText += __tr2qs_ctx("Package Name:","addon") + " " + pCreateWidget->packageName() + "<br>"; + szText += __tr2qs_ctx("Package Version:","addon") + " " + pCreateWidget->packageVersion() + "<br>"; + szText +=__tr2qs_ctx("Package Description:","addon") + " " + pCreateWidget->packageDescription() + "<br>"; + szText += __tr2qs_ctx("Source Directory:","addon") + " " + pFileWidget->sourcePath() + "<br>"; + szText += __tr2qs_ctx("Image Directory:","addon") + " " + pFileWidget->imagePath() + "<br>"; + szText += __tr2qs_ctx("Help Directory:","addon") + " " + pFileWidget->helpPath() + "<br>"; + szText += __tr2qs_ctx("Sound Directory:","addon") + " " + pFileWidget->soundPath(); m_pLabelInfo->setText(szText); -/* - m_pLabelAuthor->setText(__tr2qs_ctx("Package Author:","addon")+" "+createWidget->packagerName()); - m_pPackageName->setText(__tr2qs_ctx("Package Name:","addon")+" "+createWidget->packageName()); - m_pPackageVersion->setText(__tr2qs_ctx("Package Version:","addon")+" "+createWidget->packageVersion()); - m_pPackageDescription->setText(__tr2qs_ctx("Package Description:","addon")+" "+createWidget->packageDescription()); -*/ } + KviPackAddonInfoWidget::~KviPackAddonInfoWidget() { - } KviPackAddonCreateInfoPackageWidget::KviPackAddonCreateInfoPackageWidget(KviPackAddonDialog *pParent) @@ -300,10 +287,45 @@ KviPackAddonCreateInfoPackageWidget::KviPackAddonCreateInfoPackageWidget(KviPack pLayout->setRowStretch(1,1); } - KviPackAddonCreateInfoPackageWidget::~KviPackAddonCreateInfoPackageWidget() { +} +KviPackAddonFileSelectionWidget::KviPackAddonFileSelectionWidget(KviPackAddonDialog *pParent) +: QWidget(pParent) +{ + QGridLayout * pLayout = new QGridLayout(this); + QLabel * pLabel = new QLabel(this); + pLabel->setText(__tr2qs_ctx("Here you need to provide the real informations for the addon.","addon")); + pLayout->addWidget(pLabel,0,0); + + // select script dir + QString * szOption = new QString(); + /* FIXME: this is an UGLY hack + should be better to fix KviDirectorySelector passing a QString as parameter and then setting the correct ptr to the value of the QString passed? + */ + + const QString szScriptDir = __tr2qs_ctx("Select scripts directory:","addon"); + m_pSourcePath = new KviDirectorySelector(this,szScriptDir,szOption,true); + pLayout->addWidget(m_pSourcePath,1,0); + + // select image dir + const QString szImageDir = __tr2qs_ctx("Select images directory:","addon"); + m_pImagePath = new KviDirectorySelector(this,szImageDir,szOption,true); + pLayout->addWidget(m_pImagePath,2,0); + + // select help dir + const QString szHelpDir = __tr2qs_ctx("Select help directory:","addon"); + m_pHelpPath = new KviDirectorySelector(this,szHelpDir,szOption,true); + pLayout->addWidget(m_pHelpPath,3,0); + + // select sound dir + const QString szSoundDir = __tr2qs_ctx("Select sounds directory:","addon"); + m_pSoundPath = new KviDirectorySelector(this,szSoundDir,szOption,true); + pLayout->addWidget(m_pSoundPath,4,0); } +KviPackAddonFileSelectionWidget::~KviPackAddonFileSelectionWidget() +{ +} diff --git a/src/modules/addon/packaddondialog.h b/src/modules/addon/packaddondialog.h index a489964f0..7ab9997a6 100644 --- a/src/modules/addon/packaddondialog.h +++ b/src/modules/addon/packaddondialog.h @@ -27,6 +27,7 @@ #include "kvi_settings.h" #include "kvi_pointerlist.h" +#include "kvi_selectors.h" #include "kvi_tal_wizard.h" #include "kvi_tal_textedit.h" @@ -34,8 +35,8 @@ #include <QLabel> #include <QWidget> -class KviFileSelector; class KviPackAddonCreateInfoPackageWidget; +class KviPackAddonFileSelectionWidget; class KviPackAddonInfoWidget; class KviPackAddonDialog : public KviTalWizard @@ -44,11 +45,11 @@ class KviPackAddonDialog : public KviTalWizard public: KviPackAddonDialog(QWidget * pParent); ~KviPackAddonDialog(){}; - KviPackAddonCreateInfoPackageWidget *m_pPackAddonInfoCreateWidget ; + KviPackAddonCreateInfoPackageWidget * m_pPackAddonInfoCreateWidget ; + KviPackAddonFileSelectionWidget * m_pPackAddonFileSelectionWidget; KviPackAddonInfoWidget *m_pPackAddonInfoWidget ; protected: QString m_szPackagePath; - KviFileSelector * m_pPathSelector; protected: virtual void accept(); bool packAddon(); @@ -60,7 +61,7 @@ class KviPackAddonCreateInfoPackageWidget : public QWidget public: KviPackAddonCreateInfoPackageWidget(KviPackAddonDialog *pParent); ~KviPackAddonCreateInfoPackageWidget(); - QString packagerName(){return m_pAuthorNameEdit->text();}; + QString authorName(){return m_pAuthorNameEdit->text();}; QString packageName(){return m_pPackageNameEdit->text();}; QString packageVersion(){return m_pPackageVersionEdit->text();}; QString packageDescription(){return m_pPackageDescriptionEdit->text();}; @@ -71,6 +72,23 @@ protected: KviTalTextEdit * m_pPackageDescriptionEdit; }; +class KviPackAddonFileSelectionWidget : public QWidget +{ + Q_OBJECT +public: + KviPackAddonFileSelectionWidget(KviPackAddonDialog *pParent); + ~KviPackAddonFileSelectionWidget(); + QString sourcePath(){return m_pSourcePath->text();}; + QString imagePath(){return m_pImagePath->text();}; + QString helpPath(){return m_pHelpPath->text();}; + QString soundPath(){return m_pSoundPath->text();}; +protected: + KviDirectorySelector * m_pSourcePath; + KviDirectorySelector * m_pImagePath; + KviDirectorySelector * m_pHelpPath; + KviDirectorySelector * m_pSoundPath; +}; + class KviPackAddonInfoWidget : public QWidget { public: |
