Example #1
0
void PropertiesDialog::setupShortcuts()
{
    QMap<QString, QAction*> actions = QTerminalApp::Instance()->getWindowList()[0]->leaseActions();
    QList< QString > shortcutKeys = actions.keys();
    int shortcutCount = shortcutKeys.count();

    shortcutsWidget->setRowCount( shortcutCount );

    for( int x=0; x < shortcutCount; x++ )
    {
        QString keyValue = shortcutKeys.at(x);
        QAction *keyAction = actions[keyValue];
        QStringList sequenceStrings;

        foreach (const QKeySequence &shortcut, keyAction->shortcuts())
            sequenceStrings.append(shortcut.toString());

        QTableWidgetItem *itemName = new QTableWidgetItem( tr(keyValue.toStdString().c_str()) );
        QTableWidgetItem *itemShortcut = new QTableWidgetItem( sequenceStrings.join('|') );

        itemName->setFlags( Qt::ItemIsSelectable | Qt::ItemIsEnabled );

        shortcutsWidget->setItem(x, 0, itemName);
        shortcutsWidget->setItem(x, 1, itemShortcut);
    }

    shortcutsWidget->resizeColumnsToContents();
/*
    connect(shortcutsWidget, SIGNAL(currentChanged(int, int)),
            this, SLOT(recordAction(int, int)));
    connect(shortcutsWidget, SIGNAL(valueChanged(int, int)),
            this, SLOT(validateAction(int, int)));
*/
}
Example #2
0
void ActionsEditor::loadFromConfig(QObject *o, QSettings *set) {
	qDebug("ActionsEditor::loadFromConfig");

	set->beginGroup("actions");

	QAction *action;
	QString accelText;

	QList<QAction *> actions = o->findChildren<QAction *>();
	for (int n=0; n < actions.count(); n++) {
		action = static_cast<QAction*> (actions[n]);
		if (!action->objectName().isEmpty() && !action->inherits("QWidgetAction")) {
#if USE_MULTIPLE_SHORTCUTS
			QString current = shortcutsToString(action->shortcuts());
			accelText = set->value(action->objectName(), current).toString();
			action->setShortcuts( stringToShortcuts( accelText ) );
#else
			accelText = set->value(action->objectName(), action->shortcut().toString()).toString();
			action->setShortcut(QKeySequence(accelText));
#endif
		}
    }

	set->endGroup();
}
Example #3
0
void PropertiesDialog::setupShortcuts()
{
    QMap<QString, QAction*> actions = QTerminalApp::Instance()->getWindowList()[0]->leaseActions();
    QList< QString > shortcutKeys = actions.keys();
    int shortcutCount = shortcutKeys.count();

    shortcutsWidget->setRowCount( shortcutCount );

    for( int x=0; x < shortcutCount; x++ )
    {
        QString keyValue = shortcutKeys.at(x);
        QAction *keyAction = actions[keyValue];
        QStringList sequenceStrings;

        const auto shortcuts = keyAction->shortcuts();
        for (const QKeySequence &shortcut : shortcuts)
            sequenceStrings.append(shortcut.toString());

        QTableWidgetItem *itemName = new QTableWidgetItem( tr(keyValue.toStdString().c_str()) );
        QTableWidgetItem *itemShortcut = new QTableWidgetItem( sequenceStrings.join(QLatin1Char('|')) );

        itemName->setFlags( itemName->flags() & ~Qt::ItemIsEditable & ~Qt::ItemIsSelectable );

        shortcutsWidget->setItem(x, 0, itemName);
        shortcutsWidget->setItem(x, 1, itemShortcut);
    }

    shortcutsWidget->resizeColumnsToContents();

    // No shortcut validation is needed with QKeySequenceEdit.
}
Example #4
0
QList<QKeySequence> QActionProto::shortcuts() const
{
  QAction *item = qscriptvalue_cast<QAction*>(thisObject());
  if (item)
    return item->shortcuts();
  return QList<QKeySequence>();
}
Example #5
0
QString Shortcut::keysToString() const
      {
      QAction* a = action();
      QList<QKeySequence> kl = a->shortcuts();
      QString s;
      for (int i = 0; i < kl.size(); ++i) {
            if (i)
                  s += "; ";
            s += kl[i].toString(QKeySequence::NativeText);
            }
      return s;
      }
Example #6
0
QVariant ActionModel::data(const QModelIndex &index, int role) const
{
  if (!index.isValid())
    return QVariant();

  QMutexLocker lock(Probe::objectLock());
  QAction *action = m_actions.at(index.row());
  if (!Probe::instance()->isValidObject(action))
    return QVariant();

  const int column = index.column();
  if (role == Qt::DisplayRole) {
    switch (column) {
    case AddressColumn:
      return Util::addressToString(action);
    case NameColumn:
      return action->text();
    case CheckablePropColumn:
      return action->isCheckable();
    case CheckedPropColumn:
      return VariantHandler::displayString(action->isChecked());
    case PriorityPropColumn:
      return Util::enumToString(action->priority(), 0, action);
    case ShortcutsPropColumn:
      return toString(action->shortcuts());
    default:
      return QVariant();
    }
  } else if (role == Qt::DecorationRole) {
    if (column == NameColumn) {
      return action->icon();
    } else if (column == ShortcutsPropColumn && m_duplicateFinder->hasAmbiguousShortcut(action)) {
      QIcon icon = QIcon::fromTheme(QStringLiteral("dialog-warning"));
      if (!icon.isNull()) {
        return icon;
      } else {
        return QColor(Qt::red);
      }
    }
  } else if (role == Qt::ToolTipRole) {
    if (column == ShortcutsPropColumn && m_duplicateFinder->hasAmbiguousShortcut(action)) {
      return tr("Warning: Ambiguous shortcut detected.");
    }
  } else if (role == ObjectModel::ObjectRole) {
    return QVariant::fromValue<QObject*>(action);
  }

  return QVariant();
}
Example #7
0
int Action::shortcuts(lua_State * L) // const : QList<QKeySequence> 
{
    QAction* obj = QtObject<QAction>::check( L, 1);
	QList<QKeySequence> r = obj->shortcuts();
	//lua_newtable( L );
	//int t = lua_gettop( L );
	int j = r.size();
	for( int i = 0; i < r.size(); ++i )
	{
		//Util::push( L, i + 1 );
        QKeySequence* res = QtValue<QKeySequence>::create( L );
		*res = r[i];
		//lua_rawset( L, t );
	}
	return j;
}
Example #8
0
QAction* getAction(Shortcut* s)
      {
      if (s == 0)
            return 0;
      if (s->action == 0) {
            QAction* a = new QAction(s->xml, 0); // mscore);
            s->action  = a;
            a->setData(s->xml);
            if(!s->key.isEmpty())
                a->setShortcut(s->key);
            else
                a->setShortcuts(s->standardKey);
            a->setShortcutContext(s->context);
            if (!s->help.isEmpty()) {
                  a->setToolTip(s->help);
                  a->setWhatsThis(s->help);
                  }
            else {
                  a->setToolTip(s->descr);
                  a->setWhatsThis(s->descr);
                  }
            if (s->standardKey != QKeySequence::UnknownKey) {
                  QList<QKeySequence> kl = a->shortcuts();
                  if (!kl.isEmpty()) {
                        QString s(a->toolTip());
                        s += " (";
                        for (int i = 0; i < kl.size(); ++i) {
                              if (i)
                                    s += ",";
                              s += kl[i].toString(QKeySequence::NativeText);
                              }
                        s += ")";
                        a->setToolTip(s);
                        }
                  }
            else if (!s->key.isEmpty()) {
                  a->setToolTip(a->toolTip() +
                        " (" + s->key.toString(QKeySequence::NativeText) + ")" );
                  }
            if (!s->text.isEmpty())
                  a->setText(s->text);
            if (s->icon != -1)
                  a->setIcon(*icons[s->icon]);
            }
      return s->action;
      }
Example #9
0
void lemon::setupActions()
{
  KStandardAction::quit(this, SLOT(salir()), actionCollection());
  //KStandardAction::quit(qApp, SLOT(quit()), actionCollection());
  
  KStandardAction::preferences(this, SLOT(optionsPreferences()), actionCollection());
  
  //Our actions
  QAction* loginAction =  actionCollection()->addAction( "login" );
  loginAction->setText(i18n("Login"));
  loginAction->setIcon(KIcon("preferences-web-browser-identification")); //identity  office-address-book
  loginAction->setShortcut(Qt::CTRL+Qt::Key_L);
  connect(loginAction, SIGNAL(triggered(bool)),m_view, SLOT(login()));
  
  QAction *corteCajaAction = actionCollection()->addAction("balance");
  corteCajaAction->setText(i18nc("Account balance", "Balance"));
  corteCajaAction->setIcon(KIcon("lemon-balance"));
  corteCajaAction->setShortcut(Qt::CTRL+Qt::Key_B);
  connect(corteCajaAction, SIGNAL(triggered(bool)), m_view, SLOT(corteDeCaja()));
  
  QAction* enterCodeAction = actionCollection()->addAction( "enterCode" );
  enterCodeAction->setText(i18n("Enter Code"));
  enterCodeAction->setIcon(KIcon("lemon-tag"));
  enterCodeAction->setShortcut(Qt::Key_F2);
  connect(enterCodeAction, SIGNAL(triggered(bool)),m_view, SLOT(showEnterCodeWidget()));
  
  QAction* searchItemAction = actionCollection()->addAction( "searchItem" );
  searchItemAction->setText(i18n("Search Item"));
  searchItemAction->setIcon(KIcon("edit-find"));
  searchItemAction->setShortcut(Qt::Key_F3);
  connect(searchItemAction, SIGNAL(triggered(bool)),m_view, SLOT(showSearchItemWidget()));
  
  QAction* delSelectedItemAction = actionCollection()->addAction( "deleteSelectedItem" );
  delSelectedItemAction->setText(i18n("Delete Selected Item"));
  delSelectedItemAction->setIcon(KIcon("lemon-boxcancel"));
  delSelectedItemAction->setShortcut(QKeySequence::ZoomOut); //Qt::Key_Delete  Qt::Key_Control+Qt::Key_Delete  QKeySequence::Cut QKeySequence::ZoomOut
  connect(delSelectedItemAction, SIGNAL(triggered(bool)),m_view, SLOT(deleteSelectedItem()));
  // ERROR: I dont know why, in my computer, instead of CTRL-Delete, the key assigned is Shift-(
  // The same for other non-working shortcuts.
  // Some problem related to different keyboard layout :
  qDebug()<<"shortcut:"<<delSelectedItemAction->shortcuts();
  
  QAction* finishTransactionAction = actionCollection()->addAction( "finishTransaction" );
  finishTransactionAction->setText(i18n("Finish transaction"));
  finishTransactionAction->setIcon(KIcon("lemon-transaction-accept"));
  finishTransactionAction->setShortcut(Qt::Key_F12);
  connect(finishTransactionAction, SIGNAL(triggered(bool)),m_view, SLOT(finishCurrentTransaction()));
  
  QAction* cancelTransactionAction = actionCollection()->addAction( "cancelTransaction" );
  cancelTransactionAction->setText(i18n("Cancel transaction"));
  cancelTransactionAction->setIcon(KIcon("lemon-transaction-cancel"));
  cancelTransactionAction->setShortcut(Qt::Key_F10);
  connect(cancelTransactionAction, SIGNAL(triggered(bool)),m_view, SLOT(preCancelCurrentTransaction()));
  
  QAction* cancelSellAction = actionCollection()->addAction("cancelTicket");
  cancelSellAction->setText(i18n("Cancel a ticket"));
  cancelSellAction->setIcon(KIcon("lemon-ticket-cancel") );
  cancelSellAction->setShortcut(Qt::Key_F11);
  connect(cancelSellAction, SIGNAL(triggered(bool)),m_view, SLOT(askForIdToCancel()));
  
  //NOTE: This action is for setting how much money is on the drawer...
  QAction* startOperationAction = actionCollection()->addAction( "startOperation" );
  startOperationAction->setText(i18n("Start Operation"));
  startOperationAction->setIcon(KIcon("window-new"));
  startOperationAction->setShortcut(QKeySequence::New); // New Qt::Key_Control+Qt::Key_N
  connect(startOperationAction, SIGNAL(triggered(bool)),m_view, SLOT(_slotDoStartOperation()));

  QAction *payFocusAction = actionCollection()->addAction("payFocus");
  payFocusAction->setText(i18n("Pay focus"));
  payFocusAction->setIcon(KIcon("lemon-payfocus"));
  payFocusAction->setShortcut(Qt::Key_F4); //Qt::Key_Alt + Qt::Key_End
  connect(payFocusAction, SIGNAL(triggered(bool)),m_view, SLOT(focusPayInput()));
  
  QAction *showProdGridAction = actionCollection()->addAction("showProductsGrid");
  showProdGridAction->setCheckable(true);
  showProdGridAction->setText(i18n("Show/Hide Products Grid"));
  showProdGridAction->setIcon(KIcon("view-split-top-bottom"));
  showProdGridAction->setShortcut(QKeySequence::Print);
  connect(showProdGridAction, SIGNAL(toggled(bool)), m_view, SLOT(showProductsGrid(bool)));
  qDebug()<<"Show Grid shortcut:"<<showProdGridAction->shortcuts();
  
  QAction *showPriceCheckerAction = actionCollection()->addAction("showPriceChecker");
  showPriceCheckerAction->setText(i18n("Show Price Checker"));
  showPriceCheckerAction->setIcon(KIcon("lemon-price-checker"));
  showPriceCheckerAction->setShortcut(Qt::Key_F9);
  connect(showPriceCheckerAction, SIGNAL(triggered(bool)), m_view, SLOT(showPriceChecker()));
  
  QAction *reprintTicketAction = actionCollection()->addAction("reprintTicket");
  reprintTicketAction->setText(i18n("Reprint ticket"));
  reprintTicketAction->setIcon(KIcon("lemon-print-ticket"));
  reprintTicketAction->setShortcut(Qt::Key_F5);
  connect(reprintTicketAction, SIGNAL(triggered(bool)), m_view, SLOT(showReprintTicket()));
  
  QAction *cashOutAction = actionCollection()->addAction("cashOut");
  cashOutAction->setText(i18n("Cash Out"));
  cashOutAction->setIcon(KIcon("lemon-cashout"));
  cashOutAction->setShortcut(Qt::Key_F7); //F7
  connect(cashOutAction, SIGNAL(triggered(bool)), m_view, SLOT(cashOut()));
  
  QAction *cashAvailableAction = actionCollection()->addAction("cashAvailable");
  cashAvailableAction->setText(i18n("Cash in drawer"));
  cashAvailableAction->setIcon(KIcon("lemon-money"));
  cashAvailableAction->setShortcut(Qt::Key_F6);
  connect(cashAvailableAction, SIGNAL(triggered(bool)), m_view, SLOT(cashAvailable()));
  
  QAction *cashInAction = actionCollection()->addAction("cashIn");
  cashInAction->setText(i18n("Cash In"));
  cashInAction->setIcon(KIcon("lemon-cashin"));
  cashInAction->setShortcut(Qt::Key_F8); //F8
  connect(cashInAction, SIGNAL(triggered(bool)), m_view, SLOT(cashIn()));
  
  QAction *endOfDayAction = actionCollection()->addAction("endOfDay");
  endOfDayAction->setText(i18n("End of day report"));
  endOfDayAction->setIcon(KIcon("go-jump-today"));
  endOfDayAction->setShortcut(QKeySequence::Close);
  connect(endOfDayAction, SIGNAL(triggered(bool)), m_view, SLOT(endOfDay()));
  qDebug()<<"End of day shortcut:"<<endOfDayAction->shortcuts();
  
  setupGUI();
  
  setGeometry(QApplication::desktop()->screenGeometry(this));
  if (!Settings::splitterSizes().isEmpty()) m_view->setTheSplitterSizes(Settings::splitterSizes());
}
Example #10
0
void lemon::setupActions()
{
  KStandardAction::quit(this, SLOT(salir()), actionCollection());
  //KStandardAction::quit(qApp, SLOT(quit()), actionCollection());

  KStandardAction::preferences(this, SLOT(optionsPreferences()), actionCollection());

    //Our actions
  QAction* loginAction =  actionCollection()->addAction( "login" );
  loginAction->setText(i18n("Login"));
  loginAction->setIcon(KIcon("office-address-book")); //identity
  loginAction->setShortcut(Qt::CTRL+Qt::Key_L);
  connect(loginAction, SIGNAL(triggered(bool)),m_view, SLOT(login()));

  QAction *corteCajaAction = actionCollection()->addAction("balance");
  corteCajaAction->setText(i18nc("Account balance", "Balance"));
  corteCajaAction->setIcon(KIcon("lemon-balance"));
  corteCajaAction->setShortcut(Qt::CTRL+Qt::Key_B);
  connect(corteCajaAction, SIGNAL(triggered(bool)), m_view, SLOT(doCorteDeCaja()));

  QAction* enterCodeAction = actionCollection()->addAction( "enterCode" );
  enterCodeAction->setText(i18n("Enter Code"));
  enterCodeAction->setIcon(KIcon("lemon-tag"));
  enterCodeAction->setShortcut(Qt::Key_F2);
  connect(enterCodeAction, SIGNAL(triggered(bool)),m_view, SLOT(showEnterCodeWidget()));

  QAction* searchItemAction = actionCollection()->addAction( "searchItem" );
  searchItemAction->setText(i18n("Search Item"));
  searchItemAction->setIcon(KIcon("edit-find"));
  searchItemAction->setShortcut(Qt::Key_F3);
  connect(searchItemAction, SIGNAL(triggered(bool)),m_view, SLOT(showSearchItemWidget()));

  QAction* delSelectedItemAction = actionCollection()->addAction( "deleteSelectedItem" );
  delSelectedItemAction->setText(i18n("Delete Selected Item"));
  delSelectedItemAction->setIcon(KIcon("lemon-boxcancel"));
  delSelectedItemAction->setShortcut(QKeySequence::ZoomOut); //Qt::Key_Delete  Qt::Key_Control+Qt::Key_Delete  QKeySequence::Cut QKeySequence::ZoomOut
  connect(delSelectedItemAction, SIGNAL(triggered(bool)),m_view, SLOT(deleteSelectedItem()));
  // ERROR: I dont know why, in my computer, instead of CTRL-Delete, the key assigned is Shift-(
  // The same for other non-working shortcuts.
  // Some problem related to different keyboard layout :
  qDebug()<<"shortcut:"<<delSelectedItemAction->shortcuts();

  QAction* finishTransactionAction = actionCollection()->addAction( "finishTransaction" );
  finishTransactionAction->setText(i18n("Finish transaction"));
  finishTransactionAction->setIcon(KIcon("lemon-transaction-accept"));
  finishTransactionAction->setShortcut(Qt::Key_F12);
  connect(finishTransactionAction, SIGNAL(triggered(bool)),m_view, SLOT(finishCurrentTransaction()));

  QAction* cancelTransactionAction = actionCollection()->addAction( "cancelTransaction" );
  cancelTransactionAction->setText(i18n("Cancel transaction"));
  cancelTransactionAction->setIcon(KIcon("lemon-transaction-cancel"));
  cancelTransactionAction->setShortcut(Qt::Key_F10);
  connect(cancelTransactionAction, SIGNAL(triggered(bool)),m_view, SLOT(preCancelCurrentTransaction()));

  QAction* cancelSellAction = actionCollection()->addAction("cancelTicket");
  cancelSellAction->setText(i18n("Cancel a ticket"));
  cancelSellAction->setIcon(KIcon("lemon-ticket-cancel") );
  cancelSellAction->setShortcut(Qt::Key_F11);
  connect(cancelSellAction, SIGNAL(triggered(bool)),m_view, SLOT(askForIdToCancel()));

      //NOTE: This action is for setting how much money is on the drawer...
  QAction* startOperationAction = actionCollection()->addAction( "startOperation" );
  startOperationAction->setText(i18n("Start Operation"));
  startOperationAction->setIcon(KIcon("window-new"));
  startOperationAction->setShortcut(QKeySequence::New); // New Qt::Key_Control+Qt::Key_N
  connect(startOperationAction, SIGNAL(triggered(bool)),m_view, SLOT(_slotDoStartOperation()));

  QAction *payFocusAction = actionCollection()->addAction("payFocus");
  payFocusAction->setText(i18n("Pay focus"));
  payFocusAction->setIcon(KIcon("lemon-payfocus"));
  payFocusAction->setShortcut(Qt::Key_F4); //Qt::Key_Alt + Qt::Key_End
  connect(payFocusAction, SIGNAL(triggered(bool)),m_view, SLOT(focusPayInput()));

  QAction *showProdGridAction = actionCollection()->addAction("showProductsGrid");
  showProdGridAction->setCheckable(true);
  showProdGridAction->setText(i18n("Show/Hide Products Grid"));
  showProdGridAction->setIcon(KIcon("view-split-top-bottom"));
  showProdGridAction->setShortcut(QKeySequence::Print);
  connect(showProdGridAction, SIGNAL(toggled(bool)), m_view, SLOT(showProductsGrid(bool)));
  qDebug()<<"Show Grid shortcut:"<<showProdGridAction->shortcuts();

  QAction *showPriceCheckerAction = actionCollection()->addAction("showPriceChecker");
  showPriceCheckerAction->setText(i18n("Show Price Checker"));
  showPriceCheckerAction->setIcon(KIcon("lemon-price-checker"));
  showPriceCheckerAction->setShortcut(Qt::Key_F9);
  connect(showPriceCheckerAction, SIGNAL(triggered(bool)), m_view, SLOT(showPriceChecker()));

  QAction *reprintTicketAction = actionCollection()->addAction("reprintTicket");
  reprintTicketAction->setText(i18n("Reprint ticket"));
  reprintTicketAction->setIcon(KIcon("lemon-print-ticket"));
  reprintTicketAction->setShortcut(Qt::Key_F5);
  connect(reprintTicketAction, SIGNAL(triggered(bool)), m_view, SLOT(showReprintTicket()));

  QAction *cashOutAction = actionCollection()->addAction("cashOut");
  cashOutAction->setText(i18n("Cash Out"));
  cashOutAction->setIcon(KIcon("lemon-cashout"));
  cashOutAction->setShortcut(Qt::Key_F7); //F7
  connect(cashOutAction, SIGNAL(triggered(bool)), m_view, SLOT(cashOut()));

  QAction *cashAvailableAction = actionCollection()->addAction("cashAvailable");
  cashAvailableAction->setText(i18n("Cash in drawer"));
  cashAvailableAction->setIcon(KIcon("lemon-money"));
  cashAvailableAction->setShortcut(Qt::Key_F6);
  connect(cashAvailableAction, SIGNAL(triggered(bool)), m_view, SLOT(cashAvailable()));

  QAction *cashInAction = actionCollection()->addAction("cashIn");
  cashInAction->setText(i18n("Cash In"));
  cashInAction->setIcon(KIcon("lemon-cashin"));
  cashInAction->setShortcut(Qt::Key_F8); //F8
  connect(cashInAction, SIGNAL(triggered(bool)), m_view, SLOT(cashIn()));

  QAction *endOfDayAction = actionCollection()->addAction("endOfDay");
  endOfDayAction->setText(i18n("End of day report"));
  endOfDayAction->setIcon(KIcon("go-jump-today"));
  endOfDayAction->setShortcut(QKeySequence::Close);
  connect(endOfDayAction, SIGNAL(triggered(bool)), m_view, SLOT(endOfDay()));
  qDebug()<<"End of day shortcut:"<<endOfDayAction->shortcuts();

  QAction *soAction = actionCollection()->addAction("specialOrder");
  soAction->setText(i18n("Add Special Order"));
  soAction->setIcon(KIcon("lemon-box"));
  soAction->setShortcut(Qt::Key_PageUp);
  connect(soAction, SIGNAL(triggered(bool)), m_view, SLOT(addSpecialOrder()));
  qDebug()<<"SpecialOrder shortcut:"<<soAction->shortcuts();


  QAction *socAction = actionCollection()->addAction("specialOrderComplete");
  socAction->setText(i18n("Complete Special Order"));
  socAction->setIcon(KIcon("lemon-box"));
  socAction->setShortcut(Qt::Key_PageDown);
  connect(socAction, SIGNAL(triggered(bool)), m_view, SLOT(specialOrderComplete()));
  qDebug()<<"SpecialOrder Complete shortcut:"<<socAction->shortcuts();

  QAction *lockAction = actionCollection()->addAction("lockScreen");
  lockAction->setText(i18n("Lock Screen"));
  lockAction->setIcon(KIcon("lemon-box")); //TODO:CREATE ICON!
  lockAction->setShortcut(Qt::CTRL+Qt::Key_Space);
  connect(lockAction, SIGNAL(triggered(bool)), m_view, SLOT(lockScreen()));
  qDebug()<<"LockScreen shortcut:"<<lockAction->shortcuts();

  QAction *suspendSaleAction = actionCollection()->addAction("suspendSale");
  suspendSaleAction->setText(i18n("Suspend Sale"));
  suspendSaleAction->setIcon(KIcon("lemon-suspend"));
  suspendSaleAction->setShortcut(Qt::CTRL+Qt::Key_Backspace);
  connect(suspendSaleAction, SIGNAL(triggered(bool)), m_view, SLOT( suspendSale() ));
  qDebug()<<"Suspend Sale shortcut:"<<suspendSaleAction->shortcuts();

  QAction *soStatusAction = actionCollection()->addAction("soStatus");
  soStatusAction->setText(i18n("Change Special Order Status"));
  soStatusAction->setIcon(KIcon("lemon-box")); //TODO:CREATE ICON!
  soStatusAction->setShortcut(Qt::CTRL+Qt::Key_PageUp);
  connect(soStatusAction, SIGNAL(triggered(bool)), m_view, SLOT( changeSOStatus() ));
  qDebug()<<"soStatus shortcut:"<<soStatusAction->shortcuts();

  QAction *oDiscAction = actionCollection()->addAction("occasionalDiscount");
  oDiscAction->setText(i18n("Change Special Order Status"));
  oDiscAction->setIcon(KIcon("lemon-money")); //TODO:CREATE ICON!
  oDiscAction->setShortcut(Qt::CTRL+Qt::Key_D);
  connect(oDiscAction, SIGNAL(triggered(bool)), m_view, SLOT( occasionalDiscount() ));
  qDebug()<<"occasionalDiscount shortcut:"<<oDiscAction->shortcuts();

  QAction *resumeAction = actionCollection()->addAction("resumeSale");
  resumeAction->setText(i18n("Resume Sale"));
  resumeAction->setIcon(KIcon("lemon-resume"));
  resumeAction->setShortcut(Qt::CTRL+Qt::Key_R);
  connect(resumeAction, SIGNAL(triggered(bool)), m_view, SLOT( resumeSale() ));
  qDebug()<<"resumeSale shortcut:"<<resumeAction->shortcuts();

  QAction *makeReservationA = actionCollection()->addAction("makeReservation");
  makeReservationA->setText(i18n("Reserve Items"));
  makeReservationA->setIcon(KIcon("lemon-box")); //TODO:CREATE ICON!
  makeReservationA->setShortcut(Qt::ALT + Qt::Key_R); // Qt::ALT is the left ALT key ( not the Alt Gr )
  connect(makeReservationA, SIGNAL(triggered(bool)), m_view, SLOT( reserveItems() ));
  qDebug()<<"makeReservation shortcut:"<<makeReservationA->shortcuts();

  QAction *resumeRAction = actionCollection()->addAction("resumeReservation");
  resumeRAction->setText(i18n("Reservations"));
  resumeRAction->setIcon(KIcon("lemon-box")); //TODO:CREATE ICON!
  resumeRAction->setShortcut(Qt::CTRL+Qt::SHIFT+Qt::Key_R);
  connect(resumeRAction, SIGNAL(triggered(bool)), m_view, SLOT( resumeReservation() ));
  qDebug()<<"Reservations shortcut:"<<resumeRAction->shortcuts();

  QAction *showCreditsAction = actionCollection()->addAction("showCredits");
  showCreditsAction->setText(i18n("Show Credits"));
  showCreditsAction->setIcon(KIcon("lemon-credits"));
  showCreditsAction->setShortcut(Qt::CTRL+Qt::SHIFT+Qt::Key_C);
  connect(showCreditsAction, SIGNAL(triggered(bool)), m_view, SLOT( showCredits() ));
  qDebug()<<"ShowCredits shortcut:"<<showCreditsAction->shortcuts();
  
  setupGUI();

  //FIXME: SCREEN SIZE
  setWindowState( windowState() | Qt::WindowFullScreen ); // set
  //setGeometry(QApplication::desktop()->screenGeometry(this));
  if (!Settings::splitterSizes().isEmpty()) m_view->setTheSplitterSizes(Settings::splitterSizes());
  if (!Settings::gridSplitterSizes().isEmpty()) m_view->setTheGridSplitterSizes(Settings::gridSplitterSizes());
}
Example #11
0
void ActionsEditor::updateView() {
	actionsTable->setRowCount( actionsList.count() );

    QAction *action;
	QString accelText;

#if !USE_SHORTCUTGETTER
	dont_validate = true;
#endif
	//actionsTable->setSortingEnabled(false);

	for (int n=0; n < actionsList.count(); n++) {
		action = static_cast<QAction*> (actionsList[n]);

#if USE_MULTIPLE_SHORTCUTS
		accelText = shortcutsToString( action->shortcuts() );
#else
		accelText = action->shortcut().toString();
#endif

		// Conflict column
		QTableWidgetItem * i_conf = new QTableWidgetItem();

		// Name column
		QTableWidgetItem * i_name = new QTableWidgetItem(action->objectName());

		// Desc column
		QTableWidgetItem * i_desc = new QTableWidgetItem(action->text().replace("&",""));
		i_desc->setIcon( action->icon() );

		// Shortcut column
		QTableWidgetItem * i_shortcut = new QTableWidgetItem(accelText);

		// Set flags
#if !USE_SHORTCUTGETTER
		i_conf->setFlags(Qt::ItemIsEnabled);
		i_name->setFlags(Qt::ItemIsEnabled);
		i_desc->setFlags(Qt::ItemIsEnabled);
#else
		i_conf->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable);
		i_name->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable);
		i_desc->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable);
		i_shortcut->setFlags(Qt::ItemIsEnabled | Qt::ItemIsSelectable);
#endif

		// Add items to table
		actionsTable->setItem(n, COL_CONFLICTS, i_conf );
		actionsTable->setItem(n, COL_NAME, i_name );
		actionsTable->setItem(n, COL_DESC, i_desc );
		actionsTable->setItem(n, COL_SHORTCUT, i_shortcut );

	}
	hasConflicts(); // Check for conflicts

	actionsTable->resizeColumnsToContents();
	actionsTable->setCurrentCell(0, COL_SHORTCUT);

#if !USE_SHORTCUTGETTER
	dont_validate = false;
#endif
	//actionsTable->setSortingEnabled(true);
}