Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

confirmquit.C

Go to the documentation of this file.
00001 #include "confirmquit.h"
00002 #include "keys.h"
00003 #include "language.h"
00004 #include "mwindow.h"
00005 #include "mwindowgui.h"
00006 #include "theme.h"
00007 
00008 
00009 
00010 
00011 ConfirmQuitWindow::ConfirmQuitWindow(MWindow *mwindow)
00012  : BC_Window(PROGRAM_NAME ": Question", 
00013         mwindow->gui->get_abs_cursor_x(1), 
00014         mwindow->gui->get_abs_cursor_y(1), 
00015         375, 
00016         160)
00017 {
00018         this->mwindow = mwindow;
00019 }
00020 
00021 ConfirmQuitWindow::~ConfirmQuitWindow()
00022 {
00023 }
00024 
00025 int ConfirmQuitWindow::create_objects(char *string)
00026 {
00027         int x = 10, y = 10;
00028         BC_Title *title;
00029 
00030         add_subwindow(title = new BC_Title(x, y, string));
00031         y += title->get_h();
00032         add_subwindow(title = new BC_Title(x, y, _("( Answering ""No"" will destroy changes )")));
00033 
00034         add_subwindow(new ConfirmQuitYesButton(mwindow, this));
00035         add_subwindow(new ConfirmQuitNoButton(mwindow, this));
00036         add_subwindow(new ConfirmQuitCancelButton(mwindow, this));
00037         return 0;
00038 }
00039 
00040 ConfirmQuitYesButton::ConfirmQuitYesButton(MWindow *mwindow, 
00041         ConfirmQuitWindow *gui)
00042  : BC_GenericButton(10, 
00043         gui->get_h() - BC_GenericButton::calculate_h() - 10, 
00044         _("Yes"))
00045 {
00046         set_underline(0);
00047 }
00048 
00049 int ConfirmQuitYesButton::handle_event()
00050 {
00051         set_done(2);
00052         return 1;
00053 }
00054 
00055 int ConfirmQuitYesButton::keypress_event()
00056 {;
00057         if(get_keypress() == 'y') return handle_event();
00058         return 0;
00059 }
00060 
00061 ConfirmQuitNoButton::ConfirmQuitNoButton(MWindow *mwindow, 
00062         ConfirmQuitWindow *gui)
00063  : BC_GenericButton(gui->get_w() / 2 - BC_GenericButton::calculate_w(gui, _("No")) / 2, 
00064         gui->get_h() - BC_GenericButton::calculate_h() - 10, 
00065         _("No"))
00066 {
00067         set_underline(0);
00068 }
00069 
00070 int ConfirmQuitNoButton::handle_event()
00071 {
00072         set_done(0);
00073         return 1;
00074 }
00075 
00076 int ConfirmQuitNoButton::keypress_event()
00077 {
00078         if(get_keypress() == 'n') return handle_event(); 
00079         return 0;
00080 }
00081 
00082 ConfirmQuitCancelButton::ConfirmQuitCancelButton(MWindow *mwindow, 
00083         ConfirmQuitWindow *gui)
00084  : BC_GenericButton(gui->get_w() - BC_GenericButton::calculate_w(gui, _("Cancel")) - 10, 
00085         gui->get_h() - BC_GenericButton::calculate_h() - 10, 
00086         _("Cancel"))
00087 {
00088 }
00089 
00090 int ConfirmQuitCancelButton::handle_event()
00091 {
00092         set_done(1);
00093         return 1;
00094 }
00095 
00096 int ConfirmQuitCancelButton::keypress_event()
00097 {
00098         if(get_keypress() == ESC) return handle_event();
00099         return 0;
00100 }
00101 

Generated on Sun Jan 8 13:38:51 2006 for Cinelerra-svn by  doxygen 1.4.4