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