procedure TCommandBarButton.Connect; var punk: IUnknown; begin if FIntf = nil then begin punk := GetServer; ConnectEvents(punk); Fintf:= punk as CommandBarButton; end; end;
procedure TCommandBarButton.ConnectTo(svrIntf: CommandBarButton); begin Disconnect; FIntf := svrIntf; ConnectEvents(FIntf); end;
constructor TCommandBarButton.Create(AOwner: TComponent); begin inherited;
end;
destructor TCommandBarButton.Destroy; begin
inherited; end;
procedure TCommandBarButton.Disconnect; begin if Fintf <> nil then begin DisconnectEvents(FIntf); FIntf := nil; end; end;
function TCommandBarButton.GetDefaultInterface: CommandBarButton; begin if FIntf = nil then Connect; Assert(FIntf <> nil, ''''DefaultInterface is NULL. Component is not connected to Server. You must call ''''''''Connect'''''''' or ''''''''ConnectTo'''''''' before this operation''''); Result := FIntf; end;
procedure TCommandBarButton.InvokeEvent(DispID: TDispID; var Params: TVariantArray); begin case DispID of -1: Exit; // DISPID_UNKNOWN 1: if Assigned(FOnClick) then FOnClick(Params[0], Params[1]); end; {case DispID} end;
procedure TCommandBarButton.SetOnClick( const Value: TCommandBarButtonClick); begin FOnClick := Value; end;