New GUI lib.
Features:
-----------------------------------------------------------------------------------------------------------------
Flags:
-----------------------------------------------------------------------------------------------------------------
#define GUI_RCLICK_ACTIVATE 0001h
#define GUI_LCLICK_ACTIVATE 0002h
#define GUI_CLICK_ACTIVATE (GUI_RCLICK_ACTIVATE | GUI_LCLICK_ACTIVATE)
#define GUI_FOCUS_ACTIVATE 0004h
#define GUI_RELATIVE_COORDX 0010h
#define GUI_RELATIVE_COORDY 0020h
#define GUI_RELATIVE_COORDS (GUI_RELATIVE_COORDX | GUI_RELATIVE_COORDY)
#define GUI_DESTROY_THIS 0040h
-----------------------------------------------------------------------------------------------------------------
Types:
-----------------------------------------------------------------------------------------------------------------
type _object;
int id; /* Internal use only, contain _GUI_Button process id */
int x; /* Coord x, if this is -1, then this _GUI_Button is set on "last coord x" + "last width" + GUI_Interline_Size */
int y; /* Coord y, if this is -1, then this _GUI_Button is set on "last coord y" + "last height" + GUI_Interline_Size */
int w; /* Width */
int h; /* Height */
int flags;
int bordercolor; /* Border color */
int bgcolor; /* Background color */
string font; /* Font used in _GUI_Button */
string caption; /* Text of _GUI_Button */
string icon; /* Icon of _GUI_Button (optional) */
int action; /* Unique action id, this action id is triggered when _GUI_Button is clicked */
_object * child; /* Pointer to child object list */
end
-----------------------------------------------------------------------------------------------------------------
Globals:
-----------------------------------------------------------------------------------------------------------------
GUI_Border_Size = 2; /* Objects border */
GUI_Interline_Size = 4; /* Interline space size */
-----------------------------------------------------------------------------------------------------------------
Functions:
-----------------------------------------------------------------------------------------------------------------
function GUI_Do_Menu (_object * obj)
Input:
obj - is a pointer to _object table that contain the objects list to draw
-----------------------------------------------------------------------------------------------------------------
function GUI_Destroy_All_Menus() - Kill active buttons
-----------------------------------------------------------------------------------------------------------------
function GUI_Disable_All_Menus() - Freeze currents buttons
-----------------------------------------------------------------------------------------------------------------
function GUI_Enable_All_Menus() - Wake up currents buttons
-----------------------------------------------------------------------------------------------------------------
GUI_Refresh_Menus - Perform a frame
-----------------------------------------------------------------------------------------------------------------
function GUI_Destroy_Menu(_object * obj)
Input:
obj - is a pointer to _object table that contain the objects list to destroy
-----------------------------------------------------------------------------------------------------------------
function GUI_Disable_Menu(_object * obj)
Input:
obj - is a pointer to _object table that contain the objects list to disable
-----------------------------------------------------------------------------------------------------------------
function GUI_Enable_Menu(_object * obj)
Input:
obj - is a pointer to _object table that contain the objects list to enable
-----------------------------------------------------------------------------------------------------------------
function int GUI_AlertBox( string fnt, int bordercolor, int bgcolor, string * str, int nstr, _object * objs )
Input:
fnt - font name of text
bordercolor - border color
bgcolor - background color
str - pointer to string array with text
nstr - count of string array with text
objs - pointer to _object table that contain the objects list to draw
Return:
Action id of selected button
-----------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------
function GUI_Move_Menu(_object * obj )
Input:
obj - is a pointer to _object table that contain the objects list to destroy
Return:
None
Autors:
Prg
Splinter
-----------------------------------------------------------------------------------------------------------------
http://betatester.bennugd.org/betas/samples/gui.rar
Samples:
Drop-Down Menu
(http://img207.imageshack.us/img207/7320/dropdownmenu1jc6.png)
Drop-Down Menu
(http://img408.imageshack.us/img408/7063/dropdownmenu2el1.png)
Button Menu
(http://img408.imageshack.us/img408/8859/buttonmenuvy9.png)
Alert Box
(http://img510.imageshack.us/img510/5818/alertbox1lm4.png)
Alert Box
(http://img139.imageshack.us/img139/3012/alertbox2vq8.png)
Las GUI_RELATIVE_* todavia no se usan, quizas no tengan uso a futuro y sean eliminadas.
Mmmm... interesante, ahora la bajo y la pruebo, gracias! :)
ya lo había adaptado a mi proyecto, sin embargo no había visto esas funciones para dormir todos los botones y destruirlos, bueno, creo que compararé para ver si es la versión que adapté, si no es así, entonces vuelvo a adaptarla. :)
Por cierto Prg, te has planteado integrar tu proyecto al ide de phreak?
La verdad que no lo pense... el producto de phreak es cerrado por ahora...
:) pues considero mi proyecto como de todos, así que si ustedes lo desiden así, pues entonces vamos... Ahora mismo estoy descargando su paquete, para ver cómo es. ustedes digan :)
Quote from: Prg on October 24, 2008, 05:35:05 PM
:) pues considero mi proyecto como de todos, así que si ustedes lo desiden así, pues entonces vamos... Ahora mismo estoy descargando su paquete, para ver cómo es. ustedes digan :)
Esta perfecto que sea para todos, asi deberia ser... ojo con la ventana de creditos, no la vas a sacar??? jejeje, era un chiste, es solo un ejemplo de uso... ahi podrias poner un about y todos los creditos que creas conveniente...
Yo lo dicia porque el ide de Phreak pinta muy bien, tendría editor de texto y si se incorpora tu proyecto, ya tendríamos un ide con editor de codigo y fpgs. Y todo escrito en bennu, asegurando la portabilidad. No se, es mi opinión. Claro que si quieres sacar tu proyecto por separado no hay problema. Saludos!
IDE != GUI
Lo que splinter hace aqui es una libreria para facilitar la creacion de interfaces de usuario. Al menos asi lo he entendido yo.
QuoteYo lo dicia porque el ide de Phreak pinta muy bien, tendría editor de texto y si se incorpora tu proyecto, ya tendríamos un ide con editor de codigo y fpgs. Y todo escrito en bennu, asegurando la portabilidad. No se, es mi opinión. Claro que si quieres sacar tu proyecto por separado no hay problema. Saludos!
blostec, no te preocupes amigo, :) como ustedes desidan, a mí también se me hace una buena idea, pero también hay que consultarlo con phreak, y con los demás. También puede dejarse una versión incluyendo los dos proyectos y otra por separado con cada uno. saludos también.
Quoteojo con la ventana de creditos, no la vas a sacar???
Je, je, je...
Esto mas que un proyecto es una libreria de libre uso... solo quiero aportar algo para facilitar la construccion de aplicaciones/interfaces de usuario (como dijo animanegra)... no pretende ser mas que eso... luego si vamos haciendola crecer entre todos mejor... o sino, a medida que vaya creando cosas y si veo que se pueden agregar al gui lo hare... pero creo que con esto alcanza para hacer muchas cosas...
Quote from: animanegra on October 24, 2008, 06:37:24 PM
IDE != GUI
Lo que splinter hace aqui es una libreria para facilitar la creacion de interfaces de usuario. Al menos asi lo he entendido yo.
jeje si ya lo se, yo me refería al proyecto de Prg.
Probada en ubuntu no da ningun problema. Con la wip 14 (Creo :S). A ver si pruebo a hacer algo a ver como es de simple su uso ;-)
A blobstec perdon, entendi que el proyecto de prg era un gui para programacion de bennu. :\ me he debido liar :D muy propio de mi.
Mmmm, muy interesante, mucho, creo que me podría servir para algo que iba a hacer a corto plazo (si termino con la lista de "procesos runing")
Muchas gracias, splinter, una más de karma ;)
;) me alegro que te haya gustado...
Como siempre un trabajo fantastico Splinter...sigue asi.
Un detalle....arrastrando gui_test.prg al compilador no funciona...sin embargo si compila haciendolo a mano con teminal (windows).
Una cuestion Splinter....no hay ningun problema en poner los mods y libs en carpetas para que no se vea cualquier programa tan confuso verdad?
Que programa recomendais para cambiar el icono de los ejecutables? o Bennu permite predefinir un archivo .ico para poder ponerlo como icono del bgdi.exe?
Gracias
gracias...
se pueden poner en otros directorios, mientras estos esten en el PATH (variable de enviroment)
con respecto a los iconos, creo que podrias usar el "resource hack"... otro no se me ocurre...
ya hice la prueba de lo que te había comentado, puse un :
load_fpg("test.fpg");
y un
save_fpg(0,"mono.fpg");
en el código del gui_test, y los gráficos se vuelven negros cuando se guarda el nuevo fpg, en el fpg mono.
En cuanto a lo de los problemas con los botones... je je je, es que no acostumbro todavía, sin embargo será una gran ayuda la librería, gracias. :)
tenes que hacer...
fpg = load_fpg("test.fpg");
y un
save_fpg(fpg,"mono.fpg");
me sucede lo mismo, será mi pc, o mi versión de... no, no puede ser la versión del bennu, pues ya hice prueba con otra versión del prg para cargar fpgs sin los botones y los gráficos me salen bien. El fpg pesa 1 kb menos, y todos los gráficos son negros. No entiendo, a tí ¿no te sucede?
ahora pruebo...
no graba, no hay opcion para grabar, me deja escribir el nombre pero no veo opcion para que grabe...
y algo pasa que se rompen todos los menus...
lo que pasa es que tu lo hiciste en mi archivo, pero yo lo hice en el tuyo... je je,... Mira, aquí está tu archivo sin la carpeta png para poderlo subir, y con las modificaciones, sólo presiona a y observa, y luego busca en la carpeta el fpg problemático llamado mono. ;)
ah, claro, claro, al momento de guardar el fpg usa la paleta general que cargo con el primer png, la paleta general del sistema ya esta cargada al cargar el primer png... es un bug, lo tendre que revisar... lo de la "a" ya lo sabes...
Fixed!
Si te urge esta version la subo ya mismo...
:) pensé que ya eran mis ojos que miraban en blanco y negro y por eso sólo yo miraba el problema :D
No te preocupes, puedo ir trabajando con otros problemas. :) Gracias.
En cuanto a lo de la "a", je je je... no logrué que se quitara, creo que es porque son funciones, duermen al proceso que las llama, y hay algo que no se cumple, por lo tanto la función se queda en el while... supongo... no me lo explico, y pues se queda el gráfico del proceso pintado y... bueno, pero no te preocupes, ya dejé eso para después, cuando me familiarice más ;)
Gracias por todo amigo. Continuaré acomodando lo demás. Por cierto, no puedo colocar botones en la posición del mouse ¿vd? para el click derecho. Si no, pues lo dejo como estaba, y sólo acomodo los botones más al estilo general (new_map, map_clear... ;))
si, podes cambiar la posicion en la tabla como lo hace el alertbox, no te sugiero que se mueva con el mouse, porque el mouse es quien activa los botones...
;) me parece muy interesante y util y para lo que tengo entre manos me va ir de perlas ;)
Aaagghh!!, qué buena la librería ésta!!! Y todo con Bennu. Qué guay.
Puestos a pedir, si se pudieran hacer cajas de texto ya sería la repera en vinagre, pero vaya, no se puede pedir más.
Felicidades, y gracias!!!
Quote from: syous on October 28, 2008, 09:37:14 AM
;) me parece muy interesante y util y para lo que tengo entre manos me va ir de perlas ;)
voy a crear ingramente el interfaz de usuario, autentificacion y el autoupdate con esta maravilla
:)
bueno, aquí les dejo una versión que agrega una función para mover los botones,
la sintaxis es, en un ejemplo:
GUI_Move_Menu(button_yes_no, sizeof(button_yes_no)/sizeof(button_yes_no[0]) , x, y);
en donde "button_yes_no" es el conjunto de botones a mover.
borré esta versión, y hay nueva versión :)
grax, 1 karma...
Nueva GUI...
Ya no es mas necesario pasar la cantidad de elementos del menu, ahora solo se debe terminar la tabla con un registro vacio en el cual el elemento id, debe valer -1.
Tambien se pueden poner menus hijos.
Se puede definir que el objeto sea activado, con el boton derecho, izquierdo, cualquiera de los 2, o por focus, y se puede configurar que al activarse un objeto se borre todo el menu anterior (util para el caso de menus botones).
La unica contra de esto es que los campos menus hijos hay que setearlos en tiempo de runtime, no se puede hacer en tiempo de compilacion. Quizas luego se puede armar una funcion para cargar menu, en la cual al cargar el menu desde un archivo de datos, este campo sea llenado automaticamente en la misma funcion.
Con estos cambios logramos un efecto mas acorde a un menu y no hay que escribir tanto en el handler.
:D no se si se puede pero seria interesantre que se puede un tipo barprogress de vc o vb
menos curro xDDD ya lo hecho a mi manera es interesante de echo estoy reprogramando todo sod server para crearlo tipo aplicativo y menus windows para gestionar los clientes conectados etc etc
felicidades splinter ;D
:)
nueva version:
- Se corrige el tema de los colores que si no se especifican colores segun la profundidad entonces no se dibujan bien al cambiar de profundidad de color, ahora los colores deben ser siempre en 32 bits, el api se encarga de actualizarlo segun corresponda...
- Se corrige tambien un tema que en 16 bits cuando el cursor salia de un boton u opcion de menu, esta quedaba en negro...
- Se corrige el ejemplo, para cargar la paleta default antes que nada, y se cambia el mouse pointer para que use la paleta default, entonces con esto se ve bien en 8 bits.
;) cada vez mas interesante
instalando nuevos cambios ;)
Excelente, la acabo de adaptar, sólo tengo un problema: que se te olvidó asignarle una z a los mensajes, de nuevo, pero está bien, la he probado a 16 b y 32 y funciona de maravilla. :)
y la función gui_move, está un poco rara, no la entiendo muy bien creo que ahora será movimiento relativo a la posición que el botón tiene ¿no es así?, pero si pongo GUI_move_Menu(button_yes_no2, 1, 400); un botón que estaba en x=349, se mueve a casi 700;
sería
relx = obj.id.x - x - obj.w / 2;
obj.id.x += relx;
relx = 349 - 1 - 50= 298;
obj.id.x (349) += 298;
x=647;
...
Bueno, quizá sólo debo acostumbrarme un poco, pero no entiendo muy bien.
Bueno, nos vemos Splinter, luego la probaré a 8 b, y con todo lo que he visto has movido. :)
z a los mensajes? no se a que te referis, pero bueno, ya tengo una version con un mejor tratamiento de Z hasta donde pude probar... que no modifica en nada a la programacion que tengas hecha en cuanto al uso de la GUI...
Con respecto al move, claro, ahora es relativo a las coordenadas que tiene el menu original, con esto, la move se hace compatible con cualquier menu, tipo boton o tipo menu desplegable... se mueve en base al objeto inicial, y siendo el borde superior izquierdo el punto de control, como es el menu...
Subido nuevo codigo de la GUI... son 2 lineas de codigo modificadas...
gui.rar >> 03-Nov-2008 17:36 364K
Da error de CRC (Final de archivo inesperado), creo que no te lo ha subido completo.
caramba!
bueno subire la ultima con alphas y otras cosas...
corregida la descarga...
que bronca que tengo, desde las 9 AM y ya van las 14:23 que estoy intentando enviar un mail, y no puedo... maldita telefonica/speedy de argentina... tienen tremendos problemas de ruteo, no me dan solucion y ahora me ponen la maquinita de "estamos trabajando para solucionar su problema"... maldicion!!!!!
Hola. ¿Conocéis esto: http://members.chello.nl/w.boeke/SDL-widgets/index.html ?
No sé si vale la pena o no, pero como ideas puede estar bien...Es un intento de hacer una GUI con SDL a pelo...
Por si alguien le quiere echar un vistazo...
La verdad que no la habia visto, seria cuestion de estudiarla, gracias...
no me había dado cuenta cuál era el problema en gui_move, aunque suponía que sería algo de signos...
el original dice así:
[code language="bennu"]
relx = obj.id.x - x - obj.w / 2;
rely = obj.id.y - y - obj.h / 2;
while (obj.id != -1)
obj.id.x += relx;
obj.id.y += rely;
obj.id.son.x = obj.id.x;
obj.id.son.y = obj.id.y;
obj++;
end[/code]
pero relx se produce negativo, así que en lugar de sumarla la coordenada, la restamos y así acomodamos el signo.
[code language="bennu"]
relx = obj.id.x - x - obj.w / 2;
rely = obj.id.y - y - obj.h / 2;
while (obj.id != -1)
obj.id.x -= relx;
obj.id.y -= rely;
obj.id.son.x = obj.id.x;
obj.id.son.y = obj.id.y;
obj++;
end[/code]
Agrego una nueva versión aquí, con la corrección, y compatibilidad con fuentes bdf.
el codigo que puse yo funciona perfecto con valores negativos y positivos, es la idea, por eso lo sumo, sumar un valor negativo es igual a restarlo... de hecho el ejemplo que subi, creo que se me escapo con un codigo que no debia ir y si pulsas el boton derecho del mouse, mueve el menu hasta donde esta el mouse, no importa donde este esté.
no se que comportamiento ves mal, pero a mi me funciona bien.
con respecto a la gui, tengo una nueva que activa los menus con solo pasar el mouse, para hacer los menus desplegables, y tambien si hay mas opciones de las que entra en pantalla agrega un item de "+" para ir a la proxima pagina de opciones... y tambien elimina los menus hijos al pasar por el padre... el problema con esto es que me dejo de funcionar los menus en forma de botones que borran el menu anterior al crear uno nuevo... tengo que revisarlo, pero estoy sin tiempo... ah, tambien agregue cosas como alpha, Z para los alertbox, funciones del estilo CreateMenu, AddObject, etc... para no tener que estar declarando arrays fijos, solo es otra forma de hacerlo...
ya vi que funciona bien... excepto cuando invocas el proceso y lo mueves inmediatamente, no me lo explico, pero no funciona, y esto es lo que me pasaba a mí. Lo invocaba (el botón), y lo movía inmediatamente, y desaparecía. inténtalo.
remplaza las líneas del mouse.left de tu gui_test.prg y verás lo que te digo.
if (mouse.right)
GUI_Do_Menu(b_main_menu);
GUI_Move_Menu(main_menu, mouse.x, mouse.y);
GUI_Move_Menu(b_main_menu, mouse.x, mouse.y);
end
y con las modificaciones ya funciona.
Yo hice esto para preparar la librería para un proyecto que estoy preparando para un concurso, la verdad la librería me facilita mucho la vida, aunque el hecho de que un click fuera no elimine los botones me está costando un poco de trabajo, pero veo que ya tienes avances en esto. Estaba pensando en crear un flags especial que permitiera que cuando se hace mouse.left y no se colisiona con el ratón, pues que los botones mueran, pero si ya llevas algo, mejor me espero :) .
Quote from: Prg on November 12, 2008, 02:20:59 AM
la verdad la librería me facilita mucho la vida...
no sabes cuanto me alegra leer eso y saber que por fin a alguien la lib le facilito mucho la vida...
Quote from: SplinterGU on November 12, 2008, 02:08:52 PM
Quote from: Prg on November 12, 2008, 02:20:59 AM
la verdad la librería me facilita mucho la vida...
no sabes cuanto me alegra leer eso y saber que por fin a alguien la lib le facilito mucho la vida...
y ni te imaginas lo que me esta solucionando a mi las cosas estoy haciendo un ide entero
:)
hola, he agregado botones especiales a los que he llamado booleanos (¿son booleanos?, no lo creo, pero tienen un ligero...) dejo la gui y el ejemplo modificado, si es un botón funciona como activado desactivado, de lo contrario, le da el valor a la variable.
¿no me entendieron?... creo que es mejor que lo vean por ustedes mismos ;D
gracias... ya lo probaré...
Vaya, no había visto este tema aún...
Por lo que veo es una especie de librería para crear una "barra de herramientas y menús" para juegos. Ahora mismo estaba programando una aplicación en Bennu y había empezado a programar una interfaz desde 0, me estaba resultando bastante pesado, así que quizás haga uso de esta.
¿Dónde está disponible la última versión Splinter? Llevo más de un año en el foro y todavía me cuesta encontrar los recursos xD
al principio del post ;)
¿ http://betatester.bennugd.org/betas/samples/gui.rar ?
Me sale que el link está roto, espero que no sea mi maldito ISP otra vez, me ofrece una conexión que es como tener 2 monos en un triciclo...
http://betatester.bennugd.org/snapshot/samples/gui.rar
lamentablemente se perdio la ultima version, tenia una mejorada y con algunas correcciones, pero bueno, esta sirve...
Recibida, espero sacarle todo su jugo :-X
Quote from: Windgate on May 19, 2009, 11:40:22 AM
Recibida, espero sacarle todo su jugo :-X
pasa un poco de zumo ;D
Pues si me acuerdo y saco tiempo (mala época para tener la mente en otro sitio) a ver cual es la última versión que tengo de la SplinterGUI, se que tengo un par, que las guardé en uno de mis discos de copia de seguridad y allí se quedó, pero no se de cuando son.
Yo suelo (No siempre, pero suelo) tener en todos mis juegos/aplicaciones/utilidades Bennu una carpeta llamada doc donde guardo un archivo llamado info_version.txt y voy anotando cambios en cada versión, fechas, autor, etc.
Imagino que haréis algo parecido y ya sé que da bastante pereza hacerlo, que a veces se olvida actualizarlo, etc. Pero cuando son proyectos que van a sufrir decenas de modificaciones nunca viene mal.
Sólo he probado el ejemplo de esta GUI pero aún no la he integrado en ningún sitio, a ver si esta tarde saco un ratillo...
Se me arruino el disco, por eso perdi los cambios...
yo suelo usar SVN.
Splinter ¿ no te acuerdas de los cambios? A mi me pasó más de una vez que perdí la última versión de algún código fuente, pero abriendo la última que tenía y dándole un poco al coco, me acordé de los cambios que hice y los rehice.
O no hay ganas :D.
Je je je, acordarse de los cambios... Yo hay veces que programo y programo y programo hasta dejarlo 100% estable porque sé que si lo dejo a medias es probable que al día siguiente no recuerde lo que he hecho... xD
Luego también está eso de que repetir por 2ª vez el mismísimo trabajo es algo bastante tedioso.
Si surge una versión mejorada no dudéis en colgarla, y en cualquier caso, cuando mire más a fondo esta GUI intentaré plantear posibles mejoras o sugerir nuevas funcionalidades si caben :P
eran muchos cambios... no recuerdo que hice... pero seguramente dice en este post que nuevos soportes estaba trabajando...
pero bueno, empezar de nuevo no me da...
Quote from: SplinterGU on May 26, 2009, 11:12:21 PM
eran muchos cambios... no recuerdo que hice... pero seguramente dice en este post que nuevos soportes estaba trabajando...
pero bueno, empezar de nuevo no me da...
animo que es muy util :D
me esta viniendo de perlas
No te da pereza o no te da la gana, no me quedó claro si lo vas a intentar o no. Sorry :(
"no me da" = "no da" = "ya fue"
lo siento, no entiendo la jerga, ninguna de las tres me solventa la pregunta. :( :(
Dices que ya fué, entonces es que ya lo has rehecho, supongo. :)
No. Yo creo que quiere decir que ya pasó el momento y que ahora no se va a poner a hacerlo.
Quote from: osk on May 28, 2009, 08:39:16 AM
No. Yo creo que quiere decir que ya pasó el momento y que ahora no se va a poner a hacerlo.
eso pense yo >:(
eso mismo...
por ahora estoy dedicado a la 1.0... luego con tiempo, podria ponerme a recordar lo que faltaba, pero no recuerdo ahora mismo que cosas se necesitaban corregir, por otro lado, creo que prg le agrego funcionalidad extra/mejoro en su editor fpg.
Quotecreo que prg le agrego funcionalidad extra/mejoro en su editor fpg.
algunas cositas, como las familias de botones con circuilito y algunas cosas más, aunque la adapté más que nada a lo que yo utilizaba... ;)
creo que en un post dijiste lo que la nueva gui tenía splinter, sólo sería custión de buscarlo, cuando tenga tiempo lo busco y ya con eso se podría recuperar un poco lo que se perdió (al menos los cambios que ya tenías, no es código, pero si descripción...)
... no recuerdo dónde está, y en buscar gui son muchos los resultados, recuerdo que nos comentaste (espero no sea que las soñe :D) qur en la nueva versión si eran más botones de los que se podrían mostrar en pantalla, se ponía un botón de flecha al final para recorrerlos.... no recuerdo más... ouch ???
pense que eso de la flechita ya estaba en la version posteada... creo incluso que tenia unos cambios sorpresa... y se perdieron, y ni me acuerdo que eran...
He encontrado la gui que descargué hace tiempo, tiene fecha del 3 de noviembre, no se si se hizo alguna posterior. Si es esta, la subo (mejor asegurarse que ocupar espacio en disco).
el espacio no es problema, el unico problema seria que sea mas vieja...
Bueno, como quieras, ahi va.
Espero que sirva de algo, si no... ¿cual era el comando para hacer el Ara-kiri?
NOTA: he tenido que quitar tres PNGs, porque era demasiado grande (help, cancel y nomeacuerdo)
Creo que ya lo posteé en algún sitio...No sé si será de alguna ayuda o no tiene nada que ver, pero hay un tipo que ha hecho una GUI a partir de SDL pura y dura: http://members.chello.nl/w.boeke/SDL-widgets/index.html
lol, ¿Esas imágenes son de esa GUI?
Tienen muy buena pinta... Aunque seguramente serán complicadas de usar...
Personalmente, me avergüenza, pero eso de SDL no sé a qué se refiere ni cómo se aplica a Bennu... :-[
Cantidad de recursos que hay y tiempo tan limitado que nos da la sociedad para "desgustarlos"... >:(
SDL (http://es.wikipedia.org/wiki/Simple_DirectMedia_Layer) es una biblioteca de funciones multimedia (gráfica/sonido) en la que se basan los módulos de video y audio de BennuGD. Sirve para programar aplicaciones, generalmente juegos, olvidándote de las dependencias técnicas de los dispositivos, facilitando así la posibilidad de portar tu aplicación a otros sistemas en los que ésta esté implementada.
QuoteCreo que ya lo posteé en algún sitio
como que recuerdo que si... je je je, pero para usarla hay que hacer algunas modificaciones vd? digo, .. . je jeje
Splinter, PRG, ¿como llevais esta librería?
me gustaría saber qué mas componentes teneis y ver algunos ejemplos de uso.
Estaría super bien que, al menos estuvieran los componentes principales de todas las herramientas gráficas basadas en ventanas.
Como por ejemplo: labels, buttons, radiobuttions, checkbox, textfields (o edits), lists(o listbox), listviews, tables, tree (o treeviews), dialogs, progressbars, panels, toolbars, etc.
Un ejemplo lo tenemos en el swing de JAVA :http://download.oracle.com/javase/tutorial/ui/features/components.html
Y otro en la mfc de windows: http://msdn.microsoft.com/en-us/library/bk77x1wx%28v=VS.90%29.aspx
Y otro en la vcl de borland: http://www.elguille.info/delphi/apuntesDelphi/apuntesDelphi.htm (buscar la frale COMPONENTE BÁSICOS)
creo que comente que perdi el proyecto, y ya no lo arranque nuevamente.
pues yo, usando lo aprendido en la gui de splinter, comenzé a realizar una.
http://www.mediafire.com/?j6vjimwra7v8mly
lamentablemente no tengo tiempo, estoy en examenes y tengo muchas tareas, asi que no he podido avanzarle, pero si alguien le mete mano y pone algo más sería genial. De cualquier forma si algún día tengo algo muy bueno, crearé un proyecto, pero por el momento es muy poco lo que tiene: botones, checklist, botones booleanos, barras para variar valores en rango (no se cómo se llama), estoy comenzando con los contenedores, pueden agregarse textos y procesos animados (aún sin probar), y textfield (a penas lo comencé y pienso cambiarlo, lo hice en base a algo que ya tenía pero quiero quitar los bucles while internos para tener otros comportamientos).
Sobre las GUI para Bennu, tengo vista la de Splinter y otra más por ahí, ahora hecho en falta tener una usable para mi proyecto Bullet, pero me da yuyu ponerme a mirar lo que tienen ambas 2...
¿Alguna descarga con código legible y una documentación sencilla?
Eso de tener una GUI con botones, pestañas, etc. Es fundamental, de hecho debería haber una mod_gui, ¿No creéis? :D
Una GUI no vendría mal.
Yo estoy como Prg, haciendome la mía. Pero voy a años luz por detras suyo. ;D
Voto incondicional por el mod_gui
Estoy de acuerdo con Osk, yo estuve viendo la Gui_so, entre esa y la de splinter se podría hacer una sola y dejar mod_gui como gui oficial y que venga directamente en las proximas versiones de bennu. Estaria buenop tener algo standard de esa manera creo yo...
Yo creo que sería ESENSIAL
Si, se hecha de menos una manera más o menos simple de trabajar con ventanas cuando es necesario.
quiero hacer un gui para las consolas (wiz, caanoo, dingo, etc) para que las podamos usar como un estandar de nuestros juegos, solo imagenes mas lo que pueda venir a continuacion, ¿que os parece?
claro que no seria para inmediatamente...
Como opinión personal creo que aquí el que más y el que menos ha hecho sus pinitos con una GUI.
El problema es que ninguna se da por terminada y por lo tanto ninguna es adoptada como estándar ni nada parecido.
Repito, esto es una opinión personal.
Si eres capaz de hacer una Gui medio decente y que se suponga terminada, así como mantenerla, te doy un beso. :-*
Te adelanto que yo tengo hecho un botón, una barradesliante, un marco de ventana; una ventana que es capaz de mostrar un mensaje con con botón 'OK', y alguna cosilla más que no acabo de pulir.
Como puedes ver, son migajas de una Gui. Además llenas de errores y que cada vez que voy utilizándola encuentro más fallos y flaquezas.
Voy haciéndola conforme me va haciendo fálta para el explorer de archivos en el que estoy liado desde hace unos cuantos meses.
En fin, que cualquier nueva Gui es bien venida.
Besitos.
jobe, yo que quiero hacer es chorrocientos dibujos de botones que para usar...
igual eso se llama interface ???
Pues me parece que más o menos. ;D
Pero también son bienvenidos.