OSDN Git Service

Use new method to update log So the user don't wait for log full log
[tortoisegit/TortoiseGitJp.git] / src / Git / GitRev.h
index bc9b0fb..3070c8a 100644 (file)
@@ -18,7 +18,7 @@ typedef std::vector<git_revnum_t> GIT_REV_LIST;
 #define LOG_REV_ITEM_BEGIN             _T('B')\r
 #define LOG_REV_ITEM_END               _T('C')\r
 \r
-\r
+class CGit;\r
 \r
 class GitRev\r
 {\r
@@ -27,6 +27,7 @@ public:
 //     GitRev(GitRev &rev);\r
 //     GitRev &operator=(GitRev &rev);\r
        ~GitRev(void);\r
+       \r
        enum\r
        {\r
                REV_HEAD = -1,                  ///< head revision\r
@@ -34,8 +35,12 @@ public:
                REV_WC = -3,                    ///< revision of the working copy\r
                REV_UNSPECIFIED = -4,   ///< unspecified revision\r
        };\r
+       \r
+       int CopyFrom(GitRev &rev);\r
+\r
        static CString GetHead(){return CString(_T("HEAD"));};\r
        static CString GetWorkingCopy(){return CString(GIT_REV_ZERO);};\r
+       \r
        CString m_AuthorName;\r
        CString m_AuthorEmail;\r
        CTime   m_AuthorDate;\r
@@ -47,12 +52,18 @@ public:
        git_revnum_t m_CommitHash;\r
        GIT_REV_LIST m_ParentHash;\r
        CTGitPathList m_Files;\r
-       void Clear();\r
        int     m_Action;\r
+       \r
+       void Clear();\r
        int ParserFromLog(CString &log);\r
        CTime ConverFromString(CString input);\r
        inline int ParentsCount(){return m_ParentHash.size();}\r
        \r
        //Show version tree Graphic\r
        std::vector<int> m_Lanes;\r
+\r
+       volatile LONG m_IsFull;\r
+       volatile LONG m_IsUpdateing;\r
+       \r
+       int SafeFetchFullInfo(CGit *git);\r
 };\r