• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdelibs API Reference
  • KDE Home
  • Contact Us
 

KDEUI

  • sources
  • kde-4.14
  • kdelibs
  • kdeui
  • dialogs
kmessagebox.cpp
Go to the documentation of this file.
1 /* This file is part of the KDE libraries
2  Copyright (C) 1999 Waldo Bastian (bastian@kde.org)
3 
4  This library is free software; you can redistribute it and/or
5  modify it under the terms of the GNU Library General Public
6  License as published by the Free Software Foundation; version 2
7  of the License.
8 
9  This library is distributed in the hope that it will be useful,
10  but WITHOUT ANY WARRANTY; without even the implied warranty of
11  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12  Library General Public License for more details.
13 
14  You should have received a copy of the GNU Library General Public License
15  along with this library; see the file COPYING.LIB. If not, write to
16  the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17  Boston, MA 02110-1301, USA.
18 */
19 
20 #include "kmessagebox.h"
21 
22 #include <QtCore/QPointer>
23 #include <QtGui/QCheckBox>
24 #include <QtGui/QGroupBox>
25 #include <QtGui/QLabel>
26 #include <QtGui/QLayout>
27 #include <QtGui/QListWidget>
28 #include <QtGui/QScrollArea>
29 #include <QtGui/QScrollBar>
30 #include <QtGui/QTextDocumentFragment>
31 
32 #include <kapplication.h>
33 #include <kconfig.h>
34 #include <kdialog.h>
35 #include <kdialogqueue_p.h>
36 #include <kglobalsettings.h>
37 #include <klocale.h>
38 #include <knotification.h>
39 #include <kiconloader.h>
40 #include <kconfiggroup.h>
41 #include <ktextedit.h>
42 #include <ksqueezedtextlabel.h>
43 #include <kwindowsystem.h>
44 
45 // Some i18n filters, that standard button texts are piped through
46 // (the new KGuiItem object with filtered text is created from the old one).
47 
48 // i18n: Filter for the Yes-button text in standard message dialogs,
49 // after the message caption/text have been translated.
50 #define I18N_FILTER_BUTTON_YES(src, dst) \
51  KGuiItem dst(src); \
52  dst.setText( i18nc( "@action:button filter-yes", "%1", src.text() ) );
53 
54 // i18n: Filter for the No-button text in standard message dialogs,
55 // after the message caption/text have been translated.
56 #define I18N_FILTER_BUTTON_NO(src, dst) \
57  KGuiItem dst(src); \
58  dst.setText( i18nc( "@action:button filter-no", "%1", src.text() ) );
59 
60 // i18n: Filter for the Continue-button text in standard message dialogs,
61 // after the message caption/text have been translated.
62 #define I18N_FILTER_BUTTON_CONTINUE(src, dst) \
63  KGuiItem dst(src); \
64  dst.setText( i18nc( "@action:button filter-continue", "%1", src.text() ) );
65 
66 // i18n: Filter for the Cancel-button text in standard message dialogs,
67 // after the message caption/text have been translated.
68 #define I18N_FILTER_BUTTON_CANCEL(src, dst) \
69  KGuiItem dst(src); \
70  dst.setText( i18nc( "@action:button filter-cancel", "%1", src.text() ) );
71 
72 // i18n: Called after the button texts in standard message dialogs
73 // have been filtered by the messages above. Not visible to user.
74 #define I18N_POST_BUTTON_FILTER \
75  i18nc( "@action:button post-filter", "." );
76 
77 static bool KMessageBox_queue = false;
78 KConfig* KMessageBox_againConfig = 0;
79 
80 
81 static QIcon themedMessageBoxIcon(QMessageBox::Icon icon)
82 {
83  QString icon_name;
84 
85  switch (icon) {
86  case QMessageBox::NoIcon:
87  return QIcon();
88  break;
89  case QMessageBox::Information:
90  icon_name = "dialog-information";
91  break;
92  case QMessageBox::Warning:
93  icon_name = "dialog-warning";
94  break;
95  case QMessageBox::Critical:
96  icon_name = "dialog-error";
97  break;
98  default:
99  break;
100  }
101 
102  QIcon ret = KIconLoader::global()->loadIcon(icon_name, KIconLoader::NoGroup, KIconLoader::SizeHuge, KIconLoader::DefaultState, QStringList(), 0, true);
103 
104  if (ret.isNull()) {
105  return QMessageBox::standardIcon(icon);
106  } else {
107  return ret;
108  }
109 }
110 
111 static void sendNotification( QString message, //krazy:exclude=passbyvalue
112  const QStringList& strlist,
113  QMessageBox::Icon icon,
114  WId parent_id )
115 {
116  // create the message for KNotify
117  QString messageType;
118  switch (icon) {
119  case QMessageBox::Warning:
120  messageType = "messageWarning";
121  break;
122  case QMessageBox::Critical:
123  messageType = "messageCritical";
124  break;
125  case QMessageBox::Question:
126  messageType = "messageQuestion";
127  break;
128  default:
129  messageType = "messageInformation";
130  break;
131  }
132 
133  if ( !strlist.isEmpty() ) {
134  for ( QStringList::ConstIterator it = strlist.begin(); it != strlist.end(); ++it ) {
135  message += '\n' + *it;
136  }
137  }
138 
139  if ( !message.isEmpty() ) {
140  KNotification::event( messageType, message, QPixmap(), QWidget::find( parent_id ),
141  KNotification::DefaultEvent | KNotification::CloseOnTimeout );
142  }
143 }
144 
145 static void applyOptions( KDialog* dialog, KMessageBox::Options options )
146 {
147  if ( options & KMessageBox::WindowModal ) {
148  dialog->setWindowModality( Qt::WindowModal );
149  }
150  dialog->setModal( true );
151 }
152 
153 int KMessageBox::createKMessageBox(KDialog *dialog, QMessageBox::Icon icon,
154  const QString &text, const QStringList &strlist,
155  const QString &ask, bool *checkboxReturn,
156  Options options, const QString &details)
157 {
158  return createKMessageBox(dialog, themedMessageBoxIcon(icon), text, strlist,
159  ask, checkboxReturn, options, details, icon);
160 }
161 
162 
163 int KMessageBox::createKMessageBox(KDialog *dialog, const QIcon &icon,
164  const QString &text, const QStringList &strlist,
165  const QString &ask, bool *checkboxReturn, Options options,
166  const QString &details, QMessageBox::Icon notifyType)
167 {
168  QWidget *mainWidget = new QWidget(dialog);
169  QVBoxLayout *mainLayout = new QVBoxLayout(mainWidget);
170  mainLayout->setSpacing(KDialog::spacingHint() * 2); // provide extra spacing
171  mainLayout->setMargin(0);
172 
173  QHBoxLayout *hLayout = new QHBoxLayout();
174  hLayout->setMargin(0);
175  hLayout->setSpacing(-1); // use default spacing
176  mainLayout->addLayout(hLayout,5);
177 
178  QLabel *iconLabel = new QLabel(mainWidget);
179 
180  if (!icon.isNull()) {
181  QStyleOption option;
182  option.initFrom(mainWidget);
183  iconLabel->setPixmap(icon.pixmap(mainWidget->style()->pixelMetric(QStyle::PM_MessageBoxIconSize, &option, mainWidget)));
184  }
185 
186  QVBoxLayout *iconLayout = new QVBoxLayout();
187  iconLayout->addStretch(1);
188  iconLayout->addWidget(iconLabel);
189  iconLayout->addStretch(5);
190 
191  hLayout->addLayout(iconLayout,0);
192  hLayout->addSpacing(KDialog::spacingHint());
193 
194  QLabel *messageLabel = new QLabel(text, mainWidget);
195  messageLabel->setOpenExternalLinks(options & KMessageBox::AllowLink);
196  Qt::TextInteractionFlags flags = Qt::TextSelectableByMouse | Qt::TextSelectableByKeyboard;
197  if (options & KMessageBox::AllowLink) {
198  flags |= Qt::LinksAccessibleByMouse | Qt::LinksAccessibleByKeyboard;
199  }
200  messageLabel->setTextInteractionFlags(flags);
201 
202  QRect desktop = KGlobalSettings::desktopGeometry(dialog);
203  bool usingSqueezedTextLabel = false;
204  if (messageLabel->sizeHint().width() > desktop.width() * 0.5) {
205  // enable automatic wrapping of messages which are longer than 50% of screen width
206  messageLabel->setWordWrap(true);
207  // display a text widget with scrollbar if still too wide
208  usingSqueezedTextLabel = messageLabel->sizeHint().width() > desktop.width() * 0.85;
209  if (usingSqueezedTextLabel)
210  {
211  delete messageLabel;
212  messageLabel = new KSqueezedTextLabel(text, mainWidget);
213  messageLabel->setOpenExternalLinks(options & KMessageBox::AllowLink);
214  messageLabel->setTextInteractionFlags(flags);
215  }
216  }
217 
218  QPalette messagePal(messageLabel->palette());
219  messagePal.setColor(QPalette::Window, Qt::transparent);
220  messageLabel->setPalette(messagePal);
221 
222 
223  bool usingScrollArea=desktop.height() / 3 < messageLabel->sizeHint().height();
224  if (usingScrollArea)
225  {
226  QScrollArea* messageScrollArea = new QScrollArea(mainWidget);
227  messageScrollArea->setWidget(messageLabel);
228  messageScrollArea->setFrameShape(QFrame::NoFrame);
229  messageScrollArea->setWidgetResizable(true);
230  QPalette scrollPal(messageScrollArea->palette());
231  scrollPal.setColor(QPalette::Window, Qt::transparent);
232  messageScrollArea->viewport()->setPalette(scrollPal);
233  hLayout->addWidget(messageScrollArea,5);
234  }
235  else
236  hLayout->addWidget(messageLabel,5);
237 
238 
239  const bool usingListWidget=!strlist.isEmpty();
240  if (usingListWidget) {
241  // enable automatic wrapping since the listwidget has already a good initial width
242  messageLabel->setWordWrap(true);
243  QListWidget *listWidget = new QListWidget(mainWidget);
244  listWidget->addItems(strlist);
245 
246  QStyleOptionViewItem styleOption;
247  styleOption.initFrom(listWidget);
248  QFontMetrics fm(styleOption.font);
249  int w = listWidget->width();
250  Q_FOREACH(const QString &str, strlist) {
251  w = qMax(w, fm.width(str));
252  }
253  const int borderWidth = listWidget->width() - listWidget->viewport()->width() + listWidget->verticalScrollBar()->height();
254  w += borderWidth;
255  if (w > desktop.width() * 0.85) { // limit listWidget size to 85% of screen width
256  w = qRound(desktop.width() * 0.85);
257  }
258  listWidget->setMinimumWidth(w);
259 
260  mainLayout->addWidget(listWidget,usingScrollArea?10:50);
261  listWidget->setSelectionMode(QListWidget::NoSelection);
262  messageLabel->setSizePolicy(QSizePolicy::Preferred,QSizePolicy::Minimum);
263  }
264  else if (!usingScrollArea)
265  mainLayout->addStretch(15);
266 
267 
268  QPointer<QCheckBox> checkbox = 0;
269  if (!ask.isEmpty()) {
270  checkbox = new QCheckBox(ask, mainWidget);
271  mainLayout->addWidget(checkbox);
272  if (checkboxReturn) {
273  checkbox->setChecked(*checkboxReturn);
274  }
275  }
276 
277  if (!details.isEmpty()) {
278  QGroupBox *detailsGroup = new QGroupBox(i18n("Details"));
279  QVBoxLayout *detailsLayout = new QVBoxLayout(detailsGroup);
280  if (details.length() < 512) {
281  QLabel *detailsLabel = new QLabel(details);
282  detailsLabel->setOpenExternalLinks(options & KMessageBox::AllowLink);
283  Qt::TextInteractionFlags flags = Qt::TextSelectableByMouse | Qt::TextSelectableByKeyboard;
284  if ( options & KMessageBox::AllowLink )
285  flags |= Qt::LinksAccessibleByMouse | Qt::LinksAccessibleByKeyboard;;
286  detailsLabel->setTextInteractionFlags(flags);
287  detailsLabel->setWordWrap(true);
288  detailsLayout->addWidget(detailsLabel,50);
289  } else {
290  KTextEdit *detailTextEdit = new KTextEdit(details);
291  detailTextEdit->setReadOnly(true);
292  detailTextEdit->setMinimumHeight(detailTextEdit->fontMetrics().lineSpacing() * 11);
293  detailsLayout->addWidget(detailTextEdit,50);
294  }
295  if (!usingListWidget)
296  mainLayout->setStretchFactor(hLayout,10);
297  dialog->setDetailsWidget(detailsGroup);
298  }
299 
300  dialog->setMainWidget(mainWidget);
301  if (!usingListWidget && !usingScrollArea && !usingSqueezedTextLabel && details.isEmpty())
302  dialog->setFixedSize(dialog->sizeHint() + QSize( 10, 10 ));
303  else if (!details.isEmpty() && dialog->minimumHeight()<iconLabel->sizeHint().height()*2)//strange bug...
304  {
305  if (!usingScrollArea)
306  dialog->setMinimumSize(300,qMax(150,qMax(iconLabel->sizeHint().height(),messageLabel->sizeHint().height())));
307  else
308  dialog->setMinimumSize(300,qMax(150,iconLabel->sizeHint().height()));
309  }
310 
311 
312  if ((options & KMessageBox::Dangerous)) {
313  if (dialog->isButtonEnabled(KDialog::Cancel))
314  dialog->setDefaultButton(KDialog::Cancel);
315  else if (dialog->isButtonEnabled(KDialog::No))
316  dialog->setDefaultButton(KDialog::No);
317  }
318 
319  KDialog::ButtonCode defaultCode = dialog->defaultButton();
320  if (defaultCode != KDialog::NoDefault) {
321  dialog->setButtonFocus(defaultCode);
322  }
323 
324 #ifndef Q_WS_WIN // FIXME problems with KNotify on Windows
325  if ((options & KMessageBox::Notify)) {
326  sendNotification(text, strlist, notifyType, dialog->topLevelWidget()->winId());
327  }
328 #endif
329 
330  if (KMessageBox_queue) {
331  KDialogQueue::queueDialog(dialog);
332  return KMessageBox::Cancel; // We have to return something.
333  }
334 
335  if ((options & KMessageBox::NoExec)) {
336  return KMessageBox::Cancel; // We have to return something.
337  }
338 
339  // We use a QPointer because the dialog may get deleted
340  // during exec() if the parent of the dialog gets deleted.
341  // In that case the QPointer will reset to 0.
342  QPointer<KDialog> guardedDialog = dialog;
343 
344  const int result = guardedDialog->exec();
345  if (checkbox && checkboxReturn) {
346  *checkboxReturn = checkbox->isChecked();
347  }
348 
349  delete (KDialog *) guardedDialog;
350  return result;
351 }
352 
353 int KMessageBox::questionYesNo(QWidget *parent, const QString &text,
354  const QString &caption,
355  const KGuiItem &buttonYes,
356  const KGuiItem &buttonNo,
357  const QString &dontAskAgainName,
358  Options options)
359 {
360  return questionYesNoList(parent, text, QStringList(), caption,
361  buttonYes, buttonNo, dontAskAgainName, options);
362 }
363 
364 int KMessageBox::questionYesNoWId(WId parent_id, const QString &text,
365  const QString &caption,
366  const KGuiItem &buttonYes,
367  const KGuiItem &buttonNo,
368  const QString &dontAskAgainName,
369  Options options)
370 {
371  return questionYesNoListWId(parent_id, text, QStringList(), caption,
372  buttonYes, buttonNo, dontAskAgainName, options);
373 }
374 
375 bool KMessageBox::shouldBeShownYesNo(const QString &dontShowAgainName,
376  ButtonCode &result)
377 {
378  if ( dontShowAgainName.isEmpty() ) {
379  return true;
380  }
381  KConfigGroup cg( KMessageBox_againConfig ? KMessageBox_againConfig : KGlobal::config().data(), "Notification Messages" );
382  const QString dontAsk = cg.readEntry(dontShowAgainName, QString()).toLower();
383  if (dontAsk == "yes" || dontAsk == "true") {
384  result = Yes;
385  return false;
386  }
387  if (dontAsk == "no" || dontAsk == "false") {
388  result = No;
389  return false;
390  }
391  return true;
392 }
393 
394 bool KMessageBox::shouldBeShownContinue(const QString &dontShowAgainName)
395 {
396  if ( dontShowAgainName.isEmpty() ) {
397  return true;
398  }
399  KConfigGroup cg( KMessageBox_againConfig ? KMessageBox_againConfig : KGlobal::config().data(), "Notification Messages" );
400  return cg.readEntry(dontShowAgainName, true);
401 }
402 
403 void KMessageBox::saveDontShowAgainYesNo(const QString &dontShowAgainName,
404  ButtonCode result)
405 {
406  if ( dontShowAgainName.isEmpty() ) {
407  return;
408  }
409  KConfigGroup::WriteConfigFlags flags = KConfig::Persistent;
410  if (dontShowAgainName[0] == ':') {
411  flags |= KConfigGroup::Global;
412  }
413  KConfigGroup cg( KMessageBox_againConfig? KMessageBox_againConfig : KGlobal::config().data(), "Notification Messages" );
414  cg.writeEntry( dontShowAgainName, result==Yes, flags );
415  cg.sync();
416 }
417 
418 void KMessageBox::saveDontShowAgainContinue(const QString &dontShowAgainName)
419 {
420  if ( dontShowAgainName.isEmpty() ) {
421  return;
422  }
423  KConfigGroup::WriteConfigFlags flags = KConfigGroup::Persistent;
424  if (dontShowAgainName[0] == ':') {
425  flags |= KConfigGroup::Global;
426  }
427  KConfigGroup cg( KMessageBox_againConfig? KMessageBox_againConfig: KGlobal::config().data(), "Notification Messages" );
428  cg.writeEntry( dontShowAgainName, false, flags );
429  cg.sync();
430 }
431 
432 void KMessageBox::setDontShowAskAgainConfig(KConfig* cfg)
433 {
434  KMessageBox_againConfig = cfg;
435 }
436 
437 int KMessageBox::questionYesNoList(QWidget *parent, const QString &text,
438  const QStringList &strlist,
439  const QString &caption,
440  const KGuiItem &buttonYes,
441  const KGuiItem &buttonNo,
442  const QString &dontAskAgainName,
443  Options options)
444 { // in order to avoid code duplication, convert to WId, it will be converted back
445  return questionYesNoListWId( parent ? parent->effectiveWinId() : 0, text, strlist,
446  caption, buttonYes, buttonNo, dontAskAgainName, options );
447 }
448 
449 int KMessageBox::questionYesNoListWId(WId parent_id, const QString &text,
450  const QStringList &strlist,
451  const QString &caption,
452  const KGuiItem &buttonYes_,
453  const KGuiItem &buttonNo_,
454  const QString &dontAskAgainName,
455  Options options)
456 {
457  ButtonCode res;
458  if ( !shouldBeShownYesNo(dontAskAgainName, res) ) {
459  return res;
460  }
461 
462  I18N_FILTER_BUTTON_YES(buttonYes_, buttonYes)
463  I18N_FILTER_BUTTON_NO(buttonNo_, buttonNo)
464  I18N_POST_BUTTON_FILTER
465 
466  QWidget* parent = QWidget::find( parent_id );
467  KDialog *dialog = new KDialog(parent, Qt::Dialog);
468  dialog->setCaption( caption.isEmpty() ? i18n("Question") : caption );
469  dialog->setButtons( KDialog::Yes | KDialog::No );
470  dialog->setObjectName( "questionYesNo" );
471  dialog->setButtonGuiItem( KDialog::Yes, buttonYes );
472  dialog->setButtonGuiItem( KDialog::No, buttonNo );
473  dialog->setDefaultButton( KDialog::Yes );
474  dialog->setEscapeButton( KDialog::No );
475  applyOptions( dialog, options );
476  if ( options & KMessageBox::PlainCaption ) {
477  dialog->setPlainCaption( caption );
478  }
479  if ( parent == NULL && parent_id ) {
480  KWindowSystem::setMainWindow( dialog, parent_id );
481  }
482 
483  bool checkboxResult = false;
484  const int result = createKMessageBox(dialog, QMessageBox::Information, text, strlist,
485  dontAskAgainName.isEmpty() ? QString() : i18n("Do not ask again"),
486  &checkboxResult, options);
487  res = (result==KDialog::Yes ? Yes : No);
488 
489  if (checkboxResult) {
490  saveDontShowAgainYesNo(dontAskAgainName, res);
491  }
492  return res;
493 }
494 
495 int KMessageBox::questionYesNoCancel(QWidget *parent,
496  const QString &text,
497  const QString &caption,
498  const KGuiItem &buttonYes,
499  const KGuiItem &buttonNo,
500  const KGuiItem &buttonCancel,
501  const QString &dontAskAgainName,
502  Options options)
503 {
504  return questionYesNoCancelWId( parent ? parent->effectiveWinId() : 0, text, caption, buttonYes, buttonNo, buttonCancel,
505  dontAskAgainName, options );
506 }
507 
508 int KMessageBox::questionYesNoCancelWId(WId parent_id,
509  const QString &text,
510  const QString &caption,
511  const KGuiItem &buttonYes_,
512  const KGuiItem &buttonNo_,
513  const KGuiItem &buttonCancel_,
514  const QString &dontAskAgainName,
515  Options options)
516 {
517  ButtonCode res;
518  if ( !shouldBeShownYesNo(dontAskAgainName, res) ) {
519  return res;
520  }
521 
522  I18N_FILTER_BUTTON_YES(buttonYes_, buttonYes)
523  I18N_FILTER_BUTTON_NO(buttonNo_, buttonNo)
524  I18N_FILTER_BUTTON_CANCEL(buttonCancel_, buttonCancel)
525  I18N_POST_BUTTON_FILTER
526 
527  QWidget* parent = QWidget::find( parent_id );
528  KDialog *dialog= new KDialog(parent, Qt::Dialog);
529  dialog->setCaption( caption.isEmpty() ? i18n("Question") : caption );
530  dialog->setButtons( KDialog::Yes | KDialog::No | KDialog::Cancel );
531  dialog->setObjectName( "questionYesNoCancel" );
532  dialog->setButtonGuiItem( KDialog::Yes, buttonYes );
533  dialog->setButtonGuiItem( KDialog::No, buttonNo );
534  dialog->setButtonGuiItem( KDialog::Cancel, buttonCancel );
535  dialog->setDefaultButton( KDialog::Yes );
536  applyOptions( dialog, options );
537  if ( options & KMessageBox::PlainCaption ) {
538  dialog->setPlainCaption( caption );
539  }
540  if ( parent == NULL && parent_id ) {
541  KWindowSystem::setMainWindow( dialog, parent_id );
542  }
543 
544  bool checkboxResult = false;
545  const int result = createKMessageBox(dialog, QMessageBox::Information,
546  text, QStringList(),
547  dontAskAgainName.isEmpty() ? QString() : i18n("Do not ask again"),
548  &checkboxResult, options);
549 
550  if ( result == KDialog::Yes ) {
551  res = Yes;
552  } else if ( result == KDialog::No ) {
553  res = No;
554  } else {
555  return Cancel;
556  }
557 
558  if (checkboxResult) {
559  saveDontShowAgainYesNo(dontAskAgainName, res);
560  }
561  return res;
562 }
563 
564 int KMessageBox::warningYesNo(QWidget *parent, const QString &text,
565  const QString &caption,
566  const KGuiItem &buttonYes,
567  const KGuiItem &buttonNo,
568  const QString &dontAskAgainName,
569  Options options)
570 {
571  return warningYesNoList(parent, text, QStringList(), caption,
572  buttonYes, buttonNo, dontAskAgainName, options);
573 }
574 
575 int KMessageBox::warningYesNoWId(WId parent_id, const QString &text,
576  const QString &caption,
577  const KGuiItem &buttonYes,
578  const KGuiItem &buttonNo,
579  const QString &dontAskAgainName,
580  Options options)
581 {
582  return warningYesNoListWId(parent_id, text, QStringList(), caption,
583  buttonYes, buttonNo, dontAskAgainName, options);
584 }
585 
586 int KMessageBox::warningYesNoList(QWidget *parent, const QString &text,
587  const QStringList &strlist,
588  const QString &caption,
589  const KGuiItem &buttonYes,
590  const KGuiItem &buttonNo,
591  const QString &dontAskAgainName,
592  Options options)
593 {
594  return warningYesNoListWId( parent ? parent->effectiveWinId() : 0, text, strlist, caption,
595  buttonYes, buttonNo, dontAskAgainName, options );
596 }
597 
598 int KMessageBox::warningYesNoListWId(WId parent_id, const QString &text,
599  const QStringList &strlist,
600  const QString &caption,
601  const KGuiItem &buttonYes_,
602  const KGuiItem &buttonNo_,
603  const QString &dontAskAgainName,
604  Options options)
605 {
606  ButtonCode res;
607  if ( !shouldBeShownYesNo(dontAskAgainName, res) ) {
608  return res;
609  }
610 
611  I18N_FILTER_BUTTON_YES(buttonYes_, buttonYes)
612  I18N_FILTER_BUTTON_NO(buttonNo_, buttonNo)
613  I18N_POST_BUTTON_FILTER
614 
615  QWidget* parent = QWidget::find( parent_id );
616  KDialog *dialog = new KDialog(parent, Qt::Dialog);
617  dialog->setCaption( caption.isEmpty() ? i18n("Warning") : caption );
618  dialog->setButtons( KDialog::Yes | KDialog::No );
619  dialog->setObjectName( "warningYesNoList" );
620  dialog->setButtonGuiItem( KDialog::Yes, buttonYes );
621  dialog->setButtonGuiItem( KDialog::No, buttonNo );
622  dialog->setDefaultButton( KDialog::No );
623  dialog->setEscapeButton( KDialog::No );
624  applyOptions( dialog, options );
625  if ( options & KMessageBox::PlainCaption ) {
626  dialog->setPlainCaption( caption );
627  }
628  if ( parent == NULL && parent_id ) {
629  KWindowSystem::setMainWindow( dialog, parent_id );
630  }
631 
632  bool checkboxResult = false;
633  const int result = createKMessageBox(dialog, QMessageBox::Warning, text, strlist,
634  dontAskAgainName.isEmpty() ? QString() : i18n("Do not ask again"),
635  &checkboxResult, options);
636  res = (result==KDialog::Yes ? Yes : No);
637 
638  if (checkboxResult) {
639  saveDontShowAgainYesNo(dontAskAgainName, res);
640  }
641  return res;
642 }
643 
644 int KMessageBox::warningContinueCancel(QWidget *parent,
645  const QString &text,
646  const QString &caption,
647  const KGuiItem &buttonContinue,
648  const KGuiItem &buttonCancel,
649  const QString &dontAskAgainName,
650  Options options)
651 {
652  return warningContinueCancelList(parent, text, QStringList(), caption,
653  buttonContinue, buttonCancel, dontAskAgainName, options);
654 }
655 
656 int KMessageBox::warningContinueCancelWId(WId parent_id,
657  const QString &text,
658  const QString &caption,
659  const KGuiItem &buttonContinue,
660  const KGuiItem &buttonCancel,
661  const QString &dontAskAgainName,
662  Options options)
663 {
664  return warningContinueCancelListWId(parent_id, text, QStringList(), caption,
665  buttonContinue, buttonCancel, dontAskAgainName, options);
666 }
667 
668 int KMessageBox::warningContinueCancelList(QWidget *parent, const QString &text,
669  const QStringList &strlist,
670  const QString &caption,
671  const KGuiItem &buttonContinue,
672  const KGuiItem &buttonCancel,
673  const QString &dontAskAgainName,
674  Options options)
675 {
676  return warningContinueCancelListWId( parent ? parent->effectiveWinId() : 0, text, strlist,
677  caption, buttonContinue, buttonCancel, dontAskAgainName, options );
678 }
679 
680 int KMessageBox::warningContinueCancelListWId(WId parent_id, const QString &text,
681  const QStringList &strlist,
682  const QString &caption,
683  const KGuiItem &buttonContinue_,
684  const KGuiItem &buttonCancel_,
685  const QString &dontAskAgainName,
686  Options options)
687 {
688  if ( !shouldBeShownContinue(dontAskAgainName) )
689  return Continue;
690 
691  I18N_FILTER_BUTTON_CONTINUE(buttonContinue_, buttonContinue)
692  I18N_FILTER_BUTTON_CANCEL(buttonCancel_, buttonCancel)
693  I18N_POST_BUTTON_FILTER
694 
695  QWidget* parent = QWidget::find( parent_id );
696  KDialog *dialog = new KDialog(parent, Qt::Dialog);
697  dialog->setCaption( caption.isEmpty() ? i18n("Warning") : caption );
698  dialog->setButtons( KDialog::Yes | KDialog::No );
699  dialog->setObjectName( "warningYesNo" );
700  dialog->setButtonGuiItem( KDialog::Yes, buttonContinue );
701  dialog->setButtonGuiItem( KDialog::No, buttonCancel );
702  dialog->setDefaultButton( KDialog::Yes );
703  dialog->setEscapeButton( KDialog::No );
704  applyOptions( dialog, options );
705  if ( options & KMessageBox::PlainCaption ) {
706  dialog->setPlainCaption( caption );
707  }
708  if ( parent == NULL && parent_id ) {
709  KWindowSystem::setMainWindow( dialog, parent_id );
710  }
711 
712  bool checkboxResult = false;
713  const int result = createKMessageBox(dialog, QMessageBox::Warning, text, strlist,
714  dontAskAgainName.isEmpty() ? QString() : i18n("Do not ask again"),
715  &checkboxResult, options);
716 
717  if ( result != KDialog::Yes ) {
718  return Cancel;
719  }
720  if (checkboxResult) {
721  saveDontShowAgainContinue(dontAskAgainName);
722  }
723  return Continue;
724 }
725 
726 int KMessageBox::warningYesNoCancel(QWidget *parent, const QString &text,
727  const QString &caption,
728  const KGuiItem &buttonYes,
729  const KGuiItem &buttonNo,
730  const KGuiItem &buttonCancel,
731  const QString &dontAskAgainName,
732  Options options)
733 {
734  return warningYesNoCancelList(parent, text, QStringList(), caption,
735  buttonYes, buttonNo, buttonCancel, dontAskAgainName, options);
736 }
737 
738 int KMessageBox::warningYesNoCancelWId(WId parent_id, const QString &text,
739  const QString &caption,
740  const KGuiItem &buttonYes,
741  const KGuiItem &buttonNo,
742  const KGuiItem &buttonCancel,
743  const QString &dontAskAgainName,
744  Options options)
745 {
746  return warningYesNoCancelListWId(parent_id, text, QStringList(), caption,
747  buttonYes, buttonNo, buttonCancel, dontAskAgainName, options);
748 }
749 
750 int KMessageBox::warningYesNoCancelList(QWidget *parent, const QString &text,
751  const QStringList &strlist,
752  const QString &caption,
753  const KGuiItem &buttonYes,
754  const KGuiItem &buttonNo,
755  const KGuiItem &buttonCancel,
756  const QString &dontAskAgainName,
757  Options options)
758 {
759  return warningYesNoCancelListWId( parent ? parent->effectiveWinId() : 0, text, strlist,
760  caption, buttonYes, buttonNo, buttonCancel, dontAskAgainName, options );
761 }
762 
763 int KMessageBox::warningYesNoCancelListWId(WId parent_id, const QString &text,
764  const QStringList &strlist,
765  const QString &caption,
766  const KGuiItem &buttonYes_,
767  const KGuiItem &buttonNo_,
768  const KGuiItem &buttonCancel_,
769  const QString &dontAskAgainName,
770  Options options)
771 {
772  ButtonCode res;
773  if ( !shouldBeShownYesNo(dontAskAgainName, res) ) {
774  return res;
775  }
776 
777  I18N_FILTER_BUTTON_YES(buttonYes_, buttonYes)
778  I18N_FILTER_BUTTON_NO(buttonNo_, buttonNo)
779  I18N_FILTER_BUTTON_CANCEL(buttonCancel_, buttonCancel)
780  I18N_POST_BUTTON_FILTER
781 
782  QWidget* parent = QWidget::find( parent_id );
783  KDialog *dialog = new KDialog(parent, Qt::Dialog);
784  dialog->setCaption( caption.isEmpty() ? i18n("Warning") : caption );
785  dialog->setButtons( KDialog::Yes | KDialog::No | KDialog::Cancel );
786  dialog->setObjectName( "warningYesNoCancel" );
787  dialog->setButtonGuiItem( KDialog::Yes, buttonYes );
788  dialog->setButtonGuiItem( KDialog::No, buttonNo );
789  dialog->setButtonGuiItem( KDialog::Cancel, buttonCancel );
790  dialog->setDefaultButton( KDialog::Yes );
791  applyOptions( dialog, options );
792  if ( options & KMessageBox::PlainCaption ) {
793  dialog->setPlainCaption( caption );
794  }
795  if ( parent == NULL && parent_id ) {
796  KWindowSystem::setMainWindow( dialog, parent_id );
797  }
798 
799  bool checkboxResult = false;
800  const int result = createKMessageBox(dialog, QMessageBox::Warning, text, strlist,
801  dontAskAgainName.isEmpty() ? QString() : i18n("Do not ask again"),
802  &checkboxResult, options);
803 
804  if ( result == KDialog::Yes ) {
805  res = Yes;
806  } else if ( result == KDialog::No ) {
807  res = No;
808  } else {
809  return Cancel;
810  }
811 
812  if (checkboxResult) {
813  saveDontShowAgainYesNo(dontAskAgainName, res);
814  }
815  return res;
816 }
817 
818 void KMessageBox::error(QWidget *parent, const QString &text,
819  const QString &caption, Options options)
820 {
821  return errorListWId( parent ? parent->effectiveWinId() : 0, text, QStringList(), caption, options );
822 }
823 
824 void KMessageBox::errorWId(WId parent_id, const QString &text,
825  const QString &caption, Options options)
826 {
827  errorListWId( parent_id, text, QStringList(), caption, options );
828 }
829 
830 void KMessageBox::errorList(QWidget *parent, const QString &text, const QStringList &strlist,
831  const QString &caption, Options options)
832 {
833  return errorListWId( parent ? parent->effectiveWinId() : 0, text, strlist, caption, options );
834 }
835 
836 void KMessageBox::errorListWId(WId parent_id, const QString &text, const QStringList &strlist,
837  const QString &caption, Options options)
838 {
839  QWidget* parent = QWidget::find( parent_id );
840  KDialog *dialog = new KDialog(parent, Qt::Dialog);
841  dialog->setCaption( caption.isEmpty() ? i18n("Error") : caption );
842  dialog->setButtons( KDialog::Ok );
843  dialog->setObjectName( "error" );
844  dialog->setDefaultButton( KDialog::Ok );
845  dialog->setEscapeButton( KDialog::Ok );
846  applyOptions( dialog, options );
847  if ( options & KMessageBox::PlainCaption ) {
848  dialog->setPlainCaption( caption );
849  }
850  if ( parent == NULL && parent_id ) {
851  KWindowSystem::setMainWindow( dialog, parent_id );
852  }
853 
854  createKMessageBox(dialog, QMessageBox::Critical, text, strlist, QString(), 0, options);
855 }
856 
857 void
858 KMessageBox::detailedError(QWidget *parent, const QString &text,
859  const QString &details,
860  const QString &caption, Options options)
861 {
862  return detailedErrorWId( parent ? parent->effectiveWinId() : 0, text, details, caption, options );
863 }
864 
865 void KMessageBox::detailedErrorWId(WId parent_id, const QString &text,
866  const QString &details,
867  const QString &caption, Options options)
868 {
869  QWidget* parent = QWidget::find( parent_id );
870  KDialog *dialog = new KDialog(parent, Qt::Dialog);
871  dialog->setCaption( caption.isEmpty() ? i18n("Error") : caption );
872  dialog->setButtons( KDialog::Ok | KDialog::Details );
873  dialog->setObjectName( "error" );
874  dialog->setDefaultButton( KDialog::Ok );
875  dialog->setEscapeButton( KDialog::Ok );
876  applyOptions( dialog, options );
877  if ( options & KMessageBox::PlainCaption ) {
878  dialog->setPlainCaption( caption );
879  }
880  if ( parent == NULL && parent_id ) {
881  KWindowSystem::setMainWindow( dialog, parent_id );
882  }
883 
884  createKMessageBox(dialog, QMessageBox::Critical, text, QStringList(), QString(), 0, options, details);
885 }
886 
887 void KMessageBox::queuedDetailedError(QWidget *parent, const QString &text,
888  const QString &details,
889  const QString &caption)
890 {
891  return queuedDetailedErrorWId( parent ? parent->effectiveWinId() : 0, text, details, caption );
892 }
893 
894 void KMessageBox::queuedDetailedErrorWId(WId parent_id, const QString &text,
895  const QString &details,
896  const QString &caption)
897 {
898  KMessageBox_queue = true;
899  (void) detailedErrorWId(parent_id, text, details, caption);
900  KMessageBox_queue = false;
901 }
902 
903 
904 void KMessageBox::sorry(QWidget *parent, const QString &text,
905  const QString &caption, Options options)
906 {
907  return sorryWId( parent ? parent->effectiveWinId() : 0, text, caption, options );
908 }
909 
910 void KMessageBox::sorryWId(WId parent_id, const QString &text,
911  const QString &caption, Options options)
912 {
913  QWidget* parent = QWidget::find( parent_id );
914  KDialog *dialog = new KDialog(parent, Qt::Dialog);
915  dialog->setCaption( caption.isEmpty() ? i18n("Sorry") : caption );
916  dialog->setButtons( KDialog::Ok );
917  dialog->setObjectName( "sorry" );
918  dialog->setDefaultButton( KDialog::Ok );
919  dialog->setEscapeButton( KDialog::Ok );
920  applyOptions( dialog, options );
921  if ( options & KMessageBox::PlainCaption ) {
922  dialog->setPlainCaption( caption );
923  }
924  if ( parent == NULL && parent_id ) {
925  KWindowSystem::setMainWindow( dialog, parent_id );
926  }
927 
928  createKMessageBox(dialog, QMessageBox::Warning, text, QStringList(), QString(), 0, options);
929 }
930 
931 void KMessageBox::detailedSorry(QWidget *parent, const QString &text,
932  const QString &details,
933  const QString &caption, Options options)
934 {
935  return detailedSorryWId( parent ? parent->effectiveWinId() : 0, text, details, caption, options );
936 }
937 
938 void KMessageBox::detailedSorryWId(WId parent_id, const QString &text,
939  const QString &details,
940  const QString &caption, Options options)
941 {
942  QWidget* parent = QWidget::find( parent_id );
943  KDialog *dialog = new KDialog(parent, Qt::Dialog);
944  dialog->setCaption( caption.isEmpty() ? i18n("Sorry") : caption );
945  dialog->setButtons( KDialog::Ok | KDialog::Details );
946  dialog->setObjectName( "sorry" );
947  dialog->setDefaultButton( KDialog::Ok );
948  dialog->setEscapeButton( KDialog::Ok );
949  applyOptions( dialog, options );
950  if ( options & KMessageBox::PlainCaption ) {
951  dialog->setPlainCaption( caption );
952  }
953  if ( parent == NULL && parent_id ) {
954  KWindowSystem::setMainWindow( dialog, parent_id );
955  }
956 
957  createKMessageBox(dialog, QMessageBox::Warning, text, QStringList(), QString(), 0, options, details);
958 }
959 
960 void KMessageBox::information(QWidget *parent,const QString &text,
961  const QString &caption, const QString &dontShowAgainName, Options options)
962 {
963  informationList(parent, text, QStringList(), caption, dontShowAgainName, options);
964 }
965 
966 void KMessageBox::informationWId(WId parent_id,const QString &text,
967  const QString &caption, const QString &dontShowAgainName, Options options)
968 {
969  informationListWId(parent_id, text, QStringList(), caption, dontShowAgainName, options);
970 }
971 
972 void KMessageBox::informationList(QWidget *parent,const QString &text, const QStringList & strlist,
973  const QString &caption, const QString &dontShowAgainName, Options options)
974 {
975  return informationListWId( parent ? parent->effectiveWinId() : 0, text, strlist, caption,
976  dontShowAgainName, options );
977 }
978 
979 void KMessageBox::informationListWId(WId parent_id,const QString &text, const QStringList & strlist,
980  const QString &caption, const QString &dontShowAgainName, Options options)
981 {
982  if ( !shouldBeShownContinue(dontShowAgainName) ) {
983  return;
984  }
985 
986  QWidget* parent = QWidget::find( parent_id );
987  KDialog *dialog = new KDialog(parent, Qt::Dialog);
988  dialog->setCaption( caption.isEmpty() ? i18n("Information") : caption );
989  dialog->setButtons( KDialog::Ok );
990  dialog->setObjectName( "information" );
991  dialog->setDefaultButton( KDialog::Ok );
992  dialog->setEscapeButton( KDialog::Ok);
993  applyOptions( dialog, options );
994  if ( options & KMessageBox::PlainCaption ) {
995  dialog->setPlainCaption( caption );
996  }
997  if ( parent == NULL && parent_id ) {
998  KWindowSystem::setMainWindow( dialog, parent_id );
999  }
1000 
1001  bool checkboxResult = false;
1002 
1003  createKMessageBox(dialog, QMessageBox::Information, text, strlist,
1004  dontShowAgainName.isEmpty() ? QString() : i18n("Do not show this message again"),
1005  &checkboxResult, options);
1006 
1007  if (checkboxResult) {
1008  saveDontShowAgainContinue(dontShowAgainName);
1009  }
1010 }
1011 
1012 void KMessageBox::enableAllMessages()
1013 {
1014  KConfig *config = KMessageBox_againConfig ? KMessageBox_againConfig : KGlobal::config().data();
1015  if (!config->hasGroup("Notification Messages")) {
1016  return;
1017  }
1018 
1019  KConfigGroup cg(config, "Notification Messages" );
1020 
1021  typedef QMap<QString, QString> configMap;
1022 
1023  const configMap map = cg.entryMap();
1024 
1025  configMap::ConstIterator it;
1026  for (it = map.begin(); it != map.end(); ++it) {
1027  cg.deleteEntry( it.key() );
1028  }
1029 }
1030 
1031 void KMessageBox::enableMessage(const QString &dontShowAgainName)
1032 {
1033  KConfig *config = KMessageBox_againConfig ? KMessageBox_againConfig : KGlobal::config().data();
1034  if (!config->hasGroup("Notification Messages")) {
1035  return;
1036  }
1037 
1038  KConfigGroup cg( config, "Notification Messages" );
1039 
1040  cg.deleteEntry(dontShowAgainName);
1041  config->sync();
1042 }
1043 
1044 void KMessageBox::about(QWidget *parent, const QString &text,
1045  const QString &caption, Options options)
1046 {
1047  QString _caption = caption;
1048  if (_caption.isEmpty()) {
1049  _caption = i18n("About %1", KGlobal::caption());
1050  }
1051 
1052  KDialog *dialog = new KDialog(parent, Qt::Dialog);
1053  dialog->setCaption( caption );
1054  dialog->setButtons( KDialog::Ok );
1055  dialog->setObjectName( "about" );
1056  applyOptions( dialog, options );
1057  dialog->setDefaultButton( KDialog::Ok );
1058  dialog->setEscapeButton( KDialog::Ok );
1059  if (qApp->windowIcon().isNull()) {
1060  QPixmap ret = QMessageBox::standardIcon(QMessageBox::Information);
1061  dialog->setWindowIcon(ret);
1062  }
1063 
1064  createKMessageBox(dialog, qApp->windowIcon(), text, QStringList(), QString(), 0, options);
1065  return;
1066 }
1067 
1068 int KMessageBox::messageBox( QWidget *parent, DialogType type, const QString &text,
1069  const QString &caption, const KGuiItem &buttonYes,
1070  const KGuiItem &buttonNo, const KGuiItem &buttonCancel,
1071  const QString &dontShowAskAgainName, Options options )
1072 {
1073  return messageBoxWId( parent ? parent->effectiveWinId() : 0, type, text, caption,
1074  buttonYes, buttonNo, buttonCancel, dontShowAskAgainName, options );
1075 }
1076 
1077 int KMessageBox::messageBoxWId( WId parent_id, DialogType type, const QString &text,
1078  const QString &caption, const KGuiItem &buttonYes,
1079  const KGuiItem &buttonNo, const KGuiItem &buttonCancel,
1080  const QString &dontShow, Options options )
1081 {
1082  switch (type) {
1083  case QuestionYesNo:
1084  return KMessageBox::questionYesNoWId( parent_id,
1085  text, caption, buttonYes, buttonNo, dontShow, options );
1086  case QuestionYesNoCancel:
1087  return KMessageBox::questionYesNoCancelWId( parent_id,
1088  text, caption, buttonYes, buttonNo, buttonCancel, dontShow, options );
1089  case WarningYesNo:
1090  return KMessageBox::warningYesNoWId( parent_id,
1091  text, caption, buttonYes, buttonNo, dontShow, options );
1092  case WarningContinueCancel:
1093  return KMessageBox::warningContinueCancelWId( parent_id,
1094  text, caption, KGuiItem(buttonYes.text()), buttonCancel, dontShow, options );
1095  case WarningYesNoCancel:
1096  return KMessageBox::warningYesNoCancelWId( parent_id,
1097  text, caption, buttonYes, buttonNo, buttonCancel, dontShow, options );
1098  case Information:
1099  KMessageBox::informationWId( parent_id,
1100  text, caption, dontShow, options );
1101  return KMessageBox::Ok;
1102 
1103  case Error:
1104  KMessageBox::errorWId( parent_id, text, caption, options );
1105  return KMessageBox::Ok;
1106 
1107  case Sorry:
1108  KMessageBox::sorryWId( parent_id, text, caption, options );
1109  return KMessageBox::Ok;
1110  }
1111  return KMessageBox::Cancel;
1112 }
1113 
1114 void KMessageBox::queuedMessageBox( QWidget *parent, DialogType type, const QString &text, const QString &caption, Options options )
1115 {
1116  return queuedMessageBoxWId( parent ? parent->effectiveWinId() : 0, type, text, caption, options );
1117 }
1118 
1119 void KMessageBox::queuedMessageBoxWId( WId parent_id, DialogType type, const QString &text, const QString &caption, Options options )
1120 {
1121  KMessageBox_queue = true;
1122  (void) messageBoxWId(parent_id, type, text, caption, KStandardGuiItem::yes(),
1123  KStandardGuiItem::no(), KStandardGuiItem::cancel(), QString(), options);
1124  KMessageBox_queue = false;
1125 }
1126 
1127 void KMessageBox::queuedMessageBox( QWidget *parent, DialogType type, const QString &text, const QString &caption )
1128 {
1129  return queuedMessageBoxWId( parent ? parent->effectiveWinId() : 0, type, text, caption );
1130 }
1131 
1132 void KMessageBox::queuedMessageBoxWId( WId parent_id, DialogType type, const QString &text, const QString &caption )
1133 {
1134  KMessageBox_queue = true;
1135  (void) messageBoxWId(parent_id, type, text, caption);
1136  KMessageBox_queue = false;
1137 }
KStandardGuiItem::cancel
KGuiItem cancel()
Returns the 'Cancel' gui item.
Definition: kstandardguiitem.cpp:113
KDialog::defaultButton
ButtonCode defaultButton() const
Returns the button code of the default button, or NoDefault if there is no default button...
Definition: kdialog.cpp:324
kdialog.h
KGlobal::caption
QString caption()
i18n
QString i18n(const char *text)
KNotification::DefaultEvent
Definition: knotification.h:247
KIconLoader::DefaultState
The default state.
Definition: kiconloader.h:172
KDialog::setButtonGuiItem
void setButtonGuiItem(ButtonCode id, const KGuiItem &item)
Sets the KGuiItem directly for the button instead of using 3 methods to set the text, tooltip and whatsthis strings.
Definition: kdialog.cpp:699
KMessageBox::No
Definition: kmessagebox.h:73
KMessageBox::warningContinueCancelListWId
static int warningContinueCancelListWId(WId parent_id, const QString &text, const QStringList &strlist, const QString &caption=QString(), const KGuiItem &buttonContinue=KStandardGuiItem::cont(), const KGuiItem &buttonCancel=KStandardGuiItem::cancel(), const QString &dontAskAgainName=QString(), Options options=Notify)
This function accepts the window id of the parent window, instead of QWidget*.
Definition: kmessagebox.cpp:680
KConfig::sync
void sync()
QWidget
QScrollArea::setWidget
void setWidget(QWidget *widget)
QWidget::palette
palette
I18N_POST_BUTTON_FILTER
#define I18N_POST_BUTTON_FILTER
Definition: kmessagebox.cpp:74
KConfig::Persistent
KMessageBox::Continue
Definition: kmessagebox.h:74
QSize::width
int width() const
QDialog::setModal
void setModal(bool modal)
I18N_FILTER_BUTTON_CANCEL
#define I18N_FILTER_BUTTON_CANCEL(src, dst)
Definition: kmessagebox.cpp:68
KDialog::isButtonEnabled
bool isButtonEnabled(ButtonCode id) const
Returns whether any button is enabled.
Definition: kdialog.cpp:668
KMessageBox::queuedMessageBoxWId
static void queuedMessageBoxWId(WId parent_id, DialogType type, const QString &text, const QString &caption, Options options)
This function accepts the window id of the parent window, instead of QWidget*.
Definition: kmessagebox.cpp:1119
KMessageBox_againConfig
KConfig * KMessageBox_againConfig
Definition: kmessagebox.cpp:78
QAbstractItemView::setSelectionMode
void setSelectionMode(QAbstractItemView::SelectionMode mode)
KSharedPtr::data
T * data()
KMessageBox::DialogType
DialogType
Definition: kmessagebox.h:77
QMessageBox::standardIcon
QPixmap standardIcon(Icon icon, Qt::GUIStyle style)
kapplication.h
QPalette::setColor
void setColor(ColorGroup group, ColorRole role, const QColor &color)
KIconLoader::global
static KIconLoader * global()
Returns the global icon loader initialized with the global KComponentData.
KMessageBox::about
static void about(QWidget *parent, const QString &text, const QString &caption=QString(), Options options=Notify)
Display an "About" dialog.
Definition: kmessagebox.cpp:1044
kglobalsettings.h
KMessageBox::WindowModal
The window is to be modal relative to its parent. By default, it is application modal.
Definition: kmessagebox.h:97
QWidget::setWindowModality
void setWindowModality(Qt::WindowModality windowModality)
KMessageBox::warningYesNoWId
static int warningYesNoWId(WId parent_id, const QString &text, const QString &caption=QString(), const KGuiItem &buttonYes=KStandardGuiItem::yes(), const KGuiItem &buttonNo=KStandardGuiItem::no(), const QString &dontAskAgainName=QString(), Options options=Options(Notify|Dangerous))
This function accepts the window id of the parent window, instead of QWidget*.
Definition: kmessagebox.cpp:575
KMessageBox::warningYesNoCancelWId
static int warningYesNoCancelWId(WId parent_id, const QString &text, const QString &caption=QString(), const KGuiItem &buttonYes=KStandardGuiItem::yes(), const KGuiItem &buttonNo=KStandardGuiItem::no(), const KGuiItem &buttonCancel=KStandardGuiItem::cancel(), const QString &dontAskAgainName=QString(), Options options=Notify)
This function accepts the window id of the parent window, instead of QWidget*.
Definition: kmessagebox.cpp:738
I18N_FILTER_BUTTON_YES
#define I18N_FILTER_BUTTON_YES(src, dst)
Definition: kmessagebox.cpp:50
QFrame::setFrameShape
void setFrameShape(Shape)
KMessageBox::warningYesNo
static int warningYesNo(QWidget *parent, const QString &text, const QString &caption=QString(), const KGuiItem &buttonYes=KStandardGuiItem::yes(), const KGuiItem &buttonNo=KStandardGuiItem::no(), const QString &dontAskAgainName=QString(), Options options=Options(Notify|Dangerous))
Display a "warning" dialog.
Definition: kmessagebox.cpp:564
KMessageBox::Error
Definition: kmessagebox.h:86
KMessageBox::warningYesNoCancelListWId
static int warningYesNoCancelListWId(WId parent_id, const QString &text, const QStringList &strlist, const QString &caption=QString(), const KGuiItem &buttonYes=KStandardGuiItem::yes(), const KGuiItem &buttonNo=KStandardGuiItem::no(), const KGuiItem &buttonCancel=KStandardGuiItem::cancel(), const QString &dontAskAgainName=QString(), Options options=Notify)
This function accepts the window id of the parent window, instead of QWidget*.
Definition: kmessagebox.cpp:763
QLabel::setOpenExternalLinks
void setOpenExternalLinks(bool open)
QWidget::style
QStyle * style() const
KDialog::Cancel
Show Cancel-button. (this button reject()s the dialog; result set to QDialog::Rejected) ...
Definition: kdialog.h:144
KMessageBox::information
static void information(QWidget *parent, const QString &text, const QString &caption=QString(), const QString &dontShowAgainName=QString(), Options options=Notify)
Display an "Information" dialog.
Definition: kmessagebox.cpp:960
QStyle::pixelMetric
virtual int pixelMetric(PixelMetric metric, const QStyleOption *option, const QWidget *widget) const =0
kconfig.h
QLabel::setPixmap
void setPixmap(const QPixmap &)
QWidget::setMinimumWidth
void setMinimumWidth(int minw)
KMessageBox::detailedError
static void detailedError(QWidget *parent, const QString &text, const QString &details, const QString &caption=QString(), Options options=Notify)
Displays an "Error" dialog with a "Details >>" button.
Definition: kmessagebox.cpp:858
QMap< QString, QString >
QPointer
KDialog::Yes
Show Yes button. (this button closes the dialog and sets the result to KDialog::Yes) ...
Definition: kdialog.h:147
QHBoxLayout
KConfig::hasGroup
bool hasGroup(const QString &group) const
KMessageBox::setDontShowAskAgainConfig
static void setDontShowAskAgainConfig(KConfig *cfg)
Use cfg for all settings related to the dontShowAgainName feature.
Definition: kmessagebox.cpp:432
QAbstractScrollArea::viewport
QWidget * viewport() const
I18N_FILTER_BUTTON_CONTINUE
#define I18N_FILTER_BUTTON_CONTINUE(src, dst)
Definition: kmessagebox.cpp:62
KConfigGroup::writeEntry
void writeEntry(const QString &key, const QVariant &value, WriteConfigFlags pFlags=Normal)
QRect::height
int height() const
KGlobalSettings::desktopGeometry
static QRect desktopGeometry(const QPoint &point)
This function returns the desktop geometry for an application that needs to set the geometry of a wid...
Definition: kglobalsettings.cpp:732
kiconloader.h
KMessageBox::questionYesNoWId
static int questionYesNoWId(WId parent_id, const QString &text, const QString &caption=QString(), const KGuiItem &buttonYes=KStandardGuiItem::yes(), const KGuiItem &buttonNo=KStandardGuiItem::no(), const QString &dontAskAgainName=QString(), Options options=Notify)
This function accepts the window id of the parent window, instead of QWidget*.
Definition: kmessagebox.cpp:364
KMessageBox::sorryWId
static void sorryWId(WId parent_id, const QString &text, const QString &caption=QString(), Options options=Notify)
This function accepts the window id of the parent window, instead of QWidget*.
Definition: kmessagebox.cpp:910
KDialog
A dialog base class with standard buttons and predefined layouts.
Definition: kdialog.h:128
I18N_FILTER_BUTTON_NO
#define I18N_FILTER_BUTTON_NO(src, dst)
Definition: kmessagebox.cpp:56
QFontMetrics
KMessageBox::detailedSorryWId
static void detailedSorryWId(WId parent_id, const QString &text, const QString &details, const QString &caption=QString(), Options options=Notify)
This function accepts the window id of the parent window, instead of QWidget*.
Definition: kmessagebox.cpp:938
QBoxLayout::addSpacing
void addSpacing(int size)
KIconLoader::NoGroup
No group.
Definition: kiconloader.h:129
QListWidget
KMessageBox::informationListWId
static void informationListWId(WId parent_id, const QString &text, const QStringList &strlist, const QString &caption=QString(), const QString &dontShowAgainName=QString(), Options options=Notify)
This function accepts the window id of the parent window, instead of QWidget*.
Definition: kmessagebox.cpp:979
klocale.h
KDialog::setButtonFocus
void setButtonFocus(ButtonCode id)
Sets the focus to the button of the passed id.
Definition: kdialog.cpp:798
KMessageBox::createKMessageBox
static int createKMessageBox(KDialog *dialog, QMessageBox::Icon icon, const QString &text, const QStringList &strlist, const QString &ask, bool *checkboxReturn, Options options, const QString &details=QString())
Create content and layout of a standard dialog.
Definition: kmessagebox.cpp:153
KMessageBox::shouldBeShownContinue
static bool shouldBeShownContinue(const QString &dontShowAgainName)
Definition: kmessagebox.cpp:394
KMessageBox::Sorry
Definition: kmessagebox.h:85
KDialog::setCaption
virtual void setCaption(const QString &caption)
Make a KDE compliant caption.
Definition: kdialog.cpp:469
KMessageBox::messageBox
static int messageBox(QWidget *parent, DialogType type, const QString &text, const QString &caption=QString(), const KGuiItem &buttonYes=KStandardGuiItem::yes(), const KGuiItem &buttonNo=KStandardGuiItem::no(), const KGuiItem &buttonCancel=KStandardGuiItem::cancel(), const QString &dontShowAskAgainName=QString(), Options options=Notify)
Alternate method to show a messagebox:
Definition: kmessagebox.cpp:1068
KDialog::ButtonCode
ButtonCode
Definition: kdialog.h:136
QIcon::pixmap
QPixmap pixmap(const QSize &size, Mode mode, State state) const
KMessageBox::queuedMessageBox
static void queuedMessageBox(QWidget *parent, DialogType type, const QString &text, const QString &caption, Options options)
Like messageBox.
Definition: kmessagebox.cpp:1114
QWidget::setWindowIcon
void setWindowIcon(const QIcon &icon)
KGlobal::config
KSharedConfigPtr config()
KDialog::setMainWidget
void setMainWidget(QWidget *widget)
Sets the main widget of the dialog.
Definition: kdialog.cpp:338
KMessageBox::Cancel
Definition: kmessagebox.h:71
QStyleOption::initFrom
void initFrom(const QWidget *widget)
QWidget::width
width
knotification.h
KConfigGroup::deleteEntry
void deleteEntry(const QString &pKey, WriteConfigFlags pFlags=Normal)
KMessageBox::warningYesNoCancel
static int warningYesNoCancel(QWidget *parent, const QString &text, const QString &caption=QString(), const KGuiItem &buttonYes=KStandardGuiItem::yes(), const KGuiItem &buttonNo=KStandardGuiItem::no(), const KGuiItem &buttonCancel=KStandardGuiItem::cancel(), const QString &dontAskAgainName=QString(), Options options=Notify)
Display a Yes/No/Cancel "warning" dialog.
Definition: kmessagebox.cpp:726
QWidget::setMinimumSize
void setMinimumSize(const QSize &)
QStyleOption
QRect
KMessageBox::questionYesNoCancelWId
static int questionYesNoCancelWId(WId parent_id, const QString &text, const QString &caption=QString(), const KGuiItem &buttonYes=KStandardGuiItem::yes(), const KGuiItem &buttonNo=KStandardGuiItem::no(), const KGuiItem &buttonCancel=KStandardGuiItem::cancel(), const QString &dontAskAgainName=QString(), Options options=Notify)
This function accepts the window id of the parent window, instead of QWidget*.
Definition: kmessagebox.cpp:508
KIconLoader::loadIcon
QPixmap loadIcon(const QString &name, KIconLoader::Group group, int size=0, int state=KIconLoader::DefaultState, const QStringList &overlays=QStringList(), QString *path_store=0L, bool canReturnNull=false) const
Loads an icon.
Definition: kiconloader.cpp:1100
QBoxLayout::addWidget
void addWidget(QWidget *widget, int stretch, QFlags< Qt::AlignmentFlag > alignment)
KTextEdit::setReadOnly
virtual void setReadOnly(bool readOnly)
Reimplemented to set a proper "deactivated" background color.
Definition: ktextedit.cpp:807
QWidget::topLevelWidget
QWidget * topLevelWidget() const
QGroupBox
applyOptions
static void applyOptions(KDialog *dialog, KMessageBox::Options options)
Definition: kmessagebox.cpp:145
KMessageBox::messageBoxWId
static int messageBoxWId(WId parent_id, DialogType type, const QString &text, const QString &caption=QString(), const KGuiItem &buttonYes=KStandardGuiItem::yes(), const KGuiItem &buttonNo=KStandardGuiItem::no(), const KGuiItem &buttonCancel=KStandardGuiItem::cancel(), const QString &dontShowAskAgainName=QString(), Options options=Notify)
This function accepts the window id of the parent window, instead of QWidget*.
Definition: kmessagebox.cpp:1077
KMessageBox::warningYesNoList
static int warningYesNoList(QWidget *parent, const QString &text, const QStringList &strlist, const QString &caption=QString(), const KGuiItem &buttonYes=KStandardGuiItem::yes(), const KGuiItem &buttonNo=KStandardGuiItem::no(), const QString &dontAskAgainName=QString(), Options options=Options(Notify|Dangerous))
Display a "warning" dialog with a listbox to show information to the user.
Definition: kmessagebox.cpp:586
QStyleOptionViewItem
KDialog::spacingHint
static int spacingHint()
Returns the number of pixels that should be used between widgets inside a dialog according to the KDE...
Definition: kdialog.cpp:432
KDialog::setEscapeButton
void setEscapeButton(ButtonCode id)
Sets the button that will be activated when the Escape key is pressed.
Definition: kdialog.cpp:282
QCheckBox
KGuiItem
An abstract class for GUI data such as ToolTip and Icon.
Definition: kguiitem.h:36
KMessageBox::informationList
static void informationList(QWidget *parent, const QString &text, const QStringList &strlist, const QString &caption=QString(), const QString &dontShowAgainName=QString(), Options options=Notify)
Display an "Information" dialog with a listbox.
Definition: kmessagebox.cpp:972
KMessageBox::ButtonCode
ButtonCode
Button types.
Definition: kmessagebox.h:68
QList::isEmpty
bool isEmpty() const
KMessageBox::sorry
static void sorry(QWidget *parent, const QString &text, const QString &caption=QString(), Options options=Notify)
Display an "Sorry" dialog.
Definition: kmessagebox.cpp:904
QObject::setObjectName
void setObjectName(const QString &name)
QString::isEmpty
bool isEmpty() const
KMessageBox::Notify
Emit a KNotify event.
Definition: kmessagebox.h:92
sendNotification
static void sendNotification(QString message, const QStringList &strlist, QMessageBox::Icon icon, WId parent_id)
Definition: kmessagebox.cpp:111
KMessageBox::QuestionYesNoCancel
Definition: kmessagebox.h:87
KMessageBox::queuedDetailedError
static void queuedDetailedError(QWidget *parent, const QString &text, const QString &details, const QString &caption=QString())
Like detailedError.
Definition: kmessagebox.cpp:887
QVBoxLayout
KMessageBox::WarningContinueCancel
Definition: kmessagebox.h:81
QWidget::winId
WId winId() const
QString
KDialog::setButtons
void setButtons(ButtonCodes buttonMask)
Creates (or recreates) the button box and all the buttons in it.
Definition: kdialog.cpp:206
QAbstractScrollArea::verticalScrollBar
QScrollBar * verticalScrollBar() const
KMessageBox::Information
Definition: kmessagebox.h:83
QLayout::setMargin
void setMargin(int margin)
QWidget::setSizePolicy
void setSizePolicy(QSizePolicy)
KMessageBox::informationWId
static void informationWId(WId parent_id, const QString &text, const QString &caption=QString(), const QString &dontShowAgainName=QString(), Options options=Notify)
This function accepts the window id of the parent window, instead of QWidget*.
Definition: kmessagebox.cpp:966
KMessageBox::Ok
Definition: kmessagebox.h:70
QStringList
KSqueezedTextLabel
A replacement for QLabel that squeezes its text.
Definition: ksqueezedtextlabel.h:47
KMessageBox::AllowLink
The message may contain links.
Definition: kmessagebox.h:93
QPixmap
KMessageBox::questionYesNo
static int questionYesNo(QWidget *parent, const QString &text, const QString &caption=QString(), const KGuiItem &buttonYes=KStandardGuiItem::yes(), const KGuiItem &buttonNo=KStandardGuiItem::no(), const QString &dontAskAgainName=QString(), Options options=Notify)
Display a simple "question" dialog.
Definition: kmessagebox.cpp:353
KDialog::Ok
Show Ok button. (this button accept()s the dialog; result set to QDialog::Accepted) ...
Definition: kdialog.h:141
QList::end
iterator end()
KMessageBox::WarningYesNoCancel
Definition: kmessagebox.h:82
KMessageBox::warningYesNoCancelList
static int warningYesNoCancelList(QWidget *parent, const QString &text, const QStringList &strlist, const QString &caption=QString(), const KGuiItem &buttonYes=KStandardGuiItem::yes(), const KGuiItem &buttonNo=KStandardGuiItem::no(), const KGuiItem &buttonCancel=KStandardGuiItem::cancel(), const QString &dontAskAgainName=QString(), Options options=Notify)
Display a Yes/No/Cancel "warning" dialog with a listbox to show information to the user...
Definition: kmessagebox.cpp:750
KMessageBox::queuedDetailedErrorWId
static void queuedDetailedErrorWId(WId parent_id, const QString &text, const QString &details, const QString &caption=QString())
This function accepts the window id of the parent window, instead of QWidget*.
Definition: kmessagebox.cpp:894
KMessageBox::PlainCaption
Do not use KApplication::makeStdCaption()
Definition: kmessagebox.h:95
KMessageBox::saveDontShowAgainYesNo
static void saveDontShowAgainYesNo(const QString &dontShowAgainName, ButtonCode result)
Save the fact that the yes/no message box should not be shown again.
Definition: kmessagebox.cpp:403
QSize
QWidget::setFixedSize
void setFixedSize(const QSize &s)
KMessageBox::questionYesNoListWId
static int questionYesNoListWId(WId parent_id, const QString &text, const QStringList &strlist, const QString &caption=QString(), const KGuiItem &buttonYes=KStandardGuiItem::yes(), const KGuiItem &buttonNo=KStandardGuiItem::no(), const QString &dontAskAgainName=QString(), Options options=Notify)
This function accepts the window id of the parent window, instead of QWidget*.
Definition: kmessagebox.cpp:449
KDialog::setDefaultButton
void setDefaultButton(ButtonCode id)
Sets the button that will be activated when the Enter key is pressed.
Definition: kdialog.cpp:287
QScrollArea::setWidgetResizable
void setWidgetResizable(bool resizable)
QFontMetrics::width
int width(const QString &text, int len) const
KMessageBox::warningYesNoListWId
static int warningYesNoListWId(WId parent_id, const QString &text, const QStringList &strlist, const QString &caption=QString(), const KGuiItem &buttonYes=KStandardGuiItem::yes(), const KGuiItem &buttonNo=KStandardGuiItem::no(), const QString &dontAskAgainName=QString(), Options options=Options(Notify|Dangerous))
This function accepts the window id of the parent window, instead of QWidget*.
Definition: kmessagebox.cpp:598
ksqueezedtextlabel.h
KDialog::setDetailsWidget
void setDetailsWidget(QWidget *detailsWidget)
Sets the widget that gets shown when "Details" is enabled.
Definition: kdialog.cpp:806
KIconLoader::SizeHuge
huge sized icons for iconviews
Definition: kiconloader.h:163
KWindowSystem::setMainWindow
static void setMainWindow(QWidget *subwindow, WId mainwindow)
Sets the parent window of subwindow to be mainwindow.
Definition: kwindowsystem_mac.cpp:412
KConfigGroup
QLabel::setTextInteractionFlags
void setTextInteractionFlags(QFlags< Qt::TextInteractionFlag > flags)
KNotification::event
static KNotification * event(const QString &eventId, const QString &title, const QString &text, const QPixmap &pixmap=QPixmap(), QWidget *widget=0L, const NotificationFlags &flags=CloseOnTimeout, const KComponentData &componentData=KComponentData())
emit an event
Definition: knotification.cpp:291
KConfig
KMessageBox::shouldBeShownYesNo
static bool shouldBeShownYesNo(const QString &dontShowAgainName, ButtonCode &result)
Definition: kmessagebox.cpp:375
KDialog::No
Show No button. (this button closes the dialog and sets the result to KDialog::No) ...
Definition: kdialog.h:146
KMessageBox::questionYesNoList
static int questionYesNoList(QWidget *parent, const QString &text, const QStringList &strlist, const QString &caption=QString(), const KGuiItem &buttonYes=KStandardGuiItem::yes(), const KGuiItem &buttonNo=KStandardGuiItem::no(), const QString &dontAskAgainName=QString(), Options options=Notify)
Display a "question" dialog with a listbox to show information to the user.
Definition: kmessagebox.cpp:437
QRect::width
int width() const
KMessageBox_queue
static bool KMessageBox_queue
Definition: kmessagebox.cpp:77
QWidget::fontMetrics
QFontMetrics fontMetrics() const
QListWidget::addItems
void addItems(const QStringList &labels)
QBoxLayout::addStretch
void addStretch(int stretch)
KMessageBox::warningContinueCancelWId
static int warningContinueCancelWId(WId parent_id, const QString &text, const QString &caption=QString(), const KGuiItem &buttonContinue=KStandardGuiItem::cont(), const KGuiItem &buttonCancel=KStandardGuiItem::cancel(), const QString &dontAskAgainName=QString(), Options options=Notify)
This function accepts the window id of the parent window, instead of QWidget*.
Definition: kmessagebox.cpp:656
QWidget::find
QWidget * find(WId id)
QIcon::isNull
bool isNull() const
ktextedit.h
KDialog::NoDefault
Used when specifying a default button; indicates that no button should be marked by default...
Definition: kdialog.h:153
KMessageBox::errorList
static void errorList(QWidget *parent, const QString &text, const QStringList &strlist, const QString &caption=QString(), Options options=Notify)
Display an "Error" dialog with a listbox.
Definition: kmessagebox.cpp:830
KStandardGuiItem::no
KGuiItem no()
Returns the 'No' gui item.
Definition: kstandardguiitem.cpp:123
QList::ConstIterator
typedef ConstIterator
KMessageBox::NoExec
Do not call exec() in createKMessageBox()
Definition: kmessagebox.h:96
QLabel::sizeHint
virtual QSize sizeHint() const
QSize::height
int height() const
KMessageBox::detailedSorry
static void detailedSorry(QWidget *parent, const QString &text, const QString &details, const QString &caption=QString(), Options options=Notify)
Displays a "Sorry" dialog with a "Details >>" button.
Definition: kmessagebox.cpp:931
KMessageBox::enableMessage
static void enableMessage(const QString &dontShowAgainName)
Re-enable a specific dontShowAgainName messages that had previously been turned off.
Definition: kmessagebox.cpp:1031
QString::length
int length() const
QWidget::setMinimumHeight
void setMinimumHeight(int minh)
themedMessageBoxIcon
static QIcon themedMessageBoxIcon(QMessageBox::Icon icon)
Definition: kmessagebox.cpp:81
kwindowsystem.h
KMessageBox::warningContinueCancelList
static int warningContinueCancelList(QWidget *parent, const QString &text, const QStringList &strlist, const QString &caption=QString(), const KGuiItem &buttonContinue=KStandardGuiItem::cont(), const KGuiItem &buttonCancel=KStandardGuiItem::cancel(), const QString &dontAskAgainName=QString(), Options options=Notify)
Display a "warning" dialog with a listbox to show information to the user.
Definition: kmessagebox.cpp:668
KMessageBox::QuestionYesNo
Definition: kmessagebox.h:79
KDialog::sizeHint
virtual QSize sizeHint() const
Reimplemented from QDialog.
Definition: kdialog.cpp:359
KMessageBox::Yes
Definition: kmessagebox.h:72
KConfigGroup::sync
void sync()
KGuiItem::text
QString text() const
Definition: kguiitem.cpp:117
KDialog::setPlainCaption
virtual void setPlainCaption(const QString &caption)
Make a plain caption without any modifications.
Definition: kdialog.cpp:488
QScrollArea
KMessageBox::errorListWId
static void errorListWId(WId parent_id, const QString &text, const QStringList &strlist, const QString &caption=QString(), Options options=Notify)
This function accepts the window id of the parent window, instead of QWidget*.
Definition: kmessagebox.cpp:836
kmessagebox.h
QWidget::effectiveWinId
WId effectiveWinId() const
KMessageBox::Dangerous
The action to be confirmed by the dialog is a potentially destructive one. The default button will be...
Definition: kmessagebox.h:94
QLabel
KDialog::Details
Show Details button. (this button will show the detail widget set with setDetailsWidget) ...
Definition: kdialog.h:149
KNotification::CloseOnTimeout
The notification will be automatically closed after a timeout.
Definition: knotification.h:219
KMessageBox::detailedErrorWId
static void detailedErrorWId(WId parent_id, const QString &text, const QString &details, const QString &caption=QString(), Options options=Notify)
This function accepts the window id of the parent window, instead of QWidget*.
Definition: kmessagebox.cpp:865
KMessageBox::enableAllMessages
static void enableAllMessages()
Enable all messages which have been turned off with the dontShowAgainName feature.
Definition: kmessagebox.cpp:1012
KConfigGroup::readEntry
T readEntry(const QString &key, const T &aDefault) const
KMessageBox::questionYesNoCancel
static int questionYesNoCancel(QWidget *parent, const QString &text, const QString &caption=QString(), const KGuiItem &buttonYes=KStandardGuiItem::yes(), const KGuiItem &buttonNo=KStandardGuiItem::no(), const KGuiItem &buttonCancel=KStandardGuiItem::cancel(), const QString &dontAskAgainName=QString(), Options options=Notify)
Display a simple "question" dialog.
Definition: kmessagebox.cpp:495
KMessageBox::warningContinueCancel
static int warningContinueCancel(QWidget *parent, const QString &text, const QString &caption=QString(), const KGuiItem &buttonContinue=KStandardGuiItem::cont(), const KGuiItem &buttonCancel=KStandardGuiItem::cancel(), const QString &dontAskAgainName=QString(), Options options=Notify)
Display a "warning" dialog.
Definition: kmessagebox.cpp:644
KStandardGuiItem::yes
KGuiItem yes()
Returns the 'Yes' gui item.
Definition: kstandardguiitem.cpp:118
QList::begin
iterator begin()
KMessageBox::errorWId
static void errorWId(WId parent_id, const QString &text, const QString &caption=QString(), Options options=Notify)
This function accepts the window id of the parent window, instead of QWidget*.
Definition: kmessagebox.cpp:824
QLabel::setWordWrap
void setWordWrap(bool on)
QBoxLayout::setStretchFactor
bool setStretchFactor(QWidget *widget, int stretch)
QFontMetrics::lineSpacing
int lineSpacing() const
QPalette
QBoxLayout::setSpacing
void setSpacing(int spacing)
QWidget::height
height
KMessageBox::error
static void error(QWidget *parent, const QString &text, const QString &caption=QString(), Options options=Notify)
Display an "Error" dialog.
Definition: kmessagebox.cpp:818
KConfigGroup::entryMap
QMap< QString, QString > entryMap() const
Qt::TextInteractionFlags
typedef TextInteractionFlags
kconfiggroup.h
QIcon
KMessageBox::WarningYesNo
Definition: kmessagebox.h:80
KTextEdit
A KDE'ified QTextEdit.
Definition: ktextedit.h:90
KMessageBox::saveDontShowAgainContinue
static void saveDontShowAgainContinue(const QString &dontShowAgainName)
Save the fact that the continue/cancel message box should not be shown again.
Definition: kmessagebox.cpp:418
QBoxLayout::addLayout
void addLayout(QLayout *layout, int stretch)
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:23:59 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

KDEUI

Skip menu "KDEUI"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Modules
  • Related Pages

kdelibs API Reference

Skip menu "kdelibs API Reference"
  • DNSSD
  • Interfaces
  •   KHexEdit
  •   KMediaPlayer
  •   KSpeech
  •   KTextEditor
  • kconf_update
  • KDE3Support
  •   KUnitTest
  • KDECore
  • KDED
  • KDEsu
  • KDEUI
  • KDEWebKit
  • KDocTools
  • KFile
  • KHTML
  • KImgIO
  • KInit
  • kio
  • KIOSlave
  • KJS
  •   KJS-API
  •   WTF
  • kjsembed
  • KNewStuff
  • KParts
  • KPty
  • Kross
  • KUnitConversion
  • KUtils
  • Nepomuk
  • Plasma
  • Solid
  • Sonnet
  • ThreadWeaver

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal