hospital.cpp

Go to the documentation of this file.
00001 
00002 #include "hospital.h"
00003 
00004 const c_rectangle body_size(0, 0, 50, 40);
00005 const c_rectangle horizontal_bar_size(12, 15, 38, 25);
00006 const c_rectangle vertical_bar_size(20, 7, 30, 33);
00007 
00008 hospital::hospital(const c_point &origin, canvas *draw_on) :
00009   body(body_size), vertical_bar(vertical_bar_size), my_canvas(draw_on),
00010   horizontal_bar(horizontal_bar_size)
00011 {
00012   vertical_bar.set_canvas(draw_on);
00013   horizontal_bar.set_canvas(draw_on);
00014   body.set_canvas(draw_on);
00015 
00016   vertical_bar.my_color.set_color(WHITE);
00017   horizontal_bar.my_color.set_color(WHITE);
00018   body.my_color.set_color(RED);
00019 
00020   set_origin(origin);
00021 }
00022 
00023 c_rectangle hospital::dimensions() { return body.dimensions(); }
00024 
00025 void hospital::set_origin(const c_point &origin)
00026 {
00027   if (my_origin == origin) return;
00028 
00029   c_point diff = origin - my_origin;
00030   my_origin = origin;
00031   horizontal_bar.set_origin(horizontal_bar.location().left_bottom + diff);
00032   vertical_bar.set_origin(vertical_bar.location().left_bottom + diff);
00033   body.set_origin(my_origin);
00034 }
00035 
00036 void hospital::draw()
00037 {
00038   body.draw();
00039   horizontal_bar.draw();
00040   vertical_bar.draw();
00041 }
00042 
00043 void hospital::erase()
00044 {
00045   body.erase();
00046   horizontal_bar.erase();
00047   vertical_bar.erase();
00048 }

Generated on Thu Nov 20 04:29:09 2008 for HOOPLE Libraries by  doxygen 1.5.1