| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529 | 
							- #pragma once
 
- #include "Theme.h"
 
- #define MAX_SEND_CLIENTS	15
 
- class CSendClients
 
- {
 
- public:
 
- 	CSendClients()
 
- 	{
 
- 		bSendAll = FALSE;
 
- 		bShownFirstError = FALSE;
 
- 	}
 
- 	BOOL bSendAll;
 
- 	CString csIP;
 
- 	CString csDescription;
 
- 	BOOL bShownFirstError;
 
- };
 
- #define MAX_COPY_BUFFER	3
 
- class CCopyBufferItem
 
- {
 
- public:
 
- 	CCopyBufferItem()
 
- 	{
 
- 		m_lCopyHotKey = -1;
 
- 		m_lPasteHotKey = -1;
 
- 		m_lCutHotKey = -1;
 
- 		m_bPlaySoundOnCopy = FALSE;
 
- 	}
 
- 	long m_lCopyHotKey;
 
- 	long m_lPasteHotKey;
 
- 	long m_lCutHotKey;
 
- 	BOOL m_bPlaySoundOnCopy;
 
- };
 
- #define REG_PATH					"Software\\Ditto"
 
- #define POS_AT_CARET	1
 
- #define POS_AT_CURSOR	2
 
- #define POS_AT_PREVIOUS	3
 
- #define CAPTION_RIGHT	1
 
- #define CAPTION_BOTTOM	2
 
- #define CAPTION_LEFT	3
 
- #define CAPTION_TOP		4
 
- #define TOGGLES_ALLWAYS_ON_TOP				1
 
- #define TOGGLES_ALLWAYS_SHOW_DESCRIPTION	2
 
- #define	ROLLES_UP_WINDOW					3
 
- #define PATH_HELP			0
 
- #define PATH_REMOTE_FILES	1
 
- #define PATH_LOG_FILE		2
 
- #define PATH_LANGUAGE		3
 
- #define PATH_UPDATE_FILE	4
 
- #define PATH_DATABASE		5
 
- #define PATH_INI			6
 
- #define PATH_U3_HWND_INI	7
 
- #define PATH_THEMES			8
 
- #define PATH_ADDINS			9
 
- #define PATH_DRAG_FILES		10
 
- #define PATH_CLIP_DIFF		11
 
- class CGetSetOptions
 
- {
 
- public:
 
- 	CGetSetOptions();
 
- 	virtual ~CGetSetOptions();
 
- 	static bool m_bFromIni;
 
- 	static CString m_csIniFileName;
 
- 	static bool m_bInConversion;
 
- 	static bool m_bU3;
 
- 	static CTheme m_Theme;
 
- 	static bool m_portable;
 
- 	static void LoadSettings();
 
- 	static CString GetIniFileName(bool bLocalIniFile);
 
- 	static void ConverSettingsToIni();
 
- 	static CString GetAppDataPath();
 
- 	static CString GetTempFilePath();
 
- 	static CString GetExeFileName();
 
- 	static CString GetAppName();
 
- 	static BOOL GetShowIconInSysTray();
 
- 	static BOOL SetShowIconInSysTray(BOOL bShow);
 
- 	static BOOL GetRunOnStartUp();
 
- 	static void SetRunOnStartUp(BOOL bRun);
 
- 	static BOOL SetProfileFont(CString csSection, LOGFONT &font);
 
- 	static BOOL GetProfileFont(CString csSection, LOGFONT &font);
 
- 	static long GetResolutionProfileLong(CString csName, long lDefaultValue, CString csNewPath = _T(""));
 
- 	static BOOL SetResolutionProfileLong(CString csName, long lValue);
 
- 	static BOOL SetProfileLong(CString csName, long lValue);
 
- 	static long GetProfileLong(CString csName, long lDefaultValue = -1, CString csNewPath = _T(""));
 
- 	static CString GetProfileString(CString csName, CString csDefault, CString csNewPath = _T(""));
 
- 	static BOOL	SetProfileString(CString csName, CString csValue);
 
- 	static LPVOID GetProfileData(CString csName, DWORD &dwLength);
 
- 	static BOOL	SetProfileData(CString csName, LPVOID lpData, DWORD dwLength);
 
- 	static BOOL SetQuickPasteSize(CSize size);
 
- 	static void GetQuickPasteSize(CSize &size);
 
- 	static BOOL SetQuickPastePoint(CPoint point);
 
- 	static void GetQuickPastePoint(CPoint &point);
 
- 	static BOOL SetEditWndSize(CSize size);
 
- 	static void GetEditWndSize(CSize &size);
 
- 	static BOOL SetEditWndPoint(CPoint point);
 
- 	static void GetEditWndPoint(CPoint &point);
 
- 	static BOOL SetEnableTransparency(BOOL bCheck);
 
- 	static BOOL GetEnableTransparency();
 
- 	static BOOL SetTransparencyPercent(long lPercent);
 
- 	static long GetTransparencyPercent();
 
- 	static long m_nLinesPerRow;
 
- 	static BOOL SetLinesPerRow(long lLines);
 
- 	static long GetLinesPerRow();
 
- 	static BOOL SetQuickPastePosition(long lPosition);
 
- 	static long GetQuickPastePosition();
 
- 	static long GetCopyGap();
 
- 	static void SetCopyGap(long lGap);
 
- 	static BOOL SetDBPath(CString csPath);
 
- 	static CString GetDBPath();
 
- 	static BOOL SetDBPathOld(CString csPath);
 
- 	static CString GetDBPathOld();
 
- 	static void SetCheckForMaxEntries(BOOL bVal);
 
- 	static BOOL GetCheckForMaxEntries();
 
- 	static void SetCheckForExpiredEntries(BOOL bVal);
 
- 	static BOOL GetCheckForExpiredEntries();
 
- 	static void SetMaxEntries(long lVal);
 
- 	static long GetMaxEntries();
 
- 	static void SetExpiredEntries(long lVal);
 
- 	static long GetExpiredEntries();
 
- 	static void SetTripCopyCount(long lVal);
 
- 	static long GetTripCopyCount();
 
- 	static void SetTripPasteCount(long lVal);
 
- 	static long GetTripPasteCount();
 
- 	static void SetTripDate(long lDate);
 
- 	static long GetTripDate();
 
- 	static void SetTotalCopyCount(long lVal);
 
- 	static long GetTotalCopyCount();
 
- 	static void SetTotalPasteCount(long lVal);
 
- 	static long GetTotalPasteCount();
 
- 	static void SetTotalDate(long lDate);
 
- 	static long GetTotalDate();
 
- 	static CString	GetUpdateFilePath();
 
- 	static BOOL		SetUpdateFilePath(CString cs);
 
- 	static CString	GetUpdateInstallPath();
 
- 	static BOOL		SetUpdateInstallPath(CString cs);
 
- 	static long		GetLastUpdate();
 
- 	static long		SetLastUpdate(long lValue);
 
- 	static BOOL		GetCheckForUpdates();
 
- 	static BOOL		SetCheckForUpdates(BOOL bCheck);
 
- 	static BOOL		m_bUseCtrlNumAccel;
 
- 	static void		SetUseCtrlNumForFirstTenHotKeys(BOOL bVal);
 
- 	static BOOL		GetUseCtrlNumForFirstTenHotKeys();
 
- 	static BOOL		m_bAllowDuplicates;
 
- 	static void		SetAllowDuplicates(BOOL bVal);
 
- 	static BOOL		GetAllowDuplicates();
 
- 	static BOOL		m_bUpdateTimeOnPaste;
 
- 	static void		SetUpdateTimeOnPaste(BOOL bVal);
 
- 	static BOOL		GetUpdateTimeOnPaste();
 
- 	static BOOL		m_bSaveMultiPaste;
 
- 	static void		SetSaveMultiPaste(BOOL bVal);
 
- 	static BOOL		GetSaveMultiPaste();
 
- 	static BOOL		m_bShowPersistent;
 
- 	static void		SetShowPersistent(BOOL bVal);
 
- 	static BOOL		GetShowPersistent();
 
- 	static void		SetShowTextForFirstTenHotKeys(BOOL bVal);
 
- 	static BOOL		GetShowTextForFirstTenHotKeys();
 
- 	static void		SetMainHWND(long lhWnd);
 
- 	static BOOL		GetMainHWND();
 
- 	static void		SetCaptionPos(long lPos);
 
- 	static long		GetCaptionPos();
 
- 	static void		SetAutoHide(BOOL bAutoHide);
 
- 	static BOOL		GetAutoHide();
 
- 	static long		m_bDescTextSize;
 
- 	static void		SetDescTextSize(long lSize);
 
- 	static long		GetDescTextSize();
 
- 	static BOOL		m_bDescShowLeadingWhiteSpace;
 
- 	static void		SetDescShowLeadingWhiteSpace(BOOL bVal);
 
- 	static BOOL		GetDescShowLeadingWhiteSpace();
 
- 	static BOOL		m_bAllwaysShowDescription;
 
- 	static void		SetAllwaysShowDescription(long bShow);
 
- 	static BOOL		GetAllwaysShowDescription();
 
- 	static long		m_bDoubleClickingOnCaptionDoes;
 
- 	static void		SetDoubleClickingOnCaptionDoes(long lOption);
 
- 	static long		GetDoubleClickingOnCaptionDoes();
 
- 	static BOOL		m_bPrompForNewGroupName;
 
- 	static void		SetPrompForNewGroupName(BOOL bOption);
 
- 	static BOOL		GetPrompForNewGroupName();
 
- 	static BOOL		m_bSendPasteOnFirstTenHotKeys;
 
- 	static void		SetSendPasteOnFirstTenHotKeys(BOOL bOption);
 
- 	static BOOL		GetSendPasteOnFirstTenHotKeys();
 
- 	static CSendClients m_SendClients[MAX_SEND_CLIENTS];
 
- 	static long		m_lAutoSendClientCount;
 
- 	static void		GetClientSendCount();
 
- 	static void		SetSendClients(CSendClients Client, int nPos);
 
- 	static CSendClients		GetSendClients(int nPos);
 
- 	static CString m_csIPListToPutOnClipboard;
 
- 	static CString	GetListToPutOnClipboard();
 
- 	static BOOL		SetListToPutOnClipboard(CString cs);
 
- 	static BOOL		m_bLogSendReceiveErrors;
 
- 	static void		SetLogSendReceiveErrors(BOOL bOption);
 
- 	static BOOL		GetLogSendReceiveErrors();
 
- 	static BOOL		m_HideDittoOnHotKeyIfAlreadyShown;
 
- 	static BOOL		GetHideDittoOnHotKeyIfAlreadyShown();
 
- 	static void		SetHideDittoOnHotKeyIfAlreadyShown(BOOL bVal);
 
- 	static long		m_lPort;
 
- 	static void		SetPort(long lPort);
 
- 	static long		GetPort();
 
- 	static BOOL		GetDisableRecieve();
 
- 	static void		SetDisableRecieve(BOOL bVal);
 
- 	static BOOL		GetFont(LOGFONT &font);
 
- 	static void		SetFont(LOGFONT &font);
 
- 	static BOOL		m_bDrawThumbnail;
 
- 	static void		SetDrawThumbnail(long bDraw);
 
- 	static BOOL		GetDrawThumbnail();
 
- 	static CStringA	m_csPassword;
 
- 	static void		SetNetworkPassword(CString csPassword);
 
- 	static CStringA	GetNetworkPassword();
 
- 	static BOOL		m_bDrawRTF;
 
- 	static void		SetDrawRTF(long bDraw);
 
- 	static BOOL		GetDrawRTF();
 
- 	static BOOL		m_bMultiPasteReverse;
 
- 	static void		SetMultiPasteReverse(BOOL bVal);
 
- 	static BOOL		GetMultiPasteReverse();
 
- 	static CString	m_csPlaySoundOnCopy;
 
- 	static void		SetPlaySoundOnCopy(CString cs);
 
- 	static CString	GetPlaySoundOnCopy();
 
- 	static BOOL		m_bSendPasteMessageAfterSelection;
 
- 	static void		SetSendPasteAfterSelection(BOOL bVal);
 
- 	static BOOL		GetSendPasteAfterSelection();
 
- 	static BOOL		m_bFindAsYouType;
 
- 	static void		SetFindAsYouType(BOOL bVal);
 
- 	static BOOL		GetFindAsYouType();
 
- 	static BOOL		m_bEnsureEntireWindowCanBeSeen;
 
- 	static void		SetEnsureEntireWindowCanBeSeen(BOOL bVal);
 
- 	static BOOL		GetEnsureEntireWindowCanBeSeen();
 
- 	static BOOL		m_bShowAllClipsInMainList;
 
- 	static void		SetShowAllClipsInMainList(BOOL bVal);
 
- 	static BOOL		GetShowAllClipsInMainList();
 
- 	static void		SetExtraNetworkPassword(CString csPassword);
 
- 	static CString	GetExtraNetworkPassword(bool bFillArray);
 
- 	static long		m_lMaxClipSizeInBytes;
 
- 	static long		GetMaxClipSizeInBytes();
 
- 	static void		SetMaxClipSizeInBytes(long lSize);
 
- 	static CString	GetLanguageFile();
 
- 	static void		SetLanguageFile(CString csLanguage);
 
- 	static DWORD	m_dwSaveClipDelay;
 
- 	static ULONG	GetSaveClipDelay();
 
- 	static void		SetSaveClipDelay(DWORD dwDelay);
 
- 	static long		m_lProcessDrawClipboardDelay;
 
- 	static long		GetProcessDrawClipboardDelay();
 
- 	static void		SetProcessDrawClipboardDelay(long lDelay);
 
- 	static BOOL		m_bEnableDebugLogging;
 
- 	static BOOL		GetEnableDebugLogging();
 
- 	static void		SetEnableDebugLogging(BOOL bEnable);
 
- 	static BOOL		m_bEnsureConnectToClipboard;
 
- 	static BOOL		GetEnsureConnectToClipboard();
 
- 	static void		SetEnsureConnectToClipboard(BOOL bSet);
 
- 	static BOOL		GetPromptWhenDeletingClips();
 
- 	static void		SetPromptWhenDeletingClips(BOOL bSet);
 
- 	static CString	GetLastImportDir();
 
- 	static void		SetLastImportDir(CString csDir);
 
- 	static CString	GetLastExportDir();
 
- 	static void		SetLastExportDir(CString csDir);
 
- 	static BOOL		GetUpdateDescWhenSavingClip();
 
- 	static void		SetUpdateDescWhenSavingClip(BOOL bSet);
 
- 	static bool		m_bOutputDebugString;
 
- 	static CStringArray m_csNetworkPasswordArray;
 
- 	static CString  GetPath(long lPathID);
 
- 	static void		WriteU3Hwnd(HWND hWnd);
 
- 	static __int64	nLastDbWriteTime;
 
- 	static long		GetDittoRestoreClipboardDelay();
 
- 	static void		SetDittoRestoreClipboardDelay(long lDelay);
 
- 	static void		GetCopyBufferItem(int nPos, CCopyBufferItem &Item);
 
- 	static void		SetCopyBufferItem(int nPos, CCopyBufferItem &Item);
 
- 	static CString  GetMultiPasteSeparator(bool bConvertToLineFeeds = true);
 
- 	static void		SetMultiPasteSeparator(CString csSep);
 
- 	static BOOL		GetSetCurrentDirectory();
 
- 	static CString GetPasteString(CString csAppName);
 
- 	static CString GetDefaultPasteString();
 
- 	static CString GetCopyString(CString csAppName);
 
- 	static CString GetDefaultCopyString();
 
- 	static CString GetCutString(CString csAppName);
 
- 	static CString GetDefaultCutString();
 
- 	static BOOL	GetEditWordWrap();
 
- 	static void	SetEditWordWrap(BOOL bSet);
 
- 	static bool GetAllowFriends();
 
- 	static bool		GetIsPortableDitto();
 
- 	static long		GetAutoMaxDelay();
 
- 	static void		SetAutoMaxDelay(long lDelay);
 
- 	static void SetTheme(CString csTheme);
 
- 	static CString GetTheme();
 
- 	static long		GetKeyStateWaitTimerCount();
 
- 	static long		GetKeyStatePasteDelay();
 
- 	static DWORD	GetDittoHotKey();
 
- 	static DWORD	SendKeysDelay();
 
- 	static DWORD	WaitForActiveWndTimeout();
 
- 	static DWORD	FocusChangedDelay();
 
- 	static DWORD	FocusWndTimerTimeout();
 
- 	static BOOL		GetConnectedToClipboard();
 
- 	static void		SetConnectedToClipboard(BOOL val);
 
- 	static DWORD	GetTextOnlyRestoreDelay();
 
- 	static DWORD 	GetTextOnlyPasteDelay();
 
- 	static BOOL		GetSetFocusToApp(CString csAppName);
 
- 	static DWORD	SelectedIndex();
 
- 	static void		SetCopyAppInclude(CString csAppName);
 
- 	static CString  GetCopyAppInclude();
 
- 	static void		SetCopyAppExclude(CString csAppName);
 
- 	static CString  GetCopyAppExclude();
 
- 	static CString  GetCopyAppSeparator();
 
- 	static DWORD	GetNoFormatsRetryDelay();
 
- 	static DWORD	GetMainDeletesDeleteCount();
 
- 	static DWORD	GetIdleSecondsBeforeDelete();
 
- 	static DWORD	GetDbTimeout();
 
- 	static DWORD	GetFunnyTickCountAdjustment();
 
- 	static DWORD	GetMinIdleTimeBeforeTrackFocus();
 
- 	static DWORD	GetTimeBeforeExpandWindow();
 
- 	static DWORD	GetUseGuiThreadInfoForFocus();
 
- 	static void		SetSearchDescription(BOOL val);
 
- 	static BOOL		GetSearchDescription();
 
- 	static void		SetSearchFullText(BOOL val);
 
- 	static BOOL		GetSearchFullText();
 
- 	static void		SetSearchQuickPaste(BOOL val);
 
- 	static BOOL		GetSearchQuickPaste();
 
- 	static void		SetSimpleTextSearch(BOOL val);
 
- 	static BOOL		GetSimpleTextSearch();
 
- 	static void		SetMoveClipsOnGlobal10(BOOL val);
 
- 	static BOOL		GetMoveClipsOnGlobal10();
 
- 	static void		SetShowScrollBar(BOOL val);
 
- 	static BOOL		GetShowScrollBar();
 
- 	static BOOL		m_showScrollBar;
 
- 	static void		SetPasteAsAdmin(BOOL val);
 
- 	static BOOL		GetPasteAsAdmin();
 
- 	static void		SetRememberDescPos(BOOL val);
 
- 	static BOOL		GetRememberDescPos();
 
- 	static void		SetSizeDescWindowToContent(BOOL val);
 
- 	static BOOL		GetSizeDescWindowToContent();
 
- 	static void		SetScaleImagesToDescWindow(BOOL val);
 
- 	static BOOL		GetScaleImagesToDescWindow();
 
- 	static void		SetDescWndPoint(CPoint point);
 
- 	static void		GetDescWndPoint(CPoint &point);
 
- 	static void		SetDescWndSize(CSize size);
 
- 	static void		GetDescWndSize(CSize &size);
 
- 	static void		SetShowInTaskBar(BOOL val);
 
- 	static BOOL		GetShowInTaskBar();
 
- 	static void		SetDiffApp(CString val);
 
- 	static CString	GetDiffApp();
 
- 	static void		SetQRCodeBorderPixels(int val);
 
- 	static int	GetQRCodeBorderPixels();
 
- 	static BOOL GetRegExTextSearch();
 
- 	static void SetRegExTextSearch(BOOL val);
 
- 	static CString GetTranslateUrl();
 
- 	static void SetNetworkReadTimeoutMS(int val);
 
- 	static int GetNetworkReadTimeoutMS();
 
- 	static void SetRequestFilesUsingIP(int val);
 
- 	static int GetRequestFilesUsingIP();
 
- 	static int ReadRandomFileInterval();
 
- 	static int ReadRandomFileIdleMin();
 
- 	static BOOL GetShowGroupsInMainList();
 
- 	static void SetShowGroupsInMainList(BOOL val);
 
- 	static void SetGroupDoubleClickTimeMS(int val);
 
- 	static int GetGroupDoubleClickTimeMS();
 
- 	static void SetSaveToGroupTimeoutMS(int val);
 
- 	static int GetSaveToGroupTimeoutMS();
 
- 	static void SetCopyReasonTimeoutMS(int val);
 
- 	static int GetCopyReasonTimeoutMS();
 
- 	static void SetWindowsResumeDelayReOpenDbMS(int val);
 
- 	static int GetWindowsResumeDelayReOpenDbMS();
 
- 	static BOOL GetShowMsgWndOnCopyToGroup();
 
- 	static void SetShowMsgWndOnCopyToGroup(BOOL val);
 
- 	static int GetActionShortCutA(DWORD action, int pos);
 
- 	static void SetActionShortCutA(int action, DWORD shortcut, int pos);
 
- 	static int GetActionShortCutB(DWORD action, int pos);
 
- 	static void SetActionShortCutB(int action, DWORD shortcut, int pos);
 
- 	static BOOL	m_bShowAlwaysOnTopWarning;
 
- 	static BOOL GetShowAlwaysOnTopWarning();
 
- 	static void SetShowAlwaysOnTopWarning(BOOL show);
 
- 	
 
- 	static BOOL GetUseIPFromAccept();
 
- 	static void SetUseIPFromAccept(BOOL useAccept);
 
- 	static int GetDragId();
 
- 	static void SetDragId(int id);
 
- 	static BOOL GetShowIfClipWasPasted();
 
- 	static void SetShowIfClipWasPasted(BOOL val);
 
- 	static int GetLastGroupToggle();
 
- 	static void SetLastGroupToggle(int val);
 
- };
 
- // global for easy access and for initialization of fast access variables
 
- extern CGetSetOptions g_Opt; 
 
 
  |