Huw Davies
575b0e1435
ole32: Don't set cf_dataobject if we're clearing the clipboard.
2009-04-21 13:21:19 +02:00
Huw Davies
1e73a54690
ole32: Check that the target devices match.
2009-04-21 13:16:48 +02:00
Huw Davies
bdca138d5a
ole32: Make get_priv_data return target device ptrs (rather than offsets) and add a couple of helper functions to simplify this process.
2009-04-21 13:16:37 +02:00
Huw Davies
aadd07ca9d
ole32/tests: Tests for a flushed clipboard.
2009-04-16 11:37:39 -05:00
Huw Davies
c648dcf615
ole32: Try global and stream types if the requested types don't match the source.
2009-04-16 11:37:30 -05:00
Huw Davies
18d413bb74
ole32: OleFlushClipboard should render all formats to the clipboard.
2009-04-16 11:37:25 -05:00
Huw Davies
9bacd00ce7
ole32: Add support for getting storage based objects from a flushed clipboard.
2009-04-16 11:37:18 -05:00
Huw Davies
25d7ecde47
ole32: Add support for getting stream based objects from a flushed clipboard.
2009-04-16 11:37:10 -05:00
Huw Davies
f8a9ca2cfa
ole32: Add support for getting global handle objects from a flushed clipboard.
2009-04-16 11:37:03 -05:00
Huw Davies
718831b77c
ole32/tests: Add a few more reference count tests.
2009-04-16 11:36:53 -05:00
Huw Davies
fca4ed5596
ole32: After a call to GetData the consumer should hold a ref on the source data object.
2009-04-16 11:36:42 -05:00
Huw Davies
d2156f3894
ole32: Now that the consumer side of the clipboard separated from the main clipboard object, simplify the initialization code.
2009-04-16 11:36:39 -05:00
Huw Davies
df08d463c9
ole32: The consumer data object is not a singleton, but reflects the state of the clipboard when it was acquired.
2009-04-16 11:36:00 -05:00
Huw Davies
f8a1b7e5a5
ole32/tests: Tests that show the consumer data object isn't a singleton.
2009-04-16 11:35:24 -05:00
Huw Davies
4311691a88
ole32: If there's a current data object on the ole clipboard GetData should use it.
2009-04-16 11:35:15 -05:00
Huw Davies
6d4a394099
ole32: Store the marshalled IDataObject in a window property of the clipboard window.
...
This is somewhat different from how Windows behaves. Windows stores
two properties; an IID and an endpoint number.
2009-04-16 11:35:08 -05:00
Huw Davies
1ec12f68b1
ole32: Rename a variable.
2009-04-16 11:34:55 -05:00
Huw Davies
bd9eb3b527
ole32: Don't pass a window if we're reading from the clipboard.
2009-04-16 11:34:49 -05:00
Huw Davies
6526b570e1
ole32: Add a function to return (and possibly create) the clipboard's window.
2009-04-16 11:34:39 -05:00
Huw Davies
6ce9922f3d
ole32: Add a helper function to set and release the source IDataObject.
2009-04-16 11:34:06 -05:00
Huw Davies
bf8d85cee0
ole32: Add a helper function to return the ole clipboard structure.
2009-04-16 11:33:57 -05:00
Huw Davies
72f53ed4d7
ole32: Unicodify window creation. Don't register the class as global.
2009-04-16 11:33:50 -05:00
Huw Davies
5defc71dfe
ole32: Use helper function to duplicate global memory.
2009-04-16 11:33:40 -05:00
Huw Davies
469d6ea2df
ole32: Add support for rendering storage data to the clipboard.
2009-04-16 11:33:29 -05:00
Huw Davies
f4745c0a06
ole32: Make all formats available to the clipboard.
2009-04-16 11:33:19 -05:00
Huw Davies
1e8727aacf
ole32: Add support for rendering stream data to the clipboard.
2009-04-16 11:33:03 -05:00
Huw Davies
5e557d83ca
ole32: Rewrite the clipboard window's wndproc to use the cached enum data.
2009-04-16 11:30:38 -05:00
Huw Davies
b958dfdc47
ole32: Change helper function to return the matching entry.
2009-04-16 11:30:09 -05:00
Huw Davies
e58a9db129
ole32: Store a cached version of the local data object's enumeration.
2009-04-16 11:30:00 -05:00
Alexandre Julliard
c378490d7d
ole32/tests: Avoid size_t in traces.
2009-04-08 16:09:52 +02:00
Vincent Povirk
9c02fda4a9
ole32: When renaming a storage element, delete from the current iface.
2009-04-02 16:28:30 +02:00
Huw Davies
628332aee1
ole32: Change the global memory duplicator to return HRESULT.
2009-04-01 15:23:20 +02:00
Huw Davies
3cb4ab588d
ole32: Rename a few variables and remove a couple of meaningless comments.
2009-04-01 15:23:14 +02:00
Huw Davies
f2ba37e5b9
ole32: Move the embed source hack to a separate function.
2009-04-01 15:23:09 +02:00
Huw Davies
126ec0181f
ole32/tests: Set tymed in GetData and AddRef the interfaces (ReleaseStgMedium releases them even if pUnkForRelease is non-NULL).
2009-04-01 15:23:03 +02:00
Huw Davies
61fa9bb061
ole32/tests: Add some tests for stream data.
2009-03-31 15:00:38 +02:00
Huw Davies
d28d731b61
ole32/tests: Add broken return value for win98.
2009-03-31 15:00:33 +02:00
Huw Davies
5492fd2b0d
ole32/tests: On win9x GetClipboardData returns a new handle.
2009-03-31 15:00:28 +02:00
Huw Davies
2c6be9521b
ole32: Simplify some of the error handling.
2009-03-31 15:00:23 +02:00
Huw Davies
59501e037b
ole32/tests: Tests for EnumFormatEtc.
2009-03-30 16:42:46 +02:00
Huw Davies
89dcb968a3
ole32/tests: Fix DVTARGETDEVICE offsets.
2009-03-30 16:42:41 +02:00
Huw Davies
969e5d7ee1
ole32: Reimplement the formatetc enumerator using 'Ole Private Data'.
2009-03-30 16:42:22 +02:00
Huw Davies
fc78f552a0
ole32: AddRef does not return an HRESULT. Have the constructor create the object with one reference.
2009-03-30 16:42:12 +02:00
Huw Davies
25f1b058a8
ole32: Change the enum formatetc constructor to return HRESULT.
2009-03-30 16:42:08 +02:00
Huw Davies
1cc023c53a
ole32: Don't hold a reference on the parent IDataObject.
2009-03-30 16:42:03 +02:00
Huw Davies
1213964330
ole32: Rename a variable.
2009-03-30 16:41:56 +02:00
Huw Davies
d93688a721
ole32: Use a helper function to access the enum format implementation.
2009-03-30 16:41:51 +02:00
Huw Davies
690202440e
ole32: Set the 'Ole Private Data' clipboard format.
2009-03-26 16:11:24 +01:00
Huw Davies
b7a2e83ddb
ole32: OleFlushClipboard shouldn't call EmptyClipboard.
2009-03-26 16:11:21 +01:00
Huw Davies
b75caee2ab
ole32/tests: Tests for the 'Ole Private Data' clipboard format.
2009-03-25 15:43:36 +01:00
Huw Davies
3383db6107
ole32: Move the code to set the clipboard formats to a separate function.
2009-03-25 15:43:27 +01:00
Huw Davies
ef4b6b8749
ole32: Store the ole clipboard window's HWND in the DataObject clipboard format.
2009-03-23 15:52:18 +01:00
Huw Davies
e77ab142e4
ole32: Register DataObject clipboard format.
2009-03-23 15:52:18 +01:00
Huw Davies
c0fbbe7d91
ole32: Use IsEqualIID rather than memcmp.
2009-03-23 15:52:18 +01:00
Huw Davies
319d0ddca6
ole32: Simplify QueryInterface.
2009-03-23 15:52:18 +01:00
Huw Davies
d72181381e
ole32: pFmt isn't exposed to the client, so simplify its allocation.
2009-03-23 15:52:18 +01:00
Huw Davies
8beb83866f
ole32: Rearrange functions to eliminate forward declarations.
2009-03-23 15:52:18 +01:00
Huw Davies
96bd8c5a7d
ole32: Add a helper function to retrieve the implementation ptr.
2009-03-23 15:52:18 +01:00
Huw Davies
e7ffa2aeb5
ole32: Don't allocate the ole clipboard object in global memory - we're not going to directly expose it to other processes.
2009-03-23 15:52:18 +01:00
Huw Davies
e6eeb3aa17
ole32: Remove unused static variable.
2009-03-23 15:52:18 +01:00
Michael Stefaniuc
efbb4ebf3e
widl: Output "LONG" instead of "long" for a 32bit integer.
...
long is always 32bit in IDL files but that's not true in C.
2009-03-13 11:15:21 +01:00
Alexandre Julliard
7b6dd2c9f8
ole32: Get rid of WINE_StringFromCLSID and A->W conversions.
2009-03-12 13:09:52 +01:00
Alexandre Julliard
6b40f64e18
ole32: Make compobj.dll into a stand-alone 16-bit module.
2009-03-12 13:09:31 +01:00
Alexandre Julliard
2e1b309fba
ole32: Make ole2.dll into a stand-alone 16-bit module.
2009-03-11 17:05:20 +01:00
Alexandre Julliard
f7fe2edadd
ole32: Make storage.dll into a stand-alone 16-bit module.
2009-03-11 17:03:10 +01:00
Alexandre Julliard
7511d67447
ole32: Make ole2nls.dll into a stand-alone 16-bit module.
2009-03-11 16:53:06 +01:00
Alexandre Julliard
dc81065d44
ole32: Make ole2thk.dll into a stand-alone 16-bit module.
2009-03-11 16:51:09 +01:00
Alexandre Julliard
b4bbe0c4a0
ole32: Make ole2prox.dll into a stand-alone 16-bit module.
2009-03-11 16:51:09 +01:00
Alexandre Julliard
ea6382623e
ole32: Make ole2conv.dll into a stand-alone 16-bit module.
2009-03-11 16:51:09 +01:00
Rob Shearman
d974922698
ole32: Fix a memory leak in an error path in COMPOBJ_DllList_Add.
2009-03-09 12:04:35 +01:00
Paul Vriens
e31df3616a
ole32/tests: Remove an unused function declaration.
2009-03-06 15:39:30 +01:00
Huw Davies
561df2f1c6
ole32: Add support for VT_DECIMAL.
2009-03-06 15:39:02 +01:00
Huw Davies
5e0d4c774c
ole32/tests: win9x and winnt don't include the trailing '\0'.
2009-02-26 15:13:26 +01:00
Alexandre Julliard
b55f6dfed5
ole32/tests: Don't hang forever in the child process.
2009-02-17 14:58:45 +01:00
Rob Shearman
2803516d26
ole32: Round the extected size in the marshal and moniker tests using the results of sizing a global, not a heap pointer.
...
The rounding isn't the same on Win9x, and the size being compared to
is that of a global handle.
2009-02-17 12:47:53 +01:00
Rein Klazes
788add572b
ole32: In PropVariantCopy() fix calculation size of array that contain pointers, not characters.
2009-02-16 15:35:15 +01:00
Michael Stefaniuc
0449701c31
ole32: Remove superfluous pointer casts.
2009-02-11 12:29:56 +01:00
Rob Shearman
ad880ba057
ole32: Fix a test failure in the moniker tests on Win9x.
...
Also fix a crash in running the tests on Win95.
2009-02-11 11:42:21 +01:00
Rob Shearman
1e8ae571f5
ole32: Fix some test failures in the free threaded marshaller tests on Win9x & NT4.
...
These platforms only write 8 bytes into the stream so cope appropriately.
2009-02-11 11:42:17 +01:00
Michael Stefaniuc
a90828aa60
ole32: Use GetWindowLongPtr/SetWindowLongPtr for pointers.
2009-02-10 12:33:00 +01:00
Rob Shearman
b859d2052b
ole32: Allow some optional methods to be called in the OleCreate tests.
...
Fixes failures in these tests on NT4.
2009-02-09 14:03:09 +01:00
Rob Shearman
d26250fd08
ole32: Add framework in the ole2 tests for having optionally called methods.
2009-02-09 14:03:03 +01:00
Rob Shearman
db851a1d2a
ole32: Output the size that we didn't expect in the HGLOBAL marshalling tests.
2009-02-09 14:02:29 +01:00
Rob Shearman
f2b17029aa
ole32: Fix some test failures in the HGLOBAL marshalling tests on 64-bit Windows.
2009-02-09 13:58:07 +01:00
Rob Shearman
2eca96af67
ole32: Fix CLIPFORMAT marshalling on 64-bit platforms by not using the wireCLIPFORMAT type.
...
The wireCLIPFORMAT represents the memory equivalent format of the wire
format and not the wire format itself.
Also update the tests to do the same.
2009-02-09 13:58:04 +01:00
Rob Shearman
40660894c8
ole32: Fix an ole2 test failure on Win9x and NT4.
...
The combination of CF_BITMAP and TYMED_GLOBAL isn't accepted on newer
versions of Windows, so mark it as broken.
2009-02-06 13:03:16 +01:00
Andrew Talbot
772a9b3540
ole32: Remove superfluous shadow variables.
2009-02-03 12:39:35 +01:00
Rob Shearman
712e33e669
ole32: Initialise more of the context passed into user marshaling functions in the tests for these functions.
2009-02-02 11:55:29 +01:00
Rob Shearman
d3085abc08
Change parameter type from size_t to SIZE_T for MIDL_user_allocate.
2009-02-02 11:55:21 +01:00
Ge van Geldorp
4b27dfec93
ole32/tests: Write to HKCR instead of HKCU/Software/Classes for the benefit of older Windows versions.
2009-01-29 15:59:39 +01:00
Rob Shearman
0025bdf607
ole32: Fix a missing CoUninitialize in test_CoFreeUnusedLibraries.
2009-01-28 14:15:48 +01:00
Rob Shearman
9353dff5b3
ole32: Fix some tests that fail on NT4 and Win9x.
...
Round the expected sizes up to the alignment used by HeapSize, which
is 4 on Win9x and NT4 but 1 in more recent versions.
Additionally fix an IGlobalInterfaceTable test which erroneously
succeeds on these older OSs.
2009-01-28 14:15:42 +01:00
Huw Davies
bc93467f5d
ole32: The bigblockfile on ILockBytes implementation should work on any ILockBytes not just those based on HGLOBAL.
2009-01-28 12:31:53 +01:00
Huw Davies
bfc32ae0c6
ole32: Add a helper function to return the file size and modify EnsureExists to use it.
2009-01-28 12:31:25 +01:00
Huw Davies
cc7edbe3b5
ole32: Move functions around in file to avoid forward declarations.
2009-01-28 12:31:08 +01:00
Huw Davies
70ee112337
ole32: Move private data structure out of header file.
2009-01-28 12:31:01 +01:00
Ge van Geldorp
f7a34db378
ole32/tests: Some Windows versions need the class to be registered.
2009-01-26 16:06:02 +01:00
Nikolay Sivov
32cc4011ee
kernel32: Make GetOverlappedResult crash on NULL args as native does.
2009-01-22 15:28:24 +01:00
Michael Stefaniuc
bdbfac5996
ole32/tests: Remove superfluous pointer casts.
2009-01-20 12:34:31 +01:00
Andrey Turkin
644220b518
ole32: Prevent recursion when CLSIDFromString is passed empty string.
2009-01-20 12:23:11 +01:00