OLE protocol
Jean-Michel BRUCK (3009) 362 posts |
Hi, Thanks |
Chris Hall (132) 3558 posts |
Here are some ideas in a forthcoming article here |
Jean-Michel BRUCK (3009) 362 posts |
Thank you for your response and the article. Your conclusion:
I understand better why I have difficulty finding information. |
Fred Graute (114) 645 posts |
Some information about the OLE protocol is in the Wimp StrongHelp manual (under User messages > OLE protocol), more elaborate information can be found on Erik Groenhuis’ website Chris’ article seems to describe how to use the OLESupport module to OLE a file. This is only necessary when the intended server application doesn’t support OLE natively. For example, when you want to OLE a text file then you only need the OLESupport module for Edit as both Zap and StrongED are OLE servers for text files. Makro implements a simple OLE client that invokes an OLE session directly. For an example of an OLE server you could look at the sources for Zap or StrongED (if you don’t mind all the assembler code). Hope this helps you getting to grips with the OLE protocol. |
Steve Pampling (1551) 8172 posts |
As with time and tide, web erosion waits for no man – most of the links are 404 |
Fred Graute (114) 645 posts |
Thanks Steve, I should have checked the links first so my bad. However I do have local copies of the linked pages so I can send them to Jean-Michel if he wants them. |
Jean-Michel BRUCK (3009) 362 posts |
Thanks everyone,
This is an interesting example, but I’m not yet able to build it. |
Paolo Fabio Zaino (28) 1882 posts |
@ Steve
Seems mostly that riscos.info is having troubles again, the index.php is gone or has been moved, so no wiki available (like at all) at the moment. @ Fred It’s probably a good idea to make a copy of these resources in the ROOL’s Wiki as well? |
Douglas McKenzie (568) 2 posts |
https://web.archive.org/web/20221212110356/http://www.riscos.info/index.php/OLE_Specification Not forgetting the two links at the bottom of the page… |
Steve Pampling (1551) 8172 posts |
+1 |
Jean-Michel BRUCK (3009) 362 posts |
Thanks for the web.archive link…. I have something to read and try to understand. I hope to be able to build a small test program. It’s a good thing to gather information about a topic like OLE. It is with the help of this type of documents that I was able to implement drop drag + copy/paste in one of my programs, which uses TextAreas. It’s not perfect, but it works and I hope that updating the toolbox will make it easier. |
Jean-Michel BRUCK (3009) 362 posts |
Bonjour, |
Fred Graute (114) 645 posts |
@ Paolo
For sure, but I don’t know what the current copyright status of these resources is so whether it’s allowed to add them to the ROOL’s Wiki is unclear. @ Jean-Michel
I take it that you now have a copies of the OLE specification documents so I no longer have to send them to you?
Not that I know of. However if it’s a window for an existing file then you can probably find the window by scanning the window stack and looking for a window owned by Draw and that has the filename as its title. When found, you can send an OpenWindow message to position the window where you want it.
Do you mean creating a new view (Menu → Display → New view) or opening a second copy of the file (Shift-drag to iconbar icon)? Either way, the answer is no. In the new view case it’s just an extra redraw as both views point at the same text in memory. With a second copy the only way to see changes made in one copy is to save the file and use the Refresh button on the other copy. |
David J. Ruck (33) 1636 posts |
If you want to open a window in a particular location using a *command (usually in an obey file) you can use my WindOpen module http://www.armclub.org.uk/free *WO_OpenWind Draw < filename > < x0 > < y0 > [ < x1 > < y1 > ] |
Jean-Michel BRUCK (3009) 362 posts |
@ Fred
Thank you for the explanation about the display, I used Menu → Display → New view. @David I hope my sentence is understandable :-( |
Jean-Michel BRUCK (3009) 362 posts |
@David Thank you for this module and your programs. |