+ when running a bound macro check if file exists, proper unicode handling of macros in customize dialog
This commit is contained in:
parent
52957ffcb5
commit
c133457da5
|
@ -708,10 +708,17 @@ void MacroCommand::activated(int iMsg)
|
||||||
|
|
||||||
QDir d(QString::fromUtf8(cMacroPath.c_str()));
|
QDir d(QString::fromUtf8(cMacroPath.c_str()));
|
||||||
QFileInfo fi(d, QString::fromUtf8(sScriptName));
|
QFileInfo fi(d, QString::fromUtf8(sScriptName));
|
||||||
Application::Instance->macroManager()->run(MacroManager::File, fi.filePath().toUtf8());
|
if (!fi.exists()) {
|
||||||
// after macro run recalculate the document
|
QMessageBox::critical(Gui::getMainWindow(),
|
||||||
if (Application::Instance->activeDocument())
|
qApp->translate("Gui::MacroCommand", "Macro file doesn't exist"),
|
||||||
Application::Instance->activeDocument()->getDocument()->recompute();
|
qApp->translate("Gui::MacroCommand", "No such macro file: '%1'").arg(fi.absoluteFilePath()));
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
Application::Instance->macroManager()->run(MacroManager::File, fi.filePath().toUtf8());
|
||||||
|
// after macro run recalculate the document
|
||||||
|
if (Application::Instance->activeDocument())
|
||||||
|
Application::Instance->activeDocument()->getDocument()->recompute();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Action * MacroCommand::createAction(void)
|
Action * MacroCommand::createAction(void)
|
||||||
|
|
|
@ -147,14 +147,27 @@ void DlgCustomCommandsImp::onGroupActivated(QTreeWidgetItem* item)
|
||||||
|
|
||||||
CommandManager & cCmdMgr = Application::Instance->commandManager();
|
CommandManager & cCmdMgr = Application::Instance->commandManager();
|
||||||
std::vector<Command*> aCmds = cCmdMgr.getGroupCommands(group.toAscii());
|
std::vector<Command*> aCmds = cCmdMgr.getGroupCommands(group.toAscii());
|
||||||
for (std::vector<Command*>::iterator it = aCmds.begin(); it != aCmds.end(); ++it) {
|
if (group == QLatin1String("Macros")) {
|
||||||
QTreeWidgetItem* item = new QTreeWidgetItem(commandTreeWidget);
|
for (std::vector<Command*>::iterator it = aCmds.begin(); it != aCmds.end(); ++it) {
|
||||||
item->setText(1, qApp->translate((*it)->className(), (*it)->getMenuText()));
|
QTreeWidgetItem* item = new QTreeWidgetItem(commandTreeWidget);
|
||||||
item->setToolTip(1, qApp->translate((*it)->className(), (*it)->getToolTipText()));
|
item->setText(1, QString::fromUtf8((*it)->getMenuText()));
|
||||||
item->setData(1, Qt::UserRole, QByteArray((*it)->getName()));
|
item->setToolTip(1, QString::fromUtf8((*it)->getToolTipText()));
|
||||||
item->setSizeHint(0, QSize(32, 32));
|
item->setData(1, Qt::UserRole, QByteArray((*it)->getName()));
|
||||||
if ((*it)->getPixmap())
|
item->setSizeHint(0, QSize(32, 32));
|
||||||
item->setIcon(0, BitmapFactory().iconFromTheme((*it)->getPixmap()));
|
if ((*it)->getPixmap())
|
||||||
|
item->setIcon(0, BitmapFactory().iconFromTheme((*it)->getPixmap()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
for (std::vector<Command*>::iterator it = aCmds.begin(); it != aCmds.end(); ++it) {
|
||||||
|
QTreeWidgetItem* item = new QTreeWidgetItem(commandTreeWidget);
|
||||||
|
item->setText(1, qApp->translate((*it)->className(), (*it)->getMenuText()));
|
||||||
|
item->setToolTip(1, qApp->translate((*it)->className(), (*it)->getToolTipText()));
|
||||||
|
item->setData(1, Qt::UserRole, QByteArray((*it)->getName()));
|
||||||
|
item->setSizeHint(0, QSize(32, 32));
|
||||||
|
if ((*it)->getPixmap())
|
||||||
|
item->setIcon(0, BitmapFactory().iconFromTheme((*it)->getPixmap()));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
textLabel->setText(QString());
|
textLabel->setText(QString());
|
||||||
|
@ -178,7 +191,6 @@ void DlgCustomCommandsImp::onAddMacroAction(const QByteArray& macro)
|
||||||
item->setToolTip(1, QString::fromUtf8(pCmd->getToolTipText()));
|
item->setToolTip(1, QString::fromUtf8(pCmd->getToolTipText()));
|
||||||
item->setData(1, Qt::UserRole, macro);
|
item->setData(1, Qt::UserRole, macro);
|
||||||
item->setSizeHint(0, QSize(32, 32));
|
item->setSizeHint(0, QSize(32, 32));
|
||||||
item->setBackgroundColor(0, Qt::lightGray);
|
|
||||||
if (pCmd->getPixmap())
|
if (pCmd->getPixmap())
|
||||||
item->setIcon(0, BitmapFactory().iconFromTheme(pCmd->getPixmap()));
|
item->setIcon(0, BitmapFactory().iconFromTheme(pCmd->getPixmap()));
|
||||||
}
|
}
|
||||||
|
@ -226,7 +238,6 @@ void DlgCustomCommandsImp::onModifyMacroAction(const QByteArray& macro)
|
||||||
item->setToolTip(1, QString::fromUtf8(pCmd->getToolTipText()));
|
item->setToolTip(1, QString::fromUtf8(pCmd->getToolTipText()));
|
||||||
item->setData(1, Qt::UserRole, macro);
|
item->setData(1, Qt::UserRole, macro);
|
||||||
item->setSizeHint(0, QSize(32, 32));
|
item->setSizeHint(0, QSize(32, 32));
|
||||||
item->setBackgroundColor(0, Qt::lightGray);
|
|
||||||
if (pCmd->getPixmap())
|
if (pCmd->getPixmap())
|
||||||
item->setIcon(0, BitmapFactory().iconFromTheme(pCmd->getPixmap()));
|
item->setIcon(0, BitmapFactory().iconFromTheme(pCmd->getPixmap()));
|
||||||
if (commandTreeWidget->isItemSelected(item))
|
if (commandTreeWidget->isItemSelected(item))
|
||||||
|
|
|
@ -178,14 +178,28 @@ void DlgCustomKeyboardImp::on_categoryBox_activated(int index)
|
||||||
|
|
||||||
CommandManager & cCmdMgr = Application::Instance->commandManager();
|
CommandManager & cCmdMgr = Application::Instance->commandManager();
|
||||||
std::vector<Command*> aCmds = cCmdMgr.getGroupCommands( group.toAscii() );
|
std::vector<Command*> aCmds = cCmdMgr.getGroupCommands( group.toAscii() );
|
||||||
for (std::vector<Command*>::iterator it = aCmds.begin(); it != aCmds.end(); ++it) {
|
|
||||||
QTreeWidgetItem* item = new QTreeWidgetItem(commandTreeWidget);
|
if (group == QLatin1String("Macros")) {
|
||||||
item->setText(1, qApp->translate((*it)->className(), (*it)->getMenuText()));
|
for (std::vector<Command*>::iterator it = aCmds.begin(); it != aCmds.end(); ++it) {
|
||||||
item->setToolTip(1, qApp->translate((*it)->className(), (*it)->getToolTipText()));
|
QTreeWidgetItem* item = new QTreeWidgetItem(commandTreeWidget);
|
||||||
item->setData(1, Qt::UserRole, QByteArray((*it)->getName()));
|
item->setText(1, QString::fromUtf8((*it)->getMenuText()));
|
||||||
item->setSizeHint(0, QSize(32, 32));
|
item->setToolTip(1, QString::fromUtf8((*it)->getToolTipText()));
|
||||||
if ((*it)->getPixmap())
|
item->setData(1, Qt::UserRole, QByteArray((*it)->getName()));
|
||||||
item->setIcon(0, BitmapFactory().iconFromTheme((*it)->getPixmap()));
|
item->setSizeHint(0, QSize(32, 32));
|
||||||
|
if ((*it)->getPixmap())
|
||||||
|
item->setIcon(0, BitmapFactory().iconFromTheme((*it)->getPixmap()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
for (std::vector<Command*>::iterator it = aCmds.begin(); it != aCmds.end(); ++it) {
|
||||||
|
QTreeWidgetItem* item = new QTreeWidgetItem(commandTreeWidget);
|
||||||
|
item->setText(1, qApp->translate((*it)->className(), (*it)->getMenuText()));
|
||||||
|
item->setToolTip(1, qApp->translate((*it)->className(), (*it)->getToolTipText()));
|
||||||
|
item->setData(1, Qt::UserRole, QByteArray((*it)->getName()));
|
||||||
|
item->setSizeHint(0, QSize(32, 32));
|
||||||
|
if ((*it)->getPixmap())
|
||||||
|
item->setIcon(0, BitmapFactory().iconFromTheme((*it)->getPixmap()));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -326,7 +340,6 @@ void DlgCustomKeyboardImp::on_editShortcut_textChanged(const QString& sc)
|
||||||
item->setToolTip(1, qApp->translate((*it)->className(), (*it)->getToolTipText()));
|
item->setToolTip(1, qApp->translate((*it)->className(), (*it)->getToolTipText()));
|
||||||
item->setData(1, Qt::UserRole, QByteArray((*it)->getName()));
|
item->setData(1, Qt::UserRole, QByteArray((*it)->getName()));
|
||||||
item->setSizeHint(0, QSize(32, 32));
|
item->setSizeHint(0, QSize(32, 32));
|
||||||
item->setBackgroundColor(0, Qt::lightGray);
|
|
||||||
if ((*it)->getPixmap())
|
if ((*it)->getPixmap())
|
||||||
item->setIcon(0, BitmapFactory().iconFromTheme((*it)->getPixmap()));
|
item->setIcon(0, BitmapFactory().iconFromTheme((*it)->getPixmap()));
|
||||||
break;
|
break;
|
||||||
|
@ -372,7 +385,6 @@ void DlgCustomKeyboardImp::onAddMacroAction(const QByteArray& macro)
|
||||||
item->setToolTip(1, QString::fromUtf8(pCmd->getToolTipText()));
|
item->setToolTip(1, QString::fromUtf8(pCmd->getToolTipText()));
|
||||||
item->setData(1, Qt::UserRole, macro);
|
item->setData(1, Qt::UserRole, macro);
|
||||||
item->setSizeHint(0, QSize(32, 32));
|
item->setSizeHint(0, QSize(32, 32));
|
||||||
item->setBackgroundColor(0, Qt::lightGray);
|
|
||||||
if (pCmd->getPixmap())
|
if (pCmd->getPixmap())
|
||||||
item->setIcon(0, BitmapFactory().iconFromTheme(pCmd->getPixmap()));
|
item->setIcon(0, BitmapFactory().iconFromTheme(pCmd->getPixmap()));
|
||||||
}
|
}
|
||||||
|
@ -412,7 +424,6 @@ void DlgCustomKeyboardImp::onModifyMacroAction(const QByteArray& macro)
|
||||||
item->setToolTip(1, QString::fromUtf8(pCmd->getToolTipText()));
|
item->setToolTip(1, QString::fromUtf8(pCmd->getToolTipText()));
|
||||||
item->setData(1, Qt::UserRole, macro);
|
item->setData(1, Qt::UserRole, macro);
|
||||||
item->setSizeHint(0, QSize(32, 32));
|
item->setSizeHint(0, QSize(32, 32));
|
||||||
item->setBackgroundColor(0, Qt::lightGray);
|
|
||||||
if (pCmd->getPixmap())
|
if (pCmd->getPixmap())
|
||||||
item->setIcon(0, BitmapFactory().iconFromTheme(pCmd->getPixmap()));
|
item->setIcon(0, BitmapFactory().iconFromTheme(pCmd->getPixmap()));
|
||||||
if (commandTreeWidget->isItemSelected(item))
|
if (commandTreeWidget->isItemSelected(item))
|
||||||
|
|
|
@ -204,14 +204,28 @@ void DlgCustomToolbars::on_categoryBox_activated(int index)
|
||||||
sepitem->setText(1, tr("<Separator>"));
|
sepitem->setText(1, tr("<Separator>"));
|
||||||
sepitem->setData(1, Qt::UserRole, QByteArray("Separator"));
|
sepitem->setData(1, Qt::UserRole, QByteArray("Separator"));
|
||||||
sepitem->setSizeHint(0, QSize(32, 32));
|
sepitem->setSizeHint(0, QSize(32, 32));
|
||||||
for (std::vector<Command*>::iterator it = aCmds.begin(); it != aCmds.end(); ++it) {
|
|
||||||
QTreeWidgetItem* item = new QTreeWidgetItem(commandTreeWidget);
|
if (group == QLatin1String("Macros")) {
|
||||||
item->setText(1, qApp->translate((*it)->className(), (*it)->getMenuText()));
|
for (std::vector<Command*>::iterator it = aCmds.begin(); it != aCmds.end(); ++it) {
|
||||||
item->setToolTip(1, qApp->translate((*it)->className(), (*it)->getToolTipText()));
|
QTreeWidgetItem* item = new QTreeWidgetItem(commandTreeWidget);
|
||||||
item->setData(1, Qt::UserRole, QByteArray((*it)->getName()));
|
item->setText(1, QString::fromUtf8((*it)->getMenuText()));
|
||||||
item->setSizeHint(0, QSize(32, 32));
|
item->setToolTip(1, QString::fromUtf8((*it)->getToolTipText()));
|
||||||
if ((*it)->getPixmap())
|
item->setData(1, Qt::UserRole, QByteArray((*it)->getName()));
|
||||||
item->setIcon(0, BitmapFactory().iconFromTheme((*it)->getPixmap()));
|
item->setSizeHint(0, QSize(32, 32));
|
||||||
|
if ((*it)->getPixmap())
|
||||||
|
item->setIcon(0, BitmapFactory().iconFromTheme((*it)->getPixmap()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
for (std::vector<Command*>::iterator it = aCmds.begin(); it != aCmds.end(); ++it) {
|
||||||
|
QTreeWidgetItem* item = new QTreeWidgetItem(commandTreeWidget);
|
||||||
|
item->setText(1, qApp->translate((*it)->className(), (*it)->getMenuText()));
|
||||||
|
item->setToolTip(1, qApp->translate((*it)->className(), (*it)->getToolTipText()));
|
||||||
|
item->setData(1, Qt::UserRole, QByteArray((*it)->getName()));
|
||||||
|
item->setSizeHint(0, QSize(32, 32));
|
||||||
|
if ((*it)->getPixmap())
|
||||||
|
item->setIcon(0, BitmapFactory().iconFromTheme((*it)->getPixmap()));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -541,7 +555,6 @@ void DlgCustomToolbars::onAddMacroAction(const QByteArray& macro)
|
||||||
item->setToolTip(1, QString::fromUtf8(pCmd->getToolTipText()));
|
item->setToolTip(1, QString::fromUtf8(pCmd->getToolTipText()));
|
||||||
item->setData(1, Qt::UserRole, macro);
|
item->setData(1, Qt::UserRole, macro);
|
||||||
item->setSizeHint(0, QSize(32, 32));
|
item->setSizeHint(0, QSize(32, 32));
|
||||||
item->setBackgroundColor(0, Qt::lightGray);
|
|
||||||
if (pCmd->getPixmap())
|
if (pCmd->getPixmap())
|
||||||
item->setIcon(0, BitmapFactory().iconFromTheme(pCmd->getPixmap()));
|
item->setIcon(0, BitmapFactory().iconFromTheme(pCmd->getPixmap()));
|
||||||
}
|
}
|
||||||
|
@ -582,7 +595,6 @@ void DlgCustomToolbars::onModifyMacroAction(const QByteArray& macro)
|
||||||
item->setToolTip(1, QString::fromUtf8(pCmd->getToolTipText()));
|
item->setToolTip(1, QString::fromUtf8(pCmd->getToolTipText()));
|
||||||
item->setData(1, Qt::UserRole, macro);
|
item->setData(1, Qt::UserRole, macro);
|
||||||
item->setSizeHint(0, QSize(32, 32));
|
item->setSizeHint(0, QSize(32, 32));
|
||||||
item->setBackgroundColor(0, Qt::lightGray);
|
|
||||||
if (pCmd->getPixmap())
|
if (pCmd->getPixmap())
|
||||||
item->setIcon(0, BitmapFactory().iconFromTheme(pCmd->getPixmap()));
|
item->setIcon(0, BitmapFactory().iconFromTheme(pCmd->getPixmap()));
|
||||||
break;
|
break;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user