diff options
Diffstat (limited to 'kutils/kfinddialog.h')
-rw-r--r-- | kutils/kfinddialog.h | 315 |
1 files changed, 0 insertions, 315 deletions
diff --git a/kutils/kfinddialog.h b/kutils/kfinddialog.h deleted file mode 100644 index fcf870836..000000000 --- a/kutils/kfinddialog.h +++ /dev/null @@ -1,315 +0,0 @@ -/* - Copyright (C) 2001, S.R.Haque <srhaque@iee.org>. - Copyright (C) 2002, David Faure <david@mandrakesoft.com> - This file is part of the KDE project - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Library General Public - License version 2, as published by the Free Software Foundation. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public License - along with this library; see the file COPYING.LIB. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. -*/ - -#ifndef KFINDDIALOG_H -#define KFINDDIALOG_H - -#include <kdialogbase.h> -class KHistoryCombo; -class TQPushButton; -class TQPopupMenu; -class TQGridLayout; -class TQLabel; -class TQGroupBox; -class TQCheckBox; - -/** - * @ingroup main - * @ingroup findreplace - * @brief A generic "find" dialog. - * - * @author S.R.Haque <srhaque@iee.org> - * - * \b Detail: - * - * This widget inherits from KDialogBase and implements - * the following additional functionalities: a find string - * object and an area for a user-defined widget to extend the dialog. - * - * \b Example: - * - * To use the basic modal find dialog, and then run the search: - * - * \code - * KFindDialog dlg(....) - * if ( dlg.exec() != TQDialog::Accepted ) - * return; - * - * // proceed with KFind from here - * \endcode - * - * To create a non-modal find dialog: - * \code - * if ( m_findDia ) - * KWin::setActiveWindow( m_findDia->winId() ); - * else - * { - * m_findDia = new KFindDialog(false,...); - * connect( m_findDia, TQT_SIGNAL(okClicked()), this, TQT_SLOT(findTextNext()) ); - * } - * \endcode - * Don't forget to delete and reset m_findDia when closed. - * (But do NOT delete your KFind object at that point, it's needed for "Find Next") - * - * To use your own extensions: see findExtension(). - * - */ -class KUTILS_EXPORT KFindDialog: - public KDialogBase -{ - Q_OBJECT - -public: - - // Options. - - // KDE4: move to KFind - /** - * Options for the search - */ - enum Options - { - WholeWordsOnly = 1, ///< Match whole words only. - FromCursor = 2, ///< Start from current cursor position. - SelectedText = 4, ///< Only search selected area. - CaseSensitive = 8, ///< Consider case when matching. - FindBackwards = 16, ///< Go backwards. - RegularExpression = 32, ///< Interpret the pattern as a regular expression. - FindIncremental = 64, ///< Find incremental. - // Note that KReplaceDialog uses 256 and 512 - // User extensions can use boolean options above this value. - MinimumUserOption = 65536 ///< The first flag which can be used by extensions. - }; - - /** - * Construct a modal find dialog - * - * @param parent The parent object of this widget. - * @param name The name of this widget. - * @param options A bitfield of the Options to be checked. - * @param findStrings The find history, see findHistory() - * @param hasSelection Whether a selection exists - */ - KFindDialog( TQWidget *parent = 0, const char *name = 0, long options = 0, - const TQStringList &findStrings = TQStringList(), bool hasSelection = false ); - // KDE4: fix ambiguity with private constructor - // Maybe remove options (there's setOptions) and findStrings (setFindHistory) and hasSelection (setHasSelection) - - /** - * Construct a non-modal find dialog - * - * @param modal set to @c false to get a non-modal dialog - * @param parent The parent object of this widget. - * @param name The name of this widget. - * @param options A bitfield of the Options to be checked. - * @param findStrings The find history, see findHistory() - * @param hasSelection Whether a selection exists - */ - KFindDialog( bool modal, TQWidget *parent = 0, const char *name = 0, long options = 0, - const TQStringList &findStrings = TQStringList(), bool hasSelection = false ); - // KDE4: consider simplifying - - /** - * Destructor. - */ - virtual ~KFindDialog(); - - /** - * Provide the list of @p strings to be displayed as the history - * of find strings. @p strings might get truncated if it is - * too long. - * - * @param history The find history. - * @see findHistory - */ - void setFindHistory( const TQStringList &history ); - - /** - * Returns the list of history items. - * - * @return The find history. - * @see setFindHistory - */ - TQStringList findHistory() const; - - /** - * Enable/disable the 'search in selection' option, depending - * on whether there actually is a selection. - * - * @param hasSelection @c true if a selection exists - */ - void setHasSelection( bool hasSelection ); - - /** - * Hide/show the 'from cursor' option, depending - * on whether the application implements a cursor. - * - * @param hasCursor @c true if the application features a cursor - * This is assumed to be the case by default. - */ - void setHasCursor( bool hasCursor ); - - /** - * Enable/disable the 'Find backwards' option, depending - * on whether the application supports it. - * - * @param supports @c true if the application supports backwards find - * This is assumed to be the case by default. - * @since 3.4 - */ - void setSupportsBackwardsFind( bool supports ); - - /** - * Enable/disable the 'Case sensitive' option, depending - * on whether the application supports it. - * - * @param supports @c true if the application supports case sensitive find - * This is assumed to be the case by default. - * @since 3.4 - */ - void setSupportsCaseSensitiveFind( bool supports ); - - /** - * Enable/disable the 'Whole words only' option, depending - * on whether the application supports it. - * - * @param supports @c true if the application supports whole words only find - * This is assumed to be the case by default. - * @since 3.4 - */ - void setSupportsWholeWordsFind( bool supports ); - - /** - * Enable/disable the 'Regular expression' option, depending - * on whether the application supports it. - * - * @param supports @c true if the application supports regular expression find - * This is assumed to be the case by default. - * @since 3.4 - */ - void setSupportsRegularExpressionFind( bool supports ); - - /** - * Set the options which are checked. - * - * @param options The setting of the Options. - * @see Options - */ - void setOptions( long options ); - - /** - * Returns the state of the options. Disabled options may be returned in - * an indeterminate state. - * - * @return The options. - * @see Options, setOptions - */ - long options() const; - - /** - * Returns the pattern to find. - * @return The search text. - */ - TQString pattern() const; - - /** - * Sets the pattern to find. - * @param pattern The new search pattern. - */ - void setPattern ( const TQString &pattern ); - - /** - * Returns an empty widget which the user may fill with additional UI - * elements as required. The widget occupies the width of the dialog, - * and is positioned immediately below the regular expression support - * widgets for the pattern string. - * @return An extensible TQWidget. - */ - TQWidget *findExtension(); - -protected slots: - - void slotOk(); - void slotSelectedTextToggled(bool); - void showPatterns(); - void showPlaceholders(); - void textSearchChanged( const TQString &); - -protected: - virtual void showEvent ( TQShowEvent * ); - -private slots: - /** - * connected to the aboutToShow of the placeholders menu, - * updates it according to the text in the pattern. - */ - void slotPlaceholdersAboutToShow(); - -private: - - TQGroupBox *m_findGrp; - TQLabel *m_findLabel; - KHistoryCombo *m_find; - TQCheckBox *m_regExp; - TQPushButton *m_regExpItem; - TQGridLayout *m_findLayout; - TQWidget *m_findExtension; - - TQGroupBox *m_optionGrp; - TQCheckBox *m_wholeWordsOnly; - TQCheckBox *m_fromCursor; - TQCheckBox *m_selectedText; - TQCheckBox *m_caseSensitive; - TQCheckBox *m_findBackwards; - - TQPopupMenu *m_patterns; - - // Our dirty little secret is that we also implement the "replace" dialog. But we - // keep that fact hidden from all but our friends. - - friend class KReplaceDialog; - - /** - * Construct a find dialog with a parent object and a name. This version of the - * constructor is for use by friends only! - * - * @param forReplace Is this a replace dialog? - */ - KFindDialog( TQWidget *parent, const char *name, bool forReplace ); - void init( bool forReplace, const TQStringList &findStrings, bool hasSelection ); - - TQGroupBox *m_replaceGrp; - TQLabel *m_replaceLabel; - KHistoryCombo *m_replace; - TQCheckBox* m_backRef; - TQPushButton* m_backRefItem; - TQGridLayout *m_replaceLayout; - TQWidget *m_replaceExtension; - - TQCheckBox* m_promptOnReplace; - - TQPopupMenu *m_placeholders; - - // Binary compatible extensibility. - class KFindDialogPrivate; - KFindDialogPrivate *d; -}; - -#endif // KFINDDIALOG_H |