>>
>> I haven't done anything yet to handle implementing COM interfaces in
>> Factor, asidef from some hand-rolled code in the windows.com unit
>> tests that duct-tapes together a test COM class. That'll probably be
>> my next trick.
Alright, I put together a windows.com.wrapper vocab for implementing
COM interfaces. You create a com-wrapper object using the <com-
wrapper> word:
--8<--
{ { "IDropTarget" { [
! DragEnter implementation
] [
! DragOver implementation
] [
! DragLeave implementation
] [
! Drop implementation
] } } } <com-wrapper>
--8<--
which you can then wrap around a Factor object with the com-wrap word.
The resulting alien can then be passed to any Windows API call that
needs, in this case, an IDropTarget* parameter. As a not-terribly-
useful example, the windows.dragdrop-listener vocab will register the
Workspace window as a drop target, so that you can drag Factor source
files onto it from the file browser to have them run in the listener:
--8<--
USING: windows.ole32 windows.dragdrop-listener ;
ole-initialize
dragdrop-listener-window
--8<--
-Joe
-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
_______________________________________________
Factor-talk mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/factor-talk