|
|
@@ -19,8 +19,9 @@ struct IAvnGlContext;
|
|
|
struct IAvnGlDisplay;
|
|
|
struct IAvnGlSurfaceRenderTarget;
|
|
|
struct IAvnGlSurfaceRenderingSession;
|
|
|
-struct IAvnAppMenu;
|
|
|
-struct IAvnAppMenuItem;
|
|
|
+struct IAvnMenu;
|
|
|
+struct IAvnMenuItem;
|
|
|
+struct IAvnMenuEvents;
|
|
|
|
|
|
enum SystemDecorations {
|
|
|
SystemDecorationsNone = 0,
|
|
|
@@ -188,11 +189,11 @@ public:
|
|
|
virtual HRESULT CreateClipboard(IAvnClipboard** ppv) = 0;
|
|
|
virtual HRESULT CreateCursorFactory(IAvnCursorFactory** ppv) = 0;
|
|
|
virtual HRESULT ObtainGlDisplay(IAvnGlDisplay** ppv) = 0;
|
|
|
- virtual HRESULT ObtainAppMenu(IAvnAppMenu** retOut) = 0;
|
|
|
- virtual HRESULT SetAppMenu(IAvnAppMenu* menu) = 0;
|
|
|
- virtual HRESULT CreateMenu (IAvnAppMenu** ppv) = 0;
|
|
|
- virtual HRESULT CreateMenuItem (IAvnAppMenuItem** ppv) = 0;
|
|
|
- virtual HRESULT CreateMenuItemSeperator (IAvnAppMenuItem** ppv) = 0;
|
|
|
+ virtual HRESULT ObtainAppMenu(IAvnMenu** retOut) = 0;
|
|
|
+ virtual HRESULT SetAppMenu(IAvnMenu* menu) = 0;
|
|
|
+ virtual HRESULT CreateMenu (IAvnMenuEvents* cb, IAvnMenu** ppv) = 0;
|
|
|
+ virtual HRESULT CreateMenuItem (IAvnMenuItem** ppv) = 0;
|
|
|
+ virtual HRESULT CreateMenuItemSeperator (IAvnMenuItem** ppv) = 0;
|
|
|
};
|
|
|
|
|
|
AVNCOM(IAvnString, 17) : IUnknown
|
|
|
@@ -222,8 +223,8 @@ AVNCOM(IAvnWindowBase, 02) : IUnknown
|
|
|
virtual HRESULT SetTopMost (bool value) = 0;
|
|
|
virtual HRESULT SetCursor(IAvnCursor* cursor) = 0;
|
|
|
virtual HRESULT CreateGlRenderTarget(IAvnGlSurfaceRenderTarget** ret) = 0;
|
|
|
- virtual HRESULT SetMainMenu(IAvnAppMenu* menu) = 0;
|
|
|
- virtual HRESULT ObtainMainMenu(IAvnAppMenu** retOut) = 0;
|
|
|
+ virtual HRESULT SetMainMenu(IAvnMenu* menu) = 0;
|
|
|
+ virtual HRESULT ObtainMainMenu(IAvnMenu** retOut) = 0;
|
|
|
virtual HRESULT ObtainNSWindowHandle(void** retOut) = 0;
|
|
|
virtual HRESULT ObtainNSWindowHandleRetained(void** retOut) = 0;
|
|
|
virtual HRESULT ObtainNSViewHandle(void** retOut) = 0;
|
|
|
@@ -388,10 +389,10 @@ AVNCOM(IAvnGlSurfaceRenderingSession, 16) : IUnknown
|
|
|
virtual HRESULT GetScaling(double* ret) = 0;
|
|
|
};
|
|
|
|
|
|
-AVNCOM(IAvnAppMenu, 17) : IUnknown
|
|
|
+AVNCOM(IAvnMenu, 17) : IUnknown
|
|
|
{
|
|
|
- virtual HRESULT InsertItem (int index, IAvnAppMenuItem* item) = 0;
|
|
|
- virtual HRESULT RemoveItem (IAvnAppMenuItem* item) = 0;
|
|
|
+ virtual HRESULT InsertItem (int index, IAvnMenuItem* item) = 0;
|
|
|
+ virtual HRESULT RemoveItem (IAvnMenuItem* item) = 0;
|
|
|
virtual HRESULT SetTitle (void* utf8String) = 0;
|
|
|
virtual HRESULT Clear () = 0;
|
|
|
};
|
|
|
@@ -401,13 +402,21 @@ AVNCOM(IAvnPredicateCallback, 18) : IUnknown
|
|
|
virtual bool Evaluate() = 0;
|
|
|
};
|
|
|
|
|
|
-AVNCOM(IAvnAppMenuItem, 19) : IUnknown
|
|
|
+AVNCOM(IAvnMenuItem, 19) : IUnknown
|
|
|
{
|
|
|
- virtual HRESULT SetSubMenu (IAvnAppMenu* menu) = 0;
|
|
|
+ virtual HRESULT SetSubMenu (IAvnMenu* menu) = 0;
|
|
|
virtual HRESULT SetTitle (void* utf8String) = 0;
|
|
|
virtual HRESULT SetGesture (void* utf8String, AvnInputModifiers modifiers) = 0;
|
|
|
virtual HRESULT SetAction (IAvnPredicateCallback* predicate, IAvnActionCallback* callback) = 0;
|
|
|
virtual HRESULT SetIsChecked (bool isChecked) = 0;
|
|
|
};
|
|
|
|
|
|
+AVNCOM(IAvnMenuEvents, 1A) : IUnknown
|
|
|
+{
|
|
|
+ /**
|
|
|
+ * NeedsUpdate
|
|
|
+ */
|
|
|
+ virtual bool NeedUpdate () = 0;
|
|
|
+};
|
|
|
+
|
|
|
extern "C" IAvaloniaNativeFactory* CreateAvaloniaNative();
|