Advertisement
Guest User

Untitled

a guest
May 22nd, 2018
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.83 KB | None | 0 0
  1. #include <gtk/gtk.h>
  2. #include "GTK.h" //gtk_button_set_image (GtkButton *button,GtkWidget *image);
  3.  
  4. GtkBuilder *builder;
  5.  
  6. //VENTANA PRINCIPAL
  7. GObject *window_main;
  8. GObject *boton_nuevo;
  9. GObject *boton_acerca;
  10. GObject *boton_salir;
  11.  
  12. //VENTANA MODO
  13. GObject *window_modo;
  14. GObject *boton_hum_comp;
  15. GObject *boton_hum_hum;
  16. GObject *boton_comp_comp;
  17.  
  18. //VENTANA COMIENZO
  19. GObject *window_comienzo;
  20. GObject *boton_jugador;
  21. GObject *boton_computadora;
  22. GObject *boton_sorteo;
  23.  
  24. //VENTANA CAMPO
  25. GObject *window_campo;
  26. GObject *boton_arriba;
  27. GObject *boton_abajo;
  28.  
  29. //VENTANA MOVIMIENTOS
  30. GObject *window_movimientos;
  31. GObject *boton_movimientos_aceptar;
  32. GObject *entrada_movimientos;
  33.  
  34. //VENTANA TABLERO
  35. GObject *window_tablero;
  36. GObject *boton_1_abajo;
  37. GObject *boton_2_abajo;
  38. GObject *boton_3_abajo;
  39. GObject *boton_4_abajo;
  40. GObject *boton_5_abajo;
  41. GObject *boton_6_abajo;
  42. GObject *boton_1_arriba;
  43. GObject *boton_2_arriba;
  44. GObject *boton_3_arriba;
  45. GObject *boton_4_arriba;
  46. GObject *boton_5_arriba;
  47. GObject *boton_6_arriba;
  48. GObject *uno;
  49. GObject *dos;
  50. GObject *tres;
  51. GObject *cuatro;
  52. GObject *cinco;
  53. GObject *seis;
  54. GObject *siete;
  55. GObject *moneda;
  56.  
  57. //LLEVA A WINDOW ACERCA
  58. static void acerca(GtkWidget *widget, gpointer data)
  59. {
  60. g_print("acerca\n");
  61. }
  62.  
  63. //LLEVA A WINDOW MODO
  64. static void modo_juego (GtkWidget *widget, gpointer data)
  65. {
  66. gtk_widget_hide((GtkWidget *) window_main);
  67. gtk_widget_show_all ((GtkWidget *) window_modo);
  68. }
  69.  
  70. //LLEVA A WINDOW COMIENZO
  71. static void comienzo (GtkWidget *widget, gpointer data)
  72. {
  73.  
  74. //g_print("%d",data);
  75. modo = data;
  76. g_print("Modo=%d\n",modo);
  77. gtk_widget_hide((GtkWidget *) window_modo);
  78. gtk_widget_show_all ((GtkWidget *) window_comienzo);
  79. }
  80.  
  81. //LLEVA A WINDOW CAMPO
  82. static void campo (GtkWidget *widget, gpointer data)
  83. {
  84.  
  85. g_print("Data=%d\n",data);
  86. if(data==1 || data==2)
  87. turnito = data;
  88. else if (data==3)
  89. turnito = (rand() % 2) + 1;
  90. g_print("\nEl turno es%d\n",turnito);
  91. gtk_widget_hide((GtkWidget *) window_comienzo);
  92. gtk_widget_show_all ((GtkWidget *) window_campo);
  93. }
  94.  
  95. //LLEVA A WINDOW MOVIMIENTOS
  96. static void movimientos (GtkWidget *widget, gpointer data)
  97. {
  98.  
  99. //g_print("%d",data);
  100. //cantidad_movimientos = gtk_entry_get_text ( entrada_movimientos);
  101. jug_1.campo = data-1;
  102. comp.campo = !(jug_1.campo);
  103. g_print("Data%d\n",data);
  104. g_print("Campo de jugador %d\n",jug_1.campo);
  105. g_print("Campo de computadora %d\n",comp.campo);
  106. gtk_widget_hide((GtkWidget *) window_campo);
  107. gtk_widget_show_all ((GtkWidget *) window_movimientos);
  108. }
  109.  
  110. //LLEVA A TABLERO JUEGO
  111. static void tablero_juego (GtkWidget *widget, gpointer data)
  112. {
  113. gchar *prueba;
  114. prueba = gtk_entry_get_text (GTK_ENTRY(entrada_movimientos));
  115. g_print("La cantidad de movimientos es %s\n",prueba);
  116. cantidad_movimientos = atoi (prueba);
  117. g_print("La cantidad de movimientos 2 es %d\n",cantidad_movimientos);
  118. gtk_widget_hide((GtkWidget *) window_movimientos);
  119. gtk_widget_show_all ((GtkWidget *) window_tablero);
  120. parametrico();
  121. g_print("PRUEBA DE ASIGANCIONES\n");
  122. g_print("TURNITO =%d\n",turnito);
  123. g_print("AUX1 =%d\n",aux1);
  124. g_print("AUX2 =%d\n",aux2);
  125. g_print("SELECTOR =%d\n",selector);
  126. }
  127.  
  128. //MUESTRA TABLERO GTK
  129. static void mostrar_tablero (GtkWidget *widget)
  130. {
  131.  
  132. }
  133. //EMPIEZA A JUGAR
  134. static void ya_juega (GtkWidget *widget, gpointer data)
  135. {
  136. casilla=data;
  137. if (jugar)
  138. {
  139. /*if (modo==1)
  140. {*/
  141. jugada(matriz , turnito , aux1 , aux2 , selector);
  142. cantidad++;
  143. printf("\n");
  144. imprimir_matriz(pm);
  145. turnito=!turnito;
  146. //jugada(matriz , turnito , aux1 , aux2 , selector);
  147. //imprimir_matriz(pm);
  148. jugar=condicion_final(cantidad_movimientos , cantidad , matriz , aux1 , aux2);
  149. //mostrar_tablero();
  150. //}
  151. }
  152. }
  153.  
  154. //VINCULA GLADE
  155. static void glade ()
  156. {
  157. //VENTANA PRINCIPAL
  158. window_main = gtk_builder_get_object(builder, "window_main");
  159. boton_nuevo = gtk_builder_get_object(builder, "boton_nuevo");
  160. boton_acerca = gtk_builder_get_object(builder, "boton_acerca");
  161. boton_salir = gtk_builder_get_object(builder, "boton_salir");
  162.  
  163. //VENTANA MODO
  164. window_modo = gtk_builder_get_object(builder, "window_modo");
  165. boton_hum_comp = gtk_builder_get_object(builder, "boton_hum_comp");
  166. boton_hum_hum = gtk_builder_get_object(builder, "boton_hum_hum");
  167. boton_comp_comp = gtk_builder_get_object(builder, "boton_comp_comp");
  168.  
  169. //VENTANA COMIENZO
  170. window_comienzo = gtk_builder_get_object(builder, "window_comienzo");
  171. boton_jugador = gtk_builder_get_object(builder, "boton_jugador");
  172. boton_computadora = gtk_builder_get_object(builder, "boton_computadora");
  173. boton_sorteo = gtk_builder_get_object(builder, "boton_sorteo");
  174.  
  175. //VENTANA CAMPO
  176. window_campo = gtk_builder_get_object(builder, "window_campo");
  177. boton_arriba = gtk_builder_get_object(builder, "boton_arriba");
  178. boton_abajo = gtk_builder_get_object(builder, "boton_abajo");
  179.  
  180. //VENTANA MOVIMIENTOS
  181. window_movimientos = gtk_builder_get_object(builder, "window_movimientos");
  182. boton_movimientos_aceptar = gtk_builder_get_object(builder, "boton_movimientos_aceptar");
  183. entrada_movimientos = gtk_builder_get_object(builder, "entrada_movimientos");
  184.  
  185. //VENTANA TABLERO
  186. window_tablero = gtk_builder_get_object(builder, "window_tablero");
  187. boton_1_abajo = gtk_builder_get_object(builder, "boton_1_abajo");
  188. boton_2_abajo = gtk_builder_get_object(builder, "boton_2_abajo");
  189. boton_3_abajo = gtk_builder_get_object(builder, "boton_3_abajo");
  190. boton_4_abajo = gtk_builder_get_object(builder, "boton_4_abajo");
  191. boton_5_abajo = gtk_builder_get_object(builder, "boton_5_abajo");
  192. boton_6_abajo = gtk_builder_get_object(builder, "boton_6_abajo");
  193. boton_1_arriba = gtk_builder_get_object(builder, "boton_1_arriba");
  194. boton_2_arriba = gtk_builder_get_object(builder, "boton_2_arriba");
  195. boton_3_arriba = gtk_builder_get_object(builder, "boton_3_arriba");
  196. boton_4_arriba = gtk_builder_get_object(builder, "boton_4_arriba");
  197. boton_5_arriba = gtk_builder_get_object(builder, "boton_5_arriba");
  198. boton_6_arriba = gtk_builder_get_object(builder, "boton_6_arriba");
  199. }
  200.  
  201. //CONECTA A FUNCIONES
  202. static void conexion ()
  203. {
  204. //VENTANA PRINCIPAL
  205. g_signal_connect(boton_nuevo, "clicked", G_CALLBACK (modo_juego), NULL);
  206. g_signal_connect(boton_acerca, "clicked", G_CALLBACK (acerca), NULL);
  207. g_signal_connect(boton_salir, "clicked", G_CALLBACK (gtk_main_quit), NULL);
  208.  
  209. //VENTANA MODO
  210. g_signal_connect(boton_hum_comp, "clicked", G_CALLBACK (comienzo), (gpointer)1);
  211. g_signal_connect(boton_hum_hum, "clicked", G_CALLBACK (comienzo), 2);
  212. g_signal_connect(boton_comp_comp, "clicked", G_CALLBACK (comienzo), 3);
  213.  
  214. //VENTANA COMIENZO
  215. g_signal_connect(boton_jugador, "clicked", G_CALLBACK (campo), 1);
  216. g_signal_connect(boton_computadora, "clicked", G_CALLBACK (campo), 2);
  217. g_signal_connect(boton_sorteo, "clicked", G_CALLBACK (campo), 3);
  218.  
  219. //VENTANA CAMPO
  220. g_signal_connect(boton_arriba, "clicked", G_CALLBACK (movimientos), 1);
  221. g_signal_connect(boton_abajo, "clicked", G_CALLBACK (movimientos), 2);
  222.  
  223. //VENTANA MOVIMIENTOS
  224. g_signal_connect(boton_movimientos_aceptar, "clicked", G_CALLBACK (tablero_juego), NULL);
  225.  
  226. //VENTANA TABLERO
  227. g_signal_connect(boton_1_abajo, "clicked", G_CALLBACK (ya_juega), 1);
  228. g_signal_connect(boton_2_abajo, "clicked", G_CALLBACK (ya_juega), 2);
  229. g_signal_connect(boton_3_abajo, "clicked", G_CALLBACK (ya_juega), 3);
  230. g_signal_connect(boton_4_abajo, "clicked", G_CALLBACK (ya_juega), 4);
  231. g_signal_connect(boton_5_abajo, "clicked", G_CALLBACK (ya_juega), 5);
  232. g_signal_connect(boton_6_abajo, "clicked", G_CALLBACK (ya_juega), 6);
  233. g_signal_connect(boton_1_arriba, "clicked", G_CALLBACK (ya_juega), 6);
  234. g_signal_connect(boton_2_arriba, "clicked", G_CALLBACK (ya_juega), 5);
  235. g_signal_connect(boton_3_arriba, "clicked", G_CALLBACK (ya_juega), 4);
  236. g_signal_connect(boton_4_arriba, "clicked", G_CALLBACK (ya_juega), 3);
  237. g_signal_connect(boton_5_arriba, "clicked", G_CALLBACK (ya_juega), 2);
  238. g_signal_connect(boton_6_arriba, "clicked", G_CALLBACK (ya_juega), 1);
  239.  
  240. }
  241.  
  242. int main (int argc, char *argv[])
  243. {
  244. gtk_init (&argc, &argv);
  245. builder = gtk_builder_new();
  246. gtk_builder_add_from_file(builder, "GTK.glade", NULL);
  247.  
  248. //uno=gtk_image_new_from_file ("/home/lp1-2018/eclipse-workspace/GTK/uno.jpg");
  249. //dos=gtk_image_new_from_file ("/home/lp1-2018/eclipse-workspace/GTK/dos.jpg");
  250. //tres=gtk_image_new_from_file ("/home/lp1-2018/eclipse-workspace/GTK/tres.jpg");
  251. //cuatro=gtk_image_new_from_file ("/home/lp1-2018/eclipse-workspace/GTK/uno.jpg");
  252. //cinco=gtk_image_new_from_file ("/home/lp1-2018/eclipse-workspace/GTK/cinco.jpg");
  253. //seis=gtk_image_new_from_file ("/home/lp1-2018/eclipse-workspace/GTK/seis.jpg");
  254. //siete=gtk_image_new_from_file ("/home/lp1-2018/eclipse-workspace/GTK/siete.jpg");
  255. //moneda = gtk_image_new_from_file ("/home/lp1-2018/eclipse-workspace/GTK/moneda.jpg");
  256. matriz[0][0]=4;matriz[0][1]=4;matriz[0][2]=4;matriz[0][3]=4;matriz[0][4]=4;matriz[0][5]=4;
  257. matriz[1][0]=4;matriz[1][1]=4;matriz[1][2]=4;matriz[1][3]=4;matriz[1][4]=4;matriz[1][5]=4;
  258.  
  259.  
  260.  
  261. jugar=1;
  262. cantidad=0;
  263.  
  264. glade();
  265. conexion();
  266.  
  267. /*gtk_button_set_image(boton_1_abajo,cuatro);gtk_button_set_image(boton_2_abajo,cuatro);
  268. gtk_button_set_image(boton_3_abajo,cuatro);gtk_button_set_image(boton_4_abajo,cuatro);
  269. gtk_button_set_image(boton_5_abajo,cuatro);gtk_button_set_image(boton_6_abajo,cuatro);
  270.  
  271. gtk_button_set_image(boton_1_arriba,cuatro);gtk_button_set_image(boton_2_arriba,cuatro);
  272. gtk_button_set_image(boton_3_arriba,cuatro);gtk_button_set_image(boton_4_arriba,cuatro);
  273. gtk_button_set_image(boton_5_arriba,cuatro);gtk_button_set_image(boton_6_arriba,cuatro);*/
  274.  
  275. gtk_widget_show_all ((GtkWidget *) window_main);
  276. gtk_main ();
  277. return 0;
  278. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement