[lazarus] Editor

Baeseman, Cliff Cliff.Baeseman at greenheck.com
Tue Oct 19 15:46:28 EDT 1999


I will try that one tonight and see if it cures the problem, looks
reasonable.

BTW you can use the com interface if you have the new DX libraries....

Cliff



-----Original Message-----
From: Shane Miller [mailto:SMiller1 at stvgb.org]
Sent: Tuesday, October 19, 1999 2:42 PM
To: lazarus at miraclec.com
Subject: RE: [lazarus] Editor


Here's howq I do it when iterfacing with DirectX
Direct X needs a callback to enumerate the video resolutions for your video
card.  When I do is this:



type

TDDEnumCallBackProc = function (lpDDSurfaceDesc: TDDSurfaceDesc2; lpContext
: Pointer) : HResult; stdcall;

Implementation

Function ENumModesLocalCallBack2(lpDDSurfaceDesc: TDDSurfaceDesc2;
lpContext: Pointer) : Bool;

//then when I call the procedure and pass the callback I do this:

lpDirectDraw4.EnumDisplayModes(0,lpDDSurfaceDesc,lpContext,TDDEnumCallBackPr
oc(EnumModesLocalCallBack(lpDDSurfaceDesc2,lpContext)));

//It's that simple!


Shane


>>> "Baeseman, Cliff" <Cliff.Baeseman at greenheck.com> 10/19/99 02:02PM >>>
nope I just have straight up procedures right now no class involvement.

Cliff

-----Original Message-----
From: Shane Miller [mailto:SMiller1 at stvgb.org] 
Sent: Tuesday, October 19, 1999 2:04 PM
To: lazarus at miraclec.com 
Subject: RE: [lazarus] Editor


Is this procedure a member of a class?  If so, remember that it also sends
SELF although it would be hidden.

Shane


>>> "Baeseman, Cliff" <Cliff.Baeseman at greenheck.com> 10/19/99 01:27PM >>>
I am trying to figure out the correct way to send this procedure to the
lazqtlib. I am getting a crash inside of the C++ library trying to call back
the pascal routine. If this is the case and it is a address and not a
pointer to an address then I know what is going on. The library is looking
for a pointer to an address..

  EventHook(char *WidgetID, void *procpointer) I then have to cast this in
the library
back to an address and attach it to the appropriate object in the internal
widget stack. I get either a access violation or illegal instruction.

Cliff

-----Original Message-----
From: Shane Miller [mailto:SMiller1 at stvgb.org] 
Sent: Tuesday, October 19, 1999 1:18 PM
To: lazarus at miraclec.com 
Subject: RE: [lazarus] Editor


That would be the ADDRESS of the procedure.

Not sure why you would grab the address that way though.  What you should do
it set up a type

TSomeType = procedure (myint : integer); cdecl;

then in your class or var area, define a variable of type TSomeType and
assign it to myproc.
You may be doing it that way for a reason I don't understand though....


Shane


>>> "Baeseman, Cliff" <Cliff.Baeseman at greenheck.com> 10/19/99 01:00PM >>>

Hi gents!


A little pascal question for you all..

If I declare a procedure like this.

procedure myproc(myint: integer);cdecl;
begin
end;


I then reference it like this  @myproc what does this really stand for. It
is my assumption that it is a untyped pointer to the address of myproc.  Is
this assumption
correct?

Cliff




_________________________________________________________________
     To unsubscribe: mail lazarus-request at miraclec.com with
                "unsubscribe" as the Subject
    archives at http://www.miraclec.com/list_archives/lazarus 

_________________________________________________________________
     To unsubscribe: mail lazarus-request at miraclec.com with
                "unsubscribe" as the Subject
    archives at http://www.miraclec.com/list_archives/lazarus 

_________________________________________________________________
     To unsubscribe: mail lazarus-request at miraclec.com with
                "unsubscribe" as the Subject
    archives at http://www.miraclec.com/list_archives/lazarus 

_________________________________________________________________
     To unsubscribe: mail lazarus-request at miraclec.com with
                "unsubscribe" as the Subject
    archives at http://www.miraclec.com/list_archives/lazarus 

_________________________________________________________________
     To unsubscribe: mail lazarus-request at miraclec.com with
                "unsubscribe" as the Subject
    archives at http://www.miraclec.com/list_archives/lazarus

_________________________________________________________________
     To unsubscribe: mail lazarus-request at miraclec.com with
                "unsubscribe" as the Subject
    archives at http://www.miraclec.com/list_archives/lazarus






More information about the Lazarus mailing list