00001 #include "bcdisplayinfo.h"
00002 #include "bchash.h"
00003 #include "filesystem.h"
00004 #include "gainwindow.h"
00005 #include "language.h"
00006
00007 #include <string.h>
00008
00009
00010 PLUGIN_THREAD_OBJECT(Gain, GainThread, GainWindow)
00011
00012
00013
00014
00015
00016
00017 GainWindow::GainWindow(Gain *gain, int x, int y)
00018 : BC_Window(gain->gui_string,
00019 x,
00020 y,
00021 230,
00022 60,
00023 230,
00024 60,
00025 0,
00026 0,
00027 1)
00028 {
00029 this->gain = gain;
00030 }
00031
00032 GainWindow::~GainWindow()
00033 {
00034 }
00035
00036 int GainWindow::create_objects()
00037 {
00038 int x = 10, y = 10;
00039 add_tool(new BC_Title(5, y, _("Level:")));
00040 y += 20;
00041 add_tool(level = new GainLevel(gain, x, y));
00042 show_window();
00043 flush();
00044 return 0;
00045 }
00046
00047 WINDOW_CLOSE_EVENT(GainWindow)
00048
00049
00050
00051
00052 GainLevel::GainLevel(Gain *gain, int x, int y)
00053 : BC_FSlider(x,
00054 y,
00055 0,
00056 200,
00057 200,
00058 INFINITYGAIN,
00059 40,
00060 gain->config.level)
00061 {
00062 this->gain = gain;
00063 }
00064 int GainLevel::handle_event()
00065 {
00066 gain->config.level = get_value();
00067 gain->send_configure_change();
00068 return 1;
00069 }