| dialog.h | | dialog.h | |
|
| | | // -*- Mode: C++; c-basic-offset: 4; indent-tabs-mode: nil; -*- | |
| /* | | /* | |
|
| * Copyright 2008 by Alessandro Diaferia <alediaferia@gmail.com> | | * dialog.h | |
| * Copyright 2007 by Alexis Ménard <darktears31@gmail.com> | | * | |
| * Copyright 2007 Sebastian Kuegler <sebas@kde.org> | | * Copyright (C) 2003 Zack Rusin <zack@kde.org> | |
| * Copyright 2006 Aaron Seigo <aseigo@kde.org> | | * Copyright (C) 2009-2010 Michel Ludwig <michel.ludwig@kdemail.net> | |
| * | | * | |
| * This library is free software; you can redistribute it and/or | | * This library is free software; you can redistribute it and/or | |
| * modify it under the terms of the GNU Lesser General Public | | * modify it under the terms of the GNU Lesser General Public | |
| * License as published by the Free Software Foundation; either | | * License as published by the Free Software Foundation; either | |
| * version 2.1 of the License, or (at your option) any later version. | | * version 2.1 of the License, or (at your option) any later version. | |
| * | | * | |
| * This library is distributed in the hope that it will be useful, | | * This library is distributed in the hope that it will be useful, | |
| * but WITHOUT ANY WARRANTY; without even the implied warranty of | | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
| * Lesser General Public License for more details. | | * Lesser General Public License for more details. | |
| * | | * | |
| * You should have received a copy of the GNU Lesser General Public | | * You should have received a copy of the GNU Lesser General Public | |
| * License along with this library; if not, write to the Free Software | | * License along with this library; if not, write to the Free Software | |
|
| * Foundation, Inc., 51 Franklin St, Fifth Floor, | | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA | |
| * Boston, MA 02110-1301 USA | | * 02110-1301 USA | |
| */ | | */ | |
|
| | | #ifndef SONNET_DIALOG_H | |
| | | #define SONNET_DIALOG_H | |
| | | | |
|
| #ifndef PLASMA_DIALOG_H | | #include <kdialog.h> | |
| #define PLASMA_DIALOG_H | | | |
| | | | |
| #include <QtGui/QWidget> | | | |
| #include <QtGui/QGraphicsSceneEvent> | | | |
| #include <QtGui/QGraphicsView> | | | |
| | | | |
|
| #include <plasma/plasma_export.h> | | class QListWidgetItem; | |
| #include <plasma/plasma.h> | | class QModelIndex; | |
| | | | |
|
| namespace Plasma | | namespace Sonnet | |
| { | | { | |
|
| | | class BackgroundChecker; | |
| | | | |
|
| class DialogPrivate; | | /** | |
| | | * @short Spellcheck dialog | |
| /** | | * | |
| * @class Dialog plasma/dialog.h <Plasma/Dialog> | | * \code | |
| * | | * Sonnet::Dialog dlg = new Sonnet::Dialog( | |
| * @short A dialog that uses the Plasma style | | * new Sonnet::BackgroundChecker(this), this); | |
| * | | * //connect signals | |
| * Dialog provides a dialog-like widget that can be used to display additio | | * ... | |
| nal | | * dlg->setBuffer( someText ); | |
| * information. | | * dlg->show(); | |
| * | | * \endcode | |
| * Dialog uses the plasma theme, and usually has no window decoration. It's | | * | |
| meant | | * You can change buffer inside a slot connected to done() signal | |
| * as an interim solution to display widgets as extension to plasma applets | | * and spellcheck will continue with new data automatically. | |
| , for | | */ | |
| * example when you click on an applet like the devicenotifier or the clock | | class KDEUI_EXPORT Dialog : public KDialog | |
| , the | | { | |
| * widget that is then displayed, is a Dialog. | | Q_OBJECT | |
| */ | | | |
| class PLASMA_EXPORT Dialog : public QWidget | | | |
| { | | | |
| Q_OBJECT | | | |
| public: | | public: | |
|
| /** | | Dialog(BackgroundChecker *checker, | |
| * Use these flags to choose the active resize corners. | | QWidget *parent); | |
| */ | | ~Dialog(); | |
| enum ResizeCorner { | | | |
| NoCorner = 0, | | QString originalBuffer() const; | |
| NorthEast = 1, | | QString buffer() const; | |
| SouthEast = 2, | | | |
| NorthWest = 4, | | void show(); | |
| SouthWest = 8, | | void activeAutoCorrect(bool _active); | |
| All = NorthEast | SouthEast | NorthWest | SouthWest | | | |
| }; | | // Hide warning about done(), which is a slot in QDialog and a sign | |
| Q_DECLARE_FLAGS(ResizeCorners, ResizeCorner) | | al here. | |
| | | using KDialog::done; | |
| /** | | | |
| * @param parent the parent widget, for plasmoids, this is usually | | /** | |
| 0. | | * Controls whether an (indefinite) progress dialog is shown when t | |
| * @param f the Qt::WindowFlags, default is to not show a windowbor | | he spell | |
| der. | | * checking takes longer than the given time to complete. By defaul | |
| */ | | t no | |
| explicit Dialog(QWidget * parent = 0, Qt::WindowFlags f = Qt::Wind | | * progress dialog is shown. If the progress dialog is set to be sh | |
| ow); | | own, no | |
| virtual ~Dialog(); | | * time consuming operation (for example, showing a notification me | |
| | | ssage) should | |
| /** | | * be performed in a slot connected to the 'done' signal as this mi | |
| * Sets a QGraphicsWidget to be shown as the content in this dialog | | ght trigger | |
| . | | * the progress dialog unnecessarily. | |
| * The dialog will then set up a QGraphicsView and coordinate geome | | | |
| try with | | | |
| * the widget automatically. | | | |
| * | | * | |
|
| * @param widget the QGraphicsWidget to display in this dialog | | * @param timeout time after which the progress dialog should appea | |
| */ | | r; a negative | |
| void setGraphicsWidget(QGraphicsWidget *widget); | | * value can be used to hide it | |
| | | * @since 4.4 | |
| /** | | | |
| * @return the graphics widget shown in this dialog | | | |
| */ | | | |
| QGraphicsWidget *graphicsWidget(); | | | |
| | | | |
| /** | | | |
| * @param corners the corners the resize handlers should be placed | | | |
| in. | | | |
| */ | | | |
| void setResizeHandleCorners(ResizeCorners corners); | | | |
| | | | |
| /** | | | |
| * Convenience method to get the enabled resize corners. | | | |
| * @return which resize corners are active. | | | |
| */ | | | |
| ResizeCorners resizeCorners() const; | | | |
| | | | |
| /** | | | |
| * @return true if currently being resized by the user | | | |
| */ | | */ | |
|
| bool isUserResizing() const; | | void showProgressDialog(int timeout = 500); | |
| | | | |
| /** | | /** | |
|
| * Sets the minimum values that each of four sides of the rect may | | * Controls whether a message box indicating the completion of the | |
| expand to or from | | spell checking | |
| | | * is shown or not. By default it is not shown. | |
| * | | * | |
|
| * @param left the screen coordinate that the left may not go beyon | | * @since 4.4 | |
| d; -1 for no limit | | | |
| * @param top the screen coordinate that the top may not go beyond; | | | |
| -1 for no limit | | | |
| * @param right the screen coordinate that the right may not go bey | | | |
| ond; -1 for no limit | | | |
| * @param bottom the screen coordinate that the bottom may not go b | | | |
| eyond; -1 for no limit | | | |
| */ | | */ | |
|
| void setMinimumResizeLimits(int left, int top, int right, int botto
m); | | void showSpellCheckCompletionMessage( bool b = true ); | |
| | | | |
| /** | | /** | |
|
| * Retrives the minimum resize limits for the dialog | | * Controls whether the spell checking is continued after the repla | |
| | | cement of a | |
| | | * misspelled word has been performed. By default it is continued. | |
| * | | * | |
|
| * @param left the screen coordinate that the left may not go beyon | | | |
| d; -1 for no limit | | | |
| * @param top the screen coordinate that the top may not go beyond; | | | |
| -1 for no limit | | | |
| * @param right the screen coordinate that the right may not go bey | | | |
| ond; -1 for no limit | | | |
| * @param bottom the screen coordinate that the bottom may not go b | | | |
| eyond; -1 for no limit | | | |
| */ | | | |
| void getMinimumResizeLimits(int *left, int *top, int *right, int *b | | | |
| ottom); | | | |
| | | | |
| /** | | | |
| * Causes an animated hide; requires compositing to work, otherwise | | | |
| * the dialog will simply hide. | | | |
| * @since 4.3 | | | |
| */ | | | |
| void animatedHide(Plasma::Direction direction); | | | |
| | | | |
| /** | | | |
| * Causes an animated show; requires compositing to work, otherwise | | | |
| * the dialog will simply show. | | | |
| * @since 4.3 | | | |
| */ | | | |
| void animatedShow(Plasma::Direction direction); | | | |
| | | | |
| /** | | | |
| * @return the preferred aspect ratio mode for placement and resizi | | | |
| ng | | | |
| * @since 4.4 | | * @since 4.4 | |
| */ | | */ | |
|
| Plasma::AspectRatioMode aspectRatioMode() const; | | void setSpellCheckContinuedAfterReplacement( bool b ); | |
| | | | |
|
| /** | | public Q_SLOTS: | |
| * Sets the preferred aspect ratio mode for placement and resizing | | void setBuffer(const QString &); | |
| * @since 4.4 | | | |
| */ | | | |
| void setAspectRatioMode(Plasma::AspectRatioMode mode); | | | |
| | | | |
| Q_SIGNALS: | | Q_SIGNALS: | |
| /** | | /** | |
|
| * Fires when the dialog automatically resizes. | | * The dialog won't be closed if you setBuffer() in slot connected | |
| | | to this signal | |
| | | * | |
| | | * Also emitted after stop() signal | |
| */ | | */ | |
|
| void dialogResized(); | | void done( const QString& newBuffer ); | |
| | | void misspelling( const QString& word, int start ); | |
| | | void replace( const QString& oldWord, int start, | |
| | | const QString& newWord ); | |
| | | | |
|
| /** | | void stop(); | |
| * Emit a signal when the dialog become visible/invisible | | void cancel(); | |
| */ | | void autoCorrect( const QString & currentWord, const QString & repl | |
| void dialogVisible(bool status); | | aceWord ); | |
| | | | |
|
| public Q_SLOTS: | | | |
| /** | | /** | |
|
| * Adjusts the dialog to the associated QGraphicsWidget's geometry | | * Signal sends when spell checking is finished/stopped/completed | |
| * Should not normally need to be called by users of Dialog as Dial | | * @since 4.1 | |
| og | | | |
| * does it automatically. Event compression may cause unwanted dela | | | |
| ys, | | | |
| * however, and so this method may be called to immediately cause a | | | |
| * synchronization. | | | |
| * @since 4.5 | | | |
| */ | | | |
| void syncToGraphicsWidget(); | | | |
| | | | |
| protected: | | | |
| /** | | | |
| * Reimplemented from QWidget | | | |
| */ | | | |
| void paintEvent(QPaintEvent *e); | | | |
| bool event(QEvent *event); | | | |
| void resizeEvent(QResizeEvent *e); | | | |
| bool eventFilter(QObject *watched, QEvent *event); | | | |
| void hideEvent(QHideEvent *event); | | | |
| void showEvent(QShowEvent *event); | | | |
| void focusInEvent(QFocusEvent *event); | | | |
| void mouseMoveEvent(QMouseEvent *event); | | | |
| void mousePressEvent(QMouseEvent *event); | | | |
| void mouseReleaseEvent(QMouseEvent *event); | | | |
| void keyPressEvent(QKeyEvent *event); | | | |
| void moveEvent(QMoveEvent *event); | | | |
| | | | |
| /** | | | |
| * Convenience method to know whether the point is in a control are | | | |
| a (e.g. resize area) | | | |
| * or not. | | | |
| * @return true if the point is in the control area. | | | |
| */ | | */ | |
|
| bool inControlArea(const QPoint &point); | | void spellCheckStatus(const QString &); | |
| | | | |
|
| private: | | | |
| DialogPrivate *const d; | | | |
| | | | |
| friend class DialogPrivate; | | | |
| /** | | /** | |
|
| * React to theme changes | | * Emitted when the user changes the language used for spellcheckin | |
| | | g, | |
| | | * which is shown in a combobox of this dialog. | |
| | | * | |
| | | * @param dictionary the new language the user selected | |
| | | * @since 4.1 | |
| */ | | */ | |
|
| Q_PRIVATE_SLOT(d, void themeChanged()) | | void languageChanged( const QString &language ); | |
| Q_PRIVATE_SLOT(d, void checkBorders()) | | | |
| Q_PRIVATE_SLOT(d, void delayedAdjustSize()) | | | |
| | | | |
|
| friend class PopupAppletPrivate; | | private Q_SLOTS: | |
| }; | | void slotMisspelling(const QString& word, int start ); | |
| | | void slotDone(); | |
| | | | |
| | | void slotFinished(); | |
| | | void slotCancel(); | |
| | | | |
| | | void slotAddWord(); | |
| | | void slotReplaceWord(); | |
| | | void slotReplaceAll(); | |
| | | void slotSkip(); | |
| | | void slotSkipAll(); | |
| | | void slotSuggest(); | |
| | | void slotChangeLanguage( const QString& ); | |
| | | void slotSelectionChanged(const QModelIndex &); | |
| | | void slotAutocorrect(); | |
| | | | |
|
| } // Plasma namespace | | void setGuiEnabled(bool b); | |
| | | void setProgressDialogVisible(bool b); | |
| | | | |
|
| Q_DECLARE_OPERATORS_FOR_FLAGS(Plasma::Dialog::ResizeCorners) | | private: | |
| | | void updateDialog( const QString& word ); | |
| | | void fillDictionaryComboBox(); | |
| | | void updateDictionaryComboBox(); | |
| | | void fillSuggestions( const QStringList& suggs ); | |
| | | void initConnections(); | |
| | | void initGui(); | |
| | | void continueChecking(); | |
| | | | |
| | | private: | |
| | | class Private; | |
| | | Private* const d; | |
| | | Q_DISABLE_COPY( Dialog ) | |
| | | }; | |
| | | } | |
| | | | |
| #endif | | #endif | |
| | | | |
End of changes. 31 change blocks. |
| 190 lines changed or deleted | | 129 lines changed or added | |
|
| kdeversion.h | | kdeversion.h | |
| | | | |
| skipping to change at line 47 | | skipping to change at line 47 | |
| * This macro contains the KDE version in string form. As it is a macro, | | * This macro contains the KDE version in string form. As it is a macro, | |
| * it contains the version at compile time. See versionString() if you need | | * it contains the version at compile time. See versionString() if you need | |
| * the KDE version used at runtime. | | * the KDE version used at runtime. | |
| * | | * | |
| * @note The version string might contain a section in parentheses, | | * @note The version string might contain a section in parentheses, | |
| * especially for development versions of KDE. | | * especially for development versions of KDE. | |
| * If you use that macro directly for a file format (e.g. OASIS Open Docume
nt) | | * If you use that macro directly for a file format (e.g. OASIS Open Docume
nt) | |
| * or for a protocol (e.g. http) be careful that it is appropriate. | | * or for a protocol (e.g. http) be careful that it is appropriate. | |
| * (Fictional) example: "4.0.90 (>=20070101)" | | * (Fictional) example: "4.0.90 (>=20070101)" | |
| */ | | */ | |
|
| #define KDE_VERSION_STRING "4.11.1" | | #define KDE_VERSION_STRING "4.11.2" | |
| | | | |
| /** | | /** | |
| * @def KDE_VERSION_MAJOR | | * @def KDE_VERSION_MAJOR | |
| * @ingroup KDEMacros | | * @ingroup KDEMacros | |
| * @brief Major version of KDE, at compile time | | * @brief Major version of KDE, at compile time | |
| */ | | */ | |
| #define KDE_VERSION_MAJOR 4 | | #define KDE_VERSION_MAJOR 4 | |
| /** | | /** | |
| * @def KDE_VERSION_MINOR | | * @def KDE_VERSION_MINOR | |
| * @ingroup KDEMacros | | * @ingroup KDEMacros | |
| * @brief Minor version of KDE, at compile time | | * @brief Minor version of KDE, at compile time | |
| */ | | */ | |
| #define KDE_VERSION_MINOR 11 | | #define KDE_VERSION_MINOR 11 | |
| /** | | /** | |
| * @def KDE_VERSION_RELEASE | | * @def KDE_VERSION_RELEASE | |
| * @ingroup KDEMacros | | * @ingroup KDEMacros | |
| * @brief Release version of KDE, at compile time | | * @brief Release version of KDE, at compile time | |
| */ | | */ | |
|
| #define KDE_VERSION_RELEASE 1 | | #define KDE_VERSION_RELEASE 2 | |
| | | | |
| /** | | /** | |
| * @ingroup KDEMacros | | * @ingroup KDEMacros | |
| * @brief Make a number from the major, minor and release number of a KDE v
ersion | | * @brief Make a number from the major, minor and release number of a KDE v
ersion | |
| * | | * | |
| * This function can be used for preprocessing when KDE_IS_VERSION is not | | * This function can be used for preprocessing when KDE_IS_VERSION is not | |
| * appropriate. | | * appropriate. | |
| */ | | */ | |
| #define KDE_MAKE_VERSION( a,b,c ) (((a) << 16) | ((b) << 8) | (c)) | | #define KDE_MAKE_VERSION( a,b,c ) (((a) << 16) | ((b) << 8) | (c)) | |
| | | | |
| | | | |
End of changes. 2 change blocks. |
| 2 lines changed or deleted | | 2 lines changed or added | |
|