HidingTab::HidingTab(QWidget *parent, const char *name) : HidingTabBase(parent, name), m_panelInfo(0) { // connections connect(m_manual, SIGNAL(toggled(bool)), SIGNAL(changed())); connect(m_automatic, SIGNAL(toggled(bool)), SIGNAL(changed())); connect(m_automatic, SIGNAL(toggled(bool)), SLOT(backgroundModeClicked())); connect(m_background, SIGNAL(toggled(bool)), SIGNAL(changed())); connect(m_background, SIGNAL(toggled(bool)), SLOT(backgroundModeClicked())); connect(m_hideSlider, SIGNAL(valueChanged(int)), SIGNAL(changed())); connect(m_delaySpinBox, SIGNAL(valueChanged(int)), SIGNAL(changed())); connect(m_animateHiding, SIGNAL(toggled(bool)), SIGNAL(changed())); connect(m_delaySpinBox, SIGNAL(valueChanged(int)), SIGNAL(changed())); connect(m_autoHideSwitch, SIGNAL(toggled(bool)), SIGNAL(changed())); connect(m_backgroundRaise, SIGNAL(toggled(bool)), SIGNAL(changed())); connect(m_backgroundPos, SIGNAL(activated(int)), SIGNAL(changed())); connect(m_lHB, SIGNAL(toggled(bool)), SIGNAL(changed())); connect(m_rHB, SIGNAL(toggled(bool)), SIGNAL(changed())); connect(KickerConfig::the(), SIGNAL(extensionInfoChanged()), SLOT(infoUpdated())); connect(KickerConfig::the(), SIGNAL(extensionAdded(ExtensionInfo *)), SLOT(extensionAdded(ExtensionInfo *))); connect(KickerConfig::the(), SIGNAL(extensionRemoved(ExtensionInfo *)), SLOT(extensionRemoved(ExtensionInfo *))); // position tab tells hiding tab about extension selections and vice versa connect(KickerConfig::the(), SIGNAL(positionPanelChanged(int)), SLOT(switchPanel(int))); connect(m_panelList, SIGNAL(activated(int)), KickerConfig::the(), SIGNAL(hidingPanelChanged(int))); }
void KoDocumentInfo::setAboutInfo(const QString &info, const QString &data) { if (!m_aboutTags.contains(info)) return; m_aboutInfo.insert(info, data); emit infoUpdated(info, data); }
void KoDocumentInfo::setActiveAuthorInfo(const QString &info, const QString &data) { if (!m_authorTags.contains(info)) { return; } if (data.isEmpty()) { m_authorInfo.remove(info); } else { m_authorInfo.insert(info, data); } emit infoUpdated(info, data); }
bool FullInfoMetaRequest::handleData(quint16 type, const DataUnit &data) { Q_D(FullInfoMetaRequest); switch (type) { case (StateBasicInfo): d->handleBasicInfo(data); break; case (StateMoreInfo): d->handleMoreInfo(data); break; case (StateEmails): d->handleEmails(data); break; case (StateHomepage): d->handleHomepage(data); break; case (StateWork): d->handleWork(data); break; case (StateNotes): d->readString(Notes, data); break; case (StateInterests): d->readCatagories(Interests, data, interests()); break; case (StateAffilations): { d->readCatagories(Pasts, data, pasts()); d->readCatagories(Affilations, data, affilations()); break; } default: close(false, ProtocolError, tr("Incorrect format of the metarequest")); return false; } emit infoUpdated(static_cast<State>(type)); if (type == StateAffilations) { close(true); debug() << d->uin << "full info:"; d->dump(); } return true; }
void ChannelUser::updateFromTags(ChatServer::Tags const & pTags) { QString lDisplayName = pTags.value("display-name"); bool lSubscriber = pTags.value("subscriber") == "1"; bool lTurbo = pTags.value("turbo") == "1"; QString lUserType = pTags.value("user-type"); Color lColor = parseColor(pTags.value("color")); user().updateFlag(IUser::Flag::VETERAN, lTurbo); bool lChanged = false; lChanged |= updateIfChanged(mDisplayName, lDisplayName, !lDisplayName.isEmpty()); lChanged |= updateIfChanged(mUserType, lUserType, !lUserType.isEmpty()); lChanged |= updateIfChanged(mColor, lColor, lColor.isValid()); lChanged |= updateIfChanged<Flag>(mFlags, Flag::SUBSCRIBER, lSubscriber); lChanged |= updateIfChanged<Flag>(mFlags, Flag::MODERATOR, lUserType == "mod"); if (lChanged) emit infoUpdated(); }
void PtzPresetsModel::setPtzController(CameraPtzControl *ptzController) { if (m_ptz == ptzController) return; if (m_ptz) m_ptz->disconnect(this); m_ptz = ptzController; if (m_ptz) { connect(m_ptz, SIGNAL(destroyed()), SLOT(clearPtzController())); connect(m_ptz, SIGNAL(infoUpdated()), SLOT(updatePresets())); connect(m_ptz, SIGNAL(currentPresetChanged(int)), SLOT(updateCurrentPreset())); } beginResetModel(); m_presets.clear(); endResetModel(); updatePresets(); }
void ChannelUser::updateFlag(Flag pFlag, bool pEnabled) { if (updateIfChanged<Flag>(mFlags, pFlag, pEnabled)) emit infoUpdated(); }
Kb::Kb(QObject *parent, const QString& path) : QThread(parent), devpath(path), cmdpath(path + "/cmd"), features("N/A"), firmware("N/A"), pollrate("N/A"), _currentProfile(0), _currentMode(0), _model(KeyMap::NO_MODEL), _hwProfile(0), prevProfile(0), prevMode(0), cmd(cmdpath), notifyNumber(1), _needsSave(false) { memset(hwLoading, 0, sizeof(hwLoading)); // Get the features, model, serial number, FW version (if available), and poll rate (if available) from /dev nodes QFile ftpath(path + "/features"), mpath(path + "/model"), spath(path + "/serial"), fwpath(path + "/fwversion"), ppath(path + "/pollrate"); if(ftpath.open(QIODevice::ReadOnly)){ features = ftpath.read(1000); features = features.trimmed(); ftpath.close(); // Read model from features (first word: vendor, second word: product) QStringList list = features.split(" "); if(list.length() < 2) return; _model = KeyMap::getModel(list[1]); if(_model == KeyMap::NO_MODEL) return; } else // Bail if features aren't readable return; if(mpath.open(QIODevice::ReadOnly)){ usbModel = mpath.read(100); usbModel = usbModel.remove("Corsair").remove("Gaming").remove("Keyboard").remove("Mouse").remove("Bootloader").trimmed(); mpath.close(); } if(usbModel == "") usbModel = "Keyboard"; if(spath.open(QIODevice::ReadOnly)){ usbSerial = spath.read(100); usbSerial = usbSerial.trimmed().toUpper(); spath.close(); } if(usbSerial == "") usbSerial = "Unknown-" + usbModel; if(features.contains("fwversion") && fwpath.open(QIODevice::ReadOnly)){ firmware = fwpath.read(100); firmware = QString::number(firmware.trimmed().toInt() / 100., 'f', 2); fwpath.close(); } if(features.contains("pollrate") && ppath.open(QIODevice::ReadOnly)){ pollrate = ppath.read(100); pollrate = pollrate.trimmed(); ppath.close(); } hwModeCount = (_model == KeyMap::K95) ? 3 : 1; // Open cmd in non-blocking mode so that it doesn't lock up if nothing is reading // (e.g. if the daemon crashed and didn't clean up the node) int fd = open(cmdpath.toLatin1().constData(), O_WRONLY | O_NONBLOCK); if(!cmd.open(fd, QIODevice::WriteOnly, QFileDevice::AutoCloseHandle)) return; // Find an available notification node (if none is found, take notify1) for(int i = 1; i < 10; i++){ QString notify = QString(path + "/notify%1").arg(i); if(!QFile::exists(notify)){ notifyNumber = i; notifyPath = notify; break; } } cmd.write(QString("notifyon %1\n").arg(notifyNumber).toLatin1()); cmd.flush(); // Activate device, apply settings, and ask for hardware profile cmd.write(QString("fps %1\n").arg(_frameRate).toLatin1()); cmd.write(QString("dither %1\n").arg(static_cast<int>(_dither)).toLatin1()); #ifdef Q_OS_MACX // Write ANSI/ISO flag to daemon (OSX only) cmd.write("layout "); cmd.write(KeyMap::isISO(_layout) ? "iso" : "ansi"); #endif cmd.write(QString("\nactive\n@%1 get :hwprofileid").arg(notifyNumber).toLatin1()); hwLoading[0] = true; for(int i = 0; i < hwModeCount; i++){ cmd.write(QString(" mode %1 get :hwid").arg(i + 1).toLatin1()); hwLoading[i + 1] = true; } cmd.write("\n"); cmd.flush(); emit infoUpdated(); activeDevices.insert(this); // Start a separate thread to read from the notification node start(); }
Q_DECL_EXPORT int main(int argc, char *argv[]) { QApplication *app = createApplication(argc, argv); QmlApplicationViewer viewer; #if defined(Q_OS_MAEMO) QPixmap pixmap("/opt/nelisquare/qml/pics/splash-turned.png"); QSplashScreen splash(pixmap); EventDisabler eventDisabler; splash.installEventFilter(&eventDisabler); splash.showFullScreen(); #endif #if defined(Q_OS_MAEMO) viewer.addImportPath(QString("/opt/qtm12/imports")); viewer.engine()->addImportPath(QString("/opt/qtm12/imports")); viewer.engine()->addPluginPath(QString("/opt/qtm12/plugins")); #endif QCoreApplication::addLibraryPath(QString("/opt/nelisquare/plugins")); viewer.setAttribute(Qt::WA_OpaquePaintEvent); viewer.setAttribute(Qt::WA_NoSystemBackground); viewer.viewport()->setAttribute(Qt::WA_OpaquePaintEvent); viewer.viewport()->setAttribute(Qt::WA_NoSystemBackground); WindowHelper *windowHelper = new WindowHelper(&viewer); PictureHelper *pictureHelper = new PictureHelper(); Cache *cache = new Cache(); viewer.rootContext()->setContextProperty("windowHelper", windowHelper); viewer.rootContext()->setContextProperty("pictureHelper", pictureHelper); viewer.rootContext()->setContextProperty("cache", cache); Molome *molome = new Molome(); viewer.rootContext()->setContextProperty("molome", molome); #if defined(Q_OS_HARMATTAN) || defined(Q_WS_SIMULATOR) || defined(Q_OS_MAEMO) PlatformUtils platformUtils(app,cache); viewer.rootContext()->setContextProperty("platformUtils", &platformUtils); #endif #if defined(Q_OS_MAEMO) viewer.installEventFilter(windowHelper); #elif defined(Q_OS_HARMATTAN) viewer.installEventFilter(new EventFilter); #endif viewer.setMainQmlFile(QLatin1String("qml/main.qml")); QObject *rootObject = qobject_cast<QObject*>(viewer.rootObject()); #if defined(Q_OS_HARMATTAN) || defined(Q_OS_MAEMO) new NelisquareDbus(app, &viewer); #endif #if defined(Q_OS_MAEMO) viewer.showFullScreen(); #elif defined(Q_OS_HARMATTAN) rootObject->connect(molome,SIGNAL(infoUpdated(QVariant,QVariant)),SLOT(onMolomeInfoUpdate(QVariant,QVariant))); rootObject->connect(molome,SIGNAL(photoRecieved(QVariant,QVariant)),SLOT(onMolomePhoto(QVariant,QVariant))); viewer.showExpanded(); molome->updateinfo(); #else viewer.showExpanded(); #endif rootObject->connect(pictureHelper,SIGNAL(pictureUploaded(QVariant, QVariant)),SLOT(onPictureUploaded(QVariant, QVariant))); #if defined(Q_OS_MAEMO) splash.finish(&viewer); #endif return app->exec(); }