]> git.llucax.com Git - z.facultad/75.42/figuras.git/blob - linea.cpp
Se implementan los dibujar().
[z.facultad/75.42/figuras.git] / linea.cpp
1 /* vim: set et sts=4 sw=4 fdm=indent fdn=1 fo+=t tw=80:
2  *
3  * Taller de Programación (75.42).
4  *
5  * Ejercicio Número 5:
6  * Graficador de figuras.
7  *
8  * Copyleft 2003 - Leandro Lucarella <llucare@fi.uba.ar>
9  * Puede copiar, modificar y distribuir este programa bajo los términos de
10  * la licencia GPL (http://www.gnu.org/).
11  *
12  * Creado: sáb sep 20 19:33:16 ART 2003
13  *
14  * $Id$
15  */
16
17 #include "linea.h"
18
19 #ifdef DEBUG
20 #   include <iostream>
21 #endif
22
23 Linea::Linea(size_t color, size_t grosor, const Punto& centro,
24         const char* nombre, const Punto& ini, const Punto& fin):
25         Figura(color, grosor, centro, nombre), ini(ini), fin(fin) {
26 #ifdef DEBUG
27     std::cerr << "En constructor de Línea." << std::endl;
28 #endif
29 }
30
31 Linea::~Linea(void) {
32 #ifdef DEBUG
33     std::cerr << "En destructor de Línea." << std::endl;
34 #endif
35 }
36
37 void Linea::dibujar(GtkWidget* widget) const {
38 #ifdef DEBUG
39     std::cerr << "En dibujar de Línea." << std::endl;
40 #endif
41     Figura::dibujar(widget);
42     gdk_draw_line(
43             // Área dibujable.
44             widget->window,
45             // Graphic Context.
46             widget->style->fg_gc[GTK_WIDGET_STATE (widget)],
47             ini.x, ini.y, fin.x, fin.y);
48 }
49