X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=src%2FTortoiseProc%2FLogDlg.h;h=742d2548aefa6dd798f3bdfe149d7e3c0ae0b6b7;hb=cee8f2846000ff5518daea034c212d3c0039add8;hp=f63c2cba681068cdbaec95e13ca71775a79d3bdb;hpb=24cde96897bb08f22b0763bd5ddbf960407c6359;p=tortoisegit%2FTortoiseGitJp.git diff --git a/src/TortoiseProc/LogDlg.h b/src/TortoiseProc/LogDlg.h index f63c2cb..742d254 100644 --- a/src/TortoiseProc/LogDlg.h +++ b/src/TortoiseProc/LogDlg.h @@ -35,6 +35,8 @@ #include #include "GitLogList.h" #include "GitStatusListCtrl.h" +#include "HyperLink.h" + using namespace std; @@ -43,14 +45,6 @@ using namespace std; #define MERGE_REVSELECTSTARTEND 3 ///< both #define MERGE_REVSELECTMINUSONE 4 ///< first with N-1 -#define LOGFILTER_ALL 1 -#define LOGFILTER_MESSAGES 2 -#define LOGFILTER_PATHS 3 -#define LOGFILTER_AUTHORS 4 -#define LOGFILTER_REVS 5 -#define LOGFILTER_REGEX 6 -#define LOGFILTER_BUGID 7 - #define LOGFILTER_TIMER 101 @@ -89,15 +83,22 @@ public: FILELIST_PATH }; - void SetParams(const CTGitPath& path, GitRev pegrev, GitRev startrev, GitRev endrev, int limit, - BOOL bStrict = CRegDWORD(_T("Software\\TortoiseGit\\LastLogStrict"), FALSE), BOOL bSaveStrict = TRUE); + void SetParams(const CTGitPath& path, GitRev pegrev, GitRev startrev, GitRev endrev, int limit); void SetIncludeMerge(bool bInclude = true) {m_bIncludeMerges = bInclude;} void SetProjectPropertiesPath(const CTGitPath& path) {m_ProjectProperties.ReadProps(path);} bool IsThreadRunning() {return !!m_LogList.m_bThreadRunning;} void SetDialogTitle(const CString& sTitle) {m_sTitle = sTitle;} void SetSelect(bool bSelect) {m_bSelect = bSelect;} void ContinuousSelection(bool bCont = true) {m_bSelectionMustBeContinuous = bCont;} + void SingleSelection(bool bSingle = true) {m_bSelectionMustBeSingle = bSingle;} void SetMergePath(const CTGitPath& mergepath) {m_mergePath = mergepath;} + void SetStartRef(const CString& StartRef); + void ShowStartRef(); + /** + * Provides selected commit hash if available, call after OK return from here + * Empty if none + **/ + CString GetSelectedHash(){ return m_sSelectedHash; } // const GitRevRangeArray& GetSelectedRevRanges() {return m_selectedRevs;} @@ -115,6 +116,8 @@ protected: afx_msg LRESULT OnFindDialogMessage(WPARAM wParam, LPARAM lParam); afx_msg LRESULT OnClickedInfoIcon(WPARAM wParam, LPARAM lParam); afx_msg LRESULT OnClickedCancelFilter(WPARAM wParam, LPARAM lParam); + afx_msg LRESULT OnLogListLoading(WPARAM wParam, LPARAM lParam); + afx_msg BOOL OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message); afx_msg void OnContextMenu(CWnd* pWnd, CPoint point); afx_msg void OnBnClickedGetall(); @@ -133,14 +136,16 @@ protected: afx_msg void OnDtnDatetimechangeDatefrom(NMHDR *pNMHDR, LRESULT *pResult); afx_msg void OnLvnColumnclick(NMHDR *pNMHDR, LRESULT *pResult); afx_msg void OnLvnColumnclickChangedFileList(NMHDR *pNMHDR, LRESULT *pResult); - afx_msg void OnBnClickedNexthundred(); + afx_msg void OnBnClickShowWholeProject(); afx_msg void OnBnClickedHidepaths(); + afx_msg void OnBnClickedAllBranch(); + afx_msg void OnBnClickedBrowseRef(); afx_msg void OnBnClickedCheckStoponcopy(); afx_msg void OnDtnDropdownDatefrom(NMHDR *pNMHDR, LRESULT *pResult); afx_msg void OnDtnDropdownDateto(NMHDR *pNMHDR, LRESULT *pResult); afx_msg void OnSize(UINT nType, int cx, int cy); - afx_msg void OnBnClickedIncludemerge(); + afx_msg void OnBnClickedFirstParent(); afx_msg void OnBnClickedRefresh(); afx_msg void OnRefresh(); afx_msg void OnFind(); @@ -150,7 +155,7 @@ protected: virtual void OnCancel(); virtual void OnOK(); virtual BOOL OnInitDialog(); - //virtual BOOL PreTranslateMessage(MSG* pMsg); + virtual BOOL PreTranslateMessage(MSG* pMsg); void FillLogMessageCtrl(bool bShow = true); void DoDiffFromLog(INT_PTR selIndex, GitRev *rev1, GitRev *rev2, bool blame, bool unified); @@ -173,17 +178,17 @@ private: void AdjustMinSize(); void SetSplitterRange(); void SetFilterCueText(); - BOOL IsEntryInDateRange(int i); + void CopySelectionToClipBoard(); void CopyChangedSelectionToClipBoard(); CTGitPathList GetChangedPathsFromSelectedRevisions(bool bRelativePaths = false, bool bUseFilter = true); void SortShownListArray(); - void RecalculateShownList(CPtrArray * pShownlist); + void SetSortArrow(CListCtrl * control, int nColumn, bool bAscending); void SortByColumn(int nSortColumn, bool bAscending); void EnableOKButton(); - void GetAll(bool bForceAll = false); + void GetAll(bool bIsShowProjectOrBranch = false); void UpdateLogInfoLabel(); void SaveSplitterPos(); bool ValidateRegexp(LPCTSTR regexp_str, tr1::wregex& pat, bool bMatchCase); @@ -204,8 +209,6 @@ private: virtual LRESULT DefWindowProc(UINT message, WPARAM wParam, LPARAM lParam); static int __cdecl SortCompare(const void * pElem1, const void * pElem2); ///< sort callback function - void ResizeAllListCtrlCols(); - void ShowContextMenuForRevisions(CWnd* pWnd, CPoint point); void ShowContextMenuForChangedpaths(CWnd* pWnd, CPoint point); public: @@ -220,13 +223,12 @@ private: CString m_sURL; CString m_sUUID; ///< empty if the log cache is not used CGitLogList m_LogList; - //CListCtrl m_ChangedFileListCtrl; - CGitStatusListCtrl m_ChangedFileListCtrl; - CFilterEdit m_cFilter; + CHyperLink m_staticRef; CProgressCtrl m_LogProgress; CMenuButton m_btnShow; + CMenuButton m_btnShowWholeProject; CTGitPath m_path; CTGitPath m_mergePath; GitRev m_pegrev; @@ -236,15 +238,18 @@ private: //GitRev m_wcRev; // GitRevRangeArray m_selectedRevs; // GitRevRangeArray m_selectedRevsOneRange; + CString m_sSelectedHash; // set to selected commit hash on OK if appropriate bool m_bSelectionMustBeContinuous; + bool m_bSelectionMustBeSingle; long m_logcounter; bool m_bCancelled; - BOOL m_bStrict; - BOOL m_bIncludeMerges; + BOOL m_bFirstParent; + BOOL m_bAllBranch; + BOOL m_bWholeProject; + git_revnum_t m_lowestRev; - BOOL m_bSaveStrict; CTGitPathList * m_currentChangedArray; LogChangedPathArray m_CurrentFilteredChangedArray; CTGitPathList m_currentChangedPathList; @@ -262,20 +267,17 @@ private: CRect m_MsgViewOrigRect; CRect m_LogListOrigRect; CRect m_ChgOrigRect; - CString m_sFilterText; - int m_nSelectedFilter; +// CString m_sFilterText; + //volatile LONG m_bNoDispUpdates; CDateTimeCtrl m_DateFrom; CDateTimeCtrl m_DateTo; - DWORD m_tFrom; - DWORD m_tTo; int m_limit; int m_limitcounter; int m_nSortColumn; bool m_bAscending; static int m_nSortColumnPathList; static bool m_bAscendingPathList; - CRegDWORD m_regLastStrict; //CRegDWORD m_regMaxBugIDColWidth; CButton m_cHidePaths; bool m_bShowedAll; @@ -287,8 +289,6 @@ private: CToolTips m_tooltips; - CTime m_timFrom; - CTime m_timTo; CColors m_Colors; CImageList m_imgList; #if 0