]> git.llucax.com Git - z.facultad/75.42/figuras.git/commitdiff
Se agrega documentacion.
authorLeandro Lucarella <llucax@gmail.com>
Sun, 5 Oct 2003 03:04:59 +0000 (03:04 +0000)
committerLeandro Lucarella <llucax@gmail.com>
Sun, 5 Oct 2003 03:04:59 +0000 (03:04 +0000)
callbacks.cpp
callbacks.h
tp5.cpp

index b0524cae038439ceaf8b91a45e2988f8513c60d1..e07c57261b842da570a1cc11f1cbac630989d05e 100644 (file)
@@ -70,56 +70,65 @@ void on_button_agregar_clicked(GtkButton* button, gpointer user_data) {
 #ifdef DEBUG
     std::cerr << "Color: " << win->get_color() << std::endl;
 #endif
-    Figura* figura = new Circulo(1, 1, Punto(50, 50), "Lala", 50);
-    if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(win->radiobutton_linea))) {
+    Figura* figura;
+    // Si se agrega una línea.
+    if (gtk_toggle_button_get_active(
+                GTK_TOGGLE_BUTTON(win->radiobutton_linea))) {
+        // Creo la nueva línea con los parámetros ingresados por el usuario.
         figura = new Linea(
-            win->get_color(),
+            win->get_color(),                                 // Color
             gtk_spin_button_get_value_as_int(
-                GTK_SPIN_BUTTON(win->spinbutton_grosor)),
-            Punto(GTK_SPIN_BUTTON(win->spinbutton_centro_x),
-                GTK_SPIN_BUTTON(win->spinbutton_centro_y)),
-            gtk_entry_get_text(GTK_ENTRY(win->entry_nombre)),
-            Punto(GTK_SPIN_BUTTON(win->spinbutton_inicio_x),
-                GTK_SPIN_BUTTON(win->spinbutton_inicio_y)),
-            Punto(GTK_SPIN_BUTTON(win->spinbutton_fin_x),
-                GTK_SPIN_BUTTON(win->spinbutton_fin_y))
+                GTK_SPIN_BUTTON(win->spinbutton_grosor)),     // Grosor
+            Punto(GTK_SPIN_BUTTON(win->spinbutton_centro_x),  // Centro X
+                GTK_SPIN_BUTTON(win->spinbutton_centro_y)),   // Centro Y
+            gtk_entry_get_text(GTK_ENTRY(win->entry_nombre)), // Nombre
+            Punto(GTK_SPIN_BUTTON(win->spinbutton_inicio_x),  // Inicio X
+                GTK_SPIN_BUTTON(win->spinbutton_inicio_y)),   // Inicio Y
+            Punto(GTK_SPIN_BUTTON(win->spinbutton_fin_x),     // Fin X
+                GTK_SPIN_BUTTON(win->spinbutton_fin_y))       // Fin Y
         );
+    // Si se agrega un cuadrado.
     } else if (gtk_toggle_button_get_active(
                 GTK_TOGGLE_BUTTON(win->radiobutton_cuadrado))) {
+        // Creo la figura con los párametros ingresados por el usuario.
         figura = new Cuadrado(
-            win->get_color(),
+            win->get_color(),                                 // Color   
+            gtk_spin_button_get_value_as_int(                            
+                GTK_SPIN_BUTTON(win->spinbutton_grosor)),     // Grosor  
+            Punto(GTK_SPIN_BUTTON(win->spinbutton_centro_x),  // Centro X
+                GTK_SPIN_BUTTON(win->spinbutton_centro_y)),   // Centro Y
+            gtk_entry_get_text(GTK_ENTRY(win->entry_nombre)), // Nombre  
             gtk_spin_button_get_value_as_int(
-                GTK_SPIN_BUTTON(win->spinbutton_grosor)),
-            Punto(GTK_SPIN_BUTTON(win->spinbutton_centro_x),
-                GTK_SPIN_BUTTON(win->spinbutton_centro_y)),
-            gtk_entry_get_text(GTK_ENTRY(win->entry_nombre)),
-            gtk_spin_button_get_value_as_int(
-                GTK_SPIN_BUTTON(win->spinbutton_alto))
+                GTK_SPIN_BUTTON(win->spinbutton_alto))        // Lado.
         );
+    // Si se agrega un rectángulo.
     } else if (gtk_toggle_button_get_active(
                 GTK_TOGGLE_BUTTON(win->radiobutton_rectangulo))) {
+        // Creo la figura con los párametros ingresados por el usuario.
         figura = new Rectangulo(
-            win->get_color(),
-            gtk_spin_button_get_value_as_int(
-                GTK_SPIN_BUTTON(win->spinbutton_grosor)),
-            Punto(GTK_SPIN_BUTTON(win->spinbutton_centro_x),
-                GTK_SPIN_BUTTON(win->spinbutton_centro_y)),
-            gtk_entry_get_text(GTK_ENTRY(win->entry_nombre)),
+            win->get_color(),                                 // Color   
+            gtk_spin_button_get_value_as_int(                            
+                GTK_SPIN_BUTTON(win->spinbutton_grosor)),     // Grosor  
+            Punto(GTK_SPIN_BUTTON(win->spinbutton_centro_x),  // Centro X
+                GTK_SPIN_BUTTON(win->spinbutton_centro_y)),   // Centro Y
+            gtk_entry_get_text(GTK_ENTRY(win->entry_nombre)), // Nombre  
             gtk_spin_button_get_value_as_int(
-                GTK_SPIN_BUTTON(win->spinbutton_alto)),
+                GTK_SPIN_BUTTON(win->spinbutton_alto)),       // Alto.
             gtk_spin_button_get_value_as_int(
-                GTK_SPIN_BUTTON(win->spinbutton_ancho))
+                GTK_SPIN_BUTTON(win->spinbutton_ancho))       // Ancho.
         );
+    // Si no, se agrega un círculo.
     } else {
+        // Creo la figura con los párametros ingresados por el usuario.
         figura = new Circulo(
-            win->get_color(),
-            gtk_spin_button_get_value_as_int(
-                GTK_SPIN_BUTTON(win->spinbutton_grosor)),
-            Punto(GTK_SPIN_BUTTON(win->spinbutton_centro_x),
-                GTK_SPIN_BUTTON(win->spinbutton_centro_y)),
-            gtk_entry_get_text(GTK_ENTRY(win->entry_nombre)),
+            win->get_color(),                                 // Color   
+            gtk_spin_button_get_value_as_int(                            
+                GTK_SPIN_BUTTON(win->spinbutton_grosor)),     // Grosor  
+            Punto(GTK_SPIN_BUTTON(win->spinbutton_centro_x),  // Centro X
+                GTK_SPIN_BUTTON(win->spinbutton_centro_y)),   // Centro Y
+            gtk_entry_get_text(GTK_ENTRY(win->entry_nombre)), // Nombre  
             gtk_spin_button_get_value_as_int(
-                GTK_SPIN_BUTTON(win->spinbutton_radio))
+                GTK_SPIN_BUTTON(win->spinbutton_radio))       // Radio
         );
     }
     // Agrego la figura nueva al dibujo.
@@ -144,7 +153,7 @@ void on_radiobutton_linea_toggled(GtkToggleButton* togglebutton,
 #ifdef DEBUG
     std::cerr << "En linea event." << std::endl;
 #endif
-    // TODO
+    // Activo y desactivos los campos necesarios.
     TP5Window* win = static_cast<TP5Window*>(user_data);
     gtk_widget_set_sensitive(win->spinbutton_inicio_x, true);
     gtk_widget_set_sensitive(win->spinbutton_inicio_y, true);
@@ -160,7 +169,7 @@ void on_radiobutton_cuadrado_toggled(GtkToggleButton* togglebutton,
 #ifdef DEBUG
     std::cerr << "En cuadrado event." << std::endl;
 #endif
-    // TODO
+    // Activo y desactivos los campos necesarios.
     TP5Window* win = static_cast<TP5Window*>(user_data);
     gtk_widget_set_sensitive(win->spinbutton_inicio_x, false);
     gtk_widget_set_sensitive(win->spinbutton_inicio_y, false);
@@ -176,7 +185,7 @@ void on_radiobutton_rectangulo_toggled(GtkToggleButton* togglebutton,
 #ifdef DEBUG
     std::cerr << "En rectangulo event." << std::endl;
 #endif
-    // TODO
+    // Activo y desactivos los campos necesarios.
     TP5Window* win = static_cast<TP5Window*>(user_data);
     gtk_widget_set_sensitive(win->spinbutton_inicio_x, false);
     gtk_widget_set_sensitive(win->spinbutton_inicio_y, false);
@@ -192,7 +201,7 @@ void on_radiobutton_circulo_toggled(GtkToggleButton* togglebutton,
 #ifdef DEBUG
     std::cerr << "En circulo event." << std::endl;
 #endif
-    // TODO
+    // Activo y desactivos los campos necesarios.
     TP5Window* win = static_cast<TP5Window*>(user_data);
     gtk_widget_set_sensitive(win->spinbutton_inicio_x, false);
     gtk_widget_set_sensitive(win->spinbutton_inicio_y, false);
index e7cb716886cacc3cdc1e6be30ed1f11caa1b2dbc..e2d27c93ba93dc2c99d617cb7745a97cbd80fc01 100644 (file)
 
 #include <gtk/gtk.h>
 
+/**
+ * Función llamada cuando hay que redibujar una porción del área de dibujo.
+ * 
+ * \param widget Área de dibujo que recibió el evento.
+ * \param event Evento (tiene información del área que necesita ser repintada).
+ * \param user_data Dibujo con las figuras a redibujar.
+ */
 gboolean on_drawingarea_expose_event(GtkWidget *widget, GdkEventExpose *event,
         gpointer user_data);
 
+/**
+ * Función llamada cuando se presiona el botón de Limpiar.
+ *
+ * \param button Botón presionado.
+ * \param user_data Dibujo con las figuras a borrar.
+ */
 void on_button_borrar_clicked(GtkButton *button, gpointer user_data);
 
+/**
+ * Función llamada cuando se presiona el botón de Actualizar.
+ *
+ * \param button Botón presionado.
+ * \param user_data Área de dibujo a actualizar.
+ */
 void on_button_graficar_clicked(GtkButton *button, gpointer user_data);
 
+/**
+ * Función llamada cuando se presiona el botón de Salir.
+ *
+ * \param button Botón presionado.
+ * \param user_data No utilizado.
+ */
 void on_button_salir_clicked(GtkButton *button, gpointer user_data);
 
+/**
+ * Función llamada cuando se presiona el botón de Agregar.
+ *
+ * \param button Botón presionado.
+ * \param user_data TP5Window con todos los widget necesarios para tomar la
+ * entrada del usuario y crear la nueva figura.
+ */
 void on_button_agregar_clicked(GtkButton *button, gpointer user_data);
 
+/**
+ * Función llamada cuando el manejador de ventanas manda el evento Delete.
+ * Típicamente esto sucede cuando se presiona la X en la decoración de la
+ * ventana).
+ * 
+ * \param widget Ventana que recibió el evento.
+ * \param event Evento.
+ * \param user_data No utilizado.
+ */
 gboolean on_window_delete_event(GtkWidget *widget, GdkEvent *event,
         gpointer user_data);
 
+/**
+ * Función llamada cuando se presiona el botón de selección Línea.
+ *
+ * \param button Botón presionado.
+ * \param user_data TP5Window con los widgets que hay que activar y desactivar
+ * para que el usuario sólo pueda ingresar los datos que tengan sentido.
+ */
 void on_radiobutton_linea_toggled(GtkToggleButton *togglebutton,
         gpointer user_data);
 
+/**
+ * Función llamada cuando se presiona el botón de selección Cuadrado.
+ *
+ * \param button Botón presionado.
+ * \param user_data TP5Window con los widgets que hay que activar y desactivar
+ * para que el usuario sólo pueda ingresar los datos que tengan sentido.
+ */
 void on_radiobutton_cuadrado_toggled(GtkToggleButton *togglebutton,
         gpointer user_data);
 
+/**
+ * Función llamada cuando se presiona el botón de selección Rectángulo.
+ *
+ * \param button Botón presionado.
+ * \param user_data TP5Window con los widgets que hay que activar y desactivar
+ * para que el usuario sólo pueda ingresar los datos que tengan sentido.
+ */
 void on_radiobutton_rectangulo_toggled(GtkToggleButton *togglebutton,
         gpointer user_data);
 
+/**
+ * Función llamada cuando se presiona el botón de selección Círculo.
+ *
+ * \param button Botón presionado.
+ * \param user_data TP5Window con los widgets que hay que activar y desactivar
+ * para que el usuario sólo pueda ingresar los datos que tengan sentido.
+ */
 void on_radiobutton_circulo_toggled(GtkToggleButton *togglebutton,
         gpointer user_data);
+
diff --git a/tp5.cpp b/tp5.cpp
index 43f959ec0b97169e14ff41f07ebc8b112b364a24..5b7846e203e3c571a735da45618d84b15c3a1268 100644 (file)
--- a/tp5.cpp
+++ b/tp5.cpp
@@ -21,6 +21,7 @@
 #include "circulo.h"
 #include "tp5window.h"
 #include <gtk/gtk.h>
+#include <cstdlib>
 
 /**
  * Programa principal del \ref main "Trabajo Práctico".
  * \return EXIT_SUCCESS si terminó correctamente.
  */
 int main(int argc, char* argv[]) {
-
     // Seteo opciones de idioma (para que se traduzcan los mensajes al idioma
     // usuado por el usuario) a través de las variables de entorno LC_xxx.
     gtk_set_locale();
-
     // Pasa los parámetros de línea de comandos a GTK para poder modificar
     // opciones específicas de esta librería.
     gtk_init(&argc, &argv);
-
     // Creo mi ventana (con todos sus componentes, incluido el dibujo).
     TP5Window window;
-
     // Entro en el loop de eventos.
-    gtk_main ();
-
+    gtk_main();
     // Sale con código de éxito.
     return EXIT_SUCCESS;
 }