GME  13
InPlaceManager.h
Go to the documentation of this file.
00001 // InPlaceManager.h: interface for the CInPlaceManager class.
00002 //
00004 
00005 #if !defined(AFX_INPLACEMANAGER_H__35788679_EF59_416E_8C00_D294B83FBA07__INCLUDED_)
00006 #define AFX_INPLACEMANAGER_H__35788679_EF59_416E_8C00_D294B83FBA07__INCLUDED_
00007 
00008 #if _MSC_VER > 1000
00009 #pragma once
00010 #endif // _MSC_VER > 1000
00011 
00012 #include "ArrowButton.h"
00013 #include "HooverListbox.h"
00014 #include "InPlaceEdit.h"
00015 
00016 class CInspectorList;
00017 class CInPlaceManager
00018 {
00019 public:
00020         void OnEditEnd();
00021 
00022         bool OnRightItemClick(int nIndex,CRect rectInPlace);
00023         void OnEditSingleLineEnd();
00024         void OnEditMultiLineEnd();
00025         void OnClickArrowButton(bool rightSideClick);
00026         void OnClickEditorButton();
00027 
00028         void ShowInPlace(CRect rectInPlace, int nIndex);
00029         void HideAllInPlace();
00030 
00031 
00032         CInPlaceManager(CInspectorList* pInspectorList);
00033         virtual ~CInPlaceManager();
00034         CInspectorList *m_pInspectorList;
00035 
00036         CArrowButton m_ArrowButton;
00037         CButton m_EditorButton;
00038         CInPlaceEdit m_SingleEditCtrl;
00039         CInPlaceEdit m_MultiEditCtrl;
00040         int  m_nLastSelEditIndex;
00041 
00042 private:
00043         void DisplayCombo(CRect rectBound);
00044         void DisplayCompassCheck(CRect rectBound);
00045         void DisplayCompassOpt(CRect rectBound);
00046         int  m_nCurrentIndex;
00047 
00048         void DisplayArrowButton(CRect rectBound);
00049         void DisplayEditorButton(CRect rectBound);
00050         void DisplayMultilineEdit(CRect rectBound, bool readOnly);
00051         void DisplaySingleLineEdit(CRect rectBound, bool readOnly);
00052         void DisplayColorCombo(CRect rectBound, bool rightSideClick);
00053 
00054         void HideArrowButton();
00055         void HideEditorButton();
00056         void HideEdit();
00057 
00058         static bool findInfoInMimeDB( const CString& pContentType, CString& pPrefApp, CString& pExtension);
00059         //implemented, but not used
00060         //static bool findCommand( const CString& pExtension, CString& pEditCommand);
00061 
00062 
00063 };
00064 
00065 #endif // !defined(AFX_INPLACEMANAGER_H__35788679_EF59_416E_8C00_D294B83FBA07__INCLUDED_)