Definitions: Mono 1.9 Date Submitted: 9/25/2008 11:17:18 AM Comments: This would be sweet to have compatibility with Developer Express (http://www.devexpress.com) tools as I use them all the time in my project. They might also like to see this type of compatibility so they can ship more of their tools to Mono guys. ========================================= Pending issues: 1 [TODO] System.Windows.Forms.Cursor::set_Current(System.Windows.Forms.Cursor) Details: Implement setting a null cursor, and add XplatUI method to get current cursor 1 [TODO] System.Windows.Forms.Cursor::get_Current() Details: Implement setting a null cursor, and add XplatUI method to get current cursor 1 [TODO] System.Drawing.Graphics::ReleaseHdcInternal(System.IntPtr) Details: Can only be used when hdc was provided by Graphics.GetHdc() method 1 [TODO] System.Drawing.Graphics::set_PixelOffsetMode(System.Drawing.Drawing2D.PixelOffsetMode) Details: This property does not do anything when used with libgdiplus. 5 [NIEX] System.ComponentModel.TypeDescriptor::GetReflectionType(System.Object) Details: 1 [TODO] System.Windows.Forms.Cursor::get_HotSpot() Details: Implemented for Win32, X11 always returns 0,0 5 [NIEX] System.Windows.Forms.PropertyGrid::ShowEventsButton(System.Boolean) Details: 5 [NIEX] System.Diagnostics.PerformanceCounterCategory::Delete(System.String) Details: 5 [NIEX] System.Diagnostics.PerformanceCounter::set_RawValue(System.Int64) Details: 5 [NIEX] System.Diagnostics.PerformanceCounter::RemoveInstance() Details: 5 [NIEX] System.Drawing.Graphics::GetHalftonePalette() Details: 5 [NIEX] System.Diagnostics.PerformanceCounter::IncrementBy(System.Int64) Details: 5 [NIEX] System.Diagnostics.PerformanceCounter::Increment() Details: 5 [NIEX] System.Diagnostics.PerformanceCounterCategory::Create(System.String,System.String,System.Diagnostics.PerformanceCounterCategoryType,System.Diagnostics.CounterCreationDataCollection) Details: 5 [NIEX] System.Diagnostics.PerformanceCounterCategory::Exists(System.String) Details: 5 [NIEX] System.Diagnostics.PerformanceCounterCategory::CounterExists(System.String,System.String) Details: 2 [MISS] System.Windows.Forms.Binding::get_DataSourceUpdateMode() 2 [MISS] System.Windows.Forms.ControlBindingsCollection::Add(System.String,System.Object,System.String,System.Boolean,System.Windows.Forms.DataSourceUpdateMode,System.Object,System.String,System.IFormatProvider) 1 [TODO] System.Windows.Forms.TextBoxBase::Undo() Details: Deleting is classed as Typing, instead of its own Undo event 1 [TODO] System.Diagnostics.PerformanceCounter::set_InstanceLifetime(System.Diagnostics.PerformanceCounterInstanceLifetime) Details: 1 [TODO] System.ComponentModel.PropertyDescriptor::FillAttributes(System.Collections.IList) Details: 1 [TODO] System.CodeDom.CodeTypeReference::.ctor(System.String) Details: We should parse basetype from right to left in 2.0 profile. 2 [MISS] System.Windows.Forms.Binding::get_FormatString() 4 [NIEX] System.Windows.Forms.BindingSource::get_SyncRoot() 2 [MISS] System.Windows.Forms.Binding::get_NullValue() 1 [TODO] System.Diagnostics.Process::get_WorkingSet64() Details: 2 [MISS] System.Windows.Forms.Binding::get_FormatInfo() 1 [TODO] System.Drawing.Graphics::get_PixelOffsetMode() Details: This property does not do anything when used with libgdiplus. 4 [NIEX] System.Windows.Forms.BindingManagerBase::GetItemProperties() 1 [TODO] System.Windows.Forms.Control::get_IsMirrored() Details: RTL is not supported 2 [MISS] System.Windows.Forms.Binding::get_FormattingEnabled() **************************************************** P/Invokes made by this program Library: comctl32.dll bool _TrackMouseEvent(NativeMethods/TRACKMOUSEEVENT) Library: dwmapi.dll int DwmDefWindowProc(IntPtr, int, IntPtr, IntPtr, IntPtr&) void DwmExtendFrameIntoClientArea(IntPtr, NativeMethods/Margins&) void DwmIsCompositionEnabled(Boolean&) Library: gdi32 int GetEnhMetaFileBits(int, int, Byte[]) int GetMetaFileBitsEx(int, int, Byte[]) Library: gdi32.dll bool DeleteDC(HandleRef) bool DeleteDC(IntPtr) bool DeleteEnhMetaFile(IntPtr) bool DeleteObject(HandleRef) bool DeleteObject(IntPtr) bool GetCharABCWidths(IntPtr, uint, uint, Win32Util/ABC[]) bool GetCharWidth(IntPtr, uint, uint, Int32[]) bool GetTextMetrics(IntPtr, Win32Util/TEXTMETRIC&) bool GetViewportOrgEx(IntPtr, NativeMethods/POINT&) bool PatBlt(HandleRef, int, int, int, int, int) bool Rectangle(HandleRef, int, int, int, int) bool SetViewportExtEx(IntPtr, int, int, Win32Util/SIZE&) bool SetViewportOrgEx(IntPtr, int, int, Win32/SIZE) bool SetWindowExtEx(IntPtr, int, int, Win32Util/SIZE&) int BitBlt(HandleRef, int, int, int, int, HandleRef, int, int, int) int BitBlt(IntPtr, int, int, int, int, IntPtr, int, int, int) int ExtTextOut(IntPtr, int, int, int, Win32Util/RECT&, string, int, Int32[]) int GetDeviceCaps(IntPtr, int) int GetDIBits(HandleRef, HandleRef, int, int, IntPtr, NativeMethods/BITMAPINFO_FLAT&, int) int GetMapMode(IntPtr) int GetObject(IntPtr, int, ControlUtils/LOGFONT) int GetPaletteEntries(IntPtr, int, int, Byte[]) int GetTextColor(IntPtr) int SetBkColor(HandleRef, int) int SetBkColor(IntPtr, int) int SetBkMode(IntPtr, int) int SetMapMode(IntPtr, int) int SetROP2(HandleRef, int) int SetTextColor(IntPtr, int) IntPtr CreateCompatibleBitmap(HandleRef, int, int) IntPtr CreateCompatibleDC(HandleRef) IntPtr CreateCompatibleDC(IntPtr) IntPtr CreateDIBSection(HandleRef, NativeMethods/BITMAPINFO_FLAT&, int, IntPtr&, IntPtr, int) IntPtr CreateDIBSection(IntPtr, NativeMethods/BITMAPINFO_SMALL&, int, int, IntPtr, int) IntPtr CreateFont(int, int, int, int, int, int, int, int, int, int, int, int, int, string) IntPtr CreatePen(int, int, int) IntPtr CreateRoundRectRgn(int, int, int, int, int, int) IntPtr CreateSolidBrush(int) IntPtr DeleteObject(IntPtr) IntPtr GetStockObject(int) IntPtr IntCreateSolidBrush(uint) IntPtr SelectObject(HandleRef, HandleRef) IntPtr SelectObject(IntPtr, IntPtr) uint GetOutlineTextMetrics(IntPtr, uint, IntPtr) Library: Gdi32.dll int GetKerningPairs(IntPtr, int, Win32Util/KerningPair[]) Library: GDI32.dll bool DeleteObject(IntPtr) bool FillRgn(IntPtr, IntPtr, IntPtr) bool PatBlt(IntPtr, int, int, int, int, int) int CombineRgn(IntPtr, IntPtr, IntPtr, int) int ExcludeClipRect(IntPtr, int, int, int, int) int ExtSelectClipRgn(IntPtr, IntPtr, int) int GetClipRgn(IntPtr, IntPtr) int RestoreDC(IntPtr, int) int SaveDC(IntPtr) int SelectClipRgn(IntPtr, IntPtr) IntPtr CreateBitmap(int, int, int, int, Int16[]) IntPtr CreateBrushIndirect(SplitterLineHelper/LOGBRUSH) IntPtr CreateRectRgn(int, int, int, int) IntPtr CreateSolidBrush(int) IntPtr GetStockObject(int) IntPtr SelectObject(IntPtr, IntPtr) Library: gdiplus.dll uint GdipEmfToWmfBits(IntPtr, uint, Byte[], int, PSConvert/EmfToWmfBitsFlags) Library: kernel32.dll int GetCurrentThreadId() int GetLocaleInfo(int, int, string, int) Library: KERNEL32.dll void OutputDebugString(string) Library: SHELL32 int SHAppBarMessage(int, Taskbar/APPBARDATA&) Library: User32 void NotifyWinEvent(int, IntPtr, int, int) Library: user32.dll bool AdjustWindowRectEx(NativeMethods/RECT&, int, bool, int) bool EndPaint(IntPtr, NativeVista/PAINTSTRUCT&) bool HideCaret(IntPtr) bool MessageBeep(int) bool ScrollWindowEx(IntPtr, int, int, IntPtr, NativeMethods/RECT&, IntPtr, NativeMethods/RECT&, int) bool SetWindowsPos(IntPtr, IntPtr, int, int, int, int, int) bool ShowCaret(IntPtr) bool ShowScrollBar(IntPtr, int, bool) bool SystemParametersInfo(int, int, ControlUtils/NONCLIENTMETRICS, int) int AnimateWindow(IntPtr, int, int) int DestroyIcon(IntPtr) int FillRect(IntPtr, NativeVista/RECT&, IntPtr) int GetScrollInfo(IntPtr, int, ScrollInfoStruct&) int GetSystemMetrics(int) int ReleaseDC(HandleRef, HandleRef) int ReleaseDC(IntPtr, IntPtr) int ScrollWindowEx(IntPtr, int, int, WindowScroller/RECT&, WindowScroller/RECT&, IntPtr, IntPtr, int) int SendMessage(IntPtr, int, int, int) int SendMessage(IntPtr, int, int, IntPtr) int SendMessage(IntPtr, int, uint, uint) Int16 GetAsyncKeyState(int) Int16 GetKeyState(int) Int64 GetWindowLong(HandleRef, int) IntPtr BeginPaint(IntPtr, NativeVista/PAINTSTRUCT&) IntPtr FindWindow(string, string) IntPtr GetDC(IntPtr) IntPtr GetDCEx(HandleRef, HandleRef, int) IntPtr GetSystemMenu(IntPtr, bool) IntPtr LoadImage(IntPtr, int, uint, int, int, uint) IntPtr SendMessage(HandleRef, int, IntPtr, IntPtr) IntPtr SendMessage(IntPtr, int, int, int) IntPtr SendMessage(IntPtr, int, int, IntPtr) IntPtr SetWindowLongPtr32(HandleRef, int, HandleRef) IntPtr SetWindowLongPtr64(HandleRef, int, HandleRef) IntPtr TrackPopupMenu(IntPtr, int, int, int, int, IntPtr, IntPtr) void mouse_event(uint, uint, uint, uint, IntPtr) Library: User32.dll bool GetWindowRect(IntPtr, DragDropDispatcherWinAPI/RECT&) bool IsWindowVisible(IntPtr) bool SetForegroundWindow(IntPtr) int FillRect(IntPtr, Win32Util/RECT&, IntPtr) int MapWindowPoints(IntPtr, IntPtr, NativeMethods/POINT&, int) int ReleaseDC(IntPtr, IntPtr) IntPtr CallWindowProc(IntPtr, IntPtr, int, IntPtr, IntPtr) IntPtr GetDCEx(IntPtr, IntPtr, int) IntPtr GetWindow(IntPtr, uint) IntPtr SetWindowLong(HandleRef, int, IntPtr) IntPtr SetWindowLong2(HandleRef, int, ControlWndHook/MyCallBack) IntPtr WindowFromPoint(Point) Library: USER32.dll bool EndPaint(IntPtr, NativeMethods/PAINTSTRUCT&) bool GetCaretPos(MaskBox/MaskStrategy/ManagedStrategy/GetCaretPosPoint&) bool GetKeyboardState(Byte[]) bool GetScrollBarInfo(IntPtr, uint, SCROLLBARINFO&) bool GetScrollInfo(IntPtr, int, SCROLLINFO&) bool GetWindowRect(IntPtr, NativeMethods/RECT&) bool IsIconic(IntPtr) bool IsWindowVisible(IntPtr) bool IsZoomed(IntPtr) bool MessageBeep(uint) bool PostMessage(IntPtr, int, IntPtr, IntPtr) bool ReleaseCapture() bool SetKeyboardState(Byte[]) bool SetWindowPos(IntPtr, IntPtr, int, int, int, int, int) bool SetWindowPos(IntPtr, IntPtr, int, int, int, int, uint) bool ShowWindow(IntPtr, int) bool UnhookWindowsHookEx(IntPtr) int CallNextHookEx(IntPtr, int, IntPtr, IntPtr) int GetClassLong(IntPtr, int) int GetWindowLong(IntPtr, int) int PostMessage(IntPtr, int, IntPtr, IntPtr) int ReleaseDC(IntPtr, IntPtr) int SendMessage(IntPtr, int, IntPtr, IntPtr) int SetCapture(IntPtr) int SetScrollInfo(IntPtr, int, SCROLLINFO&, bool) int SetWindowLong(IntPtr, int, int) Int16 GetAsyncKeyState(int) IntPtr BeginPaint(IntPtr, NativeMethods/PAINTSTRUCT&) IntPtr GetDCEx(IntPtr, IntPtr, int) IntPtr GetWindowDC(IntPtr) IntPtr SendMessage(IntPtr, int, IntPtr, IntPtr) IntPtr SendMessage(IntPtr, int, IntPtr, string) IntPtr SetWindowsHookEx(int, Hook, int, int) Library: uxtheme.dll bool IsAppThemed() bool IsThemeActive() int GetThemeAppProperties() int GetThemeBackgroundRegion(IntPtr, IntPtr, int, int, NativeMethods/RECT&, IntPtr&) int SetWindowTheme(IntPtr, string, string) IntPtr DrawThemeEdge(IntPtr, IntPtr, int, int, NativeMethods/RECT&, int, int, NativeMethods/RECT&) IntPtr DrawThemeParentBackground(IntPtr, IntPtr, NativeMethods/RECT&) IntPtr GetCurrentThemeName(string, int, string, int, string, int) IntPtr GetThemeBackgroundContentRect(IntPtr, IntPtr, int, int, NativeMethods/RECT&, NativeMethods/RECT&) IntPtr GetThemeBackgroundExtent(IntPtr, IntPtr, int, int, NativeMethods/RECT&, NativeMethods/RECT&) IntPtr GetThemeColor(IntPtr, int, int, int, Int32&) IntPtr GetThemeMargins(IntPtr, IntPtr, int, int, int, IntPtr, XPMARGINS&) IntPtr GetThemePartSize(IntPtr, IntPtr, int, int, IntPtr, int, NativeMethods/SIZE&) IntPtr OpenThemeData(IntPtr, string) void DrawThemeBackground(IntPtr, IntPtr, int, int, NativeMethods/RECT&, NativeMethods/RECT&) Library: UxTheme.dll int DrawThemeTextEx(IntPtr, IntPtr, int, int, string, int, int, NativeMethods/RECT&, NativeVista/DTTOPTS&) int EndBufferedPaint(IntPtr, bool) IntPtr BeginBufferedPaint(IntPtr, IntPtr, IntPtr, IntPtr, IntPtr&) IntPtr BeginBufferedPaint(IntPtr, NativeMethods/RECT&, SmartDoubleBufferPainter/BP_BUFFERFORMAT, IntPtr, IntPtr&) IntPtr BufferedPaintSetAlpha(IntPtr, IntPtr, byte) IntPtr EndBufferedPaint(IntPtr, IntPtr) void BufferedPaintInit()