OSDN Git Service

Update TortoiseUDiff to version 16491
[tortoisegit/TortoiseGitJp.git] / src / Utils / ACEdit.h
1 #if !defined(AFX_ACEDIT_H__56D21C13_ECEA_41DF_AADF_55980E861AC2__INCLUDED_)\r
2 #define AFX_ACEDIT_H__56D21C13_ECEA_41DF_AADF_55980E861AC2__INCLUDED_\r
3 \r
4 #if _MSC_VER > 1000\r
5 #pragma once\r
6 #endif // _MSC_VER > 1000\r
7 // ACEdit.h : Header-Datei\r
8 //\r
9 \r
10 /*********************************************************************\r
11 *\r
12 * CACEdit\r
13 * Copyright (c) 2003 by Andreas Kapust\r
14 * All rights reserved.\r
15 * info@akinstaller.de\r
16 *\r
17 *********************************************************************/\r
18 \r
19 \r
20 #define _MODE_ONLY_FILES                (1L << 16)\r
21 #define _MODE_ONLY_DIRS                 (1L << 17)\r
22 \r
23 #define _MODE_STANDARD_                 (1L << 0)\r
24 #define _MODE_SEPARATION_               (1L << 1)\r
25 #define _MODE_FILESYSTEM_               (1L << 2)\r
26 #define _MODE_FS_START_DIR_             (1L << 3)\r
27 #define _MODE_CURSOR_O_LIST_    (1L << 4)\r
28 #define _MODE_FIND_ALL_                 (1L << 5)\r
29 \r
30 #define _MODE_FS_ONLY_FILE_     (_MODE_FILESYSTEM_|_MODE_ONLY_FILES)\r
31 #define _MODE_FS_ONLY_DIR_      (_MODE_FILESYSTEM_|_MODE_ONLY_DIRS)\r
32 #define _MODE_SD_ONLY_FILE_     (_MODE_FS_START_DIR_|_MODE_ONLY_FILES)\r
33 #define _MODE_SD_ONLY_DIR_      (_MODE_FS_START_DIR_|_MODE_ONLY_DIRS)  //Fix 1.2\r
34 \r
35 /////////////////////////////////////////////////////////////////////////////\r
36 // Fenster CACEdit \r
37 #include "ACListWnd.h"\r
38 \r
39 \r
40 class CACEdit : public CWnd //CEdit\r
41 {\r
42         // Konstruktion\r
43 public:\r
44         CACEdit();\r
45         void SetMode(int iMode=_MODE_STANDARD_);\r
46         void SetSeparator(LPCTSTR lpszString,TCHAR lpszPrefixChar = 0)\r
47         {\r
48                 m_SeparationStr = lpszString;\r
49                 m_Liste.m_PrefixChar = m_PrefixChar = lpszPrefixChar;\r
50                 SetMode(_MODE_SEPARATION_);\r
51         }\r
52 \r
53         // CComboBox\r
54         int AddString( LPCTSTR lpszString);\r
55         int GetLBText( int nIndex, LPTSTR lpszText );\r
56         void GetLBText( int nIndex, CString& rString );\r
57         int SetDroppedWidth(UINT nWidth);\r
58         int FindString( int nStartAfter, LPCTSTR lpszString );\r
59         int SelectString( int nStartAfter, LPCTSTR lpszString );\r
60         void ShowDropDown(BOOL bShowIt = TRUE );\r
61         void ResetContent();\r
62         int GetCurSel();\r
63         // Attribute\r
64 public:\r
65         void Init();\r
66         void AddSearchString(LPCTSTR lpszString);\r
67         void AddSearchStrings(LPCTSTR Strings[]);\r
68         void RemoveSearchAll();\r
69         void SetStartDirectory(LPCTSTR lpszString);\r
70         // Operationen\r
71 public:\r
72 \r
73         // Überschreibungen\r
74         // Vom Klassen-Assistenten generierte virtuelle Funktionsüberschreibungen\r
75         //{{AFX_VIRTUAL(CACEdit)\r
76 public:\r
77         virtual BOOL PreTranslateMessage(MSG* pMsg);\r
78         //}}AFX_VIRTUAL\r
79 \r
80         // Implementierung\r
81 public:\r
82         virtual ~CACEdit();\r
83         CACListWnd m_Liste;\r
84         // Generierte Nachrichtenzuordnungsfunktionen\r
85 protected:\r
86         CString m_EditText, m_SeparationStr,m_LastDirectory;\r
87         TCHAR m_PrefixChar;\r
88         int m_iMode;\r
89         //{{AFX_MSG(CACEdit)\r
90         afx_msg void OnKillfocus();\r
91         afx_msg void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);\r
92         afx_msg void OnChange();\r
93         afx_msg void OnCloseList();\r
94         //}}AFX_MSG\r
95         \r
96         afx_msg LRESULT OnUpdateFromList(WPARAM lParam, LPARAM wParam);\r
97         DECLARE_MESSAGE_MAP()\r
98 \r
99 \r
100         void ReadDirectory(CString m_Dir);\r
101         int FindSepLeftPos(int pos, bool FindSepLeftPos = false);\r
102         int FindSepLeftPos2(int pos);\r
103         int FindSepRightPos(int pos);\r
104         bool HandleKey(UINT nChar, bool m_bFromChild);\r
105 \r
106         bool m_CursorMode;\r
107         int m_iType;\r
108         CEdit *m_pEdit;\r
109 \r
110         TCHAR m_szDrive[_MAX_DRIVE], m_szDir[_MAX_DIR],m_szFname[_MAX_FNAME], m_szExt[_MAX_EXT];\r
111 };\r
112 \r
113 /////////////////////////////////////////////////////////////////////////////\r
114 \r
115 //{{AFX_INSERT_LOCATION}}\r
116 // Microsoft Visual C++ fügt unmittelbar vor der vorhergehenden Zeile zusätzliche Deklarationen ein.\r
117 \r
118 #endif // AFX_ACEDIT_H__56D21C13_ECEA_41DF_AADF_55980E861AC2__INCLUDED_\r