56
56
bg_delChats->insert( d->rb_delChatsHour);
57
57
bg_delChats->insert( d->rb_delChatsDay);
58
58
bg_delChats->insert( d->rb_delChatsNever);
60
connect(d->ck_tabChats, SIGNAL(toggled(bool)), d->cb_tabGrouping, SLOT(setEnabled(bool)));
60
62
QWhatsThis::add(d->rb_defActMsg,
61
63
tr("Make the default action open a normal message window."));
93
void OptionsTabChat::applyOptions(Options *opt)
95
void OptionsTabChat::applyOptions()
98
100
OptChatUI *d = (OptChatUI *)w;
100
opt->defaultAction = bg_defAct->buttons().indexOf(bg_defAct->checkedButton());
101
opt->alertOpenChats = d->ck_alertOpenChats->isChecked();
102
opt->raiseChatWindow = d->ck_raiseChatWindow->isChecked();
103
opt->oldSmallChats = opt->smallChats;
104
opt->smallChats = d->ck_smallChats->isChecked();
105
opt->delChats = bg_delChats->buttons().indexOf( bg_delChats->checkedButton() );
106
opt->useTabs = d->ck_tabChats->isChecked();
107
opt->chatLineEdit = d->ck_autoResize->isChecked();
102
PsiOptions::instance()->setOption("options.messages.default-outgoing-message-type", bg_defAct->buttons().indexOf(bg_defAct->checkedButton()) == 0 ? "message" : "chat");
103
PsiOptions::instance()->setOption("options.ui.chat.alert-for-already-open-chats", d->ck_alertOpenChats->isChecked());
104
PsiOptions::instance()->setOption("options.ui.chat.raise-chat-windows-on-new-messages", d->ck_raiseChatWindow->isChecked());
105
PsiOptions::instance()->setOption("options.ui.chat.use-small-chats", d->ck_smallChats->isChecked());
108
switch (bg_delChats->buttons().indexOf( bg_delChats->checkedButton() )) {
110
delafter = "instant";
122
PsiOptions::instance()->setOption("options.ui.chat.delete-contents-after", delafter);
123
PsiOptions::instance()->setOption("options.ui.tabs.use-tabs", d->ck_tabChats->isChecked());
125
int idx = d->cb_tabGrouping->currentIndex();
140
if (!tabGrouping.isEmpty()) {
141
PsiOptions::instance()->setOption("options.ui.tabs.grouping", tabGrouping);
143
if (d->cb_tabGrouping->count() == 5) {
144
d->cb_tabGrouping->removeItem(4);
148
PsiOptions::instance()->setOption("options.ui.chat.use-expanding-line-edit", d->ck_autoResize->isChecked());
110
151
// Only update this if the value actually changed, or else custom presets
125
void OptionsTabChat::restoreOptions(const Options *opt)
166
void OptionsTabChat::restoreOptions()
130
171
OptChatUI *d = (OptChatUI *)w;
132
bg_defAct->buttons()[opt->defaultAction]->setChecked(true);
133
d->ck_alertOpenChats->setChecked( opt->alertOpenChats );
134
d->ck_raiseChatWindow->setChecked( opt->raiseChatWindow );
135
d->ck_smallChats->setChecked( opt->smallChats );
136
d->ck_tabChats->setChecked( opt->useTabs );
137
d->ck_autoResize->setChecked( opt->chatLineEdit );
138
bg_delChats->buttons()[opt->delChats]->setChecked(true);
173
bg_defAct->buttons()[PsiOptions::instance()->getOption("options.messages.default-outgoing-message-type").toString() == "message" ? 0 : 1]->setChecked(true);
174
d->ck_alertOpenChats->setChecked( PsiOptions::instance()->getOption("options.ui.chat.alert-for-already-open-chats").toBool() );
175
d->ck_raiseChatWindow->setChecked( PsiOptions::instance()->getOption("options.ui.chat.raise-chat-windows-on-new-messages").toBool() );
176
d->ck_smallChats->setChecked( PsiOptions::instance()->getOption("options.ui.chat.use-small-chats").toBool() );
177
d->ck_tabChats->setChecked( PsiOptions::instance()->getOption("options.ui.tabs.use-tabs").toBool() );
178
QString tabGrouping = PsiOptions::instance()->getOption("options.ui.tabs.grouping").toString();
180
if (tabGrouping == "C") {
181
d->cb_tabGrouping->setCurrentIndex(0);
182
} else if (tabGrouping == "M") {
183
d->cb_tabGrouping->setCurrentIndex(1);
184
} else if (tabGrouping == "C:M") {
185
d->cb_tabGrouping->setCurrentIndex(2);
186
} else if (tabGrouping == "CM") {
187
d->cb_tabGrouping->setCurrentIndex(3);
189
if (d->cb_tabGrouping->count() == 5) {
190
d->cb_tabGrouping->setCurrentIndex(4);
192
d->cb_tabGrouping->setCurrentIndex(-1);
196
if (!custom && d->cb_tabGrouping->count() == 5) {
197
d->cb_tabGrouping->removeItem(4);
199
d->ck_autoResize->setChecked( PsiOptions::instance()->getOption("options.ui.chat.use-expanding-line-edit").toBool() );
200
QString delafter = PsiOptions::instance()->getOption("options.ui.chat.delete-contents-after").toString();
201
if (delafter == "instant") {
202
d->rb_delChatsClose->setChecked(true);
203
} else if (delafter == "hour") {
204
d->rb_delChatsHour->setChecked(true);
205
} else if (delafter == "day") {
206
d->rb_delChatsDay->setChecked(true);
207
} else if (delafter == "never") {
208
d->rb_delChatsNever->setChecked(true);
139
210
d->ck_chatSoftReturn->setChecked(ShortcutManager::instance()->shortcuts("chat.send").contains(QKeySequence(Qt::Key_Return)));