#ifndef WINCVS_WINUTIL_H
#define WINCVS_WINUTIL_H

CWnd* FindNextWindow(CWnd* pWnd, BOOL CheckTabStop = TRUE);
CWnd* FindPrevWindow(CWnd* pWnd, BOOL CheckTabStop = TRUE);

CMenu* GetSubCMenu(int nStartId, CView* pThis);
	// return the menu which has the cmd nStartId

CMenu* GetMenuEntry(int nStartId, int & pos);
	// return the menu and position of a cmd

enum
{
	kCustomBrowserMenu,
	kCustomFilesMenu
};

CMenu* GetCustomMenu(int whichmenu, CView* pThis);
	// return the custom menu

void CustomizeMenus(int whichmenu);
	// ask to customize the menus

bool FormatMenuString(int cmd, CString& str);
	// get the string for the command
	// return TRUE if string found for the command (str contains the resulting string)

///CWndRedrawManager supports efficient drawing of CWnd based windows, 
class CWndRedrawMngr
{
private:
	CWnd* m_pWnd;
public:
	CWndRedrawMngr(CWnd* pWnd, BOOL bRedraw = FALSE);
	virtual ~CWndRedrawMngr();
	
	void SetRedraw(BOOL bRedraw);
};

#endif	/*WINCVS_WINUTIL_H*/
