OSDN Git Service

Fix error in call to GetTimeZoneInformation().
[tortoisegit/TortoiseGitJp.git] / src / Git / GitStatusListCtrl.h
index c009c2f..7fda321 100644 (file)
@@ -37,7 +37,7 @@
 #define        SVNSLC_COLDATE                          0x000000100\r
 #define        SVNSLC_COLMODIFICATIONDATE      0x000000200\r
 #define SVNSLC_COLADD                          0x000000400\r
-#define SVNSLC_COLDEL                          0x000000600\r
+#define SVNSLC_COLDEL                          0x000000800\r
 #define SVNSLC_NUMCOLUMNS                      12\r
 \r
 //#define SVNSLC_COLREMOTESTATUS               0x000000010\r
 //#define SVNSLC_COLSVNNEEDSLOCK               0x000010000\r
 //#define SVNSLC_COLCOPYFROM                   0x000020000\r
 \r
-\r
-#define SVNSLC_SHOWUNVERSIONED 0x000000001\r
-#define SVNSLC_SHOWNORMAL              0x000000002\r
-#define SVNSLC_SHOWMODIFIED            0x000000004\r
-#define SVNSLC_SHOWADDED               0x000000008\r
-#define SVNSLC_SHOWREMOVED             0x000000010\r
-#define SVNSLC_SHOWCONFLICTED  0x000000020\r
-#define SVNSLC_SHOWMISSING             0x000000040\r
-#define SVNSLC_SHOWREPLACED            0x000000080\r
-#define SVNSLC_SHOWMERGED              0x000000100\r
-#define SVNSLC_SHOWIGNORED             0x000000200\r
-#define SVNSLC_SHOWOBSTRUCTED  0x000000400\r
-#define SVNSLC_SHOWEXTERNAL            0x000000800\r
-#define SVNSLC_SHOWINCOMPLETE  0x000001000\r
-#define SVNSLC_SHOWINEXTERNALS 0x000002000\r
-#define SVNSLC_SHOWREMOVEDANDPRESENT 0x000004000\r
-#define SVNSLC_SHOWLOCKS               0x000008000\r
-#define SVNSLC_SHOWDIRECTFILES 0x000010000\r
-#define SVNSLC_SHOWDIRECTFOLDER 0x000020000\r
-#define SVNSLC_SHOWEXTERNALFROMDIFFERENTREPO 0x000040000\r
-#define SVNSLC_SHOWSWITCHED            0x000080000\r
-#define SVNSLC_SHOWINCHANGELIST 0x000100000\r
+               \r
+#define SVNSLC_SHOWUNVERSIONED CTGitPath::LOGACTIONS_UNVER\r
+#define SVNSLC_SHOWNORMAL              0x000000000\r
+#define SVNSLC_SHOWMODIFIED            CTGitPath::LOGACTIONS_MODIFIED\r
+#define SVNSLC_SHOWADDED               CTGitPath::LOGACTIONS_ADDED\r
+#define SVNSLC_SHOWREMOVED             CTGitPath::LOGACTIONS_DELETED\r
+#define SVNSLC_SHOWCONFLICTED  CTGitPath::LOGACTIONS_UNMERGED\r
+#define SVNSLC_SHOWMISSING             0x00000000\r
+#define SVNSLC_SHOWREPLACED            CTGitPath::LOGACTIONS_REPLACED\r
+#define SVNSLC_SHOWMERGED              0x00000000\r
+#define SVNSLC_SHOWIGNORED             CTGitPath::LOGACTIONS_IGNORE\r
+#define SVNSLC_SHOWOBSTRUCTED  0x00000000\r
+#define SVNSLC_SHOWEXTERNAL            0x00000000\r
+#define SVNSLC_SHOWINCOMPLETE  0x00000000\r
+#define SVNSLC_SHOWINEXTERNALS 0x00000000\r
+#define SVNSLC_SHOWREMOVEDANDPRESENT 0x00000000\r
+#define SVNSLC_SHOWLOCKS               0x00000000\r
+#define SVNSLC_SHOWDIRECTFILES 0x00000000\r
+#define SVNSLC_SHOWDIRECTFOLDER 0x00000000\r
+#define SVNSLC_SHOWEXTERNALFROMDIFFERENTREPO 0x00000000\r
+#define SVNSLC_SHOWSWITCHED            0x00000000\r
+#define SVNSLC_SHOWINCHANGELIST 0x00000000\r
 \r
 #define SVNSLC_SHOWDIRECTS             (SVNSLC_SHOWDIRECTFILES | SVNSLC_SHOWDIRECTFOLDER)\r
 \r
@@ -145,6 +145,7 @@ SVNSLC_SHOWINCOMPLETE|SVNSLC_SHOWEXTERNAL|SVNSLC_SHOWINEXTERNALS)
 typedef int (__cdecl *GENERICCOMPAREFN)(const void * elem1, const void * elem2);\r
 typedef CComCritSecLock<CComCriticalSection> Locker;\r
 \r
+class CGitStatusListCtrlDropTarget;\r
 /**\r
  * \ingroup SVN\r
  * A List control, based on the MFC CListCtrl which shows a list of\r
@@ -193,7 +194,7 @@ public:
         * Helper class for CGitStatusListCtrl which represents\r
         * the data for each file shown.\r
         */\r
-\r
+#if 0\r
        class FileEntry\r
        {\r
        public:\r
@@ -319,6 +320,7 @@ public:
                friend class CGitStatusListCtrlDropTarget;\r
         friend class CSorter;\r
        };\r
+#endif\r
        /**\r
         * \ingroup TortoiseProc\r
         * Helper class for CGitStatusListCtrl that represents\r
@@ -376,9 +378,9 @@ public:
         /// call these to update the user-prop list\r
         /// (will also auto-insert /-remove new list columns)\r
 \r
-        void UpdateUserPropList (const std::vector<FileEntry*>& files);\r
-        void UpdateRelevance ( const std::vector<FileEntry*>& files\r
-                             , const std::vector<size_t>& visibleFiles);\r
+        //void UpdateUserPropList (const std::vector<FileEntry*>& files);\r
+        //void UpdateRelevance ( const std::vector<FileEntry*>& files\r
+         //                    , const std::vector<size_t>& visibleFiles);\r
 \r
         /// don't clutter the context menu with irrelevant prop info\r
 \r
@@ -523,7 +525,7 @@ public:
         * \param dwShow mask of file types to show. Use the GitSLC_SHOWxxx defines.\r
         * \param dwCheck mask of file types to check. Use GitLC_SHOWxxx defines. Default (0) means 'use the entry's stored check status'\r
         */\r
-       void Show(DWORD dwShow, DWORD dwCheck = 0, bool bShowFolders = true);\r
+       void Show(DWORD dwShow, DWORD dwCheck = 0, bool bShowFolders = true,BOOL updateStatusList=FALSE);\r
        void Show(DWORD dwShow, const CTGitPathList& checkedList, bool bShowFolders = true);\r
 \r
        /**\r
@@ -562,13 +564,13 @@ public:
        /**\r
         * Returns the file entry data for the list control index.\r
         */\r
-       CGitStatusListCtrl::FileEntry * GetListEntry(UINT_PTR index);\r
+       //CGitStatusListCtrl::FileEntry * GetListEntry(UINT_PTR index);\r
 \r
        /**\r
         * Returns the file entry data for the specified path.\r
         * \note The entry might not be shown in the list control.\r
         */\r
-       CGitStatusListCtrl::FileEntry * GetListEntry(const CTGitPath& path);\r
+       //CGitStatusListCtrl::FileEntry * GetListEntry(const CTGitPath& path);\r
 \r
        /**\r
         * Returns the index of the list control entry with the specified path,\r
@@ -579,7 +581,7 @@ public:
        /**\r
         * Returns the file entry data for the specified path in the list control.\r
         */\r
-       CGitStatusListCtrl::FileEntry * GetVisibleListEntry(const CTGitPath& path);\r
+       //CGitStatusListCtrl::FileEntry * GetVisibleListEntry(const CTGitPath& path);\r
 \r
        /**\r
         * Returns a String containing some statistics like number of modified, normal, deleted,...\r
@@ -636,7 +638,7 @@ public:
         * if \a bStrict is set to false, then the paths passed to the control\r
         * to fetch the status (in GetStatus()) are used if possible.\r
         */\r
-       CTGitPath GetCommonDirectory(bool bStrict);\r
+       CString GetCommonDirectory(bool bStrict);\r
 \r
        /**\r
         * Returns the parent url of all entries in the control.\r
@@ -729,7 +731,7 @@ public:
 private:\r
        void SaveColumnWidths(bool bSaveToRegistry = false);\r
        void Sort();    ///< Sorts the control by columns\r
-       void AddEntry(FileEntry * entry, WORD langID, int listIndex);   ///< add an entry to the control\r
+       //void AddEntry(FileEntry * entry, WORD langID, int listIndex); ///< add an entry to the control\r
        void RemoveListEntry(int index);        ///< removes an entry from the listcontrol and both arrays\r
        bool BuildStatistics(); ///< build the statistics and correct the case of files/folders\r
        void StartDiff(int fileindex);  ///< start the external diff program\r
@@ -752,26 +754,26 @@ private:
        void ClearStatusArray();\r
 \r
        /// Sort predicate function - Compare the paths of two entries without regard to case\r
-       static bool EntryPathCompareNoCase(const FileEntry* pEntry1, const FileEntry* pEntry2);\r
+       //static bool EntryPathCompareNoCase(const FileEntry* pEntry1, const FileEntry* pEntry2);\r
 \r
        /// Predicate used to build a list of only the versioned entries of the FileEntry array\r
-       static bool IsEntryVersioned(const FileEntry* pEntry1);\r
+       //static bool IsEntryVersioned(const FileEntry* pEntry1);\r
 \r
        /// Look up the relevant show flags for a particular Git status value\r
        DWORD GetShowFlagsFromGitStatus(git_wc_status_kind status);\r
 \r
        /// Build a FileEntry item and add it to the FileEntry array\r
-       const FileEntry* AddNewFileEntry(\r
-               const git_wc_status2_t* pGitStatus,  // The return from the Git GetStatus functions\r
-               const CTGitPath& path,                          // The path of the item we're adding\r
-               const CTGitPath& basePath,                      // The base directory for this status build\r
-               bool bDirectItem,                                       // Was this item the first found by GetFirstFileStatus or by a subsequent GetNextFileStatus call\r
-               bool bInExternal,                                       // Are we in an 'external' folder\r
-               bool bEntryfromDifferentRepo            // if the entry is from a different repository\r
-               );\r
+       //const FileEntry* AddNewFileEntry(\r
+       //      const git_wc_status2_t* pGitStatus,  // The return from the Git GetStatus functions\r
+       //      const CTGitPath& path,                          // The path of the item we're adding\r
+       //      const CTGitPath& basePath,                      // The base directory for this status build\r
+       //      bool bDirectItem,                                       // Was this item the first found by GetFirstFileStatus or by a subsequent GetNextFileStatus call\r
+       //      bool bInExternal,                                       // Are we in an 'external' folder\r
+       //      bool bEntryfromDifferentRepo            // if the entry is from a different repository\r
+       //      );\r
 \r
        /// Adjust the checkbox-state on all descendants of a specific item\r
-       void SetCheckOnAllDescendentsOf(const FileEntry* parentEntry, bool bCheck);\r
+       //void SetCheckOnAllDescendentsOf(const FileEntry* parentEntry, bool bCheck);\r
 \r
        /// Build a path list of all the selected items in the list (NOTE - SELECTED, not CHECKED)\r
        void FillListOfSelectedItemPaths(CTGitPathList& pathList, bool bNoIgnored = false);\r
@@ -913,7 +915,7 @@ public:
 \r
        void AddEntry(CTGitPath* path, WORD langID, int ListIndex);\r
        int m_FileLoaded;\r
-\r
+       git_revnum_t m_CurrentVersion;\r
 public:\r
        CXPTheme        m_Theme;\r
 };\r