Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var DT_CENTER = 0x00000001;
- var DT_VCENTER = 0x00000004;
- var DT_SINGLELINE = 0x00000020;
- var g_tooltip = window.CreateTooltip();
- var g_trackingMouse = false;
- var v, old_v;
- function RGB(r, g, b) {
- return (0xff000000 | (r << 16) | (g << 8) | (b));
- }
- var g_font = gdi.Font("Tahoma", 12, 0);
- var g_drag = 0;
- function on_paint(gr) {
- var ww = window.Width;
- var wh = window.Height;
- var volume = fb.Volume;
- var pos = window.Width * ((100 + volume) / 100);
- var txt = (Math.ceil(volume)) + "dB";
- gr.FillGradRect(0, 0, pos, wh, 90, RGB(240, 240, 240), RGB(100, 230, 100));
- gr.FillGradRect(pos, 0, ww - pos, wh, 90, RGB(240, 240, 240), RGB(190, 190, 190));
- gr.GdiDrawText(txt, g_font, RGB(64, 64, 128), 0, 0, ww, wh, DT_CENTER | DT_VCENTER | DT_SINGLELINE);
- gr.DrawRect(0, 0, ww - 1, wh - 1, 1.0, RGB(150, 150, 150));
- }
- function on_mouse_lbtn_down(x, y) {
- g_drag = 1;
- }
- function on_mouse_lbtn_up(x, y) {
- on_mouse_move(x, y);
- g_drag = 0;
- }
- function on_mouse_move(x, y) {
- if (!g_trackingMouse) {
- g_tooltip.Activate();
- g_tooltip.TrackActivate = true;
- g_trackingMouse = true;
- }
- var v = x / window.Width;
- v = (v < 0) ? 0 : (v < 1) ? v : 1;
- v = -100 * (1 - v);
- if (old_v != v) {
- g_tooltip.Text = Math.ceil(v) + "dB";
- g_tooltip.TrackPosition(x, y - 20);
- old_v = v;
- }
- if (g_drag && fb.Volume != v) fb.Volume = v;
- }
- function on_mouse_leave() {
- g_trackingMouse = false;
- g_tooltip.TrackActivate = false;
- }
- function on_mouse_wheel(delta) {
- if (delta > 0) fb.VolumeUp();
- else fb.VolumeDown();
- }
- function on_volume_change(val) {
- window.Repaint();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement