Bennu Game Development

Foros en Español => Proyectos => Topic started by: SplinterGU on October 24, 2008, 03:01:34 PM

Title: Splinter's GUI
Post by: SplinterGU on October 24, 2008, 03:01:34 PM
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.
Title: Re: Splinter's GUI
Post by: blostec on October 24, 2008, 03:40:08 PM
Mmmm... interesante, ahora la bajo y la pruebo, gracias!  :)
Title: Re: Splinter's GUI
Post by: Prg on October 24, 2008, 03:54:40 PM
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. :)
Title: Re: Splinter's GUI
Post by: blostec on October 24, 2008, 03:56:28 PM
Por cierto Prg, te has planteado integrar tu proyecto al ide de phreak?
Title: Re: Splinter's GUI
Post by: SplinterGU on October 24, 2008, 03:57:36 PM
La verdad que no lo pense... el producto de phreak es cerrado por ahora...
Title: Re: Splinter's GUI
Post by: 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  :)
Title: Re: Splinter's GUI
Post by: SplinterGU on October 24, 2008, 06:07:58 PM
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...
Title: Re: Splinter's GUI
Post by: blostec on October 24, 2008, 06:19:35 PM
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!
Title: Re: Splinter's GUI
Post by: 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.
Title: Re: Splinter's GUI
Post by: Prg on October 24, 2008, 06:40:13 PM
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...  
Title: Re: Splinter's GUI
Post by: SplinterGU on October 24, 2008, 07:19:32 PM
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...
Title: Re: Splinter's GUI
Post by: blostec on October 24, 2008, 07:29:56 PM
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.
Title: Re: Splinter's GUI
Post by: animanegra on October 25, 2008, 12:35:42 PM
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.
Title: Re: Splinter's GUI
Post by: Drumpi on October 26, 2008, 12:59:20 AM
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 ;)
Title: Re: Splinter's GUI
Post by: SplinterGU on October 26, 2008, 02:29:09 AM
;) me alegro que te haya gustado...
Title: Re: Splinter's GUI
Post by: Makinor on October 26, 2008, 03:26:05 PM
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
Title: Re: Splinter's GUI
Post by: SplinterGU on October 26, 2008, 03:50:06 PM
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...
Title: Re: Splinter's GUI
Post by: Prg on October 27, 2008, 11:42:06 PM
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. :)
Title: Re: Splinter's GUI
Post by: SplinterGU on October 28, 2008, 12:04:53 AM
tenes que hacer...

fpg = load_fpg("test.fpg");
y un
save_fpg(fpg,"mono.fpg");
Title: Re: Splinter's GUI
Post by: Prg on October 28, 2008, 12:20:07 AM
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?
Title: Re: Splinter's GUI
Post by: SplinterGU on October 28, 2008, 12:27:22 AM
ahora pruebo...
Title: Re: Splinter's GUI
Post by: SplinterGU on October 28, 2008, 12:34:49 AM
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...
Title: Re: Splinter's GUI
Post by: Prg on October 28, 2008, 01:08:43 AM
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.  ;)
Title: Re: Splinter's GUI
Post by: SplinterGU on October 28, 2008, 01:31:58 AM
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...
Title: Re: Splinter's GUI
Post by: SplinterGU on October 28, 2008, 01:39:24 AM
Fixed!

Si te urge esta version la subo ya mismo...
Title: Re: Splinter's GUI
Post by: Prg on October 28, 2008, 02:28:53 AM
 :) 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... ;))
Title: Re: Splinter's GUI
Post by: SplinterGU on October 28, 2008, 02:57:59 AM
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...
Title: Re: Splinter's GUI
Post by: 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 ;)
Title: Re: Splinter's GUI
Post by: osk on October 28, 2008, 11:01:19 AM
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!!!
Title: Re: Splinter's GUI
Post by: syous on October 28, 2008, 12:46:41 PM
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
Title: Re: Splinter's GUI
Post by: SplinterGU on October 28, 2008, 01:39:59 PM
:)
Title: Re: Splinter's GUI
Post by: Prg on October 29, 2008, 10:22:05 PM
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 :)
Title: Re: Splinter's GUI
Post by: SplinterGU on October 29, 2008, 10:28:19 PM
grax, 1 karma...
Title: Re: Splinter's GUI
Post by: SplinterGU on October 31, 2008, 06:31:12 AM
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.
Title: Re: Splinter's GUI
Post by: syous on October 31, 2008, 07:47:57 AM
 :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
Title: Re: Splinter's GUI
Post by: SplinterGU on October 31, 2008, 01:47:16 PM
:)
Title: Re: Splinter's GUI
Post by: SplinterGU on November 03, 2008, 02:13:53 AM
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.
Title: Re: Splinter's GUI
Post by: syous on November 03, 2008, 07:49:00 AM
 ;) cada vez mas interesante
Title: Re: Splinter's GUI
Post by: Prg on November 04, 2008, 12:05:03 AM
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. :)

Title: Re: Splinter's GUI
Post by: SplinterGU on November 04, 2008, 01:22:15 AM
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...
Title: Re: Splinter's GUI
Post by: SplinterGU on November 04, 2008, 01:38:28 AM
Subido nuevo codigo de la GUI... son 2 lineas de codigo modificadas...
Title: Re: Splinter's GUI
Post by: TYCO on November 04, 2008, 02:44:05 PM
gui.rar >> 03-Nov-2008 17:36  364K

Da error de CRC (Final de archivo inesperado), creo que no te lo ha subido completo.
Title: Re: Splinter's GUI
Post by: SplinterGU on November 04, 2008, 03:28:54 PM
caramba!

bueno subire la ultima con alphas y otras cosas...
Title: Re: Splinter's GUI
Post by: SplinterGU on November 04, 2008, 04:26:12 PM
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!!!!!
Title: Re: Splinter's GUI
Post by: osk on November 05, 2008, 12:30:20 AM
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...
Title: Re: Splinter's GUI
Post by: SplinterGU on November 05, 2008, 12:43:28 AM
La verdad que no la habia visto, seria cuestion de estudiarla, gracias...
Title: Re: Splinter's GUI
Post by: Prg on November 12, 2008, 12:16:48 AM
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.
Title: Re: Splinter's GUI
Post by: SplinterGU on November 12, 2008, 12:36:21 AM
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...
Title: Re: Splinter's GUI
Post by: Prg on November 12, 2008, 02:20:59 AM
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 :) .
Title: Re: Splinter's GUI
Post by: 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...
Title: Re: Splinter's GUI
Post by: syous on November 13, 2008, 11:35:14 AM
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
Title: Re: Splinter's GUI
Post by: SplinterGU on November 13, 2008, 11:36:31 AM
:)
Title: Re: Splinter's GUI
Post by: Prg on March 06, 2009, 03:37:51 AM
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
Title: Re: Splinter's GUI
Post by: SplinterGU on March 06, 2009, 12:07:42 PM
gracias... ya lo probaré...
Title: Re: Splinter's GUI
Post by: Windgate on May 18, 2009, 09:26:25 PM
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
Title: Re: Splinter's GUI
Post by: Prg on May 18, 2009, 11:14:24 PM
al principio del post  ;)
Title: Re: Splinter's GUI
Post by: Windgate on May 18, 2009, 11:56:16 PM
¿ 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...
Title: Re: Splinter's GUI
Post by: SplinterGU on May 18, 2009, 11:59:06 PM
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...
Title: Re: Splinter's GUI
Post by: Windgate on May 19, 2009, 11:40:22 AM
Recibida, espero sacarle todo su jugo :-X
Title: Re: Splinter's GUI
Post by: syous on May 19, 2009, 03:19:15 PM
Quote from: Windgate on May 19, 2009, 11:40:22 AM
Recibida, espero sacarle todo su jugo :-X

pasa un poco de zumo  ;D
Title: Re: Splinter's GUI
Post by: Drumpi on May 20, 2009, 06:15:19 PM
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.
Title: Re: Splinter's GUI
Post by: Windgate on May 26, 2009, 09:37:06 AM
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...
Title: Re: Splinter's GUI
Post by: SplinterGU on May 26, 2009, 10:59:34 AM
Se me arruino el disco, por eso perdi los cambios...

yo suelo usar SVN.
Title: Re: Splinter's GUI
Post by: DCelso on May 26, 2009, 09:39:51 PM
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.
Title: Re: Splinter's GUI
Post by: Windgate on May 26, 2009, 09:53:56 PM
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
Title: Re: Splinter's GUI
Post by: 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...
Title: Re: Splinter's GUI
Post by: syous on May 27, 2009, 08:53:31 AM
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
Title: Re: Splinter's GUI
Post by: DCelso on May 27, 2009, 09:51:05 PM
No te da pereza o no te da la gana, no me quedó claro si lo vas a intentar o no. Sorry :(
Title: Re: Splinter's GUI
Post by: SplinterGU on May 27, 2009, 11:53:01 PM
"no me da" = "no da" = "ya fue"
Title: Re: Splinter's GUI
Post by: DCelso on May 28, 2009, 08:00:08 AM
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. :)
Title: Re: Splinter's GUI
Post by: 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.
Title: Re: Splinter's GUI
Post by: syous on May 28, 2009, 09:10:05 AM
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 >:(
Title: Re: Splinter's GUI
Post by: SplinterGU on May 28, 2009, 11:00:59 AM
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.
Title: Re: Splinter's GUI
Post by: Prg on May 28, 2009, 04:33:41 PM
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  ???
Title: Re: Splinter's GUI
Post by: SplinterGU on May 28, 2009, 11:02:19 PM
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...
Title: Re: Splinter's GUI
Post by: Drumpi on May 30, 2009, 05:07:43 PM
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).
Title: Re: Splinter's GUI
Post by: SplinterGU on May 30, 2009, 06:31:20 PM
el espacio no es problema, el unico problema seria que sea mas vieja...
Title: Re: Splinter's GUI
Post by: Drumpi on May 30, 2009, 11:45:23 PM
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)
Title: Re: Splinter's GUI
Post by: osk on June 09, 2009, 10:30:38 PM
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
Title: Re: Splinter's GUI
Post by: Windgate on June 09, 2009, 10:48:02 PM
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"... >:(
Title: Re: Splinter's GUI
Post by: DCelso on June 09, 2009, 11:02:47 PM
 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.
Title: Re: Splinter's GUI
Post by: Prg on June 09, 2009, 11:06:08 PM
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
Title: Re: Splinter's GUI
Post by: DCelso on October 21, 2010, 08:32:39 PM
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)
Title: Re: Splinter's GUI
Post by: SplinterGU on October 21, 2010, 09:50:37 PM
creo que comente que perdi el proyecto, y ya no lo arranque nuevamente.
Title: Re: Splinter's GUI
Post by: Prg on October 22, 2010, 03:02:35 AM
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).
Title: Re: Splinter's GUI
Post by: Windgate on December 26, 2010, 09:01:50 AM
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
Title: Re: Splinter's GUI
Post by: Fede on December 26, 2010, 10:26:15 AM
Una GUI no vendría mal.

Yo estoy como Prg, haciendome la mía. Pero voy a años luz por detras suyo.  ;D

Title: Re: Splinter's GUI
Post by: osk on December 27, 2010, 04:12:17 PM
Voto incondicional por el mod_gui
Title: Re: Splinter's GUI
Post by: Outlaw on December 27, 2010, 04:43:12 PM
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...
Title: Re: Splinter's GUI
Post by: Windgate on December 29, 2010, 11:57:37 PM
Yo creo que sería ESENSIAL
Title: Re: Splinter's GUI
Post by: Noivern on December 31, 2010, 06:23:47 AM
Si, se hecha de menos una manera más o menos simple de trabajar con ventanas cuando es necesario.
Title: Re: Splinter's GUI
Post by: Futu-block on December 31, 2010, 12:15:49 PM
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...
Title: Re: Splinter's GUI
Post by: Fede on December 31, 2010, 02:07:00 PM
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.
Title: Re: Splinter's GUI
Post by: Futu-block on December 31, 2010, 06:37:10 PM
jobe, yo que quiero hacer es chorrocientos dibujos de botones que para usar...

igual eso se llama interface ???
Title: Re: Splinter's GUI
Post by: Fede on January 01, 2011, 12:19:11 AM
Pues me parece que más o menos.  ;D

Pero también son bienvenidos.