Re: [prog] Insérer un document writer dans Impress
Bonsoir, Encore merci. Thibault Vataire a écrit : Voici quelques liens concernant le framework Dispatch : http://api.openoffice.org/docs/common/ref/com/sun/star/frame/DispatchHelper.html http://api.openoffice.org/docs/DevelopersGuide/OfficeDev/OfficeDev.xhtml#1_1_6_Using_the_Dispatch_Framework http://wiki.services.openoffice.org/wiki/Documentation/DevGuide/OfficeDev/Dispatch_Framework http://wiki.services.openoffice.org/wiki/Documentation/DevGuide/OfficeDev/Using_the_Dispatch_Framework http://api.openoffice.org/files/documents/22/1344/slots.sxc Mais le plus simple reste d'observer le code généré par l'enregistreur de macros. http://wiki.services.openoffice.org/wiki/The_OpenOffice.org_recorder_and_UNO_dispatch_calls Cordialement, T. Vataire Cordialement. -- Didier Dorange-Pattoret http://www.dmaths.org http://sesamath.net Soutenez le projet Dmaths : rejoignez le club ou faites adhérer votre établissement ! http://www.dmaths.org/documentation/doku.php?id=presentation:club - To unsubscribe, e-mail: prog-unsubscr...@fr.openoffice.org For additional commands, e-mail: prog-h...@fr.openoffice.org
Re: [prog] Insérer un document writer dans Impress
Bonjour, Le plus simple est d'utiliser le service com.sun.star.frame.DispatchHelper pour executer la commande du menu EditionObjetEditer : sub insereTexte dim doc as object dim obj as object dim aPos as variant dim aSize as variant dim controller as object dim dispatcher as object dim args1(0) as new com.sun.star.beans.PropertyValue doc = thisComponent obj = doc.CreateInstance(com.sun.star.drawing.OLE2Shape) ... controller = doc.currentController if (not isNull(controller)) then if (controller.select(obj)) then dispatcher = createUnoService(com.sun.star.frame.DispatchHelper) args1(0).Name = VerbID args1(0).Value = 65535 dispatcher.executeDispatch(controller.frame, .uno:ObjectMenue, , 0, args1()) end if end if end sub Cordialement, T. Vataire - Mail Original - De: Didier Dorange-Pattoret ddora...@dmaths.org À: prog@fr.openoffice.org Envoyé: Samedi 15 Mai 2010 16:40:37 Objet: Re: [prog] Insérer un document writer dans Impress Bonjour Thibault, Merci pour votre réponse. Je cherche en fait à faire ouvrir une fenêtre writer dans un document impress pour pouvoir utiliser les fonctionnalités de Dmaths et donc insérer facilement des formules dans la présentation. J'écris donc comme dernières lignes : obj.EmbeddedObject.Component.Text.String= ThisComponent.CurrentController.Select(obj) Pour que l'objet inséré soit sélectionné et donc éditable par double-clic. Est-il possible d'écrire du code qui équivaut à ce double clic, pour que l'objet soit mis directement en mode édition ? Merci d'avance. Thibault Vataire a écrit : Bonjour, Le problème de votre exemple vient de la manière dont vous modifiez les valeurs de positions et de taille. Voici comment procéder pour que cela fonctionne : sub insereTexte dim obj as object dim aPos as variant dim aSize as variant obj = ThisComponent.CreateInstance(com.sun.star.drawing.OLE2Shape) aPos = obj.position aPos.x = 2000 aPos.y = 2000 obj.position = aPos aSize = obj.size aSize.height = 2000 aSize.width = 2000 obj.size = aSize obj.CLSID = 8BC6B165-B1B2-4EDD-aa47-dae2ee689dd6 obj.name = WriterObj thisComponent.drawpages(0).add(obj) obj.EmbeddedObject.Component.Text.String= C'est dur linfo end sub Cordialement. T. Vataire - To unsubscribe, e-mail: prog-unsubscr...@fr.openoffice.org For additional commands, e-mail: prog-h...@fr.openoffice.org -- Didier Dorange-Pattoret http://www.dmaths.org http://sesamath.net Soutenez le projet Dmaths : rejoignez le club ou faites adhérer votre établissement ! http://www.dmaths.org/documentation/doku.php?id=presentation:club - To unsubscribe, e-mail: prog-unsubscr...@fr.openoffice.org For additional commands, e-mail: prog-h...@fr.openoffice.org
Re: [prog] Insérer un document writer dans Impress
Voici quelques liens concernant le framework Dispatch : http://api.openoffice.org/docs/common/ref/com/sun/star/frame/DispatchHelper.html http://api.openoffice.org/docs/DevelopersGuide/OfficeDev/OfficeDev.xhtml#1_1_6_Using_the_Dispatch_Framework http://wiki.services.openoffice.org/wiki/Documentation/DevGuide/OfficeDev/Dispatch_Framework http://wiki.services.openoffice.org/wiki/Documentation/DevGuide/OfficeDev/Using_the_Dispatch_Framework http://api.openoffice.org/files/documents/22/1344/slots.sxc Mais le plus simple reste d'observer le code généré par l'enregistreur de macros. http://wiki.services.openoffice.org/wiki/The_OpenOffice.org_recorder_and_UNO_dispatch_calls Cordialement, T. Vataire - Mail Original - De: Didier Dorange-Pattoret ddora...@dmaths.org À: prog@fr.openoffice.org Envoyé: Dimanche 16 Mai 2010 22:40:06 Objet: Re: [prog] Insérer un document writer dans Impress Bonsoir, Merci Thibault pour cette aide précieuse. J'ai intégré la macro dans Dmaths. Les utilisateurs pourrons accéder aux fonctionnalités de Dmaths depuis Impress ... Thibault Vataire a écrit : Bonjour, Le plus simple est d'utiliser le service com.sun.star.frame.DispatchHelper pour executer la commande du menu EditionObjetEditer : Où peut-on trouver une documentation pour ce service ? sub insereTexte dim doc as object dim obj as object dim aPos as variant dim aSize as variant dim controller as object dim dispatcher as object dim args1(0) as new com.sun.star.beans.PropertyValue doc = thisComponent obj = doc.CreateInstance(com.sun.star.drawing.OLE2Shape) ... controller = doc.currentController if (not isNull(controller)) then if (controller.select(obj)) then dispatcher = createUnoService(com.sun.star.frame.DispatchHelper) args1(0).Name = VerbID args1(0).Value = 65535 dispatcher.executeDispatch(controller.frame, .uno:ObjectMenue, , 0, args1()) end if end if end sub -- Didier Dorange-Pattoret http://www.dmaths.org http://sesamath.net Soutenez le projet Dmaths : rejoignez le club ou faites adhérer votre établissement ! http://www.dmaths.org/documentation/doku.php?id=presentation:club - To unsubscribe, e-mail: prog-unsubscr...@fr.openoffice.org For additional commands, e-mail: prog-h...@fr.openoffice.org - To unsubscribe, e-mail: prog-unsubscr...@fr.openoffice.org For additional commands, e-mail: prog-h...@fr.openoffice.org
Re: [prog] Insérer un document writer dans Impress
Bonjour, Le problème de votre exemple vient de la manière dont vous modifiez les valeurs de positions et de taille. Voici comment procéder pour que cela fonctionne : sub insereTexte dim obj as object dim aPos as variant dim aSize as variant obj = ThisComponent.CreateInstance(com.sun.star.drawing.OLE2Shape) aPos = obj.position aPos.x = 2000 aPos.y = 2000 obj.position = aPos aSize = obj.size aSize.height = 2000 aSize.width = 2000 obj.size = aSize obj.CLSID = 8BC6B165-B1B2-4EDD-aa47-dae2ee689dd6 obj.name = WriterObj thisComponent.drawpages(0).add(obj) obj.EmbeddedObject.Component.Text.String= C'est dur linfo end sub Cordialement. T. Vataire - To unsubscribe, e-mail: prog-unsubscr...@fr.openoffice.org For additional commands, e-mail: prog-h...@fr.openoffice.org
Re: [prog] Insérer un document writer dans Impress
Bonjour Thibault, Merci pour votre réponse. Je cherche en fait à faire ouvrir une fenêtre writer dans un document impress pour pouvoir utiliser les fonctionnalités de Dmaths et donc insérer facilement des formules dans la présentation. J'écris donc comme dernières lignes : obj.EmbeddedObject.Component.Text.String= ThisComponent.CurrentController.Select(obj) Pour que l'objet inséré soit sélectionné et donc éditable par double-clic. Est-il possible d'écrire du code qui équivaut à ce double clic, pour que l'objet soit mis directement en mode édition ? Merci d'avance. Thibault Vataire a écrit : Bonjour, Le problème de votre exemple vient de la manière dont vous modifiez les valeurs de positions et de taille. Voici comment procéder pour que cela fonctionne : sub insereTexte dim obj as object dim aPos as variant dim aSize as variant obj = ThisComponent.CreateInstance(com.sun.star.drawing.OLE2Shape) aPos = obj.position aPos.x = 2000 aPos.y = 2000 obj.position = aPos aSize = obj.size aSize.height = 2000 aSize.width = 2000 obj.size = aSize obj.CLSID = 8BC6B165-B1B2-4EDD-aa47-dae2ee689dd6 obj.name = WriterObj thisComponent.drawpages(0).add(obj) obj.EmbeddedObject.Component.Text.String= C'est dur linfo end sub Cordialement. T. Vataire - To unsubscribe, e-mail: prog-unsubscr...@fr.openoffice.org For additional commands, e-mail: prog-h...@fr.openoffice.org -- Didier Dorange-Pattoret http://www.dmaths.org http://sesamath.net Soutenez le projet Dmaths : rejoignez le club ou faites adhérer votre établissement ! http://www.dmaths.org/documentation/doku.php?id=presentation:club
[prog] Insérer un document writer dans Impress
Accusé de réception Votre [prog] Insérer un document writer dans Impress document : a été Hervé SION/Mairie reçu par : le : 06/05/2010 08:44:12 - To unsubscribe, e-mail: prog-unsubscr...@fr.openoffice.org For additional commands, e-mail: prog-h...@fr.openoffice.org
[prog] Insérer un document writer dans Impress
Accusé de réception Votre [prog] Insérer un document writer dans Impress document : a été reçu par : le : 06/05/2010 07:45:41