本文整理汇总了C++中qVariantFromValue函数的典型用法代码示例。如果您正苦于以下问题:C++ qVariantFromValue函数的具体用法?C++ qVariantFromValue怎么用?C++ qVariantFromValue使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了qVariantFromValue函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: qvariant_from_sexp
QVariant qvariant_from_sexp(SEXP rvalue, int index) {
QVariant variant;
if (index == -1) {
/* If a particular element is not selected, then non-lists of
length one are considered scalars. Otherwise, collections.
Except for raw vectors, which are naturally QByteArrays.
*/
if (TYPEOF(rvalue) == RAWSXP)
return QVariant(from_sexp<QByteArray>(rvalue));
else if (TYPEOF(rvalue) == VECSXP || length(rvalue) > 1) {
SEXP rlist = coerceVector(rvalue, VECSXP);
if (getAttrib(rvalue, R_NamesSymbol) != R_NilValue)
variant = asQVariantOfType(rlist, QMetaType::QVariantMap);
else variant = asQVariantOfType(rlist, QMetaType::QVariantList);
return variant;
}
index = 0;
}
switch(TYPEOF(rvalue)) {
case RAWSXP:
variant = qVariantFromValue(RAW(rvalue)[index]);
break;
case LGLSXP:
// Rprintf("Logical\n");
// FIXME: by converting to 'bool' all NA become TRUE
variant = QVariant((bool)LOGICAL(rvalue)[index]);
break;
case REALSXP:
// Rprintf("Real\n");
variant = QVariant(REAL(rvalue)[index]);
break;
case INTSXP:
// Rprintf("Integer\n");
{
SEXP levels;
if ((levels = getAttrib(rvalue, R_LevelsSymbol)) != R_NilValue) {
int level = INTEGER(rvalue)[index];
SEXP level_str = NA_STRING;
/*Rprintf("getting level: %d\n", level);*/
if (level != NA_INTEGER)
level_str = STRING_ELT(levels, level - 1);
variant = QVariant(sexp2qstring(level_str));
} else variant = QVariant(INTEGER(rvalue)[index]);
break;
}
case STRSXP:
// Rprintf("String\n");
variant = QVariant(sexp2qstring(STRING_ELT(rvalue, index)));
break;
case EXTPTRSXP:
// Rprintf("External pointer\n");
variant = qVariantFromValue(unwrapPointer(rvalue, void));
break;
case VECSXP:
variant = from_sexp<QVariant>(VECTOR_ELT(rvalue, index));
break;
case ENVSXP: {
SmokeObject *so = SmokeObject::fromSexp(rvalue);
if (so->instanceOf("QWidget"))
variant =
qVariantFromValue(reinterpret_cast<QWidget *>(so->castPtr("QWidget")));
else if (so->instanceOf("QObject"))
variant =
qVariantFromValue(reinterpret_cast<QObject *>(so->castPtr("QObject")));
else {
QMetaType::Type type = (QMetaType::Type) QMetaType::type(so->className());
if (type)
variant = asQVariantOfType(rvalue, type, false);
else variant = qVariantFromValue(so->ptr());
}
}
break;
case NILSXP: // invalid QVariant
break;
default:
error("Converting to QVariant: unhandled R type");
}
return variant;
}
示例2: qVariantFromValue
QScriptValue REcmaLinetypePattern::create(QScriptContext* context, QScriptEngine* engine)
{
if (context->thisObject().strictlyEquals(
engine->globalObject())) {
return REcmaHelper::throwError(
QString::fromLatin1("RLinetypePattern(): Did you forget to construct with 'new'?"),
context);
}
QScriptValue result;
// generate constructor variants:
if( context->argumentCount() ==
0
){
// prepare arguments:
// end of arguments
// call C++ constructor:
// copyable class:
RLinetypePattern
cppResult;
result = engine->newVariant(
context->thisObject(), qVariantFromValue(cppResult));
} else
if( context->argumentCount() ==
1
&& (
context->argument(
0
).isVariant()
||
context->argument(
0
).isQObject()
||
context->argument(
0
).isNull()
) /* type: RLinetypePattern */
){
// prepare arguments:
// argument isCopyable and has default constructor and isSimpleClass
RLinetypePattern*
ap0 =
qscriptvalue_cast<
RLinetypePattern*
>(
context->argument(
0
)
);
if (ap0 == NULL) {
return REcmaHelper::throwError("RLinetypePattern: Argument 0 is not of type RLinetypePattern.",
context);
}
RLinetypePattern
a0 =
*ap0;
// end of arguments
// call C++ constructor:
// copyable class:
RLinetypePattern
cppResult(
a0
);
result = engine->newVariant(
context->thisObject(), qVariantFromValue(cppResult));
} else
{
return REcmaHelper::throwError(
QString::fromLatin1("RLinetypePattern(): no matching constructor found."),
context);
}
return result;
}
示例3: extcap_icon
void InterfaceTree::display()
{
#ifdef HAVE_LIBPCAP
interface_t device;
#if HAVE_EXTCAP
QIcon extcap_icon(StockIcon("x-capture-options"));
#endif
setDisabled(false);
clear();
if (global_capture_opts.all_ifaces->len == 0) {
// Error,or just no interfaces?
QTreeWidgetItem *ti = new QTreeWidgetItem();
QLabel *err_label;
if (global_capture_opts.ifaces_err == 0) {
err_label = new QLabel("No interfaces found");
} else {
err_label = new QLabel(global_capture_opts.ifaces_err_info);
}
err_label->setWordWrap(true);
setColumnCount(1);
addTopLevelItem(ti);
setItemWidget(ti, 0, err_label);
resizeColumnToContents(0);
return;
}
/* when no interfaces were available initially and an update of the
interface list called this function, the column count is set to 1
reset it to ensure that the interface list is properly displayed */
resetColumnCount();
// List physical interfaces first. Alternatively we could sort them by
// traffic, interface name, or most recently used.
QList<QTreeWidgetItem *> phys_ifaces;
QList<QTreeWidgetItem *> virt_ifaces;
for (guint i = 0; i < global_capture_opts.all_ifaces->len; i++) {
device = g_array_index(global_capture_opts.all_ifaces, interface_t, i);
/* Continue if capture device is hidden */
if (device.hidden) {
continue;
}
InterfaceTreeWidgetItem *ti = new InterfaceTreeWidgetItem();
ti->setText(IFTREE_COL_NAME, QString().fromUtf8(device.display_name));
ti->setData(IFTREE_COL_NAME, Qt::UserRole, QString(device.name));
ti->setData(IFTREE_COL_STATS, Qt::UserRole, qVariantFromValue(&ti->points));
#if HAVE_EXTCAP
if (device.if_info.type == IF_EXTCAP) {
if (extcap_has_configuration((const char *)(device.name), FALSE)) {
ti->setIcon(IFTREE_COL_EXTCAP, extcap_icon);
ti->setData(IFTREE_COL_EXTCAP, Qt::UserRole, QString(device.if_info.extcap));
if (!(device.external_cap_args_settings != 0 &&
g_hash_table_size(device.external_cap_args_settings) > 0))
{
QFont ti_font = ti->font(IFTREE_COL_NAME);
ti_font.setItalic(true);
ti->setFont(IFTREE_COL_NAME, ti_font);
}
}
virt_ifaces << ti;
} else
#endif
{
phys_ifaces << ti;
}
// XXX Need to handle interfaces passed from the command line.
if (strstr(prefs.capture_device, device.name) != NULL) {
device.selected = TRUE;
global_capture_opts.num_selected++;
global_capture_opts.all_ifaces = g_array_remove_index(global_capture_opts.all_ifaces, i);
g_array_insert_val(global_capture_opts.all_ifaces, i, device);
}
}
if (!phys_ifaces.isEmpty()) addTopLevelItems(phys_ifaces);
if (!virt_ifaces.isEmpty()) addTopLevelItems(virt_ifaces);
setSelectedInterfaces();
// XXX Add other device information
resizeColumnToContents(IFTREE_COL_NAME);
resizeColumnToContents(IFTREE_COL_STATS);
#if HAVE_EXTCAP
resizeColumnToContents(IFTREE_COL_EXTCAP);
#endif
#else
QTreeWidgetItem *ti = new QTreeWidgetItem();
clear();
setColumnCount(1);
ti->setText(0, tr("Interface information not available"));
//.........这里部分代码省略.........
示例4: QActionGroup
//.........这里部分代码省略.........
mapperCreatePluginHost->setMapping(bottomButton, NewSplitterBottom);
QObject::connect(mapperCreatePluginHost, SIGNAL(mapped(int)), SLOT(createPluginHost(int)));
//load plugin signal:
QObject::connect(addPluginWidgetButton, SIGNAL(clicked()), m_mapperLoadNewPlugin, SLOT(map()));
m_mapperLoadNewPlugin->setMapping(addPluginWidgetButton, pluginHost);
//close plugin host signal:
QObject::connect(closeButton, SIGNAL(clicked()), m_mapperClosePluginHost, SLOT(map()));
m_mapperClosePluginHost->setMapping(closeButton, pluginHost);
//create plugin switch signalmapper
QSignalMapper *mapperSwitchPlugin = new QSignalMapper(pluginHost);
mapperSwitchPlugin->setObjectName("rackPluginSwitchMapper");
QObject::connect(mapperSwitchPlugin, SIGNAL(mapped(QWidget *)), pluginStack, SLOT(setCurrentWidget(QWidget *)));
////test show/hide plugin widget
////QObject::connect(mapperSwitchPlugin, SIGNAL(mapped(QWidget *)), this, SLOT(showHidePluginWidget(QWidget*)));
//////
//create plugin toolbar for mainwindow
QToolBar *pluginToolBar = new QToolBar;
pluginToolBar->setObjectName("rackPluginToolBar");
pluginToolBar->setMovable(false);
pluginToolBar->hide();
addToolBar(Qt::BottomToolBarArea, pluginToolBar);
//store the toolbar pointer as dynamic property to access later when creating plugin toolbar buttons
pluginHost->setProperty("pluginToolBar", qVariantFromValue((QWidget *)pluginToolBar));
//plugin bar signals & slots:
QObject::connect(this, SIGNAL(enterSettingsMode()), pluginToolBar, SLOT(hide()));
QObject::connect(this, SIGNAL(leaveSettingsMode()), pluginToolBar, SLOT(show()));
//insert new pluginhost widget in splitter, create new splitter if necessary
if (position == 0)
{
m_mainSplitter->addWidget(pluginHost);
return;
}
QSignalMapper *sm = qobject_cast<QSignalMapper *>(sender());
QWidget *senderPluginHost = qobject_cast<QWidget *>(sm->mapping(position)->parent()->parent());
RSplitter *parentSplitter = qobject_cast<RSplitter *>(senderPluginHost->parent());
QList<int> widgetsizes;
int senderpos = parentSplitter->indexOf(senderPluginHost);
int newposition;
if ((position == NewSplitterLeft) or (position == NewSplitterTop)) newposition = senderpos;
else newposition = senderpos + 1;
switch (position + parentSplitter->orientation()) { //horizontal=1 vertical=2
case 0: //left horizontal / top vertical
case 2: //right horizontal
case 4: //bottom vertical
widgetsizes = parentSplitter->sizes();
widgetsizes.replace(senderpos, int(widgetsizes.at(senderpos)/2));
widgetsizes.insert(senderpos + 1, widgetsizes.at(senderpos));
示例5: QScriptValue
void REcmaPointEntity::init(QScriptEngine& engine, QScriptValue* proto
)
{
bool protoCreated = false;
if(proto == NULL){
proto = new QScriptValue(engine.newVariant(qVariantFromValue(
(RPointEntity*) 0)));
protoCreated = true;
}
// primary base class REntity:
QScriptValue dpt = engine.defaultPrototype(
qMetaTypeId<REntity*>());
if (dpt.isValid()) {
proto->setPrototype(dpt);
}
/*
*/
QScriptValue fun;
// toString:
REcmaHelper::registerFunction(&engine, proto, toString, "toString");
// destroy:
REcmaHelper::registerFunction(&engine, proto, destroy, "destroy");
// conversion for base class REntity
REcmaHelper::registerFunction(&engine, proto, getREntity, "getREntity");
// conversion for base class RObject
REcmaHelper::registerFunction(&engine, proto, getRObject, "getRObject");
// get class name
REcmaHelper::registerFunction(&engine, proto, getClassName, "getClassName");
// conversion to all base classes (multiple inheritance):
REcmaHelper::registerFunction(&engine, proto, getBaseClasses, "getBaseClasses");
// properties:
// methods:
REcmaHelper::registerFunction(&engine, proto, clone, "clone");
REcmaHelper::registerFunction(&engine, proto, getType, "getType");
REcmaHelper::registerFunction(&engine, proto, setProperty, "setProperty");
REcmaHelper::registerFunction(&engine, proto, getProperty, "getProperty");
REcmaHelper::registerFunction(&engine, proto, exportEntity, "exportEntity");
REcmaHelper::registerFunction(&engine, proto, getData, "getData");
REcmaHelper::registerFunction(&engine, proto, getPosition, "getPosition");
engine.setDefaultPrototype(
qMetaTypeId<RPointEntity*>(), *proto);
QScriptValue ctor = engine.newFunction(create, *proto, 2);
// static methods:
REcmaHelper::registerFunction(&engine, &ctor, init, "init");
// static properties:
ctor.setProperty("PropertyCustom",
qScriptValueFromValue(&engine, RPointEntity::PropertyCustom),
QScriptValue::SkipInEnumeration | QScriptValue::ReadOnly);
ctor.setProperty("PropertyHandle",
qScriptValueFromValue(&engine, RPointEntity::PropertyHandle),
QScriptValue::SkipInEnumeration | QScriptValue::ReadOnly);
ctor.setProperty("PropertyType",
qScriptValueFromValue(&engine, RPointEntity::PropertyType),
QScriptValue::SkipInEnumeration | QScriptValue::ReadOnly);
ctor.setProperty("PropertyBlock",
qScriptValueFromValue(&engine, RPointEntity::PropertyBlock),
//.........这里部分代码省略.........
示例6: qtscript_QFontDialog_FontDialogOptions_toScriptValue
static QScriptValue qtscript_QFontDialog_FontDialogOptions_toScriptValue(QScriptEngine *engine, const QFontDialog::FontDialogOptions &value)
{
return engine->newVariant(qVariantFromValue(value));
}
示例7: LOG
bool GameUI::Create()
{
if (!LoadWindowFromXML("game-ui.xml", "gameui", this))
return false;
bool err = false;
UIUtilE::Assign(this, m_gameUITree, "gametreelist", &err);
UIUtilW::Assign(this, m_gameTitleText, "title");
UIUtilW::Assign(this, m_gameSystemText, "system");
UIUtilW::Assign(this, m_gameYearText, "year");
UIUtilW::Assign(this, m_gameGenreText, "genre");
UIUtilW::Assign(this, m_gameFavouriteState, "favorite");
UIUtilW::Assign(this, m_gamePlotText, "description");
UIUtilW::Assign(this, m_gameImage, "screenshot");
UIUtilW::Assign(this, m_fanartImage, "fanart");
UIUtilW::Assign(this, m_boxImage, "coverart");
if (err)
{
LOG(VB_GENERAL, LOG_ERR, "Cannot load screen 'gameui'");
return false;
}
connect(m_gameUITree, SIGNAL(itemClicked(MythUIButtonListItem*)),
this, SLOT(itemClicked(MythUIButtonListItem*)));
connect(m_gameUITree, SIGNAL(nodeChanged(MythGenericTree*)),
this, SLOT(nodeChanged(MythGenericTree*)));
m_gameShowFileName = gCoreContext->GetSetting("GameShowFileNames").toInt();
m_gameTree = new MythGenericTree("game root", 0, false);
// create system filter to only select games where handlers are present
QString systemFilter;
// The call to GameHandler::count() fills the handler list for us
// to move through.
unsigned handlercount = GameHandler::count();
for (unsigned i = 0; i < handlercount; ++i)
{
QString system = GameHandler::getHandler(i)->SystemName();
if (i == 0)
systemFilter = "system in ('" + system + "'";
else
systemFilter += ",'" + system + "'";
}
if (systemFilter.isEmpty())
{
systemFilter = "1=0";
LOG(VB_GENERAL, LOG_ERR, QString("Couldn't find any game handlers!"));
}
else
systemFilter += ")";
m_showHashed = gCoreContext->GetSetting("GameTreeView").toInt();
// create a few top level nodes - this could be moved to a config based
// approach with multiple roots if/when someone has the time to create
// the relevant dialog screens
QString levels = gCoreContext->GetSetting("GameFavTreeLevels");
MythGenericTree *new_node = new MythGenericTree(tr("Favorites"), 1, true);
new_node->SetData(qVariantFromValue(
new GameTreeInfo(levels, systemFilter + " and favorite=1")));
m_favouriteNode = m_gameTree->addNode(new_node);
levels = gCoreContext->GetSetting("GameAllTreeLevels");
if (m_showHashed)
{
int pos = levels.indexOf("gamename");
if (pos >= 0)
levels.insert(pos, " hash ");
}
new_node = new MythGenericTree(tr("All Games"), 1, true);
new_node->SetData(qVariantFromValue(
new GameTreeInfo(levels, systemFilter)));
m_gameTree->addNode(new_node);
new_node = new MythGenericTree(tr("- By Genre"), 1, true);
new_node->SetData(qVariantFromValue(
new GameTreeInfo("genre gamename", systemFilter)));
m_gameTree->addNode(new_node);
new_node = new MythGenericTree(tr("- By Year"), 1, true);
new_node->SetData(qVariantFromValue(
new GameTreeInfo("year gamename", systemFilter)));
m_gameTree->addNode(new_node);
new_node = new MythGenericTree(tr("- By Name"), 1, true);
new_node->SetData(qVariantFromValue(
new GameTreeInfo("gamename", systemFilter)));
m_gameTree->addNode(new_node);
new_node = new MythGenericTree(tr("- By Publisher"), 1, true);
new_node->SetData(qVariantFromValue(
//.........这里部分代码省略.........
示例8: if
void ScreenSetup::customEvent(QEvent *event)
{
if (event->type() == DialogCompletionEvent::kEventType)
{
DialogCompletionEvent *dce = (DialogCompletionEvent*)(event);
QString resultid = dce->GetId();
int buttonnum = dce->GetResult();
if (resultid == "options")
{
if (buttonnum > -1)
{
MythUIButtonListItem *item =
dce->GetData().value<MythUIButtonListItem *>();
ScreenListInfo *si = item->GetData().value<ScreenListInfo *>();
if (buttonnum == 0)
{
m_activeList->MoveItemUpDown(item, true);
}
else if (buttonnum == 1)
{
m_activeList->MoveItemUpDown(item, false);
}
else if (buttonnum == 2)
{
deleteScreen();
}
else if (buttonnum == 3)
{
si->updating = true;
doLocationDialog(si);
}
else if (si->hasUnits && buttonnum == 4)
{
si->updating = true;
showUnitsPopup(item->GetText(), si);
updateHelpText();
}
}
}
else if (resultid == "units")
{
if (buttonnum > -1)
{
ScreenListInfo *si = dce->GetData().value<ScreenListInfo *>();
if (buttonnum == 0)
{
si->units = ENG_UNITS;
}
else if (buttonnum == 1)
{
si->units = SI_UNITS;
}
updateHelpText();
if (si->updating)
si->updating = false;
else
doLocationDialog(si);
}
}
else if (resultid == "location")
{
ScreenListInfo *si = dce->GetData().value<ScreenListInfo *>();
TypeListMap::iterator it = si->types.begin();
for (; it != si->types.end(); ++it)
{
if ((*it).location.isEmpty())
return;
}
if (si->updating)
{
si->updating = false;
MythUIButtonListItem *item = m_activeList->GetItemCurrent();
if (item)
item->SetData(qVariantFromValue(si));
}
else
{
QString txt = si->title; txt.detach();
MythUIButtonListItem *item =
new MythUIButtonListItem(m_activeList, txt);
item->SetData(qVariantFromValue(si));
}
if (m_activeList->GetCount())
m_activeList->SetEnabled(true);
}
}
}
示例9: tr
void LocationDialog::doSearch()
{
QString busymessage = tr("Searching...");
MythScreenStack *popupStack = GetMythMainWindow()->GetStack("popup stack");
MythUIBusyDialog *busyPopup = new MythUIBusyDialog(busymessage, popupStack,
"mythweatherbusydialog");
if (busyPopup->Create())
{
popupStack->AddScreen(busyPopup, false);
}
else
{
delete busyPopup;
busyPopup = NULL;
}
QMap<ScriptInfo *, QStringList> result_cache;
int numresults = 0;
clearResults();
QString searchingresults = tr("Searching... Results: %1");
m_resultsText->SetText(searchingresults.arg(0));
qApp->processEvents();
QList<ScriptInfo *> sources;
// if a screen makes it this far, theres at least one source for it
m_sourceManager->findPossibleSources(m_types, sources);
QString search = m_locationEdit->GetText();
ScriptInfo *si;
for (int x = 0; x < sources.size(); x++)
{
si = sources.at(x);
if (!result_cache.contains(si))
{
QStringList results = m_sourceManager->getLocationList(si, search);
result_cache[si] = results;
numresults += results.size();
m_resultsText->SetText(searchingresults.arg(numresults));
qApp->processEvents();
}
}
QMap<ScriptInfo *, QStringList>::iterator it;
for (it = result_cache.begin(); it != result_cache.end(); ++it)
{
si = it.key();
QStringList results = it.value();
QString name = si->name;
QStringList::iterator rit;
for (rit = results.begin(); rit != results.end(); ++rit)
{
QStringList tmp = (*rit).split("::");
if (tmp.size() < 2)
{
LOG(VB_GENERAL, LOG_WARNING,
QString("Invalid line in Location Search reponse "
"from %1: %2")
.arg(name).arg(*rit));
continue;
}
QString resultstring = QString("%1 (%2)").arg(tmp[1]).arg(name);
MythUIButtonListItem *item =
new MythUIButtonListItem(m_locationList, resultstring);
ResultListInfo *ri = new ResultListInfo;
ri->idstr = tmp[0];
ri->src = si;
item->SetData(qVariantFromValue(ri));
qApp->processEvents();
}
}
if (busyPopup)
{
busyPopup->Close();
busyPopup = NULL;
}
m_resultsText->SetText(tr("Search Complete. Results: %1").arg(numresults));
if (numresults)
SetFocusWidget(m_locationList);
}
示例10: loadScreens
void ScreenSetup::loadData()
{
ScreenListInfo *si;
QStringList types;
ScreenListMap screenListMap = loadScreens();
// Fill the inactive screen button list.
ScreenListMap::const_iterator i = screenListMap.constBegin();
while (i != screenListMap.constEnd())
{
si = &screenListMap[i.key()];
types = si->dataTypes;
si->units = ENG_UNITS;
QStringList type_strs;
for (int typei = 0; typei < types.size(); ++typei)
{
TypeListInfo ti(types[typei]);
si->types.insert(types[typei], ti);
type_strs << types[typei];
}
QList<ScriptInfo *> scriptList;
// Only add a screen to the list if we have a source
// available to satisfy the requirements.
if (m_sourceManager->findPossibleSources(type_strs, scriptList))
{
ScriptInfo *script;
for (int x = 0; x < scriptList.size(); x++)
{
script = scriptList.at(x);
si->sources.append(script->name);
}
MythUIButtonListItem *item =
new MythUIButtonListItem(m_inactiveList, si->title);
item->SetData(qVariantFromValue(new ScreenListInfo(*si)));
}
++i;
}
QMap<long, ScreenListInfo*> active_screens;
MSqlQuery db(MSqlQuery::InitCon());
QString query = "SELECT weatherscreens.container, weatherscreens.units, "
"weatherdatalayout.dataitem, weatherdatalayout.location, "
"weathersourcesettings.source_name, weatherscreens.draworder "
"FROM weatherscreens, weatherdatalayout, weathersourcesettings "
"WHERE weatherscreens.hostname = :HOST "
"AND weatherscreens.screen_id = weatherdatalayout.weatherscreens_screen_id "
"AND weathersourcesettings.sourceid = weatherdatalayout.weathersourcesettings_sourceid "
"ORDER BY weatherscreens.draworder;";
db.prepare(query);
db.bindValue(":HOST", gCoreContext->GetHostName());
if (!db.exec())
{
LOG(VB_GENERAL, LOG_ERR, db.lastError().text());
return;
}
// Fill the active screen button list.
while (db.next())
{
QString name = db.value(0).toString();
units_t units = db.value(1).toUInt();
QString dataitem = db.value(2).toString();
QString location = db.value(3).toString();
QString src = db.value(4).toString();
uint draworder = db.value(5).toUInt();
types = screenListMap[name].dataTypes;
TypeListInfo ti(dataitem, location,
m_sourceManager->getSourceByName(src));
if (active_screens.find(draworder) == active_screens.end())
{
si = new ScreenListInfo(screenListMap[name]);
// Clear types first as we will re-insert the values from the database
si->types.clear();
si->units = units;
MythUIButtonListItem *item =
new MythUIButtonListItem(m_activeList, si->title);
// Only insert types meant for this screen
for (QStringList::Iterator type_i = types.begin();
type_i != types.end(); ++type_i )
{
if (*type_i == dataitem)
si->types.insert(dataitem, ti);
}
item->SetData(qVariantFromValue(si));
active_screens.insert(draworder, si);
}
//.........这里部分代码省略.........
示例11: qtscript_QQuaternion_static_call
static QScriptValue qtscript_QQuaternion_static_call(QScriptContext *context, QScriptEngine *)
{
uint _id = context->callee().data().toUInt32();
Q_ASSERT((_id & 0xFFFF0000) == 0xBABE0000);
_id &= 0x0000FFFF;
switch (_id) {
case 0:
if (context->thisObject().strictlyEquals(context->engine()->globalObject())) {
return context->throwError(QString::fromLatin1("QQuaternion(): Did you forget to construct with 'new'?"));
}
if (context->argumentCount() == 0) {
QQuaternion _q_cpp_result;
QScriptValue _q_result = context->engine()->newVariant(context->thisObject(), qVariantFromValue(_q_cpp_result));
return _q_result;
} else if (context->argumentCount() == 1) {
QVector4D _q_arg0 = qscriptvalue_cast<QVector4D>(context->argument(0));
QQuaternion _q_cpp_result(_q_arg0);
QScriptValue _q_result = context->engine()->newVariant(context->thisObject(), qVariantFromValue(_q_cpp_result));
return _q_result;
} else if (context->argumentCount() == 2) {
float _q_arg0 = qscriptvalue_cast<float>(context->argument(0));
QVector3D _q_arg1 = qscriptvalue_cast<QVector3D>(context->argument(1));
QQuaternion _q_cpp_result(_q_arg0, _q_arg1);
QScriptValue _q_result = context->engine()->newVariant(context->thisObject(), qVariantFromValue(_q_cpp_result));
return _q_result;
} else if (context->argumentCount() == 4) {
float _q_arg0 = qscriptvalue_cast<float>(context->argument(0));
float _q_arg1 = qscriptvalue_cast<float>(context->argument(1));
float _q_arg2 = qscriptvalue_cast<float>(context->argument(2));
float _q_arg3 = qscriptvalue_cast<float>(context->argument(3));
QQuaternion _q_cpp_result(_q_arg0, _q_arg1, _q_arg2, _q_arg3);
QScriptValue _q_result = context->engine()->newVariant(context->thisObject(), qVariantFromValue(_q_cpp_result));
return _q_result;
}
break;
case 1:
if (context->argumentCount() == 2) {
QVector3D _q_arg0 = qscriptvalue_cast<QVector3D>(context->argument(0));
float _q_arg1 = qscriptvalue_cast<float>(context->argument(1));
QQuaternion _q_result = QQuaternion::fromAxisAndAngle(_q_arg0, _q_arg1);
return qScriptValueFromValue(context->engine(), _q_result);
}
if (context->argumentCount() == 4) {
float _q_arg0 = qscriptvalue_cast<float>(context->argument(0));
float _q_arg1 = qscriptvalue_cast<float>(context->argument(1));
float _q_arg2 = qscriptvalue_cast<float>(context->argument(2));
float _q_arg3 = qscriptvalue_cast<float>(context->argument(3));
QQuaternion _q_result = QQuaternion::fromAxisAndAngle(_q_arg0, _q_arg1, _q_arg2, _q_arg3);
return qScriptValueFromValue(context->engine(), _q_result);
}
break;
case 2:
if (context->argumentCount() == 3) {
QQuaternion _q_arg0 = qscriptvalue_cast<QQuaternion>(context->argument(0));
QQuaternion _q_arg1 = qscriptvalue_cast<QQuaternion>(context->argument(1));
float _q_arg2 = qscriptvalue_cast<float>(context->argument(2));
QQuaternion _q_result = QQuaternion::nlerp(_q_arg0, _q_arg1, _q_arg2);
return qScriptValueFromValue(context->engine(), _q_result);
}
break;
case 3:
if (context->argumentCount() == 3) {
QQuaternion _q_arg0 = qscriptvalue_cast<QQuaternion>(context->argument(0));
QQuaternion _q_arg1 = qscriptvalue_cast<QQuaternion>(context->argument(1));
float _q_arg2 = qscriptvalue_cast<float>(context->argument(2));
QQuaternion _q_result = QQuaternion::slerp(_q_arg0, _q_arg1, _q_arg2);
return qScriptValueFromValue(context->engine(), _q_result);
}
break;
default:
Q_ASSERT(false);
}
return qtscript_QQuaternion_throw_ambiguity_error_helper(context,
qtscript_QQuaternion_function_names[_id],
qtscript_QQuaternion_function_signatures[_id]);
}
示例12: QVERIFY
void PythonQtTestApi::testCall()
{
PythonQtObjectPtr main = PythonQt::self()->getMainModule();
QVERIFY(qvariant_cast<QObject*>(PythonQt::self()->getVariable(main, "obj"))==_helper);
PyRun_SimpleString("def testCallNoArgs():\n obj.setPassed();\n");
QVERIFY(_helper->call("testCallNoArgs", QVariantList(), QVariant()));
PyRun_SimpleString("def testCall1(a):\n if a=='test': obj.setPassed();\n return 'test2';\n");
QVERIFY(_helper->call("testCall1", QVariantList() << QVariant("test"), QVariant(QString("test2"))));
PyRun_SimpleString("def testCall2(a, b):\n if a=='test' and b==obj: obj.setPassed();\n return obj;\n");
QVariant r = PythonQt::self()->call(PythonQt::self()->getMainModule(), "testCall2", QVariantList() << QVariant("test") << qVariantFromValue((QObject*)_helper));
QObject* p = qvariant_cast<QObject*>(r);
QVERIFY(p==_helper);
}
示例13: asQVariantOfType
/* create a QVariant of specific type by first creating a QVariant
directly, and then attempting to coerce it to the required type.
*/
QVariant asQVariantOfType(SEXP rvalue, QMetaType::Type type, bool tryDirect)
{
QVariant ans;
if (tryDirect) {
QVariant direct = from_sexp<QVariant>(rvalue);
if (direct.canConvert((QVariant::Type)type)) { // handles a few cases
direct.convert((QVariant::Type)type);
return direct;
}
}
switch(type) {
case QMetaType::QObjectStar:
{
SmokeType type(qt_Smoke, "QObject*");
ans = qVariantFromValue(ptr_from_sexp<QObject *>(rvalue, type));
}
break;
case QMetaType::QWidgetStar:
{
SmokeType type(qt_Smoke, "QWidget*");
ans = qVariantFromValue(ptr_from_sexp<QWidget *>(rvalue, type));
}
break;
case QMetaType::QCursor:
ans = QVARIANT_FROM_SEXP(rvalue, QCursor);
break;
case QMetaType::QDate:
ans = QVARIANT_FROM_SEXP(rvalue, QDate);
break;
case QMetaType::QSize:
ans = QVARIANT_FROM_SEXP(rvalue, QSize);
break;
case QMetaType::QSizeF:
ans = QVARIANT_FROM_SEXP(rvalue, QSizeF);
break;
case QMetaType::QTime:
ans = QVARIANT_FROM_SEXP(rvalue, QTime);
break;
case QMetaType::QVariantList:
{
SmokeType type(qt_Smoke, "QList<QVariant>>");
ans = QVariant(from_sexp<QList<QVariant> >(rvalue, type));
}
break;
case QMetaType::QPolygon:
ans = QVARIANT_FROM_SEXP(rvalue, QPolygon);
break;
case QMetaType::QColor:
ans = QVARIANT_FROM_SEXP(rvalue, QColor);
break;
case QMetaType::QRectF:
ans = QVARIANT_FROM_SEXP(rvalue, QRectF);
break;
case QMetaType::QRect:
ans = QVARIANT_FROM_SEXP(rvalue, QRect);
break;
case QMetaType::QLine:
ans = QVARIANT_FROM_SEXP(rvalue, QLine);
break;
case QMetaType::QTextLength:
ans = QVARIANT_FROM_SEXP(rvalue, QTextLength);
break;
case QMetaType::QStringList:
{
SmokeType type(qt_Smoke, "QStringList");
ans = QVariant(from_sexp<QStringList>(rvalue, type));
}
break;
case QMetaType::QVariantMap:
{
SmokeType type(qt_Smoke, "QMap<QString,QVariant>");
ans = QVariant(from_sexp<QMap<QString,QVariant> >(rvalue, type));
}
break;
#if QT_VERSION >= 0x40500
case QMetaType::QVariantHash:
{
SmokeType type(qt_Smoke, "QHash<QString,QVariant>");
ans = QVariant(from_sexp<QHash<QString,QVariant> >(rvalue, type));
}
break;
#endif
case QMetaType::QIcon:
ans = QVARIANT_FROM_SEXP(rvalue, QIcon);
break;
case QMetaType::QPen:
ans = QVARIANT_FROM_SEXP(rvalue, QPen);
break;
case QMetaType::QLineF:
ans = QVARIANT_FROM_SEXP(rvalue, QLineF);
break;
case QMetaType::QTextFormat:
ans = QVARIANT_FROM_SEXP(rvalue, QTextFormat);
break;
case QMetaType::QPoint:
ans = QVARIANT_FROM_SEXP(rvalue, QPoint);
case QMetaType::QPointF:
//.........这里部分代码省略.........
示例14: qtscript_QUrlInfo_static_call
static QScriptValue qtscript_QUrlInfo_static_call(QScriptContext *context, QScriptEngine *)
{
uint _id = context->callee().data().toUInt32();
Q_ASSERT((_id & 0xFFFF0000) == 0xBABE0000);
_id &= 0x0000FFFF;
switch (_id) {
case 0:
if (context->thisObject().strictlyEquals(context->engine()->globalObject())) {
return context->throwError(QString::fromLatin1("QUrlInfo(): Did you forget to construct with 'new'?"));
}
if (context->argumentCount() == 0) {
QtScriptShell_QUrlInfo _q_cpp_result;
QScriptValue _q_result = context->engine()->newVariant(context->thisObject(), qVariantFromValue((QUrlInfo)_q_cpp_result));
_q_cpp_result.__qtscript_self = _q_result;
return _q_result;
} else if (context->argumentCount() == 1) {
QUrlInfo _q_arg0 = qscriptvalue_cast<QUrlInfo>(context->argument(0));
QtScriptShell_QUrlInfo _q_cpp_result(_q_arg0);
QScriptValue _q_result = context->engine()->newVariant(context->thisObject(), qVariantFromValue((QUrlInfo)_q_cpp_result));
_q_cpp_result.__qtscript_self = _q_result;
return _q_result;
} else if (context->argumentCount() == 13) {
if (context->argument(0).isString()
&& context->argument(1).isNumber()
&& context->argument(2).isString()
&& context->argument(3).isString()
&& (qMetaTypeId<qint64>() == context->argument(4).toVariant().userType())
&& (qMetaTypeId<QDateTime>() == context->argument(5).toVariant().userType())
&& (qMetaTypeId<QDateTime>() == context->argument(6).toVariant().userType())
&& context->argument(7).isBoolean()
&& context->argument(8).isBoolean()
&& context->argument(9).isBoolean()
&& context->argument(10).isBoolean()
&& context->argument(11).isBoolean()
&& context->argument(12).isBoolean()) {
QString _q_arg0 = context->argument(0).toString();
int _q_arg1 = context->argument(1).toInt32();
QString _q_arg2 = context->argument(2).toString();
QString _q_arg3 = context->argument(3).toString();
qint64 _q_arg4 = qscriptvalue_cast<qint64>(context->argument(4));
QDateTime _q_arg5 = context->argument(5).toDateTime();
QDateTime _q_arg6 = context->argument(6).toDateTime();
bool _q_arg7 = context->argument(7).toBoolean();
bool _q_arg8 = context->argument(8).toBoolean();
bool _q_arg9 = context->argument(9).toBoolean();
bool _q_arg10 = context->argument(10).toBoolean();
bool _q_arg11 = context->argument(11).toBoolean();
bool _q_arg12 = context->argument(12).toBoolean();
QtScriptShell_QUrlInfo _q_cpp_result(_q_arg0, _q_arg1, _q_arg2, _q_arg3, _q_arg4, _q_arg5, _q_arg6, _q_arg7, _q_arg8, _q_arg9, _q_arg10, _q_arg11, _q_arg12);
QScriptValue _q_result = context->engine()->newVariant(context->thisObject(), qVariantFromValue((QUrlInfo)_q_cpp_result));
_q_cpp_result.__qtscript_self = _q_result;
return _q_result;
} else if ((qMetaTypeId<QUrl>() == context->argument(0).toVariant().userType())
&& context->argument(1).isNumber()
&& context->argument(2).isString()
&& context->argument(3).isString()
&& (qMetaTypeId<qint64>() == context->argument(4).toVariant().userType())
&& (qMetaTypeId<QDateTime>() == context->argument(5).toVariant().userType())
&& (qMetaTypeId<QDateTime>() == context->argument(6).toVariant().userType())
&& context->argument(7).isBoolean()
&& context->argument(8).isBoolean()
&& context->argument(9).isBoolean()
&& context->argument(10).isBoolean()
&& context->argument(11).isBoolean()
&& context->argument(12).isBoolean()) {
QUrl _q_arg0 = qscriptvalue_cast<QUrl>(context->argument(0));
int _q_arg1 = context->argument(1).toInt32();
QString _q_arg2 = context->argument(2).toString();
QString _q_arg3 = context->argument(3).toString();
qint64 _q_arg4 = qscriptvalue_cast<qint64>(context->argument(4));
QDateTime _q_arg5 = context->argument(5).toDateTime();
QDateTime _q_arg6 = context->argument(6).toDateTime();
bool _q_arg7 = context->argument(7).toBoolean();
bool _q_arg8 = context->argument(8).toBoolean();
bool _q_arg9 = context->argument(9).toBoolean();
bool _q_arg10 = context->argument(10).toBoolean();
bool _q_arg11 = context->argument(11).toBoolean();
bool _q_arg12 = context->argument(12).toBoolean();
QtScriptShell_QUrlInfo _q_cpp_result(_q_arg0, _q_arg1, _q_arg2, _q_arg3, _q_arg4, _q_arg5, _q_arg6, _q_arg7, _q_arg8, _q_arg9, _q_arg10, _q_arg11, _q_arg12);
QScriptValue _q_result = context->engine()->newVariant(context->thisObject(), qVariantFromValue((QUrlInfo)_q_cpp_result));
_q_cpp_result.__qtscript_self = _q_result;
return _q_result;
}
}
break;
case 1:
if (context->argumentCount() == 3) {
QUrlInfo _q_arg0 = qscriptvalue_cast<QUrlInfo>(context->argument(0));
QUrlInfo _q_arg1 = qscriptvalue_cast<QUrlInfo>(context->argument(1));
int _q_arg2 = context->argument(2).toInt32();
bool _q_result = QUrlInfo::equal(_q_arg0, _q_arg1, _q_arg2);
return QScriptValue(context->engine(), _q_result);
}
break;
case 2:
if (context->argumentCount() == 3) {
QUrlInfo _q_arg0 = qscriptvalue_cast<QUrlInfo>(context->argument(0));
QUrlInfo _q_arg1 = qscriptvalue_cast<QUrlInfo>(context->argument(1));
//.........这里部分代码省略.........
示例15: MythUIButtonListItem
//.........这里部分代码省略.........
new MythUIButtonListItem(m_countryList, VIDEO_COUNTRY_UNKNOWN,
kCountryFilterUnknown);
m_countryList->SetValueByData(m_settings.getCountry());
// Year
new MythUIButtonListItem(m_yearList, QObject::tr("All"), kYearFilterAll);
for (int_list::const_reverse_iterator p = years.rbegin();
p != years.rend(); ++p)
{
new MythUIButtonListItem(m_yearList, QString::number(*p), *p);
}
if (have_unknown_year)
new MythUIButtonListItem(m_yearList, VIDEO_YEAR_UNKNOWN,
kYearFilterUnknown);
m_yearList->SetValueByData(m_settings.getYear());
// Runtime
new MythUIButtonListItem(m_runtimeList, QObject::tr("All"), kRuntimeFilterAll);
if (have_unknown_runtime)
new MythUIButtonListItem(m_runtimeList, VIDEO_RUNTIME_UNKNOWN,
kRuntimeFilterUnknown);
for (int_list::const_iterator p = runtimes.begin();
p != runtimes.end(); ++p)
{
QString s = QString("%1 %2 ~ %3 %4").arg(*p * 30).arg(tr("minutes"))
.arg((*p + 1) * 30).arg(tr("minutes"));
new MythUIButtonListItem(m_runtimeList, s, *p);
}
m_runtimeList->SetValueByData(m_settings.getRuntime());
// User Rating
new MythUIButtonListItem(m_userratingList, QObject::tr("All"),
kUserRatingFilterAll);
for (int_list::const_reverse_iterator p = user_ratings.rbegin();
p != user_ratings.rend(); ++p)
{
new MythUIButtonListItem(m_userratingList,
QString(">= %1").arg(QString::number(*p)),
*p);
}
m_userratingList->SetValueByData(m_settings.GetUserRating());
// Browsable
new MythUIButtonListItem(m_browseList, QObject::tr("All"), kBrowseFilterAll);
new MythUIButtonListItem(m_browseList, QObject::tr("Yes"),
qVariantFromValue(1));
new MythUIButtonListItem(m_browseList, QObject::tr("No"),
qVariantFromValue(0));
m_browseList->SetValueByData(m_settings.GetBrowse());
// Watched
new MythUIButtonListItem(m_watchedList, QObject::tr("All"), kWatchedFilterAll);
new MythUIButtonListItem(m_watchedList, QObject::tr("Yes"),
qVariantFromValue(1));
new MythUIButtonListItem(m_watchedList, QObject::tr("No"),
qVariantFromValue(0));
m_watchedList->SetValueByData(m_settings.GetWatched());
// Inet Reference
new MythUIButtonListItem(m_inetrefList, QObject::tr("All"),
kInetRefFilterAll);
new MythUIButtonListItem(m_inetrefList, QObject::tr("Unknown"),
kInetRefFilterUnknown);
m_inetrefList->SetValueByData(m_settings.getInteRef());
// Coverfile
new MythUIButtonListItem(m_coverfileList, QObject::tr("All"),
kCoverFileFilterAll);
new MythUIButtonListItem(m_coverfileList, QObject::tr("None"),
kCoverFileFilterNone);
m_coverfileList->SetValueByData(m_settings.GetCoverFile());
// Order by
new MythUIButtonListItem(m_orderbyList, QObject::tr("Title"),
VideoFilterSettings::kOrderByTitle);
new MythUIButtonListItem(m_orderbyList, QObject::tr("Season/Episode"),
VideoFilterSettings::kOrderBySeasonEp);
new MythUIButtonListItem(m_orderbyList, QObject::tr("Year"),
VideoFilterSettings::kOrderByYearDescending);
new MythUIButtonListItem(m_orderbyList, QObject::tr("User Rating"),
VideoFilterSettings::kOrderByUserRatingDescending);
new MythUIButtonListItem(m_orderbyList, QObject::tr("Runtime"),
VideoFilterSettings::kOrderByLength);
new MythUIButtonListItem(m_orderbyList, QObject::tr("Filename"),
VideoFilterSettings::kOrderByFilename);
new MythUIButtonListItem(m_orderbyList, QObject::tr("Video ID"),
VideoFilterSettings::kOrderByID);
m_orderbyList->SetValueByData(m_settings.getOrderby());
// Text Filter
m_textfilter->SetText(m_settings.getTextFilter());
}