annotate kdiff3/src/optiondialog.h @ 60:4732f709a8cb

*** empty log message ***
author joachim99
date Sun, 07 Mar 2004 10:08:07 +0000
parents 8af4bb9d9a5a
children efe33e938730
rev   line source
joachim99@8 1 /*
joachim99@8 2 * kdiff3 - Text Diff And Merge Tool
joachim99@8 3 * This file only: Copyright (C) 2002 Joachim Eibl, joachim.eibl@gmx.de
joachim99@8 4 *
joachim99@8 5 * This program is free software; you can redistribute it and/or modify
joachim99@8 6 * it under the terms of the GNU General Public License as published by
joachim99@8 7 * the Free Software Foundation; either version 2 of the License, or
joachim99@8 8 * (at your option) any later version.
joachim99@8 9 *
joachim99@8 10 * This program is distributed in the hope that it will be useful,
joachim99@8 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
joachim99@8 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
joachim99@8 13 * GNU General Public License for more details.
joachim99@8 14 *
joachim99@8 15 * You should have received a copy of the GNU General Public License
joachim99@8 16 * along with this program; if not, write to the Free Software
joachim99@8 17 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
joachim99@8 18 *
joachim99@8 19 */
joachim99@8 20
joachim99@8 21 #ifndef OPTION_DIALOG_H
joachim99@8 22 #define OPTION_DIALOG_H
joachim99@8 23
joachim99@8 24 class QCheckBox;
joachim99@8 25 class QLabel;
joachim99@8 26 class QLineEdit;
joachim99@8 27 class KColorButton;
joachim99@8 28 class KFontChooser;
joachim99@8 29 class KConfig;
joachim99@8 30
joachim99@8 31 #include <kdialogbase.h>
joachim99@8 32 #include <qstringlist.h>
joachim99@8 33 #include <list>
joachim99@8 34
joachim99@8 35 class OptionItem;
joachim99@8 36 class KKeyDialog;
joachim99@8 37
joachim99@58 38 enum eLineEndStyle
joachim99@58 39 {
joachim99@58 40 eLineEndUnix=0,
joachim99@58 41 eLineEndDos
joachim99@58 42 };
joachim99@51 43
joachim99@8 44 class OptionDialog : public KDialogBase
joachim99@8 45 {
joachim99@8 46 Q_OBJECT
joachim99@8 47
joachim99@8 48 public:
joachim99@8 49
joachim99@8 50 OptionDialog( bool bShowDirMergeSettings, QWidget *parent = 0, char *name = 0 );
joachim99@8 51 ~OptionDialog( void );
joachim99@8 52
joachim99@8 53 // These are the results of the option dialog.
joachim99@8 54 QFont m_font;
joachim99@8 55 bool m_bItalicForDeltas;
joachim99@8 56
joachim99@8 57 QColor m_fgColor;
joachim99@8 58 QColor m_bgColor;
joachim99@8 59 QColor m_diffBgColor;
joachim99@8 60 QColor m_colorA;
joachim99@8 61 QColor m_colorB;
joachim99@8 62 QColor m_colorC;
joachim99@8 63 QColor m_colorForConflict;
joachim99@8 64 QColor m_currentRangeBgColor;
joachim99@8 65 QColor m_currentRangeDiffBgColor;
joachim99@8 66
joachim99@8 67 bool m_bReplaceTabs;
joachim99@8 68 bool m_bAutoIndentation;
joachim99@8 69 int m_tabSize;
joachim99@8 70 bool m_bAutoCopySelection;
joachim99@51 71 bool m_bStringEncoding;
joachim99@58 72 int m_lineEndStyle;
joachim99@8 73
joachim99@8 74 bool m_bPreserveCarriageReturn;
joachim99@8 75 bool m_bTryHard;
joachim99@51 76 bool m_bShowWhiteSpaceCharacters;
joachim99@8 77 bool m_bShowWhiteSpace;
joachim99@8 78 bool m_bShowLineNumbers;
joachim99@8 79 bool m_bHorizDiffWindowSplitting;
joachim99@8 80
joachim99@51 81 int m_whiteSpace2FileMergeDefault;
joachim99@51 82 int m_whiteSpace3FileMergeDefault;
joachim99@8 83 bool m_bUpCase;
joachim99@8 84 bool m_bIgnoreNumbers;
joachim99@51 85 bool m_bIgnoreComments;
joachim99@8 86 QString m_PreProcessorCmd;
joachim99@8 87 QString m_LineMatchingPreProcessorCmd;
joachim99@8 88
joachim99@8 89 bool m_bAutoAdvance;
joachim99@8 90 int m_autoAdvanceDelay;
joachim99@8 91
joachim99@8 92 QStringList m_recentAFiles;
joachim99@8 93 QStringList m_recentBFiles;
joachim99@8 94 QStringList m_recentCFiles;
joachim99@8 95
joachim99@8 96 QStringList m_recentOutputFiles;
joachim99@8 97
joachim99@8 98 // Directory Merge options
joachim99@8 99 bool m_bDmSyncMode;
joachim99@8 100 bool m_bDmRecursiveDirs;
joachim99@8 101 bool m_bDmFollowFileLinks;
joachim99@8 102 bool m_bDmFollowDirLinks;
joachim99@8 103 bool m_bDmFindHidden;
joachim99@8 104 bool m_bDmCreateBakFiles;
joachim99@8 105 bool m_bDmTrustDate;
joachim99@51 106 bool m_bDmTrustSize;
joachim99@8 107 bool m_bDmCopyNewer;
joachim99@8 108 bool m_bDmShowOnlyDeltas;
joachim99@8 109 bool m_bDmUseCvsIgnore;
joachim99@8 110 QString m_DmFilePattern;
joachim99@8 111 QString m_DmFileAntiPattern;
joachim99@8 112 QString m_DmDirAntiPattern;
joachim99@8 113
joachim99@58 114 QString m_language;
joachim99@58 115 QString m_fileCodec;
joachim99@58 116
joachim99@8 117 void saveOptions(KConfig* config);
joachim99@8 118 void readOptions(KConfig* config);
joachim99@8 119
joachim99@8 120 void setState(); // Must be called before calling exec();
joachim99@8 121
joachim99@8 122 void addOptionItem(OptionItem*);
joachim99@8 123 KKeyDialog* m_pKeyDialog;
joachim99@8 124 protected slots:
joachim99@8 125 virtual void slotDefault( void );
joachim99@8 126 virtual void slotOk( void );
joachim99@8 127 virtual void slotApply( void );
joachim99@8 128 virtual void slotHelp( void );
joachim99@8 129
joachim99@8 130 private:
joachim99@8 131 void resetToDefaults();
joachim99@51 132
joachim99@8 133 std::list<OptionItem*> m_optionItemList;
joachim99@51 134
joachim99@8 135 // FontConfigDlg
joachim99@8 136 KFontChooser *m_fontChooser;
joachim99@8 137
joachim99@8 138 private:
joachim99@8 139 void setupFontPage();
joachim99@8 140 void setupColorPage();
joachim99@8 141 void setupEditPage();
joachim99@8 142 void setupDiffPage();
joachim99@8 143 void setupDirectoryMergePage();
joachim99@8 144 void setupKeysPage();
joachim99@58 145 void setupRegionalPage();
joachim99@51 146 void setupOtherOptions();
joachim99@8 147 };
joachim99@8 148
joachim99@8 149
joachim99@8 150
joachim99@58 151
joachim99@8 152 #endif
joachim99@8 153
joachim99@8 154
joachim99@8 155
joachim99@8 156
joachim99@8 157
joachim99@8 158
joachim99@8 159