Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

84 lines
2.2 KiB

  1. class Expando: public Element
  2. {
  3. public:
  4. static HRESULT Create(OUT Element** ppElement);
  5. // Generic events
  6. virtual void OnEvent(Event* pEvent);
  7. // System events
  8. virtual void OnPropertyChanged(PropertyInfo* ppi, int iIndex, Value* pvOld, Value* pvNew);
  9. // ClassInfo accessors (static and virtual instance-based)
  10. static IClassInfo* Class;
  11. virtual IClassInfo* GetClassInfo() { return Class; }
  12. static HRESULT Register();
  13. static ATOM idTitle;
  14. static ATOM idIcon;
  15. static ATOM idTaskList;
  16. static ATOM idWatermark;
  17. void Initialize(DUISEC eDUISecID, IUIElement *puiHeader, CDUIView *pDUIView, CDefView *pDefView);
  18. void UpdateTitleUI(IShellItemArray *psiItemArray);
  19. void ShowExpando(BOOL fShow);
  20. void _SetAccStateInfo (BOOL bExpanded);
  21. Expando();
  22. virtual ~Expando();
  23. HRESULT Initialize();
  24. HRESULT ShowInfotipWindow(Element *peHeader, BOOL bShow);
  25. private:
  26. bool _fExpanding;
  27. TRIBIT _fShow;
  28. DUISEC _eDUISecID;
  29. IUIElement* _puiHeader;
  30. CDUIView* _pDUIView;
  31. CDefView* _pDefView;
  32. HWND _hwndRoot; // cache of root hwnd element's hwnd
  33. BOOL _bInfotip; // TRUE if infotip has been created
  34. };
  35. class TaskList: public Element
  36. {
  37. public:
  38. static HRESULT Create(OUT Element** ppElement);
  39. virtual Element* GetAdjacent(Element* peFrom, int iNavDir, NavReference const* pnr, bool bKeyable);
  40. // ClassInfo accessors (static and virtual instance-based)
  41. static IClassInfo* Class;
  42. virtual IClassInfo* GetClassInfo() { return Class; }
  43. static HRESULT Register();
  44. TaskList() { }
  45. virtual ~TaskList() { }
  46. HRESULT Initialize();
  47. private:
  48. };
  49. class Clipper: public Element
  50. {
  51. public:
  52. static HRESULT Create(OUT Element** ppElement);
  53. // Self-layout methods
  54. void _SelfLayoutDoLayout(int dWidth, int dHeight);
  55. SIZE _SelfLayoutUpdateDesiredSize(int dConstW, int dConstH, Surface* psrf);
  56. // ClassInfo accessors (static and virtual instance-based)
  57. static IClassInfo* Class;
  58. virtual IClassInfo* GetClassInfo() { return Class; }
  59. static HRESULT Register();
  60. Clipper() { }
  61. virtual ~Clipper() { }
  62. HRESULT Initialize();
  63. private:
  64. };