本文整理汇总了C++中NotificationSettings类的典型用法代码示例。如果您正苦于以下问题:C++ NotificationSettings类的具体用法?C++ NotificationSettings怎么用?C++ NotificationSettings使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了NotificationSettings类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: load
void QtMultimediaNotificationBackend::ConfigWidget::save()
{
NotificationSettings s;
s.setValue("QtMultimedia/Enabled", ui.enabled->isChecked());
s.setValue("QtMultimedia/AudioFile", ui.filename->text());
load();
}
示例2: Action
void SystemTray::init()
{
ActionCollection *coll = QtUi::actionCollection("General");
_minimizeRestoreAction = new Action(tr("&Minimize"), this, this, SLOT(minimizeRestore()));
#ifdef HAVE_KDE
KMenu *kmenu;
_trayMenu = kmenu = new KMenu();
kmenu->addTitle(_activeIcon, "Quassel IRC");
#else
_trayMenu = new QMenu(associatedWidget());
#endif
_trayMenu->setTitle("Quassel IRC");
#ifndef HAVE_KDE
_trayMenu->setAttribute(Qt::WA_Hover);
#endif
_trayMenu->addAction(coll->action("ConnectCore"));
_trayMenu->addAction(coll->action("DisconnectCore"));
_trayMenu->addAction(coll->action("CoreInfo"));
_trayMenu->addSeparator();
_trayMenu->addAction(_minimizeRestoreAction);
_trayMenu->addAction(coll->action("Quit"));
connect(_trayMenu, SIGNAL(aboutToShow()), SLOT(trayMenuAboutToShow()));
NotificationSettings notificationSettings;
notificationSettings.initAndNotify("Systray/Animate", this, SLOT(enableAnimationChanged(QVariant)), true);
}
示例3: setChangedState
void SystrayNotificationBackend::ConfigWidget::load()
{
NotificationSettings s;
_showBubble = s.value("Systray/ShowBubble", false).toBool();
_showBubbleBox->setChecked(_showBubble);
setChangedState(false);
}
示例4: load
void TaskbarNotificationBackend::ConfigWidget::save()
{
NotificationSettings s;
s.setValue("Taskbar/Enabled", enabledBox->isChecked());
s.setValue("Taskbar/Timeout", timeoutBox->value() * 1000);
load();
}
示例5: setChangedState
void DockManagerNotificationBackend::ConfigWidget::load()
{
NotificationSettings s;
enabled = s.value("DockManager/Enabled", false).toBool();
enabledBox->setChecked(enabled);
setChangedState(false);
}
示例6: AbstractNotificationBackend
TaskbarNotificationBackend::TaskbarNotificationBackend(QObject* parent)
: AbstractNotificationBackend(parent)
{
NotificationSettings notificationSettings;
_enabled = notificationSettings.value("Taskbar/Enabled", true).toBool();
_timeout = notificationSettings.value("Taskbar/Timeout", 0).toInt();
notificationSettings.notify("Taskbar/Enabled", this, &TaskbarNotificationBackend::enabledChanged);
notificationSettings.notify("Taskbar/Timeout", this, &TaskbarNotificationBackend::timeoutChanged);
}
示例7: AbstractNotificationBackend
QtMultimediaNotificationBackend::QtMultimediaNotificationBackend(QObject* parent)
: AbstractNotificationBackend(parent)
{
NotificationSettings notificationSettings;
notificationSettings.notify("QtMultimedia/Enabled", this, &QtMultimediaNotificationBackend::enabledChanged);
notificationSettings.notify("QtMultimedia/AudioFile", this, &QtMultimediaNotificationBackend::audioFileChanged);
createMediaObject(notificationSettings.value("QtMultimedia/AudioFile", QString()).toString());
_enabled = notificationSettings.value("QtMultimedia/Enabled", true).toBool();
}
示例8: QString
void QtMultimediaNotificationBackend::ConfigWidget::load()
{
NotificationSettings s;
_enabled = s.value("QtMultimedia/Enabled", false).toBool();
_filename = s.value("QtMultimedia/AudioFile", QString()).toString();
ui.enabled->setChecked(_enabled);
ui.filename->setText(_filename);
setChangedState(false);
}
示例9: setChangedState
void TaskbarNotificationBackend::ConfigWidget::load()
{
NotificationSettings s;
enabled = s.value("Taskbar/Enabled", true).toBool();
timeout = s.value("Taskbar/Timeout", 0).toInt();
enabledBox->setChecked(enabled);
timeoutBox->setValue(timeout / 1000);
setChangedState(false);
}
示例10: AbstractNotificationBackend
SystrayNotificationBackend::SystrayNotificationBackend(QObject *parent)
: AbstractNotificationBackend(parent),
_blockActivation(false)
{
NotificationSettings notificationSettings;
notificationSettings.initAndNotify("Systray/ShowBubble", this, SLOT(showBubbleChanged(QVariant)), true);
notificationSettings.initAndNotify("Systray/Animate", this, SLOT(animateChanged(QVariant)), true);
connect(QtUi::mainWindow()->systemTray(), SIGNAL(messageClicked(uint)), SLOT(notificationActivated(uint)));
connect(QtUi::mainWindow()->systemTray(), SIGNAL(activated(SystemTray::ActivationReason)),
SLOT(notificationActivated(SystemTray::ActivationReason)));
QApplication::instance()->installEventFilter(this);
updateToolTip();
}
示例11: AbstractNotificationBackend
DockManagerNotificationBackend::DockManagerNotificationBackend(QObject* parent)
: AbstractNotificationBackend(parent)
, _bus(QDBusConnection::sessionBus())
{
NotificationSettings notificationSettings;
_enabled = notificationSettings.value("DockManager/Enabled", false).toBool();
notificationSettings.notify("DockManager/Enabled", this, &DockManagerNotificationBackend::enabledChanged);
_dock = new QDBusInterface("net.launchpad.DockManager", "/net/launchpad/DockManager", "net.launchpad.DockManager", _bus, this);
if (_dock->isValid()) {
_bus.connect("net.launchpad.DockManager",
"/net/launchpad/DockManager",
"net.launchpad.DockManager",
"ItemAdded",
this,
SLOT(itemAdded(QDBusObjectPath)));
}
else {
// evil implementations (awn) use fd.o
_dock = new QDBusInterface("org.freedesktop.DockManager", "/org/freedesktop/DockManager", "org.freedesktop.DockManager", _bus, this);
if (_dock->isValid()) {
_bus.connect("org.freedesktop.DockManager",
"/org/freedesktop/DockManager",
"org.freedesktop.DockManager",
"ItemAdded",
this,
SLOT(itemAdded(QDBusObjectPath)));
}
else {
_available = _enabled = false;
return;
}
}
_available = true;
itemAdded(QDBusObjectPath());
connect(Client::coreConnection(),
&CoreConnection::progressValueChanged,
this,
selectOverload<int>(&DockManagerNotificationBackend::updateProgress));
connect(Client::coreConnection(), &CoreConnection::synchronized, this, &DockManagerNotificationBackend::synchronized);
}
示例12: load
void DockManagerNotificationBackend::ConfigWidget::save()
{
NotificationSettings s;
s.setValue("DockManager/Enabled", enabledBox->isChecked());
load();
}
示例13: importRules
void CoreHighlightSettingsPage::importRules()
{
NotificationSettings notificationSettings;
const auto localHighlightList = notificationSettings.highlightList();
// Re-use translations of "Legacy/Local Highlights" as this is a word-for-word reference,
// forcing all spaces to non-breaking
QString localHighlightsName;
if (Quassel::runMode() == Quassel::Monolithic) {
localHighlightsName = tr("Legacy Highlights").replace(" ", " ");
} else {
localHighlightsName = tr("Local Highlights").replace(" ", " ");
}
if (localHighlightList.count() == 0) {
// No highlight rules exist to import, do nothing
QMessageBox::information(this,
tr("No highlights to import"),
tr("No highlight rules in <i>%1</i>."
).arg(localHighlightsName));
return;
}
int ret = QMessageBox::question(this,
tr("Import highlights?"),
tr("Import all highlight rules from <i>%1</i>?"
).arg(localHighlightsName),
QMessageBox::Yes|QMessageBox::No,
QMessageBox::No);
if (ret != QMessageBox::Yes) {
// Only two options, Yes or No, return if not Yes
return;
}
auto clonedManager = HighlightRuleManager();
clonedManager.fromVariantMap(Client::highlightRuleManager()->toVariantMap());
for (const auto &variant : notificationSettings.highlightList()) {
auto highlightRule = variant.toMap();
clonedManager.addHighlightRule(
clonedManager.nextId(),
highlightRule["Name"].toString(),
highlightRule["RegEx"].toBool(),
highlightRule["CS"].toBool(),
highlightRule["Enable"].toBool(),
false,
"",
highlightRule["Channel"].toString()
);
}
Client::highlightRuleManager()->requestUpdate(clonedManager.toVariantMap());
setChangedState(false);
load();
// Give a heads-up that all succeeded
QMessageBox::information(this,
tr("Imported highlights"),
tr("%1 highlight rules successfully imported."
).arg(QString::number(localHighlightList.count())));
}
示例14: load
void SystrayNotificationBackend::ConfigWidget::save()
{
NotificationSettings s;
s.setValue("Systray/ShowBubble", _showBubbleBox->isChecked());
load();
}
示例15: switch
bool QtUiApplication::applySettingsMigration(QtUiSettings settings, const uint newVersion)
{
switch (newVersion) {
// Version 0 and 1 aren't valid upgrade paths - one represents no version, the other is the
// oldest version. Ignore those, start from 2 and higher.
// Each missed version will be called in sequence. E.g. to upgrade from '1' to '3', this
// function will be called with '2', then '3'.
// Use explicit scope via { ... } to avoid cross-initialization
//
// In most cases, the goal is to preserve the older default values for keys that haven't been
// saved. Exceptions will be noted below.
// NOTE: If you add new upgrade logic here, you MUST ALSO increase VERSION_MINOR_CURRENT in
// migrateSettings()! Otherwise, your upgrade logic won't ever be called.
case 9:
{
// New default changes: show highest sender prefix mode, if available
// --------
// ChatView settings
ChatViewSettings chatViewSettings;
const QString senderPrefixModeId = "SenderPrefixMode";
if (!chatViewSettings.valueExists(senderPrefixModeId)) {
// New default is HighestMode, preserve previous behavior by setting to NoModes
chatViewSettings.setValue(senderPrefixModeId,
static_cast<int>(UiStyle::SenderPrefixMode::NoModes));
}
// --------
// Migration complete!
return true;
}
case 8:
{
// New default changes: RegEx checkbox now toggles Channel regular expressions, too
//
// This only affects local highlights. Core-side highlights weren't released in stable when
// this change was made, so no need to migrate those.
// --------
// NotificationSettings
NotificationSettings notificationSettings;
// Check each highlight rule for a "Channel" field. If one exists, convert to RegEx mode.
// This might be more efficient with std::transform() or such. It /is/ only run once...
auto highlightList = notificationSettings.highlightList();
bool changesMade = false;
for (int index = 0; index < highlightList.count(); ++index)
{
// Load the highlight rule...
auto highlightRule = highlightList[index].toMap();
// Check if "Channel" has anything set and RegEx is disabled
if (!highlightRule["Channel"].toString().isEmpty()
&& highlightRule["RegEx"].toBool() == false) {
// We have a rule to convert
// Mark as a regular expression, allowing the Channel filtering to work the same as
// before the upgrade
highlightRule["RegEx"] = true;
// Convert the main rule to regular expression, mirroring the conversion to wildcard
// format from QtUiMessageProcessor::checkForHighlight()
highlightRule["Name"] =
"(^|\\W)" + QRegExp::escape(highlightRule["Name"].toString()) + "(\\W|$)";
// Save the rule back
highlightList[index] = highlightRule;
changesMade = true;
}
}
// Save the modified rules if any changes were made
if (changesMade) {
notificationSettings.setHighlightList(highlightList);
}
// --------
// Migration complete!
return true;
}
case 7:
{
// New default changes: UseProxy is no longer used in CoreAccountSettings
CoreAccountSettings s;
for (auto &&accountId : s.knownAccounts()) {
auto map = s.retrieveAccountData(accountId);
if (!map.value("UseProxy", false).toBool()) {
map["ProxyType"] = static_cast<int>(QNetworkProxy::ProxyType::NoProxy);
}
map.remove("UseProxy");
s.storeAccountData(accountId, map);
}
// Migration complete!
return true;
}
case 6:
{
// New default changes: sender colors switched around to Tango-ish theme
//.........这里部分代码省略.........