ARCADE FOREVER

[Proyecto] AdvMenu+, Modificando el codigo fuente del Advmenu

« Older   Newer »
  Share  
daesdae
view post Posted on 2/2/2013, 01:48     +1   -1




Buenas noches-ches

Como IDE uso Anjuta (no es un insulto) http://projects.gnome.org/anjuta/index.html, aunque va por la version 3.6.0 yo uso la 2.30.1 :lol: tiene esas cosas que tanto te molan y que yo no uso como Subversion y Git y la que tengo no, pero las ultimas versiones creo que incorpora Glade para hacer ventanitas y eso.
El debuggler -> Gdb www.gnu.org/software/gdb/ no tiene mucha historia porque desde el Anjuta le das a añadir como complemento y punto.
¿Por qué Anjuta y no otros mas conocidos y quizas mejores? pues porque cuando me puse a buscar instale unos cuantos y este tenia una opcion para crear un nuevo proyecto desde fuentes existentes, vamos que le dices la carpeta de codigo y te crea el proyecto listo. Otros seguro que tendran esta opcion pero este estaba ahí tan clarito que no me comí mas el tarro.
Si quieres mañana te cuento como va y un par de cosas para configurarlo.
Ojo, tiene sus cositas pero bueno a mi me vale.
VeS, ya que estamos ¿tu debugleas, no? como me digas que vas a pelo, te hago un monumento. Y te recomiendo que te dejes de leches e instales este o similar, programar con esto es un juego de niños.
"Un mundo nuevo está a tu alcance". :D

El preview_snap lo recibí y está guapisimo todo limpito, se nota la mano del maestro.
Con Gimp separo el icono, las letras groovy y arcade en tres capas y tiro de herramientas->colorear hasta dar con los tonos que me gustan, no tiene mas pelicula, ni sé mucho mas.
En cuanto a lo de ponermelo de firma, me lo puse y como me gusta la firma finita, sin que de mucho el cante y no conseguí el efectillo ese de que el pico del icono sobresaliera y ademas que, no sé, como no es mio, pufff, no me convencía, pero bueno esto va por momentos, ¿porqué no te lo pones para dar un minimo de plubli?
Eso sí en la docu del plus va a ir segurisimo con su respectivo enlace.

OK, aprobado: group->favorites. Me pongo ahora mismo al lio que aun no he generado ni el diff con la migracion.

A ver, ¿que hora es? la 1:40, buahhh tengo una horita 20 que luego me tengo que preparar un buen bocata de salchichotas con papas para el partido, jejeje.
Ainsss, si no fuera por esos momentos NBA + bocatron + cervecita a las tantas, jejeje

¡Dormir es de cobardes! :D
 
Top
daesdae
view post Posted on 2/2/2013, 04:58     +1   -1




Buenas noches-dias

Download AdvMenuPLUS 2013.02.02
------------------------------------------

- advmenuplus-20130202-beta.diff (El diff se aplica sobre el AdvanceMenu 2.6)
- advmenuplus-20130202-beta-src.tar.gz

Caracteristicas
-----------------

- Migracion a la version AdvanceMenu-2.6 del advmenuplus-20130115-beta +...
- Muestra la Lista de Favoritos cargada en modo no-custom en la barra superior
- Nuevos tags para las barras info en modo custom:
· %favorites% : lista de favoritos cargada
· %­game_favorites% : listas de favoritos a las que pertenece el juego seleccionado
· %clone% : muestra el numero de clones si el juego seleccionado es un parent (N clones) o (clone of EMULATOR/PARENT) si se trata de un clone
- Si no hay juegos en la lista muestra un mensaje informando de la lista de favoritos cargada y el emulador
- Cambiados los nombres de las opciones del advmenu.rc:
· group tralalá -> favorites tralalá
· group_include tralaló -> favorites_include tralaló
· event_assign group f2 -> event_assign favorites_next f2
· event_assign setgroup f9 -> event_assign setfavorites f9

OJO, NO PROBADO, NO SON HORAS...

Salu2

Edited by daesdae - 5/2/2013, 13:10
 
Top
Rockman
view post Posted on 2/2/2013, 09:31     +1   -1




Buenos días trasnochadores. :)
A ver si saco tiempo y lo testeo hoy. :)

Peace.

PD: Viva los Lakers. XDDDDD jajajaja.

PD2: Viva el debuggLin. ;)

EDITO: He probado la beta y todo parece funcionar como es debido: (nuevas opciones del rc, la visualización de listas a través del menú y por F2, los nombres de la lista actual, mensaje si no hay luegos en la lista, y los tags.

Buen trabajo chicos! :)

Edited by Rockman - 3/2/2013, 02:48
 
Top
Rockman
view post Posted on 3/2/2013, 12:28     +1   -1




Aquí teneis el advmenup migrado de la v2.6 y en marcha con los nuevos tags.




Todo funciona perfecto, tan sólo comentar unos detalles:

Detalle 1: En modo layout, el tag %clones%, en el caso que el juego en cuestión sea un parent y no tenga clones, deja el tag en blanco. Podríamos buscar un mensajito para estos casos. Por ejemplo, "No Clones"

Detalle 2: En modo layout, el tag %clones%, en el caso que la rom sea un parent, cuando indica "3 clones", poner la "C" en mayúsculas para respetar el estilo de los mensajes. (Cuando es un clone lo indica en mayúsculas.)

Detalle 3: Otro detalle, es muy complicado que no ponga el nombre del emulador para indicar el rom parent, en el tag %clones%?
Por ejemplo: "Clone of mame/tetris" cambiarlo a -> "Clone of tetris".
Es una pijada pero bueno, creo que quedaría un poco más pulcro.

Detalle 4: Esto quizá empieza a ser más jodido, y quizá es más trabajoso de hacer. Como veis, uso de título arriba el marquee del juego. Para que ocupe el espacio de ancho asignado uso el comando del advmenu.rc "preview_expand", pero que pasa, que entonces en el snap del juego, aparecen los juegos verticales estirados a lo ancho, dando la apariencia que son horizontales. La pregunta es: ¿ Podríamos asignar dos display_expand, uno para los marquees, y otro para todo lo demás. De esta manera podríamos estirar los marquees y a la vez tener los snaps proporcionados.
Daesdae, ya se que con el tema del preview_expand corregiste el problema de los marquee cuando el advmenup estaba en modo vertical, y te lo agradezco. Como se que miraste ese tema, quizá tienes muy por la mano tunear este otro aspecto. Si es mucha comida de coco, dejalo, actualmente está más que genial, tan solo es una sugerencia de un humilde y perfeccionista usuario (y beta tester). :)

Lo comentamos. AdvmenuPoWER!!!!

Saludos. :)
 
Top
daesdae
view post Posted on 3/2/2013, 14:10     +1   -1




A las buenas

Rockman,
Detalle 1, 2 y 3 -> aprobado y facilito.
Solo una cosa, la etiqueta es %clone% (no %clones%).
%clones% muestra el numero de clones, solo el número (0 si es parent o parent sin clones).
Tengo que mirar bien los nombres, para no confundir. Quizás en vez de %clones% lo cambie a %­n_clones% o %­number_clones% o %clones_number% jejeje. Como siempre indeciso con los nombres de las cosas, uffffffff.

Detalle 4 -> Apunto, cada ventana de imágenes con su propio preview_expand y de paso también con su propio preview_default definidos en el archivo del layout y que ignore los del advmenu.rc. ¿OK?

Tengo que recopilar lo que está hecho y lo que falta.
Otra cosa, lo de que los filtros solo afecten a "All Games" eso ya estaba en la anterior beta (20130115) ¿no?, es que tengo mala memoria y cierto lío de versiones...

Mañana le doy un poco a esto o parte ;)

Salu2 y gracias por betatestear entre otras cosas :D
 
Top
Rockman
view post Posted on 3/2/2013, 14:34     +1   -1




Hola Daesdae.

Correcto! Se acordó ya en la anterior versión que los filtros solo afectaran a All Games.


Sorry, se me escapó los %clones% por %clone%.
Perdona, pero creo que no solo muestra el número, también indica el nombre de la rom parent si es un clone, con el mensaje "Clone of mame/rom". A mi asi me parece muy bien tal y como está. Solo que lo de "mame/" por ahí en medio no me acaba de convencer. Bueno ya lo comentamos.

Detalle4-> GENIAL!

Agradecimientos y saludos.
 
Top
view post Posted on 4/2/2013, 15:11     +1   -1
Avatar

V.I.P.

Group:
Usuarios AFFA
Posts:
526
Reputation:
+10

Status:


Hola, me da palo contarlo, pero yo uso vim y geany como ide, ya que el mininote no da para mas, adjunta no me gusto mucho cuando lo use hace una porra de años, para el resto es leer y leer entender un 1% y mi gran amigo el cout <<XXX<<endl; jeje
el gdb lo use unas cuantas veces, pero no me fue muy bien, pero ahora que lo has comentado volver a intentarlo;)

Por mi parte le he dado unas cuantas vueltas mas al tema del history, ya tengo las funciones creadas, no se usan las genericas, ahora la ventana a mostrar se adapta al tamaño de la resolucion que tiene advmenu, quedando centrada, me falta que lea del rc los ficheros .dat e implementar las funciones mejor.... daesdae donde crees que se deberia de implementar mejor el Mameinfo en el submenu.c , choicce.c o en otro sitio mejor?

Tambien he añadido el type al mensaje de los types cuando no hay juegos, pero hay una cosa que no entiendo.
Este es un trozo de tu codigo para añadir el mensaje a los favoritos.
HTML
bool state_favorites = false;
if (rs.include_favorites_get() == "All Games") {
state_favorites = true;
} else if (i->gfavorites_get().size()) {
for(favorites_container::const_iterator j=i->gfavorites_get().begin();j!=(i)->gfavorites_get().end();++j) {
string fi = rs.include_favorites_get();
if (*j == fi)
state_favorites = true;
}
}
.
.
.
.
else if (!has_favorites)
empty_msg = "No games in list \"" + rs.include_favorites_get() + "\" for emulator \"" + emu_msg + "\"";
else if (!has_type)
empty_msg = "No game matches the type selection for " + emu_msg;


Tu añades el mensaje llamando a rs.include_favorites_get(), pues si quiero hacer lo mismo para los type, no deja y tengo que crear una variable dentro de su orden para asignarle el nombre del type y pasarlo al mensaje, que es lo que no estoy viendo¿?¿?¿? luego te paso mi parte de codigo en esta seccion para que me corrijas....

Saludos.
 
Top
Rockman
view post Posted on 4/2/2013, 20:02     +1   -1




-O^O-
Tomo apuntes....

Saludos! :)
 
Top
daesdae
view post Posted on 5/2/2013, 12:46     +1   -1




Buenas

VeS, lo del history, pues así a voz de pronto, no sé donde sería mas adecuado (choice, submenu), depende de lo que hagan las funciones, probablemente en ambas. jejeje.
Como creo que te dije un día, no te preocupes por eso, tu haz que mas o menos funcione y cuando pasemos al tema ya hacemos un popurrí ;)

En cuanto al codigo que pones, se puede dividir en dos partes, la primera es para generar la lista de juegos a mostrar, que deben cumplir las condiciones y tal...
y la segunda en la que si no hay juegos muestra un mensaje.
OK, nos centramos en la segunda.
No puedes poner que muestre el tipo tirando de rs.include_type_get() ya que esta funcion no devuelve un string, como es el caso de los favoritos.
Si te fijas en mconfig.h la clase config_starte (rs es de tipo config_state) la funcion include_favorites_get() devuelve un string que es el nombre de la lista de favoritos mostrada, esto es así porque no se pueden mostrar mas de una lista a la vez. Pero lo que devuelve include_type_get() es un contenedor/coleccion de strings, en concreto devuelve el tipo "category_container".
category_container está descrito en category.h
CODE
typedef std::set<std::string> category_container;

set es el contenedor/coleccion y lo que va entre <> es el tipo de datos, lo puedes pensar como si fuese un array de strings, es mas array es tambien un tipo de contenedor.
Los distintos contenedores los puedes consultar aquí: www.cplusplus.com/reference/stl/ cada uno tiene sus peculiaridades, los mas conocidos son el array, el list y el set.
include_type es un contenedor porque, al contrario de los favoritos, en una lista se pueden mostrar mas de un tipo.

Por lo tanto, para obtener el tipo o tipos mostrados hay que recorrerse el contenedor category_container, algo así:
CODE
string types = "";
for(category_container::const_iterator j=rs.include_type_get().begin();j!=rs.include_type_get().end();++j) {
   types += (*j) + "/";
}

De esta forma, si por ejemplo estamos mostrando los tipos coches y deportes, pues la variable types tendrá la forma: coches/deportes/ y ya la podrás usar en el mensaje.
para mejorar esto cuando sales del for puedes decirle que quite el ultimo "/" con:
CODE
types.erase(types.legth() - 1);
u otra forma

Pues nada, espero haberme explicado, si no, pregunta.


APUNTO: lo del tag %clone% que sugería Rockman -> HECHO :)
 
Top
Rockman
view post Posted on 6/2/2013, 19:09     +1   -1




APUNTO: MUchísimas gracias Daesdae :)

Saludos!
 
Top
DukeOfEarl
view post Posted on 10/2/2013, 15:14     +1   -1




Buenas a todos.

Hace poco probé por primera vez el GroovyArcade, y a raíz de un problemilla que tuve con el ejecutable del AdvMenuPlus, me ha picado la curiosidad por este frontend, que tiene muy buena pinta, y con el que estáis haciendo muy buen trabajo, todo sea dicho.

Bajé y probé la 2012.11.27 en el ordenador que estoy preparando para la recre, y como veo que estáis con las modificaciones sobre la 2.6, había pensado en probarla también. Así hago de beta tester, y, aunque he programado poco en C++ (últimamente le doy más al Python), quizá algún día podría estudiarme el código por si puedo ser útil para algo...

Para ir empezando, ¿el diff con el 2.6 oficial que está publicado en la página del proyecto incluye todos estos nuevos cambios, o sólo son las modificaciones de la 2012.11.27 adaptadas a la versión 2.6?
 
Top
Rockman
view post Posted on 11/2/2013, 09:40     +1   -1




Hola DukeOfEarl.

El parche del que hablas, aplicable a la versión 2.6 de Advancemenu, incluye los cambios de la versión 2012.11.27, más los cambios de la versión 20130202 beta.

Saludos.
 
Top
daesdae
view post Posted on 12/2/2013, 11:32     +1   -1




Buenos días, ufff mas o menos una semana vagueando...

DukeOfEarl, bienvenido y gracias por betatestear.
Como bien dice Rockman, la ultima versión (2013.02.02) está basada en el 2.6 e incluye todos los cambios hasta la fecha.

Bueno gente, poooooooseso que no he hecho nada, a ver si termino lo de la configuración de joysticks usb/ipp, las listas de favoritos, le doy una buena limpieza a lo de los layouts (que está hecho un asco) y nos ponemos con lo de la info-history y tal...

Salu2
 
Top
Rockman
view post Posted on 12/2/2013, 15:05     +1   -1




Holas!

Una semana sábatica! :) Pensé que te habías ido al Tíbet otra vez. :P

Genial que estes ya por aquí dando guerra.

Saludos.
 
Top
DukeOfEarl
view post Posted on 13/2/2013, 00:25     +1   -1




Ok, pues la bajaré y probaré a compilarla, a ver qué tal.
Una cosilla: ¿AdvmenuPlus requiere el groovymame, o puede funcionar también como frontend del mame oficial? Si no, para poder probarlo, tendré que hacer funcionar el groovymame antes...
 
Top
647 replies since 8/9/2009, 21:56   30305 views
  Share