KVIrc  4.9.2
DeveloperAPIs
KviOptions.h
Go to the documentation of this file.
1 #ifndef _KVI_OPTIONS_H_
2 #define _KVI_OPTIONS_H_
3 
4 //=============================================================================
5 //
6 // File : KviOptions.h
7 // Creation date : Tue Jun 20 2000 12:42:07 by Szymon Stefanek
8 //
9 // This file is part of the KVIrc IRC client distribution
10 // Copyright (C) 2000-2010 Szymon Stefanek (pragma at kvirc dot net)
11 // Copyright (C) 2014 OmegaPhil (OmegaPhil at startmail dot com)
12 //
13 // This program is FREE software. You can redistribute it and/or
14 // modify it under the terms of the GNU General Public License
15 // as published by the Free Software Foundation; either version 2
16 // of the License, or (at your option) any later version.
17 //
18 // This program is distributed in the HOPE that it will be USEFUL,
19 // but WITHOUT ANY WARRANTY; without even the implied warranty of
20 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
21 // See the GNU General Public License for more details.
22 //
23 // You should have received a copy of the GNU General Public License
24 // along with this program. If not, write to the Free Software Foundation,
25 // Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
26 //
27 //=============================================================================
28 
29 #include "kvi_settings.h"
30 #include "KviCString.h"
31 #include "KviPixmap.h"
32 #include "KviMessageTypeSettings.h"
33 
34 #include <QRect>
35 #include <QPixmap>
36 #include <QColor>
37 #include <QFont>
38 #include <QStringList>
39 
40 // option structures
41 #define DECLARE_OPTION_STRUCT(_cname, _type) \
42  class _cname \
43  { \
44  public: \
45  QString name; \
46  _type option; \
47  int flags; \
48  \
49  public: \
50  _cname(const QString & n, _type o, int f) \
51  : name(n), option(o), flags(f){}; \
52  ~_cname(){}; \
53  };
54 
55 DECLARE_OPTION_STRUCT(KviBoolOption, bool)
56 DECLARE_OPTION_STRUCT(KviRectOption, QRect)
57 DECLARE_OPTION_STRUCT(KviStringOption, QString)
58 DECLARE_OPTION_STRUCT(KviColorOption, QColor)
59 DECLARE_OPTION_STRUCT(KviFontOption, QFont)
60 DECLARE_OPTION_STRUCT(KviPixmapOption, KviPixmap)
61 //DECLARE_OPTION_STRUCT(KviIntOption,int)
62 DECLARE_OPTION_STRUCT(KviUIntOption, unsigned int)
63 DECLARE_OPTION_STRUCT(KviMessageTypeSettingsOption, KviMessageTypeSettings)
64 DECLARE_OPTION_STRUCT(KviStringListOption, QStringList)
65 
66 #define KVI_COLOR_EXT_USER_OP 50
67 #define KVI_COLOR_EXT_USER_HALFOP 51
68 #define KVI_COLOR_EXT_USER_ADMIN 52
69 #define KVI_COLOR_EXT_USER_OWNER 53
70 #define KVI_COLOR_EXT_USER_VOICE 54
71 #define KVI_COLOR_EXT_USER_USEROP 55
72 #define KVI_COLOR_EXT_USER_NORMAL 56
73 #define KVI_COLOR_CUSTOM 255
74 #define KVI_COLOR_OWN 254
75 
76 // option entry indexes
77 #define KVI_RECT_OPTIONS_PREFIX "rect"
78 #define KVI_RECT_OPTIONS_PREFIX_LEN 4
79 
80 #define KviOption_rectFrameGeometry 0 /* internal */
81 /* FIXME: this should be in the options module (local config) ? */
82 #define KviOption_rectGeneralOptionsDialogGeometry 1 /* internal */
83 /* FIXME: this should be in the regusers module (local config) ? */
84 #define KviOption_rectRegisteredUsersDialogGeometry 2 /* internal */
85 
86 #define KVI_NUM_RECT_OPTIONS 3
87 
88 #define KVI_BOOL_OPTIONS_PREFIX "bool"
89 #define KVI_BOOL_OPTIONS_PREFIX_LEN 4
90 
91 #define KviOption_boolWindowsRememberProperties 0 /* interface::features::global */
92 #define KviOption_boolIrcViewShowImages 1 /* interface::features::components::ircview */
93 #define KviOption_boolIrcViewTimestamp 2 /* interface::features::components::ircview */
94 #define KviOption_boolIrcViewUrlHighlighting 3 /* interface::features::components::ircview */
95 #define KviOption_boolIrcViewWrapMargin 4 /* interface::features::components::ircview */
96 #define KviOption_boolInputHistoryCursorAtEnd 5 /* interface::features::components::input */
97 #define KviOption_boolAvoidParserWarnings 6 /* ircengine::uparser */
98 #define KviOption_boolUseProxyHost 7 /* transport */
99 #define KviOption_boolShowGeneralOptionsDialogAsToplevel 8 /* interface::features::global */
100 #define KviOption_boolForceBrutalQuit 9 /* irc */
101 #define KviOption_boolShowPingPong 10 /* ircoutput */
102 #define KviOption_boolPopupNotifierOnNewQueryMessages 11 /* query */
103 #define KviOption_boolShowExtendedServerInfo 12 /* ircoutput */
104 #define KviOption_boolEchoNumericTopic 13 /* channel */
105 #define KviOption_boolShowOwnParts 14 /* ircoutput */
106 #define KviOption_boolUseAntiSpamOnPrivmsg 15 /* ircengine::outputcontrol::antispam */
107 #define KviOption_boolUseExtendedPrivmsgView 16 /* ircengine::outputcontrol::privmsg */
108 #define KviOption_boolShowUserAndHostInPrivmsgView 17 /* ircengine::outputcontrol::privmsg */
109 #define KviOption_boolUseWordHighlighting 18 /* ircengine::outputcontrol::highlighting */
110 #define KviOption_boolCleanupUnusedModules 19 /* uparser ? */
111 #define KviOption_boolIgnoreCtcpPing 20 /* ctcp */
112 #define KviOption_boolIgnoreCtcpVersion 21 /* ctcp */
113 #define KviOption_boolUseCtcpFloodProtection 22 /* ctcp */
114 #define KviOption_boolDisableBrokenEventHandlers 23 /* ircengine::uparser */
115 #define KviOption_boolIgnoreCtcpClientinfo 24 /* ctcp */
116 #define KviOption_boolIgnoreCtcpUserinfo 25 /* ctcp */
117 #define KviOption_boolIgnoreCtcpFinger 26 /* ctcp */
118 #define KviOption_boolIgnoreCtcpSource 27 /* ctcp */
119 #define KviOption_boolIgnoreCtcpTime 28 /* ctcp */
120 #define KviOption_boolRequestMissingAvatars 29 /* ctcp::avatar */
121 #define KviOption_boolShowCompactModeChanges 30 /* ircoutput */
122 #define KviOption_boolIgnoreCtcpDcc 31 /* ctcp */
123 #define KviOption_boolAutoAcceptDccChat 32 /* dcc::chat */
124 #define KviOption_boolAutoAcceptDccSend 33 /* dcc::send */
125 #define KviOption_boolSendZeroAckInDccRecv 34 /* dcc::send */
126 #define KviOption_boolUseFastDccSend 35 /* dcc::send */
127 #define KviOption_boolUseCompositingForTransparency 36 /* interface::look::global */
128 #define KviOption_boolUseWindowListIrcContextIndicator 37 /* interface::features::global */
129 #define KviOption_boolUseGlobalApplicationFont 38 /* interface::look::global */
130 #define KviOption_boolAlwaysQuitKVIrcClosingLastConsole 39 /* internal */
131 #define KviOption_boolAlwaysDisconnectClosingConnectedConsole 40 /* internal */
132 #define KviOption_boolFlashWindowOnHighlightedMessages 41 /* highlighting */
133 #define KviOption_boolPopupNotifierOnHighlightedMessages 42 /* highlighting */
134 #define KviOption_boolFlashWindowOnNotifyOnLine 43 /* notify */
135 #define KviOption_boolIrcViewTimestampUTC 44 /* interface::features::components::ircview */
136 #define KviOption_boolUseGlobalPseudoTransparency 45 /* interface::look::global */
137 #define KviOption_boolUseNotifyList 46 /* ircengine::notifylist */
138 #define KviOption_boolNotifyListChangesToActiveWindow 47 /* ircengine::notifylist */
139 #define KviOption_boolAutoResumeDccSendWhenAutoAccepted 48 /* dcc::send */
140 #define KviOption_boolLimitOutgoingTraffic 49 /* transport */
141 #define KviOption_boolSendUnknownCommandsAsRaw 50 /* ircengine::uparser */
142 #define KviOption_boolUserListViewDrawGrid 51 /* look & feel::interface look::userlist */
143 #define KviOption_boolShowChannelSyncTime 52 /* channel */
144 #define KviOption_boolRejoinChannelOnKick 53 /* channel */
145 #define KviOption_boolKeepChannelOpenOnKick 54 /* channel */
146 #define KviOption_boolAutoCloseDccSendOnSuccess 55 /* dcc::send */
147 #define KviOption_boolNotifyDccSendSuccessInConsole 56 /* dcc::send */
148 #define KviOption_boolCreateMinimizedDccSend 57 /* dcc::send */
149 #define KviOption_boolCreateMinimizedDccChat 58 /* dcc::chat */
150 #define KviOption_boolAutoAcceptIncomingAvatars 59 /* irc::ctcp::avatar */
151 #define KviOption_boolUseNickCompletionPostfixForFirstWordOnly 60
152 #define KviOption_boolUseWindowListIcons 61 /* interface::features */
153 #define KviOption_boolCreateMinimizedDccSendWhenAutoAccepted 62 /* dcc::send */
154 #define KviOption_boolCreateMinimizedDccChatWhenAutoAccepted 63 /* dcc::chat */
155 #define KviOption_boolDccGuessIpFromServerWhenLocalIsUnroutable 64 /* dcc */
156 #define KviOption_boolShowRegisteredUsersDialogAsToplevel 65 /* interface::features::global */
157 #define KviOption_boolAutoLogQueries 66 /* ircengine::logging */
158 #define KviOption_boolAutoLogChannels 67 /* ircendine::logging */
159 #define KviOption_boolAutoLogDccChat 68 /* ircengine::logging */
160 #define KviOption_boolAutoLogConsole 69 /* ircengine::logging */
161 #define KviOption_boolSilentAntiSpam 70 /* ircengine::antispam */
162 #define KviOption_boolUseIncomingDccMediaTypeSavePath 71 /* dcc::send */
163 #define KviOption_boolNotifyListSendUserhostForOnlineUsers 72 /* ircengine::notifylist */
164 #define KviOption_boolUseIntelligentNotifyListManager 73 /* ircengine::notifylist */
165 #define KviOption_boolUseWatchListIfAvailable 74 /* ircengine::notifylist */
166 #define KviOption_boolUseTreeWindowList 75 /* interface::features::global */
167 #define KviOption_boolBindIrcIPv4ConnectionsToSpecifiedAddress 76 /* connection::transport */
168 #define KviOption_boolBindIrcIPv6ConnectionsToSpecifiedAddress 77 /* connection::transport */
169 #define KviOption_boolUseAntiSpamOnNotice 78 /* ircengine::antispam */
170 #define KviOption_boolSetLastAvatarAsDefaultForRegisteredUsers 79 /* irc::ctcp::avatar */
171 #define KviOption_boolCantAcceptIncomingDccConnections 80 /* dcc::general */
172 #define KviOption_boolIgnoreCtcpAvatar 81 /* irc::ctcp::floodprotection */
173 #define KviOption_boolCtcpRepliesToActiveWindow 82 /* ctcp */
174 #define KviOption_boolAutoAcceptDccCanvas 83
175 #define KviOption_boolNotifyDccSendSuccessInNotifier 84 /* dcc::send */
176 #define KviOption_boolKillBrokenTimers 85 /* ircengine::uparser */
177 #define KviOption_boolDccVoiceVolumeSliderControlsPCM 86 /* dcc::voice */
178 #define KviOption_boolDccVoiceForceHalfDuplex 87 /* dcc::voice */
179 #define KviOption_boolAutoAcceptDccVoice 88 /* dcc::voice */
180 #define KviOption_boolCreateMinimizedDccVoice 89 /* dcc::voice */
181 #define KviOption_boolCreateMinimizedDccVoiceWhenAutoAccepted 90 /* dcc::voice */
182 #define KviOption_boolUseIdentService 91 /* connection::ident */
183 #define KviOption_boolShowTipAtStartup 92 /* internal */
184 #define KviOption_boolIdentdEnableIPv6 93 /* connection::ident */
185 #define KviOption_boolIdentdIPv6ContainsIPv4 94 /* connection::ident */
186 #define KviOption_boolScaleAvatars 95 /* ctcp::avatar */
187 #define KviOption_boolColorNicks 96 /* interface::features::components::ircview */
188 #define KviOption_boolBoldedNicks 97 /* interface::features::components::ircview */
189 #define KviOption_boolDccListenOnSpecifiedInterfaceByDefault 98 /* dcc */
190 #define KviOption_boolChangeNickAway 99 /* ircengine::away */
191 #define KviOption_boolAutoGeneratedAwayNick 100 /* ircengine::away */
192 #define KviOption_boolExitAwayOnInput 101 /* ircengine::away */
193 #define KviOption_boolAlwaysHighlightNick 102 /* ircengine::outputcontrol::highlighting */
194 #define KviOption_boolShowChannelsJoinOnIrc 103 /* internal */
195 #define KviOption_boolShowChannelsJoinDialogAsToplevel 104 /* FIXME: internal ??? */
196 #define KviOption_boolUserDefinedPortRange 105 /* dcc */
197 #define KviOption_boolCreateQueryOnPrivmsg 106 /* query */
198 #define KviOption_boolCreateQueryOnNotice 107 /* query */
199 #define KviOption_boolCreateIncomingQueriesAsMinimized 108 /* query */
200 #define KviOption_boolAutoJoinOnInvite 109 /* channel */
201 #define KviOption_boolShowServersConnectDialogOnStart 110 /* connection::ircservers */
202 #define KviOption_boolShowServersConnectDialogAsToplevel 111 /* FIXME: internal ?? */
203 #define KviOption_boolAcceptBrokenFileNameDccResumeRequests 112 /* dcc::send */
204 #define KviOption_boolAutoReconnectOnUnexpectedDisconnect 113 /* connection */
205 #define KviOption_boolRejoinChannelsAfterReconnect 114 /* connection */
206 #define KviOption_boolReopenQueriesAfterReconnect 115 /* connection */
207 #define KviOption_boolEnableQueryTracing 116 /* query */
208 #define KviOption_boolOperatorMessagesToActiveWindow 117 /* irc::output */
209 #define KviOption_boolInvitesToActiveWindow 118 /* irc::output */
210 #define KviOption_boolShowChannelUserFlagInPrivmsgView 119 /* ircengine::outputcontrol::privmsg */
211 #define KviOption_boolDccSendFakeAddressByDefault 120 /* dcc::general */
212 #define KviOption_boolUseWindowListActivityMeter 121 /* irc::output */
213 #define KviOption_boolCloseServerWidgetAfterConnect 122 /* IMPLEMENTATION NEEDED !!! */
214 #define KviOption_boolShowIdentityDialogAsToplevel 123 /* ??? */
215 #define KviOption_boolShowUserChannelIcons 124 /* look & feel::interface features::userlist */
216 #define KviOption_boolShowUserChannelState 125 /* look & feel::interface features::userlist */
217 #define KviOption_boolEnableIgnoreOnPrivMsg 126 /* irc::ignore */
218 #define KviOption_boolVerboseIgnore 127 /* irc::ignore */
219 #define KviOption_boolEnableIgnoreOnNotice 128 /* irc::ignore */
220 #define KviOption_boolNotifyFailedDccHandshakes 129
221 #define KviOption_boolDrawEmoticons 130 /* look::interface::features::output */
222 #define KviOption_boolIgnoreCtcpPage 131 /* irc::ctcp::floodprotection */
223 #define KviOption_boolShowDialogOnCtcpPage 132
224 #define KviOption_boolBashLikeNickCompletion 133
225 #define KviOption_boolUseSSLCertificate 134 /* ssl */
226 #define KviOption_boolUseSSLPrivateKey 135 /* ssl */
227 #define KviOption_boolWarnAboutPastingMultipleLines 136 /* internal */
228 #define KviOption_boolKeepChannelsOpenOnUnexpectedDisconnect 137 /* connection */
229 #define KviOption_boolKeepQueriesOpenOnUnexpectedDisconnect 138 /* connection */
230 #define KviOption_boolUseLagMeterEngine 139 /* irc::lag */
231 #define KviOption_boolShowLagOnContextDisplay 140 /* irc::lag */
232 #define KviOption_boolDisableBanListRequestOnJoin 141 /* channel */
233 #define KviOption_boolDisableBanExceptionListRequestOnJoin 142 /* channel */
234 #define KviOption_boolDisableInviteListRequestOnJoin 143 /* channel */
235 #define KviOption_boolDisableWhoRequestOnJoin 144 /* channel */
236 #define KviOption_boolShowDockExtension 145 /* internal ? */
237 #define KviOption_boolDccAddressByIrcDns 146 /* irc::general */
238 #define KviOption_boolHighlightOnlyNormalMsg 147 /* irc::output::highlight */
239 #define KviOption_boolHighlightOnlyNormalMsgQueryToo 148 /* irc::output::highlight */
240 #define KviOption_boolHighlightOnlyNormalMsgHighlightInChanToo 149 /* irc::output::highlight */
241 #define KviOption_boolHighlightOnlyAtCostumHighlightLevel 150 /* irc::output::highlight */
242 #define KviOption_boolDccBrokenBouncerHack 151 /* dcc */
243 #define KviOption_boolExternalMessagesToActiveWindow 152 /* irc::output */
244 #define KviOption_boolIgnoreChannelAvatarRequestsWhenNoAvatarSet 153 /* ctcp */
245 #define KviOption_boolFlashQueryWindowOnNewMessages 154 /* query */
246 #define KviOption_boolConfirmCloseWhenThereAreConnections 155 /* interface features */
247 #define KviOption_boolUseWindowsDesktopForTransparency 156 /* interface::features::global */
248 #define KviOption_boolCtcpRequestsToActiveWindow 157 /* irc::output */
249 #define KviOption_boolServerRepliesToActiveWindow 158 /* irc::output */
250 #define KviOption_boolServerNoticesToActiveWindow 159 /* irc::output */
251 #define KviOption_boolServicesNoticesToActiveWindow 160 /* irc::output */
252 #define KviOption_boolSortWindowListItemsByName 161 /* interface::features::global */
253 #define KviOption_boolShowWindowListToolTips 162 /* interface::features::global */
254 #define KviOption_boolShowUserListViewToolTips 163 /* interface::features::global */
255 #define KviOption_boolWhoisRepliesToActiveWindow 164 /* irc::output */
256 #define KviOption_boolPopupNotifierOnNotifyOnLine 165 /* notify */
257 #define KviOption_boolEnableNotifier 166 /* notifier */
258 #define KviOption_boolDccSendForceIdleStep 167 /* dcc */
259 #define KviOption_boolStatusBarVisible 168 /* internal */
260 #define KviOption_boolTrackLastReadTextViewLine 169 /* ircview::features */
261 #define KviOption_boolKeepChannelOpenOnPart 170 /* channel */
262 #define KviOption_boolStripMircColorsInUserMessages 171 /* irc::output */
263 #define KviOption_boolDoNotSuggestRestoreDefaultScript 172 /* internal */
264 #define KviOption_boolLimitDccSendSpeed 173 /* dcc::file transfers */
265 #define KviOption_boolLimitDccRecvSpeed 174 /* dcc::file transfers */
266 #define KviOption_boolIgnoreModuleVersions 175
267 #define KviOption_boolEnableInputHistory 176 /* interface::input */
268 #define KviOption_boolUseSpecialColorForTimestamp 177 /* interface::output */
269 #define KviOption_boolEnableAwayListUpdates 178 /* channel */
270 #define KviOption_boolShowAvatarsInUserlist 179 /* interface::userlist */
271 #define KviOption_boolShowUserListStatisticLabel 180 /* interface::userlist */
272 #define KviOption_boolShowIconsInPopupMenus 181 /* themes::general */
273 #define KviOption_boolScriptErrorsToDebugWindow 182 /* parser */
274 #define KviOption_boolShowMinimizedDebugWindow 183 /* parser */
275 #define KviOption_boolShowExtendedInfoInQueryLabel 184 /* query */
276 #define KviOption_boolUseUserListColorsAsNickColors 185 /* irc::usermessages */
277 #define KviOption_boolGzipLogs 186 /* ircengine::logging */
278 #define KviOption_boolUseFullWordHighlighting 187 /* highlight */
279 #define KviOption_boolNotifierFlashing 188 /* interface::notifier */
280 #define KviOption_boolCommandlineInUserFriendlyModeByDefault 189 /* interface::input */
281 #define KviOption_boolEnableVisualEffects 190 /* interface */
282 #define KviOption_boolDCCFileTransferReplaceOutgoingSpacesWithUnderscores 191 /* DCC something */
283 #define KviOption_boolDoNotUpscaleAvatars 192
284 #define KviOption_boolUseDifferentColorForOwnNick 193 /* interface */
285 #define KviOption_boolCloseInTray 194 /* interface */
286 #define KviOption_boolStartupMinimized 195 /* interface */
287 #define KviOption_boolSortReceivedByDccFilesByNicks 196 /* dcc */
288 #define KviOption_boolLogChannelHistory 197 /* channel */
289 #define KviOption_boolClassicWindowListSetMaximumButtonWidth 198
290 #define KviOption_boolKeepChannelsOpenOnDisconnect 199 /* connection */
291 #define KviOption_boolKeepQueriesOpenOnDisconnect 200 /* connection */
292 #define KviOption_boolHideWindowToolButtons 201 /* interface */
293 #define KviOption_boolHideInputToolButtons 202 /* interface */
294 #define KviOption_boolStripControlCodesInLogs 203 /* log */
295 #define KviOption_boolEnableTrayIconFlashing 204
296 #define KviOption_boolUseFlatClassicWindowListButtons 205
297 #define KviOption_boolStripMsgTypeInLogs 206 /* log */
298 #define KviOption_boolUseLevelBasedTrayNotification 207
299 #define KviOption_boolMuteAllSounds 208
300 #define KviOption_boolCreateMinimizedChannels 209
301 #define KviOption_boolShowNetworkNameForConsoleWindowListEntry 210
302 #define KviOption_boolDrawGenderIcons 211
303 #define KviOption_boolPrependGenderInfoToRealname 212
304 #define KviOption_boolUseIdentServiceOnlyOnConnect 213 /* connection::ident */
305 #define KviOption_boolUseSystemUrlHandlers 214 /* Windoze only*/
306 #define KviOption_boolScaleAvatarsOnLoad 215
307 #define KviOption_boolNotifierFading 216 /* interface::notifier */
308 #define KviOption_boolPickRandomIpAddressForRoundRobinServers 217
309 #define KviOption_boolPrependAvatarInfoToRealname 218
310 #define KviOption_boolEnableAnimatedAvatars 219
311 #define KviOption_boolEnableAnimatedSmiles 220
312 #define KviOption_boolPlaceNickWithNonAlphaCharsAtEnd 221
313 #define KviOption_boolPasteLastLogOnChannelJoin 222 /* channel */
314 #define KviOption_boolPasteLastLogOnQueryJoin 223 /* query */
315 #define KviOption_boolUseSpecifiedSmartColorForOwnNick 224 /* interface::ircview */
316 #define KviOption_boolZshLikeNickCompletion 225
317 #define KviOption_boolAutoAcceptDccVideo 226 /* dcc::video */
318 #define KviOption_boolCreateMinimizedDccVideo 227 /* dcc::video */
319 #define KviOption_boolCreateMinimizedDccVideoWhenAutoAccepted 228 /* dcc::video */
320 #define KviOption_boolShowTaskBarButton 229 /* windows only, used in KviApplication::createFrame only */
321 #define KviOption_boolFlashDccChatWindowOnNewMessages 230 /* dcc:chat */
322 #define KviOption_boolPopupNotifierOnNewDccChatMessages 231 /* dcc:chat */
323 #define KviOption_boolUseAwayMessage 232 /* away */
324 #define KviOption_boolDisableQuietBanListRequestOnJoin 233 /* channel */
325 #define KviOption_boolUseWindowListCloseButton 234 /* irc::output */
326 #define KviOption_boolFrameIsMaximized 235 /* internal */
327 #define KviOption_boolPrependNickColorInfoToRealname 236
328 #define KviOption_boolDontShowNotifierIfActiveWindowIsFullScreen 237 /* notifier */
329 #define KviOption_boolWheelScrollsWindowsList 238
330 #define KviOption_boolAcceptMismatchedPortDccResumeRequests 239 /* dcc::send */
331 #define KviOption_boolEnableUrlLinkToolTip 240 /* ircview output */
332 #define KviOption_boolEnableHostLinkToolTip 241 /* ircview output */
333 #define KviOption_boolEnableServerLinkToolTip 242 /* ircview output */
334 #define KviOption_boolEnableModeLinkToolTip 243 /* ircview output */
335 #define KviOption_boolEnableNickLinkToolTip 244 /* ircview output */
336 #define KviOption_boolEnableChannelLinkToolTip 245 /* ircview output */
337 #define KviOption_boolEnableEscapeLinkToolTip 246 /* ircview output */
338 #define KviOption_boolUseDBusNotifier 247 /* notifier */
339 #define KviOption_boolUseKDENotifier 248 /* notifier */
340 #define KviOption_boolCaseSensitiveHighlighting 249 /* highlight */
341 #define KviOption_boolMinimizeInTray 250 /* interface */
342 #define KviOption_boolDisplayNotifierOnPrimaryScreen 251 /* notifier */
343 #define KviOption_boolShowDialogOnChannelCtcpPage 252
344 #define KviOption_boolPopupNotifierOnNewNotices 253 /* query */
345 #define KviOption_boolUserListViewUseAwayColor 254 /* userlist */
346 #define KviOption_boolShowUserFlagForChannelsInWindowList 255
347 #define KviOption_boolEnableCustomCursorWidth 256 /* interface */
348 #define KviOption_boolShowFavoriteServersOnly 257 /* connection::ircservers */
349 #define KviOption_boolRequireControlToCopy 258 /* interface::ircview */
350 #define KviOption_boolSend64BitAckInDccRecv 259 /* dcc::send */
351 #define KviOption_boolShowTreeWindowListHandle 260
352 #define KviOption_boolMenuBarVisible 261
353 #define KviOption_boolWarnAboutHidingMenuBar 262
354 #define KviOption_boolWhoRepliesToActiveWindow 263 /* irc::output */
355 
356 #define KVI_NUM_BOOL_OPTIONS 264
357 
358 #define KVI_STRING_OPTIONS_PREFIX "string"
359 #define KVI_STRING_OPTIONS_PREFIX_LEN 6
360 
361 #define KviOption_stringNickname1 0 /* identity */
362 #define KviOption_stringNickname2 1 /* identity */
363 #define KviOption_stringNickname3 2 /* identity */
364 #define KviOption_stringNickname4 3 /* identity */
365 #define KviOption_stringUsername 4 /* identity */
366 #define KviOption_stringRealname 5 /* identity */
367 #define KviOption_stringLocalHostIp 6 /* ?????? This is a fallback one */
368 #define KviOption_stringPartMessage 7 /* ircengine::defaultmessages */
369 #define KviOption_stringQuitMessage 8 /* ircengine::defaultmessages */
370 #define KviOption_stringUrlHttpCommand 9 /* urlhandlers */
371 #define KviOption_stringExtendedPrivmsgPrefix 10 /* ircengine::outputcontrol::privmsg */
372 #define KviOption_stringExtendedPrivmsgPostfix 11 /* ircengine::outputcontrol::privmsg */
373 #define KviOption_stringCtcpVersionPostfix 12 /* ircengine::ctcp::replies */
374 #define KviOption_stringCtcpUserInfoOther 13 /* identity */
375 #define KviOption_stringCtcpSourcePostfix 14 /* ircengine::ctcp::replies */
376 #define KviOption_stringUrlFtpCommand 15 /* urlhandlers */
377 #define KviOption_stringUrlHttpsCommand 16 /* urlhandlers */
378 #define KviOption_stringUrlMailtoCommand 17 /* urlhandlers */
379 #define KviOption_stringPreferredMediaPlayer 18 /* still missing in options ! */
380 #define KviOption_stringUrlFileCommand 19 /* urlhandlers */
381 #define KviOption_stringNickCompletionPostfix 20
382 #define KviOption_stringUrlUnknownCommand 21 /* urlhandlers */
383 #define KviOption_stringIPv4ConnectionBindAddress 22 /* connection::transport */
384 #define KviOption_stringIPv6ConnectionBindAddress 23 /* connection::transport */
385 #define KviOption_stringDccVoiceSoundDevice 24 /* dcc::voice */
386 #define KviOption_stringDccVoiceMixerDevice 25 /* dcc::voice */
387 #define KviOption_stringAwayMessage 26 /* irc::away */
388 #define KviOption_stringIdentdUser 27 /* connection::ident */
389 #define KviOption_stringDccListenDefaultInterface 28 /* dcc::general */
390 #define KviOption_stringCustomAwayNick 29 /* ircengine::away */
391 #define KviOption_stringDefaultDccFakeAddress 30 /* dcc::general */
392 #define KviOption_stringCtcpPageReply 31 /* ircengine::ctcp::replies */
393 #define KviOption_stringSSLCertificatePath 32 /* ssl */
394 #define KviOption_stringSSLCertificatePass 33 /* ssl */
395 #define KviOption_stringSSLPrivateKeyPath 34 /* ssl */
396 #define KviOption_stringSSLPrivateKeyPass 35 /* ssl */
397 #define KviOption_stringSoundSystem 36 /* sound */
398 #define KviOption_stringDefaultUserMode 37
399 #define KviOption_stringLastImageDialogPath 38 /* internal */
400 #define KviOption_stringIconThemeSubdir 39
401 #define KviOption_stringIncomingPath 40 /* folders */
402 #define KviOption_stringMyAvatar 41
403 #define KviOption_stringDefaultTextEncoding 42 /* text encoding */ // empty string means guess from locale
404 #define KviOption_stringWinampTextEncoding 43
405 #define KviOption_stringMp3TagsEncoding 44
406 #define KviOption_stringCtcpUserInfoAge 45 /* identity */
407 #define KviOption_stringCtcpUserInfoGender 46 /* identity */
408 #define KviOption_stringCtcpUserInfoLocation 47 /* identity */
409 #define KviOption_stringCtcpUserInfoLanguages 48 /* identity */
410 #define KviOption_stringWordSplitters 49 /* highlight */
411 #define KviOption_stringOnNewQueryOpenedSound 50 /* sounds */
412 #define KviOption_stringOnHighlightedMessageSound 51 /* sounds */
413 #define KviOption_stringOnMeKickedSound 52 /* sounds */
414 #define KviOption_stringOnQueryMessageSound 53 /* sounds */
415 #define KviOption_stringIrcViewTimestampFormat 54
416 #define KviOption_stringPreferredTorrentClient 55 /* still missing in options ! */
417 #define KviOption_stringDefaultSrvEncoding 56 /* server encoding */ // empty string means guess from locale
418 #define KviOption_stringLogsPath 57 /* logfolder */
419 #define KviOption_stringLogsDynamicPath 58 /* logfolder */
420 #define KviOption_stringLogsExportPath 59 /* logview module log export */
421 
422 #define KVI_NUM_STRING_OPTIONS 60
423 
424 #define KVI_STRINGLIST_OPTIONS_PREFIX "stringlist"
425 #define KVI_STRINGLIST_OPTIONS_PREFIX_LEN 10
426 
427 #define KviOption_stringlistHighlightWords 0 /* ircengine::outputcontrol::highlighting */
428 #define KviOption_stringlistSpamWords 1 /* ircengine::outputcontrol::antispam */
429 #define KviOption_stringlistRecentChannels 2 /* internal */
430 #define KviOption_stringlistRecentServers 3 /* internal */
431 #define KviOption_stringlistRecentNicknames 4 /* internal */
432 #define KviOption_stringlistModuleExtensionToolbars 5 /* internal */
433 #define KviOption_stringlistImageSearchPaths 6 /* ??? */
434 #define KviOption_stringlistRecentIrcUrls 7 /* internal */
435 #define KviOption_stringlistSpellCheckerDictionaries 8 /* spellchecker */
436 
437 #define KVI_NUM_STRINGLIST_OPTIONS 9
438 
439 #define KVI_COLOR_OPTIONS_PREFIX "color"
440 #define KVI_COLOR_OPTIONS_PREFIX_LEN 5
441 
442 #define KviOption_colorWindowListNormalText 0 /* look & feel::interface look::WindowList::classic WindowList */
443 #define KviOption_colorWindowListMinimizedText 1 /* look & feel::interface look::WindowList::classic WindowList */
444 #define KviOption_colorWindowListHighlight1Text 2 /* look & feel::interface look::WindowList::classic WindowList */
445 #define KviOption_colorWindowListHighlight2Text 3 /* look & feel::interface look::WindowList::classic WindowList */
446 #define KviOption_colorWindowListProgressBar 4 /* look & feel::interface look::WindowList::classic WindowList */
447 #define KviOption_colorUserListViewAwayForeground 5 /* look & feel::interface look::userlist */
448 #define KviOption_colorUserListViewOwnForeground 6 /* look & feel::interface look::userlist */
449 #define KviOption_colorUserListViewIrcOpForeground 7 /* look & feel::interface look::userlist */
450 #define KviOption_colorNotifierBackground 8 /* look & feel::interface look::notifier */
451 #define KviOption_colorNotifierForeground 9 /* look & feel::interface look::notifier */
452 #define KviOption_colorNotifierTitleForeground 10 /* look & feel::interface look::notifier */
453 #define KviOption_colorIrcViewBackground 11 /* look & feel::interface look::ircview */
454 #define KviOption_colorInputBackground 12 /* look & feel::interface look::input */
455 #define KviOption_colorInputSelectionBackground 13 /* look & feel::interface look::input */
456 #define KviOption_colorInputSelectionForeground 14 /* look & feel::interface look::input */
457 #define KviOption_colorInputCursor 15 /* look & feel::interface look::input */
458 #define KviOption_colorInputControl 16 /* look & feel::interface look::input */
459 #define KviOption_colorInputForeground 17 /* look & feel::interface look::input */
460 #define KviOption_colorUserListViewBackground 18 /* look & feel::interface look::userlist */
461 #define KviOption_colorUserListViewOpForeground 19 /* look & feel::interface look::userlist */
462 #define KviOption_colorUserListViewVoiceForeground 20 /* look & feel::interface look::userlist */
463 #define KviOption_colorUserListViewNormalForeground 21 /* look & feel::interface look::userlist */
464 #define KviOption_colorUserListViewSelectionBackground 22 /* look & feel::interface look::userlist */
465 #define KviOption_colorUserListViewSelectionForeground 23 /* look & feel::interface look::userlist */
466 #define KviOption_colorLabelBackground 24 /* look & feel::interface look::topic label */
467 #define KviOption_colorLabelForeground 25 /* look & feel::interface look::topic label */
468 #define KviOption_colorGlobalTransparencyFade 26 /* look & feel::interface look */
469 #define KviOption_colorIrcToolBarAppletBackground 27 /* theme::tool bar applets */
470 #define KviOption_colorIrcToolBarAppletBorder 28 /* theme::tool bar applets */
471 #define KviOption_colorIrcToolBarAppletFont 29 /* theme::tool bar applets */
472 #define KviOption_colorTreeWindowListBackground 30 /* look & feel::interface look::WindowList::tree WindowList */
473 #define KviOption_colorTreeWindowListActiveBackground 31 /* look & feel::interface look::WindowList::tree WindowList */
474 #define KviOption_colorTreeWindowListForeground 32 /* look & feel::interface look::WindowList::tree WindowList */
475 #define KviOption_colorTreeWindowListActiveForeground 33 /* look & feel::interface look::WindowList::tree WindowList */
476 #define KviOption_colorTreeWindowListHighlight1Foreground 34 /* look & feel::interface look::WindowList::tree WindowList */
477 #define KviOption_colorTreeWindowListHighlight2Foreground 35 /* look & feel::interface look::WindowList::tree WindowList */
478 #define KviOption_colorTreeWindowListProgress 36 /* look & feel::interface look::WindowList::tree WindowList */
479 #define KviOption_colorUserListViewHalfOpForeground 37 /* look & feel::interface look::userlist */
480 #define KviOption_colorWindowListHighlight3Text 38 /* look & feel::interface look::WindowList::classic WindowList */
481 #define KviOption_colorWindowListHighlight4Text 39 /* look & feel::interface look::WindowList::classic WindowList */
482 #define KviOption_colorWindowListHighlight5Text 40 /* look & feel::interface look::WindowList::classic WindowList */
483 #define KviOption_colorTreeWindowListHighlight3Foreground 41 /* look & feel::interface look::WindowList::tree WindowList */
484 #define KviOption_colorTreeWindowListHighlight4Foreground 42 /* look & feel::interface look::WindowList::tree WindowList */
485 #define KviOption_colorTreeWindowListHighlight5Foreground 43 /* look & feel::interface look::WindowList::tree WindowList */
486 #define KviOption_colorUserListViewChanAdminForeground 44 /* look & feel::interface look::userlist */
487 #define KviOption_colorUserListViewUserOpForeground 45 /* look & feel::interface look::userlist */
488 #define KviOption_colorUserListViewGrid 46 /* look & feel::interface look::userlist */
489 #define KviOption_colorUserListViewChanOwnerForeground 47 /* look & feel::interface look::userlist */
490 #define KviOption_colorIrcViewMarkLine 48 /* look & feel::interface look::ircvew */
491 
492 #define KVI_NUM_COLOR_OPTIONS 49
493 
494 #define KVI_PIXMAP_OPTIONS_PREFIX "pixmap"
495 #define KVI_PIXMAP_OPTIONS_PREFIX_LEN 6
496 
497 #define KviOption_pixmapIrcViewBackground 0 /* interface::look::components::ircview */
498 #define KviOption_pixmapInputBackground 1 /* interface::look::components::input */
499 #define KviOption_pixmapUserListViewBackground 2 /* look & feel::interface look::userlist */
500 #define KviOption_pixmapLabelBackground 3 /* look & feel::interface look::topic label */
501 #define KviOption_pixmapMyAvatar 4 /* identity */
502 #define KviOption_pixmapIrcToolBarAppletBackground 5 /* theme::tool bar applets */
503 #define KviOption_pixmapTreeWindowListBackground 6 /* look & feel::interface look::WindowList::tree WindowList */
504 #define KviOption_pixmapGlobalTransparencyBackground 7 /* theme::transparency */
505 #define KviOption_pixmapNotifierBackground 8 /* interface::look::components::notifier */
506 
507 #define KVI_NUM_PIXMAP_OPTIONS 9
508 
509 #define KVI_UINT_OPTIONS_PREFIX "uint"
510 #define KVI_UINT_OPTIONS_PREFIX_LEN 4
511 
512 #define KviOption_uintIrcSocketTimeout 0 /* connection::transport */
513 #define KviOption_uintModuleCleanupTimerInterval 1
514 #define KviOption_uintModuleCleanupTimeout 2
515 #define KviOption_uintMaxCtcpRequests 3 /* ircengine::ctcp */
516 #define KviOption_uintCtcpFloodCheckInterval 4 /* ircengine::ctcp */
517 #define KviOption_uintTotalConnectionTime 5
518 #define KviOption_uintDccSocketTimeout 6 /* dcc::general */
519 #define KviOption_uintDccSendIdleStepInMSec 7 /* dcc::send */
520 #define KviOption_uintDccSendPacketSize 8 /* dcc::send */
521 #define KviOption_uintGlobalTransparencyParentFadeFactor 9 /* interface::look::general */
522 #define KviOption_uintGlobalTransparencyChildFadeFactor 10 /* interface::look::general */
523 #define KviOption_uintNotifyListCheckTimeInSecs 11 /* notify */
524 #define KviOption_uintSocketQueueFlushTimeout 12 /* connection::transport */
525 #define KviOption_uintOutgoingTrafficLimitUSeconds 13 /* connection::transport */
526 #define KviOption_uintNotifyListIsOnDelayTimeInSecs 14 /* notify */
527 #define KviOption_uintNotifyListUserhostDelayTimeInSecs 15 /* notify */
528 #define KviOption_uintTreeWindowListMinimumWidth 16 /* ?? interface::general ?? */
529 #define KviOption_uintAvatarOfferTimeoutInSecs 17 /* irc::ctcp::avatar */
530 #define KviOption_uintIrcViewMaxBufferSize 18 /* interface::features::components::ircview */
531 #define KviOption_uintIrcViewToolTipTimeoutInMsec 19 /* interface::features::components::ircview */
532 #define KviOption_uintIrcViewToolTipHideTimeoutInMsec 20 /* interface::features::components::ircview */
533 #define KviOption_uintDccVoicePreBufferSize 21 /* dcc::voice */
534 #define KviOption_uintIdentdPort 22 /* connection::ident */
535 #define KviOption_uintAvatarScaleWidth 23 /* ctcp::avatar */
536 #define KviOption_uintAvatarScaleHeight 24 /* ctcp::avatar */
537 #define KviOption_uintDccMinPort 25 /* dcc::general */
538 #define KviOption_uintDccMaxPort 26 /* dcc::general */
539 #define KviOption_uintSoundOfferTimeoutInSecs 27
540 #define KviOption_uintMaximumRequestedAvatarSize 28 /* ctcp::avatar */
541 #define KviOption_uintGlobalWindowOpacityPercent 29
542 #define KviOption_uintPasteDelay 30
543 #define KviOption_uintMaxDccSendTransfers 31 /* dcc transfers */ // 0 = unlimited!
544 #define KviOption_uintMaxDccSlots 32 /* dcc transfers */ // 0 = unlimited slots = windows
545 #define KviOption_uintTileMethod 33 /* internal ? */
546 #define KviOption_uintLagMeterHeartbeat 34
547 #define KviOption_uintLagAlarmTime 35
548 #define KviOption_uintWindowListButtonMinWidth 36 /* interface::look::WindowList::classic WindowList */
549 #define KviOption_uintOutputVerbosityLevel 37 // follows the verbosity constants defined below
550 #define KviOption_uintIrcContextAppletWidth 38 /* internal */
551 #define KviOption_uintMinHighlightLevel 39 /* look::interface::features::output */
552 #define KviOption_uintUserListViewGridType 40 /* look&feel::ircview */
553 #define KviOption_uintWindowListMaximumRows 41 /* interface::look::WindowList::classic WindowList */
554 #define KviOption_uintMaxAutoReconnectAttempts 42 /* connection */// 0 = unlimited attempts
555 #define KviOption_uintAutoReconnectDelay 43 /* connection */
556 #define KviOption_uintMaxDccSendSpeed 44 /* dcc::file transfers */
557 #define KviOption_uintMaxDccRecvSpeed 45 /* dcc::file transfers */
558 #define KviOption_uintTimeStampForeground 46
559 #define KviOption_uintTimeStampBackground 47
560 #define KviOption_uintUserExperienceLevel 48
561 #define KviOption_uintClassicWindowListMaximumButtonWidth 49
562 #define KviOption_uintDefaultBanType 50
563 #define KviOption_uintIrcViewPixmapAlign 51
564 #define KviOption_uintUserListPixmapAlign 52
565 #define KviOption_uintToolBarAppletPixmapAlign 53
566 #define KviOption_uintTreeWindowListPixmapAlign 54
567 #define KviOption_uintInputPixmapAlign 55
568 #define KviOption_uintAutoFlushLogs 56
569 #define KviOption_uintMinTrayLowLevelMessage 57
570 #define KviOption_uintMinTrayHighLevelMessage 58
571 #define KviOption_uintIdentdOutputMode 59
572 #define KviOption_uintScaleAvatarsOnLoadHeight 60
573 #define KviOption_uintScaleAvatarsOnLoadWidth 61
574 #define KviOption_uintNotifierActiveTransparency 62
575 #define KviOption_uintNotifierInactiveTransparency 63
576 #define KviOption_uintIrcViewMarkerStyle 64
577 #define KviOption_uintIrcViewMarkerSize 65
578 #define KviOption_uintUrlMouseClickNum 66
579 #define KviOption_uintNotifierAutoHideTime 67
580 #define KviOption_uintLinesToPasteOnChannelJoin 68 /* channel */
581 #define KviOption_uintDaysIntervalToPasteOnChannelJoin 69 /* channel */
582 #define KviOption_uintLinesToPasteOnQueryJoin 70 /* query */
583 #define KviOption_uintDaysIntervalToPasteOnQueryJoin 71 /* query */
584 #define KviOption_uintSpacesToExpandTabulationInput 72 /* number of spaces used in tabulation expansion in the inputbar */
585 #define KviOption_uintUserIrcViewOwnForeground 73 /* look & feel::ircview */
586 #define KviOption_uintUserIrcViewOwnBackground 74 /* look & feel::ircview */
587 #define KviOption_uintNotifierPixmapAlign 75
588 #define KviOption_uintOutputDatetimeFormat 76 /* irc::verbosity */
589 #define KviOption_uintOnJoinRequestsDelay 77
590 #define KviOption_uintToolBarIconSize 78
591 #define KviOption_uintToolBarButtonStyle 79
592 #define KviOption_uintMaximumBlowFishKeySize 80
593 #define KviOption_uintCustomCursorWidth 81 /* Interface */
594 
595 #define KVI_NUM_UINT_OPTIONS 82
596 
597 namespace KviIdentdOutputMode
598 {
599  enum Mode
600  {
601  Quiet = 0,
604  };
605 }
606 
607 #define KVI_FONT_OPTIONS_PREFIX "font"
608 #define KVI_FONT_OPTIONS_PREFIX_LEN 4
609 
610 #define KviOption_fontIrcView 0 /* interface::look::components::ircview */
611 #define KviOption_fontInput 1 /* interface::look::components::input */
612 #define KviOption_fontUserListView 2 /* look & feel::interface look::userlist */
613 #define KviOption_fontLabel 3 /* look & feel::interface look::topic label */
614 #define KviOption_fontApplication 4 /* interface::look::global */
615 #define KviOption_fontWindowList 5 /* interface::look::WindowList::classic WindowList */
616 #define KviOption_fontTreeWindowList 6 /* interface::look::WindowList::tree WindowList */
617 #define KviOption_fontNotifier 7 /* interface::look::components::notifier */
618 #define KviOption_fontNotifierTitle 8 /* interface::look::components::notifier */
619 
620 #define KVI_NUM_FONT_OPTIONS 9
621 
622 #define KVI_ICCOLOR_OPTIONS_PREFIX "iccolor"
623 #define KVI_ICCOLOR_OPTIONS_PREFIX_LEN 7
624 
625 #define KVI_NUM_ICCOLOR_OPTIONS 8
626 
627 // indices declared in kvi_out.h
628 #define KVI_MSGTYPE_OPTIONS_PREFIX "msgtype"
629 #define KVI_MSGTYPE_OPTIONS_PREFIX_LEN 7
630 
631 #define KVI_NUM_MSGTYPE_OPTIONS 144
632 
633 #define KVI_MIRCCOLOR_OPTIONS_PREFIX "mirccolor"
634 #define KVI_MIRCCOLOR_OPTIONS_PREFIX_LEN 9
635 
636 #define KVI_NUM_MIRCCOLOR_OPTIONS 16
637 
638 // external declaration of the tables
644 // extern KviIntOption g_intOptionsTable[KVI_NUM_INT_OPTIONS];
647 extern KVIRC_API KviMessageTypeSettingsOption g_msgtypeOptionsTable[KVI_NUM_MSGTYPE_OPTIONS];
651 
652 // __this is how we access the options from outside
653 #define KVI_OPTION_BOOL(_idx) g_boolOptionsTable[_idx].option
654 #define KVI_OPTION_RECT(_idx) g_rectOptionsTable[_idx].option
655 #define KVI_OPTION_STRING(_idx) g_stringOptionsTable[_idx].option
656 #define KVI_OPTION_COLOR(_idx) g_colorOptionsTable[_idx].option
657 #define KVI_OPTION_PIXMAP(_idx) g_pixmapOptionsTable[_idx].option
658 #define KVI_OPTION_UINT(_idx) g_uintOptionsTable[_idx].option
659 #define KVI_OPTION_FONT(_idx) g_fontOptionsTable[_idx].option
660 #define KVI_OPTION_MSGTYPE(_idx) g_msgtypeOptionsTable[_idx].option
661 #define KVI_OPTION_MIRCCOLOR(_idx) g_mirccolorOptionsTable[_idx].option
662 #define KVI_OPTION_STRINGLIST(_idx) g_stringlistOptionsTable[_idx].option
663 #define KVI_OPTION_ICCOLOR(_idx) g_iccolorOptionsTable[_idx].option
664 
665 // Verbosity constants
666 #define KVI_VERBOSITY_LEVEL_MUTE 0
667 #define KVI_VERBOSITY_LEVEL_QUIET 1
668 #define KVI_VERBOSITY_LEVEL_NORMAL 2
669 #define KVI_VERBOSITY_LEVEL_VERBOSE 3
670 #define KVI_VERBOSITY_LEVEL_PARANOIC 4
671 
672 #define _OUTPUT_PARANOIC (KVI_OPTION_UINT(KviOption_uintOutputVerbosityLevel) >= KVI_VERBOSITY_LEVEL_PARANOIC)
673 #define _OUTPUT_VERBOSE (KVI_OPTION_UINT(KviOption_uintOutputVerbosityLevel) >= KVI_VERBOSITY_LEVEL_VERBOSE)
674 #define _OUTPUT_QUIET (KVI_OPTION_UINT(KviOption_uintOutputVerbosityLevel) <= KVI_VERBOSITY_LEVEL_QUIET)
675 #define _OUTPUT_MUTE (KVI_OPTION_UINT(KviOption_uintOutputVerbosityLevel) <= KVI_VERBOSITY_LEVEL_MUTE)
676 
677 #define START_TABLE_BOLD_ROW "<tr><td style=\"background-color: rgb(48,48,48); font-weight: bold; color: rgb(255,255,255); padding-left: 5px; padding-right: 5px;\">"
678 #define END_TABLE_BOLD_ROW "</td></tr>"
679 #define START_TABLE_NORMAL_ROW "<tr><td>"
680 
681 #define SET_ANTI_ALIASING(p) (p).setRenderHint(QPainter::TextAntialiasing);
682 
683 #define KVI_RECENT_CHANNELS_SEPARATOR ":"
684 
685 #if defined(_KVI_OPTIONS_CPP_) || defined(_WANT_OPTION_FLAGS_)
686 // flag definitions
687 // section of the config file (rightmost 8 bits)
688 #define KviOption_sectFlagNone 0
689 #define KviOption_sectFlagFrame 1
690 #define KviOption_sectFlagMdi 2
691 #define KviOption_sectFlagWindows 3
692 #define KviOption_sectFlagWindowList 4
693 #define KviOption_sectFlagIrcView 5
694 #define KviOption_sectFlagMsgType 6
695 #define KviOption_sectFlagMircColor 7
696 #define KviOption_sectFlagInput 8
697 #define KviOption_sectFlagUserParser 9
698 #define KviOption_sectFlagConnection 10
699 #define KviOption_sectFlagIrcSocket 11
700 #define KviOption_sectFlagUser 12
701 #define KviOption_sectFlagUserListView 13
702 #define KviOption_sectFlagLabel 14
703 #define KviOption_sectFlagModules 15
704 #define KviOption_sectFlagCtcp 16
705 #define KviOption_sectFlagDcc 17
706 #define KviOption_sectFlagGui 18
707 #define KviOption_sectFlagIrcToolBar 19
708 #define KviOption_sectFlagLogging 20
709 #define KviOption_sectFlagAntiSpam 21
710 #define KviOption_sectFlagAvatar 22
711 #define KviOption_sectFlagUrl 23
712 #define KviOption_sectFlagRecent 24
713 #define KviOption_sectFlagGeometry 25
714 #define KviOption_sectFlagNotifier 26
715 
716 #define KVI_NUM_OPTION_SECT_FLAGS 27
717 
718 #define KviOption_sectMask 255
719 
720 // other logical groupings of options
721 #define KviOption_groupTheme (1 << 8)
722 
723 #define KviOption_groupMask (255 << 8)
724 
725 // actions to take when an option is set
726 #define KviOption_resetNone 0
727 #define KviOption_resetUpdateNotifier (1 << 16)
728 #define KviOption_resetUpdateGui (1 << 17)
729 #define KviOption_resetUpdateWindowList (1 << 18)
730 #define KviOption_resetUpdateAppFont (1 << 19)
731 #define KviOption_resetUpdatePseudoTransparency (1 << 20)
732 #define KviOption_resetRestartNotifyList (1 << 21)
733 #define KviOption_resetRestartIdentd (1 << 22)
734 #define KviOption_resetReloadImages (1 << 23)
735 #define KviOption_resetRestartLagMeter (1 << 24)
736 #define KviOption_resetRecentChannels (1 << 25)
737 
738 #define KviOption_resetMask (~(KviOption_sectMask | KviOption_groupMask))
739 
740 //for file paths
741 #define KviOption_encodePath (1 << 25)
742 #endif
743 
744 #endif //_KVI_OPTIONS_H_
KVIRC_API KviColorOption g_iccolorOptionsTable[KVI_NUM_ICCOLOR_OPTIONS]
Definition: KviOptions.cpp:522
Definition: KviOptions.h:601
#define KVIRC_API
Definition: kvi_settings.h:128
#define KVI_NUM_MIRCCOLOR_OPTIONS
Definition: KviOptions.h:636
#define KVI_NUM_COLOR_OPTIONS
Definition: KviOptions.h:492
KVIRC_API KviMessageTypeSettingsOption g_msgtypeOptionsTable[KVI_NUM_MSGTYPE_OPTIONS]
Definition: KviOptions.cpp:695
#define KVI_NUM_PIXMAP_OPTIONS
Definition: KviOptions.h:507
KVIRC_API KviFontOption g_fontOptionsTable[KVI_NUM_FONT_OPTIONS]
Definition: KviOptions.cpp:648
KVIRC_API KviUIntOption g_uintOptionsTable[KVI_NUM_UINT_OPTIONS]
Definition: KviOptions.cpp:557
#define KVI_NUM_ICCOLOR_OPTIONS
Definition: KviOptions.h:625
Definition: KviOptions.h:603
KVIRC_API KviStringOption g_stringOptionsTable[KVI_NUM_STRING_OPTIONS]
Definition: KviOptions.cpp:355
Definition: KviPixmap.h:33
#define KVI_NUM_STRING_OPTIONS
Definition: KviOptions.h:422
Definition: KviMessageTypeSettings.h:47
KVIRC_API KviColorOption g_colorOptionsTable[KVI_NUM_COLOR_OPTIONS]
Definition: KviOptions.cpp:464
KVIRC_API KviRectOption g_rectOptionsTable[KVI_NUM_RECT_OPTIONS]
Definition: KviOptions.cpp:54
#define KVI_NUM_BOOL_OPTIONS
Definition: KviOptions.h:356
Mode
Definition: KviOptions.h:599
KVIRC_API KviPixmapOption g_pixmapOptionsTable[KVI_NUM_PIXMAP_OPTIONS]
Definition: KviOptions.cpp:539
#define KVI_NUM_STRINGLIST_OPTIONS
Definition: KviOptions.h:437
#define DECLARE_OPTION_STRUCT(_cname, _type)
Definition: KviOptions.h:41
KVIRC_API KviBoolOption g_boolOptionsTable[KVI_NUM_BOOL_OPTIONS]
Definition: KviOptions.cpp:62
#define KVI_NUM_MSGTYPE_OPTIONS
Definition: KviOptions.h:631
KVIRC_API KviColorOption g_mirccolorOptionsTable[KVI_NUM_MIRCCOLOR_OPTIONS]
Definition: KviOptions.cpp:440
This file contains compile time settings.
Definition: KviOptions.h:602
#define KVI_NUM_FONT_OPTIONS
Definition: KviOptions.h:620
#define KVI_NUM_UINT_OPTIONS
Definition: KviOptions.h:595
#define KVI_NUM_RECT_OPTIONS
Definition: KviOptions.h:86
KVIRC_API KviStringListOption g_stringlistOptionsTable[KVI_NUM_STRINGLIST_OPTIONS]
Definition: KviOptions.cpp:424