https://foro.gambas-es.org/viewtopic.php?f=1&t=1847
-----------------------------------
arubioc
Sabado, 27 Agosto 2011, 22:43

Ampliación De Una Aplicación Mediante Plug-ins
-----------------------------------
La verdad me gustaría poder ir ampliando mi programa de gestión mediante la incorporación de plug-ins, pero nunca he hecho algo similar.
Alguien tiene alguna idea de como una vez compilado el programa puedo ir añadiendo opciones al menú y que me ejecute nuevos ejecutables de gambas2?

Un saludo


-----------------------------------
netking86
Domingo, 28 Agosto 2011, 02:12

Re: Ampliación De Una Aplicación Mediante Plug-ins
-----------------------------------
Hola Arubioc

   Yo estoy desarrollando un programa y parte hace lo que comentas, pero usando el componente gb-script. Realmente es muy útil y potente, te lo recomiendo. Pero me imagino que no solo querrás eso, sino que además esos plugins tengan interfaz gráfica. En ese caso, desconozco si desde un script puedes incluir una librería de componentes y crear un formulario en ejecución. Puedes probar a ver... El programa que estoy desarrollando (por si quieres echarle una vista al código) es Open Movie Catalog (esta en la sección programas)

   Como son scripts, mi idea es que los propios usuarios adapten y  (si en un futuro abandono el proyecto) puedan mantener la aplicación. Por ello, incluí un editor de estos scripts. 

   Aparte de esto, desconozco si hay otro modo. Ya te digo, yo probaría por crear formularios en ejecución desde un script, creo que debería funcionar (siempre y cuando incluyas las librerías adecuadas y estas estén instaladas en el PC del usuario)

Un saludo!


-----------------------------------
jsbsan
Domingo, 28 Agosto 2011, 03:14

Re: Ampliación De Una Aplicación Mediante Plug-ins
-----------------------------------
[quote]La verdad me gustaría poder ir ampliando mi programa de gestión mediante la incorporación de plug-ins, pero nunca he hecho algo similar. 
Alguien tiene alguna idea de como una vez compilado el programa puedo ir añadiendo opciones al menú y que me ejecute nuevos ejecutables de gambas2? 
[/quote]

Se me ocurre que puedes crear un  menus (o barra de botones) [b]segun un fichero de configuracion[/b], y si modificas el fichero de configuracion (le añades  otra opcion), en el menu se vea reflejado esa opción.


Esa nueva opción, ejecutaría otro programa ejecutable (gambas, c, python, .sh, ....) mediante la orden shell o exec. 

A vista de un usuario seria el mismo programa que le has añadido una nueva opción, pero realmente tendrías varios programas.

Hace tiempo hice este programa:

[url=http://jsbsan.wordpress.com/2009/08/09/menus-con-documentos-recientes/]Menus con documentos recientes

[img]http://jsbsan.files.wordpress.com/2009/08/menu.jpg?w=500&h=500[/img]

Gestionaba un menu de archivos recientes abiertos, (con un limite de 5). Lo que puede hacer es aumentar ese limite según tus futuras necesidades.


Saludos.


-----------------------------------
arubioc
Domingo, 28 Agosto 2011, 08:39

Re: Ampliación De Una Aplicación Mediante Plug-ins
-----------------------------------
Aha!
Netking86: Gracias por tu respuesta, efectivamente la interface que quiero es gráfica, aun que segun la tarea a realizar podria no ser necesaria la interface gráfica, como un plug-in de actualización de precios etc...
Aun que creo que hoy en dia es mucho mejor tener una interfaz gráfica con el usuario.

jsbsan: Arigato gozaimas, Esa seria una posible solución muy válida para ampliar mediante algun tipo de fichero XML, donde fuese sencillo editarlo con un simple editor de textos, o incluso hacer un pequeño programilla para editarlo facilmente. Voy a ver si puedo hacer que el meu se expanda a medida que creo plug-ins, para no tener que limitarlo a 5, 10 o un número fijo de plug-in máximo. No me gusta la idea de tener opciones del menu "vacias", si doy con ello cuelgo algo. Por cierto la falta de documentación me trae de cabeza.


-----------------------------------
jsbsan
Domingo, 28 Agosto 2011, 10:41

Re: Ampliación De Una Aplicación Mediante Plug-ins
-----------------------------------
[quote]No me gusta la idea de tener opciones del menu "vacias"[/quote]

No salen vacias, para eso cuando defino el menu, indico que no esten visibles:

[img]http://www.imagengratis.org/images/03pantallazof.png[/img]

Asi cuando incias el programa, sale:
[img]http://www.imagengratis.org/images/01pantallazod.png[/img]
(porque la primera opcion la tengo puesta como visible=true, el resto esta oculta porque visible no esta checkeada

A medida que le voy añadiendo archivos abiertos:

[img]http://www.imagengratis.org/images/02pantalljj8ej.png[/img]

[quote]Voy a ver si puedo hacer que el meu se expanda a medida que creo plug-ins, para no tener que limitarlo a 5, 10 o un número fijo de plug-in máximo.[/quote]

Ese seria la mejor opción, que se vaya añadiendo al menú las opciones,  a medida que las vayas necesitando... también le voy a echar un vistazo....

[quote]Por cierto la falta de documentación me trae de cabeza.[/quote]

Hay documentación:
La principal fuente es: [url=http://gambasdoc.org/help/]http://gambasdoc.org/help/
En este foro hay cientos de preguntas respondidas (solucionadas)
Soplo ha escrito mucha temas de ayuda, estan en Documentación y en "Bases del Conocimiento" en este foro
Y en blog puedes encontrar varios manuales, que te pueden ayudar [url=http://jsbsan.blogspot.com/p/manuales.html]http://jsbsan.blogspot.com/p/manuales.html

Y siempre puedes preguntar dudas, que seguro que alguien te contesta en el foro.

Saludos


-----------------------------------
arubioc
Domingo, 28 Agosto 2011, 11:40

Re: Ampliación De Una Aplicación Mediante Plug-ins
-----------------------------------
Arigato jsb san: Si, no me había dado cuenta. Respecto a la documentación, si, ando por este foro, tu web, otros pequeños blogs, pero sigue siendo un poco limitada. Creo que para la expansión de este leng. de programación es necesaria más documentación. Aprovecho para agradecerte lo que haces para la comunidad. Gracias.


-----------------------------------
jsbsan
Domingo, 28 Agosto 2011, 13:05

Re: Ampliación De Una Aplicación Mediante Plug-ins
-----------------------------------
Bueno, he conseguido esto código:

[code linenumbers=false syntax=gambas]PUBLIC SUB Form_Open()
DIM hMenu AS Menu 
DIM hmenu2 AS Menu 
DIM hmenu3 AS menu 

hMenu = NEW Menu(fmain) AS "eventoMenu"

hMenu.Text = "hola" 
hmenu.Checked = 1

hmenu2 = NEW Menu(hmenu) AS "eventoMenu2"

hmenu2.text = "prueba"
hmenu2.Checked = 1
hmenu2.Picture = Picture["icon:/24/audio"]

hmenu3 = NEW Menu(hmenu) AS "eventoMenu3"

hmenu3.text = "varios"

END


PUBLIC SUB eventomenu2_click()
  
  PRINT "hola, al pulsado el menu2 (prueba)"
  
END
[/code]

Con el consigo crear un menu a base de código... pero todavia no es una solución ya que el numero de opciones es fija...


-----------------------------------
jsbsan
Domingo, 28 Agosto 2011, 13:10

Re: Ampliación De Una Aplicación Mediante Plug-ins
-----------------------------------
[quote]pero sigue siendo un poco limitada. Creo que para la expansión de este leng. de programación es necesaria más documentación.[/quote]

Si es cierto, pero hace 2 años la situación era aun peor... poco a poco se va mejorando tanto los ejemplos como los manuales y libros.


