#!/usr/bin/env python

import hal
import hal_glib

class HandlerClass:
    def __init__(self, halcomp,builder,useropts):
        self.builder = builder
        self.test_value = hal_glib.GPin(halcomp.newpin('test',  hal.HAL_BIT, hal.HAL_IO))
        self.test_value.connect('value-changed', self.on_max_value_changed)

        self.r1a_spinbox = self.builder.get_object('r1a')
        self.r1a_spinbox.set_value(499)

    def on_max_value_changed(self,pin):
        if pin.get():
            pin.set(False)
            new = self.r1a_spinbox.get_value() -1
            if new <=0:
                self.r1a_spinbox.set_value(0)
                print 'pause'
            else:
                self.r1a_spinbox.set_value(new)

    def on_bt_r1a_pressed(self,widget,data=None):
        self.r1a_spinbox.set_value(499)

def get_handlers(halcomp,builder,useropts):
    return [HandlerClass(halcomp,builder,useropts)]
