SoloCodigo
Programación General => C/C++ => Mensaje iniciado por: x.cyclop en Lunes 19 de Junio de 2006, 08:19
-
¿Cómo se hace el GUI de una aplicación multiplataforma sin que requiera nada?
Por ej. Firefox sirve para Windows, GNU/Linux y Mierdintosh.
¿Cómo hicieron el GUI?
No creo que lo hayan hecho en VC++ porque no se ejecutaría fuera de Windows. Y si fuera con KDevelop/Glade, para ejecutarse en Windows necesitarías Qt/Gtk y no la necesitas.
:blink: :unsure:
-
java, los temas de firefox vienen empaquetados en .jar
-
La verdad es que no se mucho sobre el Firefox pero esto puede ser util:
http://developer.mozilla.org/en/docs/Windo...d_Prerequisites (http://developer.mozilla.org/en/docs/Windows_Build_Prerequisites)
-
¿Cómo se hace el GUI de una aplicación multiplataforma sin que requiera nada?
Por ej. Firefox sirve para Windows, GNU/Linux y Mierdintosh.
¿Cómo hicieron el GUI?
No creo que lo hayan hecho en VC++ porque no se ejecutaría fuera de Windows. Y si fuera con KDevelop/Glade, para ejecutarse en Windows necesitarías Qt/Gtk y no la necesitas.
:blink: :unsure:
TK, nadie escapo de los 80's, realmente no hay un estandar, solo es una red de librerias que "generalisan" el API madre del SO, como Qt, para Unix usa X, Windows WinAPI, para Mac Carbono/Cocoa...
Tk hace esta funcion... pero usalo :lol:
Tk es universal tool kit, pero no se si hay para C/C++
-
Java no creo porque se ejecuta sin el JVM.
Tk tampoco porque solo hay para Ruby, Perl y Python.
Creo que con esto, pero no estoy seguro: http://en.wikipedia.org/wiki/WxWidgets (http://en.wikipedia.org/wiki/WxWidgets) :blink:
Exactamente ¿cómo hace el WxWidgets? ¿Para ejecutar una aplicación hecha con esto se necesitan librerías del mismo?
Por ej. El Code::Blocks está hecho con WxWidgets, ¿se necesitan librerías de WxWidgets para poder ejecutarlo o este "transoforma" el código de acuerdo al sistema operativo? :unsure:
-
Java no creo porque se ejecuta sin el JVM.
Tk tampoco porque solo hay para Ruby, Perl y Python.
Creo que con esto, pero no estoy seguro: http://en.wikipedia.org/wiki/WxWidgets (http://en.wikipedia.org/wiki/WxWidgets) :blink:
Exactamente ¿cómo hace el WxWidgets? ¿Para ejecutar una aplicación hecha con esto se necesitan librerías del mismo?
Por ej. El Code::Blocks está hecho con WxWidgets, ¿se necesitan librerías de WxWidgets para poder ejecutarlo o este "transoforma" el código de acuerdo al sistema operativo? :unsure:
Estas mal, mira wxWidgets es especifico, es como un Tk, pero el dll/so queda para Win32, Mac OS X, GTK+, X11, Motif o WinCE, wxWidgets tiene que ser compilado para cada ocasion, al igal que en Tk, el dll/so queda en el compilado, o tiene que ser requerido como dependencia, tal como hace Audacity
wxWidgets uses the platform's own native controls rather than emulating them. It's also extensive, free, open-source, and mature.
No podes programa GUI en Windows para Mac o en Gnu/Linux para Windows, ameno que lo emules, claro esta, pero aun asi no es lo mismo.
http://freshmeat.net/redir/fltk/2758/url_h...ge/www.fltk.org (http://freshmeat.net/redir/fltk/2758/url_homepage/www.fltk.org) :rolleyes:
Por ej. El Code::Blocks está hecho con WxWidgets, ¿se necesitan librerías de WxWidgets para poder ejecutarlo o este "transoforma" el código de acuerdo al sistema operativo?
Como dije, esta incluido en el binario, o tienen un .so/dll en el cual esta la libreria comopilada para cada plataforma, no podes hacer ejecutables de Win* en Gnu/Linux o de Mac en Gnu/Linux, incluso no se puede en *BSD.
-
Bueno insistí en lo de java por lo de los .jar, pero he desempaquetado el jar del tema Noia Xtreme y me he dado una sorpresa.
Al parecer no se usa ningún lenguaje en particular, al revisar el contenido del jar solo estan desde luego los archivos de imagenes y...
Unos archivs.rdf que al editarlos son finalmente XML utilizando unas extenciones de chrome y por cada modulo del tema hay una carpeta con las correspondientes imagenes y un archivo de estilos en cascada (.css) así que la respuesta era más sencilla de lo que esperaba en un momento .
Los temas de firefox estan basados en XML y hojas de estilo en cascada(css).
Aca hay algo de informacion relacionada:
http://www.mozilla.org/support/firefox/edit (http://www.mozilla.org/support/firefox/edit)
http://developer.mozilla.org/en/docs/Sunbird_Theme_Tutorial (http://developer.mozilla.org/en/docs/Sunbird_Theme_Tutorial)http://developer.mozilla.org/en/docs/Themes
-
Si JuanK, pero la pregunta era el API, no el estilo.
Realmente es un dato curioso.
Tk tampoco porque solo hay para Ruby, Perl y Python.
Podes usar estos y compilarlos, o ver como funcina el API, que esta hecho en C/C++, pero es mucho camel, ademas te falto TCL, que lo podes usar con C/C++, si no estoy mal, en cuanto a los interpretadores, es igual que el API, tendrias que incluir la libreria y compilarlo para cada caso, por eso no hay un solo paquete para Windows, Gnu*, Solaris...
-
Si JuanK, pero la pregunta era el API, no el estilo.
Realmente es un dato curioso.
Tk tampoco porque solo hay para Ruby, Perl y Python.
Podes usar estos y compilarlos, o ver como funcina el API, que esta hecho en C/C++, pero es mucho camel, ademas te falto TCL, que lo podes usar con C/C++, si no estoy mal, en cuanto a los interpretadores, es igual que el API, tendrias que incluir la libreria y compilarlo para cada caso, por eso no hay un solo paquete para Windows, Gnu*, Solaris...
Umm pero para desarrollar temas para firefox no requieres usar ninguna API, basta solo con usar XML y CSS para describir la estructura del tema.
Ya en otras cosas como por ejemplo lo que hace java, puede crear la aplicacion como quieras y le configuras el look and feel que desees, de igual forma en .NET
Desde luego para aplicaciones stand alone esos look and feel por debajo no son sino mascaras a la API de cada sistema operativo, y en lenguajes como .net y java ya viene incorporados los diferentes conportamientos de cada ´thema´y desde luego permiten crear nuevos, por eso podemos ejecutar un aplicativo java en windows y cambiar su look and feel para que se vea como estilo java, estilo wiondows etc...
Todo depende del nivel de robustes que se le de a la funcionalidad.
-
Con razón tantos themes... :D
Para extensiones basta con Xul (Xml) y Javascript.
¿Entonces Firefox (Amsn...) está hecho con WxWidgets? :blink:
-
http://developer.mozilla.org/en/docs/Linux...d_Prerequisites (http://developer.mozilla.org/en/docs/Linux_Build_Prerequisites)
http://developer.mozilla.org/en/docs/Windo...d_Prerequisites (http://developer.mozilla.org/en/docs/Windows_Build_Prerequisites)
http://developer.mozilla.org/en/docs/Mac_O...d_Prerequisites (http://developer.mozilla.org/en/docs/Mac_OS_X_Build_Prerequisites)
http://developer.mozilla.org/en/docs/OS/2_...d_Prerequisites (http://developer.mozilla.org/en/docs/OS/2_Build_Prerequisites)
http://developer.mozilla.org/en/docs/BeOS_...d_Prerequisites (http://developer.mozilla.org/en/docs/BeOS_Build_Prerequisites)
Como dije, depende de la plataforma, mejo usa Perl :P
-
Daba un poco de hueva leer todo eso. :D
Gracias.
-
Firefox esta hecho en javascript (lenguaje), XUL (interface) y css (estilo y temas), utilizando el engine de mozilla que se llama gecko para juntar todo eso y XPCOM para darle potencia a javascript.
-
Yo creo que la cosa va así: Firefox está programado en C++. En el programa implementaron un "motor" de GUI multiplataforma, que se basa en lo que mencionaron anteriormente.
Saludos,
JJ (Geo).
-
Yo creo que la cosa va así: Firefox está programado en C++. En el programa implementaron un "motor" de GUI multiplataforma, que se basa en lo que mencionaron anteriormente.
Saludos,
JJ (Geo).
eso mismo pienso yo.
-
firefox usa el engine de mozilla (gecko), firefox no agrega nada nuevo al engine, de hecho firefox, seamonkey, mozilla, thunderbird y todos los demas estan programados de la misma forma, todos usan gecko e implementan las interfaces como describi arriba.
si quieren ver mas sobre eso vean aca:
http://www.georgenava.com/applauncher.php (http://www.georgenava.com/applauncher.php)
todas esas aplicacioncitas estan hechas con XUL css y javascript.
obviamente solo se ve con browsers que usen gecko asi que IE, opera y safari abstenerce.
ahi les mando un screenshots para que se saquen las dudas
-
claro eso mismo hemos dicho, pero la parte de los skins o del motor de GUI oo como se llame si es propia de firefox no?
-
Así es. Los themes, extensiones... están hechos con Xul (Xml), Javascript y Html/Css. :whistling:
Hubiera sido más fácil con WxWidgets. :D
-
Así es. Los themes, extensiones... están hechos con Xul (Xml), Javascript y Html/Css. :whistling:
En eso estamos todos de acuerdo respecto a firefox... o no?
-
claro eso mismo hemos dicho, pero la parte de los skins o del motor de GUI oo como se llame si es propia de firefox no?
El GUI es repectivo a cada plataforma, bien dice ne los links que puse, para Gnu/Linux Gtk2 + libX-t, para los otros su API.
;)