1 /***************************************************************************
3 Copyright (c) Microsoft Corporation. All rights reserved.
4 This code is licensed under the Visual Studio SDK license terms.
5 THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
6 ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
7 IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
8 PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
10 This code is a part of the Visual Studio Library.
12 ***************************************************************************/
14 #ifndef IVSLITETREEEVENTS_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5
15 #define IVSLITETREEEVENTS_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5
24 #pragma warning(disable : 4510) // default constructor could not be generated
25 #pragma warning(disable : 4610) // can never be instantiated - user defined constructor required
26 #pragma warning(disable : 4512) // assignment operator could not be generated
27 #pragma warning(disable : 6011) // Dereferencing NULL pointer (a NULL derference is just another kind of failure for a unit test
32 class IVsLiteTreeEventsNotImpl
:
33 public IVsLiteTreeEvents
36 VSL_DECLARE_NONINSTANTIABLE_BASE_CLASS(IVsLiteTreeEventsNotImpl
)
40 typedef IVsLiteTreeEvents Interface
;
42 STDMETHOD(OnToggleExpansion
)(
43 /*[in]*/ ULONG
/*AbsIndex*/,
44 /*[in]*/ long /*cChange*/)VSL_STDMETHOD_NOTIMPL
46 STDMETHOD(OnToggleState
)(
47 /*[in]*/ ULONG
/*AbsIndex*/,
48 /*[in]*/ VSTREESTATECHANGEREFRESH
/*tscr*/)VSL_STDMETHOD_NOTIMPL
50 STDMETHOD(OnRefresh
)()VSL_STDMETHOD_NOTIMPL
52 STDMETHOD(OnInsertItems
)(
53 /*[in]*/ ULONG
/*iAfter*/,
54 /*[in]*/ ULONG
/*Count*/)VSL_STDMETHOD_NOTIMPL
56 STDMETHOD(OnDeleteItems
)(
57 /*[in]*/ ULONG
/*iStart*/,
58 /*[in]*/ ULONG
/*Count*/)VSL_STDMETHOD_NOTIMPL
60 STDMETHOD(OnSetRedraw
)(
61 /*[in]*/ BOOL
/*fOn*/)VSL_STDMETHOD_NOTIMPL
63 STDMETHOD(OnQueryItemVisible
)(
64 /*[in]*/ ULONG
/*AbsIndex*/,
65 /*[out]*/ BOOL
* /*pfVisible*/)VSL_STDMETHOD_NOTIMPL
68 class IVsLiteTreeEventsMockImpl
:
69 public IVsLiteTreeEvents
,
73 VSL_DECLARE_NONINSTANTIABLE_BASE_CLASS(IVsLiteTreeEventsMockImpl
)
77 VSL_DEFINE_MOCK_CLASS_TYPDEFS(IVsLiteTreeEventsMockImpl
)
79 typedef IVsLiteTreeEvents Interface
;
80 struct OnToggleExpansionValidValues
82 /*[in]*/ ULONG AbsIndex
;
83 /*[in]*/ long cChange
;
87 STDMETHOD(OnToggleExpansion
)(
88 /*[in]*/ ULONG AbsIndex
,
89 /*[in]*/ long cChange
)
91 VSL_DEFINE_MOCK_METHOD(OnToggleExpansion
)
93 VSL_CHECK_VALIDVALUE(AbsIndex
);
95 VSL_CHECK_VALIDVALUE(cChange
);
97 VSL_RETURN_VALIDVALUES();
99 struct OnToggleStateValidValues
101 /*[in]*/ ULONG AbsIndex
;
102 /*[in]*/ VSTREESTATECHANGEREFRESH tscr
;
106 STDMETHOD(OnToggleState
)(
107 /*[in]*/ ULONG AbsIndex
,
108 /*[in]*/ VSTREESTATECHANGEREFRESH tscr
)
110 VSL_DEFINE_MOCK_METHOD(OnToggleState
)
112 VSL_CHECK_VALIDVALUE(AbsIndex
);
114 VSL_CHECK_VALIDVALUE(tscr
);
116 VSL_RETURN_VALIDVALUES();
118 struct OnRefreshValidValues
123 STDMETHOD(OnRefresh
)()
125 VSL_DEFINE_MOCK_METHOD_NOARGS(OnRefresh
)
127 VSL_RETURN_VALIDVALUES();
129 struct OnInsertItemsValidValues
131 /*[in]*/ ULONG iAfter
;
132 /*[in]*/ ULONG Count
;
136 STDMETHOD(OnInsertItems
)(
137 /*[in]*/ ULONG iAfter
,
138 /*[in]*/ ULONG Count
)
140 VSL_DEFINE_MOCK_METHOD(OnInsertItems
)
142 VSL_CHECK_VALIDVALUE(iAfter
);
144 VSL_CHECK_VALIDVALUE(Count
);
146 VSL_RETURN_VALIDVALUES();
148 struct OnDeleteItemsValidValues
150 /*[in]*/ ULONG iStart
;
151 /*[in]*/ ULONG Count
;
155 STDMETHOD(OnDeleteItems
)(
156 /*[in]*/ ULONG iStart
,
157 /*[in]*/ ULONG Count
)
159 VSL_DEFINE_MOCK_METHOD(OnDeleteItems
)
161 VSL_CHECK_VALIDVALUE(iStart
);
163 VSL_CHECK_VALIDVALUE(Count
);
165 VSL_RETURN_VALIDVALUES();
167 struct OnSetRedrawValidValues
173 STDMETHOD(OnSetRedraw
)(
176 VSL_DEFINE_MOCK_METHOD(OnSetRedraw
)
178 VSL_CHECK_VALIDVALUE(fOn
);
180 VSL_RETURN_VALIDVALUES();
182 struct OnQueryItemVisibleValidValues
184 /*[in]*/ ULONG AbsIndex
;
185 /*[out]*/ BOOL
* pfVisible
;
189 STDMETHOD(OnQueryItemVisible
)(
190 /*[in]*/ ULONG AbsIndex
,
191 /*[out]*/ BOOL
* pfVisible
)
193 VSL_DEFINE_MOCK_METHOD(OnQueryItemVisible
)
195 VSL_CHECK_VALIDVALUE(AbsIndex
);
197 VSL_SET_VALIDVALUE(pfVisible
);
199 VSL_RETURN_VALIDVALUES();
208 #endif // IVSLITETREEEVENTS_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5