Rev 320 |
Blame |
Compare with Previous |
Last modification |
View Log
| RSS feed
/***************************************************************************
* Riku Leino, tsoots@welho.com *
***************************************************************************/
#include "nftemplate.h"
#include "nftemplate.moc"
#include "nftdialog.h"
#include <qstring.h>
#include <qcursor.h>
#include <qdir.h>
#include <qwidget.h>
ScribusApp* Carrier;
QWidget* par;
QString Name()
{
return QObject::tr("New &from Template...");
}
int Type()
{
return 5;
}
void InitPlug(QWidget *d, ScribusApp *plug)
{
Carrier = plug;
par = d;
Nft = new MenuNFT(d);
int ind = 0;
for (uint a = 0; a < plug->fileMenu->count(); ++a)
{
if ((plug->fileMenu->text(plug->fileMenu->idAt(a)) == QObject::tr("&New")) ||
(plug->fileMenu->text(plug->fileMenu->idAt(a)) == "&New"))
break;
ind++;
}
int id = plug->fileMenu->insertItem(QObject::tr("New &from Template..."), -1, ind+1);
plug->fileMenu->connectItem(id, Nft, SLOT(RunNFTPlug()));
plug->fileMenu->setItemEnabled(id, 1);
}
void CleanUpPlug()
{
}
void Run(QWidget *d, ScribusApp *plug)
{
}
void MenuNFT::RunNFTPlug()
{
nftdialog* nftdia = new nftdialog(par, Carrier->GuiLanguage);
if (nftdia->exec())
{
qApp->setOverrideCursor(QCursor(Qt::WaitCursor), true);
Carrier->LadeDoc(nftdia->currentTemplate->file);
Carrier->doc->hasName = false;
Carrier->doc->DocName = nftdia->currentTemplate->name;
Carrier->ActWin->setCaption(QObject::tr("Template: ") + nftdia->currentTemplate->name);
QDir::setCurrent(Carrier->Prefs.DocDir);
Carrier->RemoveRecent(nftdia->currentTemplate->file);
qApp->restoreOverrideCursor();
}
delete nftdia;
}