~ubuntu-branches/ubuntu/jaunty/psi/jaunty

« back to all changes in this revision

Viewing changes to src/options/opt_events.cpp

  • Committer: Bazaar Package Importer
  • Author(s): Jan Niehusmann
  • Date: 2008-08-28 18:46:52 UTC
  • mfrom: (1.2.4 upstream)
  • Revision ID: james.westby@ubuntu.com-20080828184652-iiik12dl91nq7cdi
Tags: 0.12-2
Uploading to unstable (Closes: Bug#494352)

Show diffs side-by-side

added added

removed removed

Lines of Context:
8
8
#include <qlabel.h>
9
9
#include <qcombobox.h>
10
10
#include <qlineedit.h>
 
11
#include "psioptions.h"
11
12
 
12
13
#include "ui_opt_events.h"
13
14
 
54
55
                " not already in your list of contacts."));
55
56
        QWhatsThis::add(d->cb_animation,
56
57
                tr("What kind of animation should psi use for incoming event icons on the main window?"));
 
58
        
 
59
        d->cb_animation->setItemData ( 0, "no");
 
60
        d->cb_animation->setItemData ( 1, "blink");
 
61
        d->cb_animation->setItemData ( 2, "animate");
57
62
/*      QWhatsThis::add(d->rb_aSolid,
58
63
                tr("Does not animate or blink incoming event icons on the main window as they are received."));
59
64
        QWhatsThis::add(d->rb_aBlink,
65
70
        QWhatsThis::add(d->ck_notifyAuth,
66
71
                tr("Makes Psi notify you when your authorization request was approved."));
67
72
 
 
73
        
 
74
        d->cb_bounce->setItemData(0, "never");
 
75
        d->cb_bounce->setItemData(1, "once");
 
76
        d->cb_bounce->setItemData(2, "forever");
 
77
        
68
78
#ifndef Q_WS_MAC
69
79
        d->cb_bounce->hide();
70
80
        d->lb_bounce->hide();
77
87
        return w;
78
88
}
79
89
 
80
 
void OptionsTabEvents::applyOptions(Options *opt)
 
90
void OptionsTabEvents::applyOptions()
81
91
{
82
92
        if ( !w )
83
93
                return;
84
94
 
85
95
        OptEventsUI *d = (OptEventsUI *)w;
86
 
        opt->popupMsgs  = d->ck_popupMsgs->isChecked();
87
 
        opt->popupChats = d->ck_popupMsgs->isChecked();
88
 
        opt->popupHeadlines = d->ck_popupHeadlines->isChecked();
89
 
        opt->popupFiles = d->ck_popupFiles->isChecked();
90
 
        opt->noAwayPopup = !d->ck_allowAwayPopup->isChecked();
91
 
        opt->noUnlistedPopup = !d->ck_allowUnlistedPopup->isChecked();
92
 
        opt->raise = d->ck_raise->isChecked();
93
 
        opt->ignoreNonRoster = d->ck_ignoreNonRoster->isChecked();
94
 
        opt->alertStyle = d->cb_animation->currentIndex();
95
 
        opt->autoAuth = d->ck_autoAuth->isChecked();
96
 
        opt->notifyAuth = d->ck_notifyAuth->isChecked();
97
 
        opt->bounceDock = (Options::BounceDockSetting) d->cb_bounce->currentItem();
 
96
        PsiOptions::instance()->setOption("options.ui.message.auto-popup", d->ck_popupMsgs->isChecked());
 
97
        PsiOptions::instance()->setOption("options.ui.chat.auto-popup", d->ck_popupMsgs->isChecked());
 
98
        PsiOptions::instance()->setOption("options.ui.message.auto-popup-headlines", d->ck_popupHeadlines->isChecked());
 
99
        PsiOptions::instance()->setOption("options.ui.file-transfer.auto-popup", d->ck_popupFiles->isChecked());
 
100
        PsiOptions::instance()->setOption("options.ui.notifications.popup-dialogs.suppress-while-away", !d->ck_allowAwayPopup->isChecked());
 
101
        PsiOptions::instance()->setOption("options.ui.notifications.popup-dialogs.suppress-when-not-on-roster", !d->ck_allowUnlistedPopup->isChecked());
 
102
        PsiOptions::instance()->setOption("options.ui.contactlist.raise-on-new-event", d->ck_raise->isChecked());
 
103
        PsiOptions::instance()->setOption("options.messages.ignore-non-roster-contacts", d->ck_ignoreNonRoster->isChecked());
 
104
        PsiOptions::instance()->setOption("options.ui.notifications.alert-style", d->cb_animation->itemData(d->cb_animation->currentIndex()));
 
105
        PsiOptions::instance()->setOption("options.subscriptions.automatically-allow-authorization", d->ck_autoAuth->isChecked());
 
106
        PsiOptions::instance()->setOption("options.ui.notifications.successful-subscription", d->ck_notifyAuth->isChecked());
 
107
        PsiOptions::instance()->setOption("options.ui.notifications.bounce-dock", d->cb_bounce->itemData( d->cb_bounce->currentItem()));
98
108
 
99
 
        opt->ppIsOn = d->ck_popupOn->isChecked();
100
 
        opt->ppMessage = d->ck_popupOnMessage->isChecked();
101
 
        opt->ppChat    = d->ck_popupOnMessage->isChecked();
102
 
        opt->ppHeadline = d->ck_popupOnHeadline->isChecked();
103
 
        opt->ppFile    = d->ck_popupOnFile->isChecked();
104
 
        opt->ppOnline  = d->ck_popupOnOnline->isChecked();
105
 
        opt->ppOffline = d->ck_popupOnOffline->isChecked();
106
 
        opt->ppStatus  = d->ck_popupOnStatus->isChecked();
 
109
        PsiOptions::instance()->setOption("options.ui.notifications.passive-popups.enabled", d->ck_popupOn->isChecked());
 
110
        PsiOptions::instance()->setOption("options.ui.notifications.passive-popups.incoming-message", d->ck_popupOnMessage->isChecked());
 
111
        PsiOptions::instance()->setOption("options.ui.notifications.passive-popups.incoming-chat", d->ck_popupOnMessage->isChecked());
 
112
        PsiOptions::instance()->setOption("options.ui.notifications.passive-popups.incoming-headline", d->ck_popupOnHeadline->isChecked());
 
113
        PsiOptions::instance()->setOption("options.ui.notifications.passive-popups.incoming-file-transfer", d->ck_popupOnFile->isChecked());
 
114
        PsiOptions::instance()->setOption("options.ui.notifications.passive-popups.status.online", d->ck_popupOnOnline->isChecked());
 
115
        PsiOptions::instance()->setOption("options.ui.notifications.passive-popups.status.offline", d->ck_popupOnOffline->isChecked());
 
116
        PsiOptions::instance()->setOption("options.ui.notifications.passive-popups.status.other-changes", d->ck_popupOnStatus->isChecked());
107
117
}
108
118
 
109
 
void OptionsTabEvents::restoreOptions(const Options *opt)
 
119
void OptionsTabEvents::restoreOptions()
110
120
{
111
121
        if ( !w )
112
122
                return;
113
123
 
114
124
        OptEventsUI *d = (OptEventsUI *)w;
115
 
        d->ck_popupMsgs->setChecked( opt->popupMsgs || opt->popupChats );
116
 
        d->ck_popupHeadlines->setChecked( opt->popupHeadlines );
117
 
        d->ck_popupFiles->setChecked( opt->popupFiles );
118
 
        d->ck_allowAwayPopup->setChecked( !opt->noAwayPopup );
119
 
        d->ck_allowUnlistedPopup->setChecked( !opt->noUnlistedPopup );
120
 
        d->ck_raise->setChecked( opt->raise );
121
 
        d->ck_ignoreNonRoster->setChecked( opt->ignoreNonRoster );
122
 
        d->cb_animation->setCurrentItem(opt->alertStyle);
123
 
        d->ck_autoAuth->setChecked( opt->autoAuth );
124
 
        d->ck_notifyAuth->setChecked( opt->notifyAuth );
125
 
        d->cb_bounce->setCurrentItem( opt->bounceDock );
 
125
        d->ck_popupMsgs->setChecked( PsiOptions::instance()->getOption("options.ui.message.auto-popup").toBool() || PsiOptions::instance()->getOption("options.ui.chat.auto-popup").toBool() );
 
126
        d->ck_popupHeadlines->setChecked( PsiOptions::instance()->getOption("options.ui.message.auto-popup-headlines").toBool() );
 
127
        d->ck_popupFiles->setChecked( PsiOptions::instance()->getOption("options.ui.file-transfer.auto-popup").toBool() );
 
128
        d->ck_allowAwayPopup->setChecked( !PsiOptions::instance()->getOption("options.ui.notifications.popup-dialogs.suppress-while-away").toBool() );
 
129
        d->ck_allowUnlistedPopup->setChecked( !PsiOptions::instance()->getOption("options.ui.notifications.popup-dialogs.suppress-when-not-on-roster").toBool() );
 
130
        d->ck_raise->setChecked( PsiOptions::instance()->getOption("options.ui.contactlist.raise-on-new-event").toBool() );
 
131
        d->ck_ignoreNonRoster->setChecked( PsiOptions::instance()->getOption("options.messages.ignore-non-roster-contacts").toBool() );
 
132
        d->cb_animation->setCurrentItem(d->cb_animation->findData(PsiOptions::instance()->getOption("options.ui.notifications.alert-style").toString()));
 
133
        d->ck_autoAuth->setChecked( PsiOptions::instance()->getOption("options.subscriptions.automatically-allow-authorization").toBool() );
 
134
        d->ck_notifyAuth->setChecked( PsiOptions::instance()->getOption("options.ui.notifications.successful-subscription").toBool() );
 
135
        d->cb_bounce->setCurrentItem( d->cb_bounce->findData(PsiOptions::instance()->getOption("options.ui.notifications.bounce-dock").toString()) );
126
136
 
127
 
        d->ck_popupOn->setChecked( opt->ppIsOn );
128
 
        d->ck_popupOnMessage->setChecked( opt->ppMessage || opt->ppChat );
129
 
        d->ck_popupOnHeadline->setChecked( opt->ppHeadline );
130
 
        d->ck_popupOnFile->setChecked( opt->ppFile );
131
 
        d->ck_popupOnOnline->setChecked( opt->ppOnline );
132
 
        d->ck_popupOnOffline->setChecked( opt->ppOffline );
133
 
        d->ck_popupOnStatus->setChecked( opt->ppStatus );
 
137
        d->ck_popupOn->setChecked( PsiOptions::instance()->getOption("options.ui.notifications.passive-popups.enabled").toBool() );
 
138
        d->ck_popupOnMessage->setChecked( PsiOptions::instance()->getOption("options.ui.notifications.passive-popups.incoming-message").toBool() || PsiOptions::instance()->getOption("options.ui.notifications.passive-popups.incoming-chat").toBool() );
 
139
        d->ck_popupOnHeadline->setChecked( PsiOptions::instance()->getOption("options.ui.notifications.passive-popups.incoming-headline").toBool() );
 
140
        d->ck_popupOnFile->setChecked( PsiOptions::instance()->getOption("options.ui.notifications.passive-popups.incoming-file-transfer").toBool() );
 
141
        d->ck_popupOnOnline->setChecked( PsiOptions::instance()->getOption("options.ui.notifications.passive-popups.status.online").toBool() );
 
142
        d->ck_popupOnOffline->setChecked( PsiOptions::instance()->getOption("options.ui.notifications.passive-popups.status.offline").toBool() );
 
143
        d->ck_popupOnStatus->setChecked( PsiOptions::instance()->getOption("options.ui.notifications.passive-popups.status.other-changes").toBool() );
134
144
}