void
PointerDetectorFilter::invoke (KmsMediaInvocationReturn &_return,
                               const std::string &command,
                               const std::map< std::string, KmsMediaParam > &params)
throw (KmsMediaServerException)
{
  if (g_KmsMediaPointerDetectorFilterType_constants.ADD_NEW_WINDOW.compare (command) == 0) {
    KmsMediaPointerDetectorWindow windowInfo;
    const KmsMediaParam *p;
    /* extract window params from param */
    p = getParam (params,
                  g_KmsMediaPointerDetectorFilterType_constants.ADD_NEW_WINDOW_PARAM_WINDOW);

    if (p != NULL) {
      unmarshalStruct (windowInfo, p->data);
      /* create window */
      addWindow (windowInfo);
    }
  } else if (g_KmsMediaPointerDetectorFilterType_constants.REMOVE_WINDOW.compare (command) == 0) {
    std::string id;

    getStringParam (id, params, g_KmsMediaPointerDetectorFilterType_constants.REMOVE_WINDOW_PARAM_WINDOW_ID);
    removeWindow (id);
  } else if (g_KmsMediaPointerDetectorFilterType_constants.CLEAR_WINDOWS.compare (command) == 0) {
    clearWindows();
  }
}
Ejemplo n.º 2
0
bool MainWindow::search(const QString &service, const QString &query, const QString &type, const QString &order) {
    clearWindows();
    
    if (service != Settings::currentService()) {
        setService(service);
    }
    
    return QMetaObject::invokeMethod(centralWidget(), "search", Qt::QueuedConnection, Q_ARG(QString, query),
                                     Q_ARG(QString, type), Q_ARG(QString, order));
}
Ejemplo n.º 3
0
bool MainWindow::showResource(const QVariantMap &resource) {
    clearWindows();
    activateWindow();
    
    const QVariant service = resource.value("service");
    
    if (service != Settings::currentService()) {
        setService(service);
    }
    
    return QMetaObject::invokeMethod(centralWidget(), "showResource", Qt::QueuedConnection,
                                     Q_ARG(QString, resource.value("type").toString()),
                                     Q_ARG(QString, resource.value("id").toString()));
}