00001 #include "bcdisplayinfo.h"
00002 #include "flipwindow.h"
00003
00004 #include <libintl.h>
00005 #define _(String) gettext(String)
00006 #define gettext_noop(String) String
00007 #define N_(String) gettext_noop (String)
00008
00009
00010 PLUGIN_THREAD_OBJECT(FlipMain, FlipThread, FlipWindow)
00011
00012
00013
00014
00015
00016
00017 FlipWindow::FlipWindow(FlipMain *client, int x, int y)
00018 : BC_Window(client->get_gui_string(),
00019 x,
00020 y,
00021 140,
00022 100,
00023 140,
00024 100,
00025 0,
00026 0,
00027 1)
00028 {
00029 this->client = client;
00030 }
00031
00032 FlipWindow::~FlipWindow()
00033 {
00034 }
00035
00036 int FlipWindow::create_objects()
00037 {
00038 int x = 10, y = 10;
00039 add_tool(flip_vertical = new FlipToggle(client,
00040 &(client->config.flip_vertical),
00041 _("Vertical"),
00042 x,
00043 y));
00044 y += 30;
00045 add_tool(flip_horizontal = new FlipToggle(client,
00046 &(client->config.flip_horizontal),
00047 _("Horizontal"),
00048 x,
00049 y));
00050 show_window();
00051 flush();
00052 }
00053
00054 int FlipWindow::close_event()
00055 {
00056 set_done(1);
00057 return 1;
00058 }
00059
00060 FlipToggle::FlipToggle(FlipMain *client, int *output, char *string, int x, int y)
00061 : BC_CheckBox(x, y, *output, string)
00062 {
00063 this->client = client;
00064 this->output = output;
00065 }
00066 FlipToggle::~FlipToggle()
00067 {
00068 }
00069 int FlipToggle::handle_event()
00070 {
00071 *output = get_value();
00072 client->send_configure_change();
00073 return 1;
00074 }