2025-11-27 16:46:48 +09:00

10 lines
2.0 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{\rtf1\ansi\ansicpg1252\deff0\deflang1033\deflangfe1033{\fonttbl{\f0\froman\fprq2\fcharset0 Bookman Old Style;}}
{\*\generator Msftedit 5.41.15.1507;}\viewkind4\uc1\pard\qj\f0\fs24 This is a (surprise!) \b CDialog \b0 derived class that implements a "spy" on the Windows clipboard. Data will be added automatically once you make a copy or cut in any window, that appears in the dialog as new pocket (button). The pocket will have an appropriate icon and provides customizable tips. To copy data from the pocket to the clipboard just press the button.\par
\par
To use this in an application you can save the last active window and make a paste to the window if you override \b PocketToClip \b0 function that is called when a user presses the pocket. Alternatively, you can call this function without pressing the pocket to put data to the clipboard. \par
\par
The 2 functions that actually get and set the data are virtual. You can override them if you want to handle the data in some specific format since the clipboard can return the data in different formats usually. The first format is the most convenient format. By default this class does not save the clipboard data in custom formats because of different storage types. If you want to save the data in registered clipboard format you have to define \b OX_CLIP_DO_CUSTOM_FORMATS \b0 macro. The data in custom registered format may come with different types of the storage and not just \b HGLOBAL \b0 or \b HBITMAP \b0 that can be copied and stored safely, but also like pointers to \b IStorage \b0 object. There is no guarantee that if we save this pointer that next time this pointer will actually be valid, as the data might have changed already. So, it is up to you to decide whether you want to work with this format or not.\par
\par
Usually we do not have to do anything additional to use this class. Just insert the class in your project and it is ready to use. The class provides many helper functions to customize drawing, like adjusting different offsets, customizable icons and their sizes. \par
}