Let the few existing parts which need the capabiliteis use the WineD3D
capability structure (gl_info). This info structure contains next to
'flags' inidicating certain features also all GL/GLX functions
pointers. Because D3D8 moves over to the wined3d gl_info structure all
the gl prototypes in d3dcore_gl.h were unneeded and removed.
Stream methods called after parent object has been closed correctly
return STG_E_REVERTED.
Stream refcounting fixed. Now can safely call IStorage destructor
before IStream destructor and guarantee file will be closed.
- check mark is drawn left of a bitmap;
- if a MNS_CHECKORBMP-style menu has a checkmark, do no draw any bitmap;
- space for the popup arrow is also reserved for non popup items;
- implement the MNS_NOCHECK style.
- Use DrawText in stead of GetTextExtendPoint32, to properly measure
strings with ampersands like "&File";
- Fix mess with strings with an embedded tab;
- In case of a menu bar, two extra pixels are added if the item has
both a bitmap and string.
- Move sending WM_MEASUREITEM message for HBMMENU_CALLBACK bitmaps to
MENU_GetBitmapItemSize();
- Save the received bitmap size in the menu item structure as it will
need to be sent in the WM_DRAWITEM message;
- Move sending WM_DRAWITEM message for HBMMENU_CALLBACK bitmaps to
MENU_DrawBitmapItem();
- This also means that HBMMENU_CALLBACK bitmaps are now supported in
menu bars.
- remove unused argument from functions
- print the pointer in the str_array_push TRACE to be able to distinguish
the different arrays.
- comment and white space cleanups
Use a separate array/stack for the back references to names as
sym->stack is used to push temporary strings to it which breaks back
referencing in some occasions (26 symbols in the mfc42 dll). During
this cleanup get_class() a little bit.
In test_demangle use a custom strcmp that treats multiple spaces as
single space. __unDName() from older msvcrt (including W2K it seems)
emit in some places 2 spaces instead of one. Fixes 20 failing tests on
those old Windows versions.
Change the apartment model field to a boolean that just specifies
whether the apartment is multi-threaded or not and fix up all the
places where this is used.
Fixes a bug where we would return an error if the previous apartment
model passed into CoInitializeEx matches the new apartment model, but
additional optimisation flags are specified.