+++ /dev/null
-#include <QDebug>
-#include <QMultiMap>
-
-#include <iostream>
-using namespace std;
-
-#include "shortcuts.h"
-
-/////////////////////////////////////////////////////////////////
-// KeySwitch
-/////////////////////////////////////////////////////////////////
-KeySwitch::KeySwitch (
- const QString &kIdentifier,
- const QString &kName,
- const QString &kGroup,
- const QString &kTag,
- const QKeySequence &kseq)
-{
- identifier = kIdentifier;
- name = kName;
- group = kGroup;
- tag = kTag;
- keySequence = kseq;
-}
-
-/////////////////////////////////////////////////////////////////
-// Switchboard
-/////////////////////////////////////////////////////////////////
-Switchboard::Switchboard ()
-{
-}
-
-void Switchboard::addGroup( QString gIdentifier, QString gName)
-{
- if (groups.contains(gIdentifier))
- {
- qDebug() << "Warning switchboard: Shortcut group " << gIdentifier << " already exists";
- return;
- }
- groups.insert(gIdentifier, gName);
-}
-
-void Switchboard::addSwitch( QString identifier, QString scope, QAction *action, QString tag)
-{
- if (!switches.contains(identifier))
- {
- KeySwitch ksw(identifier, action->text(), scope, tag, action->shortcut());
- switches.insert(scope, ksw);
- } else
- qDebug() << "Warning switchboard::addSwitch warning: Existing idenifier " << identifier;
-}
-
-QString Switchboard::getASCII()
-{
- QString s;
- QString g;
- foreach (g, switches.uniqueKeys())
- {
- s += "Scope " + g +":\n";
- QList <KeySwitch> values=switches.values(g);
- for (int i=0; i<values.size(); ++i)
- {
- QString desc=values.at(i).name;
- QString sc=values.at(i).keySequence.toString();
- desc=desc.remove('&');
- desc=desc.remove("...");
- s += QString(" %1: %2\n").arg(sc,12).arg(desc);
- }
- s += "\n";
- }
-
- /*
- foreach (g, actions.uniqueKeys())
- {
- s += g +"\n";
- QList <QAction*> values=actions.values(g);
- for (int i=0;i<values.size();++i)
- {
- QString desc=values.at(i)->text();
- QString sc=values.at(i)->shortcut().toString();
- desc=desc.remove('&');
- desc=desc.remove("...");
- s+= QString(" %1: %2\n").arg(sc,12).arg(desc);
- }
- }
- */
- return s;
-}
-
-void Switchboard::printASCII ()
-{
- cout <<qPrintable(getASCII() );
-}
-
-void Switchboard::printLaTeX ()
-{
- QString g;
- foreach (g,actions.uniqueKeys())
- {
- cout <<"Group: "<<qPrintable(g)<<"\\\\ \\hline"<<endl;
- QList <QAction*> values=actions.values(g);
- for (int i=0;i<values.size();++i)
- if (!values.at(i)->shortcut().toString().isEmpty())
- {
- QString desc=values.at(i)->text();
- QString sc=values.at(i)->shortcut().toString();
- desc=desc.remove('&');
- desc=desc.remove("...");
- cout << qPrintable( QString(" %1& %2").arg(sc,12).arg(desc) )<<endl;
- }
- cout <<endl;
- }
-}