de event j'extrais le paramDescriptorForKeyword correspondant à '----'
j'en prend la string, ce qui me donne qqc comme :
"bmkm:toto" (ce que l'utilisateur a tapé dans le champ url du
navigateur.
pour moi la partie après les : est une commande (comme quand on fait
man:plutil avec Sogudi)
donc là je dois répondre par une url représentant le résultat de la
commande "toto" par exemple :
"http://www.rubycocoa.com/"
d'après ce que j'ai compris, j'utilise event tel quel et je lui change
juste le paramDescriptorForKeyword, supposons que c'est bien ça.
je fais donc un set qqc...
et je retourne replyEvent
il suffit donc de faire qqc dans le genre :
replyEvent=event.setParam... c'est ça ?
là, premier problème, quand je regarde avec Appkido j'ai la méhtode :
- (void)setParamDescriptor:(NSAppleEventDescriptor *)descriptor
forKeyword:(AEKeyword)keyword
normalement, je n'en ai pas besoin, car event a le bon keyword, je dois
juste changer la valeur pour ce keyword, c'est bien ça ?
ou je n'ai rien pigé ?
je ne vois pas, dans la liste des méthodes d'instances de quoi faire ça.
car je suppose que dans event (donc le NSAppleEventDescriptor entrant)
tout est ok excepté la chaine que j'ai extraite.
autrement dit, je n'ai pas à aller chercher le psn, puisque c'est
nécessairement le bon dans mon cas.
cependant j'aimerais bien comprendre comment on le lit.
à la page "Data Structures Within Apple Events"
<http://developer.apple.com/documentation/mac/IAC/IAC-98.html>
j'ai :
typeProcessSerialNumber 'psn ' Process serial number
pour un :
TYPE AEAddressDesc = AEDesc; {address descriptor record}
là le "AEDesc" je l'obtiens par :
aeDesc=event.aeDesc
mais comment à partir de cet AEDesc j'obtiens la valeur associée à 'psn
' ?
--
une bévue
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
luc
Une bévue wrote:
donc là je dois répondre par une url représentant le résultat de la commande "toto" par exemple : "http://www.rubycocoa.com/"
Non, je ne crois pas que GURL attende une réponse particulière puisque c'est l'application appelée qui est censée se charger de l'URL passée en paramètre.
Donc un simple openURLs:withAppBundleIdentifier... au NSWorkspace et le tour est joué.
-- Luc Heinrich
Une bévue <pere.noel@laponie.com.invalid> wrote:
donc là je dois répondre par une url représentant le résultat de la
commande "toto" par exemple :
"http://www.rubycocoa.com/"
Non, je ne crois pas que GURL attende une réponse particulière puisque
c'est l'application appelée qui est censée se charger de l'URL passée en
paramètre.
Donc un simple openURLs:withAppBundleIdentifier... au NSWorkspace et le
tour est joué.
donc là je dois répondre par une url représentant le résultat de la commande "toto" par exemple : "http://www.rubycocoa.com/"
Non, je ne crois pas que GURL attende une réponse particulière puisque c'est l'application appelée qui est censée se charger de l'URL passée en paramètre.
Donc un simple openURLs:withAppBundleIdentifier... au NSWorkspace et le tour est joué.
-- Luc Heinrich
pere.noel
Luc Heinrich wrote:
Non, je ne crois pas que GURL attende une réponse particulière puisque c'est l'application appelée qui est censée se charger de l'URL passée en paramètre.
mais alors pourquoi l'argument "replyEvent" s'il ne sert pas ? dans ce cas il doit y avoir un "handleGetURLEvent" tout court ? (ie sans le withReply )
curiosité si je cherche l'un comme l'autre je ne trouve pas ces méthodes dans AppKido.
Donc un simple openURLs:withAppBundleIdentifier... au NSWorkspace et le tour est joué.
bon, ça je vois.
du coup, il me faut détéecter quel navigateur a envoyé l'event. -- une bévue
Luc Heinrich <luc@honk-honk.com> wrote:
Non, je ne crois pas que GURL attende une réponse particulière puisque
c'est l'application appelée qui est censée se charger de l'URL passée en
paramètre.
mais alors pourquoi l'argument "replyEvent" s'il ne sert pas ?
dans ce cas il doit y avoir un "handleGetURLEvent" tout court ? (ie sans
le withReply )
curiosité si je cherche l'un comme l'autre je ne trouve pas ces méthodes
dans AppKido.
Donc un simple openURLs:withAppBundleIdentifier... au NSWorkspace et le
tour est joué.
bon, ça je vois.
du coup, il me faut détéecter quel navigateur a envoyé l'event.
--
une bévue
Non, je ne crois pas que GURL attende une réponse particulière puisque c'est l'application appelée qui est censée se charger de l'URL passée en paramètre.
mais alors pourquoi l'argument "replyEvent" s'il ne sert pas ? dans ce cas il doit y avoir un "handleGetURLEvent" tout court ? (ie sans le withReply )
curiosité si je cherche l'un comme l'autre je ne trouve pas ces méthodes dans AppKido.
Donc un simple openURLs:withAppBundleIdentifier... au NSWorkspace et le tour est joué.
bon, ça je vois.
du coup, il me faut détéecter quel navigateur a envoyé l'event. -- une bévue
luc
Une bévue wrote:
mais alors pourquoi l'argument "replyEvent" s'il ne sert pas ?
Il ne sert pas *dans ce cas précis*, il sert dans un tas d'autres.
-- Luc Heinrich
Une bévue <pere.noel@laponie.com.invalid> wrote:
mais alors pourquoi l'argument "replyEvent" s'il ne sert pas ?
Il ne sert pas *dans ce cas précis*, il sert dans un tas d'autres.
mais alors pourquoi l'argument "replyEvent" s'il ne sert pas ?
Il ne sert pas *dans ce cas précis*, il sert dans un tas d'autres.
-- Luc Heinrich
pere.noel
Luc Heinrich wrote:
Il ne sert pas *dans ce cas précis*, il sert dans un tas d'autres.
oui, d'accord, il sert dans d'autres cas où on chaine des events entre différentes applications...
je n'ai toujours pas trouvé comment soustirer à event le typeApplSignature (keyword = 'sign'.unpack('N').first) afin de retrouver l'Application signature.
je suppose que c'est dans les records descriptor, je vois bien comment les "setter" mais pas comment les lire. -- une bévue
Luc Heinrich <luc@honk-honk.com> wrote:
Il ne sert pas *dans ce cas précis*, il sert dans un tas d'autres.
oui, d'accord, il sert dans d'autres cas où on chaine des events entre
différentes applications...
je n'ai toujours pas trouvé comment soustirer à event le
typeApplSignature (keyword = 'sign'.unpack('N').first) afin de retrouver
l'Application signature.
je suppose que c'est dans les records descriptor, je vois bien comment
les "setter" mais pas comment les lire.
--
une bévue
Il ne sert pas *dans ce cas précis*, il sert dans un tas d'autres.
oui, d'accord, il sert dans d'autres cas où on chaine des events entre différentes applications...
je n'ai toujours pas trouvé comment soustirer à event le typeApplSignature (keyword = 'sign'.unpack('N').first) afin de retrouver l'Application signature.
je suppose que c'est dans les records descriptor, je vois bien comment les "setter" mais pas comment les lire. -- une bévue