本文整理汇总了C++中UserCommand::getType方法的典型用法代码示例。如果您正苦于以下问题:C++ UserCommand::getType方法的具体用法?C++ UserCommand::getType怎么用?C++ UserCommand::getType使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类UserCommand
的用法示例。
在下文中一共展示了UserCommand::getType方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: changeUC
void UCModel::changeUC(const QModelIndex &i){
if (!i.isValid())
return;
UCItem *item = reinterpret_cast<UCItem*>(i.internalPointer());
if (!rootItem->childItems.contains(item))
return;
UCDialog ucd(MainWindow::getInstance());
initDlgFromItem(ucd, *item);
if (ucd.exec() == QDialog::Accepted){
UserCommand uc;
FavoriteManager::getInstance()->getUserCommand(item->id, uc);
uc.setName(_tq(ucd.getName()));
uc.setCommand(_tq(ucd.getCmd()));
uc.setHub(_tq(ucd.getHub()));
uc.setType(ucd.getType());
uc.setCtx(ucd.getCtx());
uc.setTo(_tq(ucd.lineEdit_TO->text()));
FavoriteManager::getInstance()->updateUserCommand(uc);
item->name = ((uc.getType() == dcpp::UserCommand::TYPE_SEPARATOR)? tr("Separator") : _q(uc.getName()));
item->comm = _q(uc.getCommand());
item->hub = _q(uc.getHub());
item->id = uc.getId();
item->type = uc.getType();
item->ctx = uc.getCtx();
emit layoutChanged();
}
}
示例2: onChangeMenu
LRESULT UCPage::onChangeMenu(WORD , WORD , HWND , BOOL& ) {
if(ctrlCommands.GetSelectedCount() == 1) {
int sel = ctrlCommands.GetSelectedIndex();
UserCommand uc;
FavoriteManager::getInstance()->getUserCommand(ctrlCommands.GetItemData(sel), uc);
CommandDlg dlg;
dlg.type = uc.getType();
dlg.ctx = uc.getCtx();
dlg.name = Text::toT(uc.getName());
dlg.command = Text::toT(uc.getCommand());
dlg.to = Text::toT(uc.getTo());
dlg.hub = Text::toT(uc.getHub());
if(dlg.DoModal() == IDOK) {
if(dlg.type == UserCommand::TYPE_SEPARATOR)
ctrlCommands.SetItemText(sel, 0, CTSTRING(SEPARATOR));
else
ctrlCommands.SetItemText(sel, 0, dlg.name.c_str());
ctrlCommands.SetItemText(sel, 1, dlg.command.c_str());
ctrlCommands.SetItemText(sel, 2, dlg.hub.c_str());
uc.setName(Text::fromT(dlg.name));
uc.setCommand(Text::fromT(dlg.command));
uc.setTo(Text::fromT(dlg.to));
uc.setHub(Text::fromT(dlg.hub));
uc.setType(dlg.type);
uc.setCtx(dlg.ctx);
FavoriteManager::getInstance()->updateUserCommand(uc);
}
}
return 0;
}
示例3: addEntry
void UCPage::addEntry(const UserCommand& uc, int pos) {
TStringList lst;
if(uc.getType() == UserCommand::TYPE_SEPARATOR)
lst.push_back(TSTRING(SEPARATOR));
else
lst.push_back(Text::toT(uc.getName()));
lst.push_back(Text::toT(uc.getCommand()));
lst.push_back(Text::toT(uc.getHub()));
ctrlCommands.insert(pos, lst, 0, (LPARAM)uc.getId());
}
示例4: QMenu
QMenu *WulforUtil::buildUserCmdMenu(const StringList& hub_list, int ctx, QWidget* parent) {
UserCommand::List userCommands = FavoriteManager::getInstance()->getUserCommands(ctx, hub_list);
if (userCommands.empty())
return nullptr;
QMenu *ucMenu = new QMenu(tr("User commands"), parent);
QMenu *menuPtr = ucMenu;
for (size_t n = 0; n < userCommands.size(); ++n) {
UserCommand *uc = &userCommands[n];
if (uc->getType() == UserCommand::TYPE_SEPARATOR) {
// Avoid double separators...
if (!menuPtr->actions().isEmpty() &&
!menuPtr->actions().last()->isSeparator())
{
menuPtr->addSeparator();
}
} else if (uc->isRaw() || uc->isChat()) {
menuPtr = ucMenu;
auto _begin = uc->getDisplayName().begin();
auto _end = uc->getDisplayName().end();
for(; _begin != _end; ++_begin) {
const QString name = _q(*_begin);
if (_begin + 1 == _end) {
menuPtr->addAction(name)->setData(uc->getId());
} else {
bool found = false;
QListIterator<QAction*> iter(menuPtr->actions());
while(iter.hasNext()) {
QAction *item = iter.next();
if (item->menu() && item->text() == name) {
found = true;
menuPtr = item->menu();
break;
}
}
if (!found)
menuPtr = menuPtr->addMenu(name);
}
}
}
}
return ucMenu;
}