[tuxdroid-svn] r745 - in software/gadgets: . sound_monitor sound_monitor/trunk sound_monitor/trunk/
Status: Beta
Brought to you by:
ks156
Author: Paul_R Date: 2007-11-30 15:38:46 +0100 (Fri, 30 Nov 2007) New Revision: 745 Added: software/gadgets/sound_monitor/ software/gadgets/sound_monitor/branches/ software/gadgets/sound_monitor/tags/ software/gadgets/sound_monitor/trunk/ software/gadgets/sound_monitor/trunk/audio_monitor.tgf software/gadgets/sound_monitor/trunk/audio_monitor/ software/gadgets/sound_monitor/trunk/audio_monitor/Pictures/ software/gadgets/sound_monitor/trunk/audio_monitor/Pictures/Icons/ software/gadgets/sound_monitor/trunk/audio_monitor/Pictures/Icons/gadget.png software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/ software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/ software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/GUI/ software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/GUI/conf/ software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/GUI/conf/other.glade software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/GUI/conf/other.pyp software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/GUI/widget/ software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/GUI/widget/other.glade software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/GUI/widget/other.pyp software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/Sound_class.py software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/init.pyp software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/main.pyp software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/notify.pyp software/gadgets/sound_monitor/trunk/audio_monitor/Strings/ software/gadgets/sound_monitor/trunk/audio_monitor/Strings/fr_ALL.xml software/gadgets/sound_monitor/trunk/audio_monitor/about.xml software/gadgets/sound_monitor/trunk/audio_monitor/parts.xml software/gadgets/sound_monitor/trunk/audio_monitor/settings.xml software/gadgets/sound_monitor/trunk/audio_monitor/strings.xml Log: * Added the sound monitor gadget Added: software/gadgets/sound_monitor/trunk/audio_monitor/Pictures/Icons/gadget.png =================================================================== (Binary files differ) Property changes on: software/gadgets/sound_monitor/trunk/audio_monitor/Pictures/Icons/gadget.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/GUI/conf/other.glade =================================================================== --- software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/GUI/conf/other.glade (rev 0) +++ software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/GUI/conf/other.glade 2007-11-30 14:38:46 UTC (rev 745) @@ -0,0 +1,308 @@ +<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*--> +<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd"> + +<glade-interface> + +<widget class="GtkWindow" id="window1"> + <property name="visible">True</property> + <property name="title" translatable="yes">Parameters</property> + <property name="type">GTK_WINDOW_TOPLEVEL</property> + <property name="window_position">GTK_WIN_POS_NONE</property> + <property name="modal">False</property> + <property name="resizable">False</property> + <property name="destroy_with_parent">False</property> + <property name="decorated">True</property> + <property name="skip_taskbar_hint">False</property> + <property name="skip_pager_hint">False</property> + <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property> + <property name="gravity">GDK_GRAVITY_NORTH_WEST</property> + <property name="focus_on_map">True</property> + <property name="urgency_hint">False</property> + + <child> + <widget class="GtkVBox" id="vbox1"> + <property name="visible">True</property> + <property name="homogeneous">False</property> + <property name="spacing">0</property> + + <child> + <widget class="GtkFrame" id="frame5"> + <property name="border_width">5</property> + <property name="visible">True</property> + <property name="label_xalign">0</property> + <property name="label_yalign">0.5</property> + <property name="shadow_type">GTK_SHADOW_IN</property> + + <child> + <widget class="GtkAlignment" id="alignment8"> + <property name="visible">True</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xscale">1</property> + <property name="yscale">1</property> + <property name="top_padding">0</property> + <property name="bottom_padding">0</property> + <property name="left_padding">12</property> + <property name="right_padding">0</property> + + <child> + <widget class="GtkFixed" id="fixed6"> + <property name="height_request">29</property> + <property name="visible">True</property> + + <child> + <widget class="GtkSpinButton" id="delay_spinbutton"> + <property name="width_request">120</property> + <property name="height_request">24</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="climb_rate">1</property> + <property name="digits">0</property> + <property name="numeric">False</property> + <property name="update_policy">GTK_UPDATE_ALWAYS</property> + <property name="snap_to_ticks">False</property> + <property name="wrap">False</property> + <property name="adjustment">1 1 3600 1 10 10</property> + </widget> + <packing> + <property name="x">88</property> + <property name="y">0</property> + </packing> + </child> + + <child> + <widget class="GtkLabel" id="label13"> + <property name="width_request">336</property> + <property name="height_request">16</property> + <property name="visible">True</property> + <property name="label" translatable="yes">Delay (sec) :</property> + <property name="use_underline">False</property> + <property name="use_markup">False</property> + <property name="justify">GTK_JUSTIFY_LEFT</property> + <property name="wrap">True</property> + <property name="selectable">False</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> + <property name="width_chars">-1</property> + <property name="single_line_mode">False</property> + <property name="angle">0</property> + </widget> + <packing> + <property name="x">0</property> + <property name="y">0</property> + </packing> + </child> + </widget> + </child> + </widget> + </child> + + <child> + <widget class="GtkLabel" id="label12"> + <property name="visible">True</property> + <property name="label" translatable="yes"><b>Updates</b></property> + <property name="use_underline">False</property> + <property name="use_markup">True</property> + <property name="justify">GTK_JUSTIFY_LEFT</property> + <property name="wrap">False</property> + <property name="selectable">False</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> + <property name="width_chars">-1</property> + <property name="single_line_mode">False</property> + <property name="angle">0</property> + </widget> + <packing> + <property name="type">label_item</property> + </packing> + </child> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">True</property> + <property name="fill">True</property> + </packing> + </child> + + <child> + <widget class="GtkFixed" id="fixed3"> + <property name="height_request">44</property> + <property name="visible">True</property> + + <child> + <widget class="GtkButton" id="button2"> + <property name="width_request">96</property> + <property name="height_request">32</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="relief">GTK_RELIEF_NORMAL</property> + <property name="focus_on_click">True</property> + <signal name="clicked" handler="on_accept_clicked"/> + + <child> + <widget class="GtkAlignment" id="alignment4"> + <property name="visible">True</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xscale">0</property> + <property name="yscale">0</property> + <property name="top_padding">0</property> + <property name="bottom_padding">0</property> + <property name="left_padding">0</property> + <property name="right_padding">0</property> + + <child> + <widget class="GtkHBox" id="hbox2"> + <property name="visible">True</property> + <property name="homogeneous">False</property> + <property name="spacing">2</property> + + <child> + <widget class="GtkImage" id="image2"> + <property name="visible">True</property> + <property name="stock">gtk-apply</property> + <property name="icon_size">4</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">False</property> + <property name="fill">False</property> + </packing> + </child> + + <child> + <widget class="GtkLabel" id="label5"> + <property name="visible">True</property> + <property name="label" translatable="yes">Accept</property> + <property name="use_underline">True</property> + <property name="use_markup">False</property> + <property name="justify">GTK_JUSTIFY_LEFT</property> + <property name="wrap">False</property> + <property name="selectable">False</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> + <property name="width_chars">-1</property> + <property name="single_line_mode">False</property> + <property name="angle">0</property> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">False</property> + <property name="fill">False</property> + </packing> + </child> + </widget> + </child> + </widget> + </child> + </widget> + <packing> + <property name="x">16</property> + <property name="y">8</property> + </packing> + </child> + + <child> + <widget class="GtkButton" id="button3"> + <property name="width_request">96</property> + <property name="height_request">32</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="relief">GTK_RELIEF_NORMAL</property> + <property name="focus_on_click">True</property> + <signal name="clicked" handler="on_cancel_clicked"/> + + <child> + <widget class="GtkAlignment" id="alignment5"> + <property name="visible">True</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xscale">0</property> + <property name="yscale">0</property> + <property name="top_padding">0</property> + <property name="bottom_padding">0</property> + <property name="left_padding">0</property> + <property name="right_padding">0</property> + + <child> + <widget class="GtkHBox" id="hbox3"> + <property name="visible">True</property> + <property name="homogeneous">False</property> + <property name="spacing">2</property> + + <child> + <widget class="GtkImage" id="image3"> + <property name="visible">True</property> + <property name="stock">gtk-cancel</property> + <property name="icon_size">4</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">False</property> + <property name="fill">False</property> + </packing> + </child> + + <child> + <widget class="GtkLabel" id="label6"> + <property name="visible">True</property> + <property name="label" translatable="yes">Cancel</property> + <property name="use_underline">True</property> + <property name="use_markup">False</property> + <property name="justify">GTK_JUSTIFY_LEFT</property> + <property name="wrap">False</property> + <property name="selectable">False</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> + <property name="width_chars">-1</property> + <property name="single_line_mode">False</property> + <property name="angle">0</property> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">False</property> + <property name="fill">False</property> + </packing> + </child> + </widget> + </child> + </widget> + </child> + </widget> + <packing> + <property name="x">144</property> + <property name="y">8</property> + </packing> + </child> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">True</property> + <property name="fill">True</property> + </packing> + </child> + </widget> + </child> +</widget> + +</glade-interface> Added: software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/GUI/conf/other.pyp =================================================================== --- software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/GUI/conf/other.pyp (rev 0) +++ software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/GUI/conf/other.pyp 2007-11-30 14:38:46 UTC (rev 745) @@ -0,0 +1,473 @@ +bindtextdomain("params", "") + +class Window(SimpleGladeApp): + def __init__(self, + path=_me.get_path('root') + '/Scripts/Python/GUI/conf/other.glade', + root="window1", + domain="params", **kwargs): + SimpleGladeApp.__init__(self, path, root, domain, **kwargs) + + + def new(self): + self.measure = _me.get_param('measure') + #_me.insert_funct('refresh_tree', self.refresh_tree) + #_me.insert_funct('verify_tab', self.verify_tab) + self.updates_commons() + #self.make_viewtree() + #self.update_labels() + + + + + def updates_commons(self): + # Window title + txt = "%s : %s" % (_me.string('name_to_read'), + _me.string('gui_conf_window_title')) + self.get_widget("window1").set_title(txt) + + + # Update Frame + txt = _me.string('gui_conf_update_title') + self.get_widget("label12").set_text(txt) + + txt = "%s : " % _me.string('gui_conf_delay_lb') + self.get_widget("label13").set_text(txt) + + value = _me.get_var('notify_delay') + self.get_widget("delay_spinbutton").set_value(value) + + # Bottom buttons + txt = _me.string('gui_conf_cancel_bt') + self.get_widget("label6").set_text(txt) + + txt = _me.string('gui_conf_accept_bt') + self.get_widget("label5").set_text(txt) + + #self.get_widget('txt_conf_rate').set_text(str(_me.get_param('Rate'))) + #self.get_widget('txt_conf_sample').set_text(str(_me.get_param('Sample'))) + #self.get_widget('txtLowThreshold').set_text(str(_me.get_param('low_threshold'))) + #self.get_widget('txtHighThreshold').set_text(str(_me.get_param('high_threshold'))) + + ########################################################### + # + # On cancel button clicked + # + ########################################################### + def on_cancel_clicked(self, widget, *args): + self.get_widget("window1").destroy() + + + + ########################################################### + # + # On accept button clicked + # + ########################################################### + def on_accept_clicked(self, widget, *args): + _me.set_var('notify_delay', int(self.get_widget("delay_spinbutton").get_value())) + + self.get_widget("window1").destroy() + ''' + _me.set_param('Rate', float(self.get_widget('txt_conf_rate').get_text())) + _me.set_param('Sample',float(self.get_widget('txt_conf_sample').get_text())) + _me.set_param(('MainScript'), str(self.get_widget('mainScript').get_filename())) + _me.set_param(('chkMotors'), self.get_widget('chkMotors').get_active()) + self.measure.chkMotors = self.get_widget('chkMotors').get_active() + self.measure.rate_backup = _me.get_param('Rate') + self.measure.sample_backup = _me.get_param('Sample') + + try: + float(self.get_widget('txtLowThreshold').get_text()) + except: + self.get_widget('txtLowThreshold').set_text('4.8') + + if float(self.get_widget('txtLowThreshold').get_text()) < 4.0: + self.get_widget('txtLowThreshold').set_text('4.0') + if float(self.get_widget('txtLowThreshold').get_text()) > 6.3: + self.get_widget('txtLowThreshold').set_text('6.3') + self.measure.low_threshold = float(self.get_widget('txtLowThreshold').get_text()) + _me.set_param('low_threshold', self.measure.low_threshold) + + try: + float(self.get_widget('txtHighThreshold').get_text()) + except: + self.get_widget('txtHighThreshold').set_text('4.8') + + if float(self.get_widget('txtHighThreshold').get_text()) < self.measure.low_threshold: + self.get_widget('txtHighThreshold').set_text(str(self.measure.low_threshold + 0.1)) + if float(self.get_widget('txtHighThreshold').get_text()) > 6.4: + self.get_widget('txtHighThreshold').set_text('6.4') + + self.measure.high_threshold = float(self.get_widget('txtHighThreshold').get_text()) + _me.set_param('high_threshold', self.measure.high_threshold) + + self.measure.absolute_threshold_high_flag = False + self.measure.absolute_threshold_low_flag = False + ''' + + + ''' + ########################################################### + # + # Battery configuration control + # + ########################################################### + def make_viewtree(self): + self.index_column = gtk.TreeViewColumn('Index') + self.index_column.set_min_width(50) + self.index_cell = gtk.CellRendererText() + self.index_column.pack_start(self.index_cell, True) + self.index_column.add_attribute(self.index_cell, 'text', 0) + + self.event_column = gtk.TreeViewColumn(_me.string('conf_lblEvent')) + self.event_column.set_min_width(100) + self.event_cell = gtk.CellRendererText() + self.event_column.pack_start(self.event_cell, True) + self.event_column.add_attribute(self.event_cell, 'text', 1) + + self.type_column = gtk.TreeViewColumn(_me.string('conf_lblType')) + self.type_column.set_min_width(100) + self.type_cell = gtk.CellRendererText() + self.type_column.pack_start(self.type_cell, True) + self.type_column.add_attribute(self.type_cell, 'text', 2) + + self.value_column = gtk.TreeViewColumn(_me.string('conf_lblValue')) + self.value_column.set_min_width(100) + self.value_cell = gtk.CellRendererText() + self.value_column.pack_start(self.value_cell, True) + self.value_column.add_attribute(self.value_cell, 'text', 3) + + self.time_column = gtk.TreeViewColumn(_me.string('conf_lblTime')) + self.time_column.set_min_width(100) + self.time_cell = gtk.CellRendererText() + self.time_column.pack_start(self.time_cell, True) + self.time_column.add_attribute(self.time_cell, 'text', 4) + + self.notified_column = gtk.TreeViewColumn(_me.string('conf_lblNotified')) + self.notified_column.set_min_width(100) + self.notified_cell = gtk.CellRendererText() + self.notified_column.pack_start(self.notified_cell, True) + self.notified_column.add_attribute(self.notified_cell, 'text', 5) + + self.behavior_column = gtk.TreeViewColumn(_me.string('conf_lblBehavior')) + self.behavior_cell = gtk.CellRendererText() + self.behavior_column.pack_start(self.behavior_cell, True) + self.behavior_column.add_attribute(self.behavior_cell, 'text', 6) + + self.value_list = gtk.TreeStore(int, str, str, str, str, str, str) + self.gadget_viewer = gtk.TreeView(self.value_list) + self.gadget_viewer.append_column(self.index_column) + self.gadget_viewer.append_column(self.event_column) + self.gadget_viewer.append_column(self.type_column) + self.gadget_viewer.append_column(self.value_column) + self.gadget_viewer.append_column(self.time_column) + self.gadget_viewer.append_column(self.notified_column) + self.gadget_viewer.append_column(self.behavior_column) + self.get_widget("scrolledwindow1").add(self.gadget_viewer) + self.get_widget("scrolledwindow1").set_size_request(0, 150) + self.get_widget("scrolledwindow1").show_all() + self.get_widget('cbb_conf_event').set_active(0) + self.get_widget('txt_conf_value').set_text('1.0') + self.get_widget('txt_conf_time').set_text('0.1') + self.get_widget('chkMotors').set_label(_me.string('lblMotors')) + self.get_widget('chkMotors').set_active(_me.get_param('chkMotors')) + self.measure.chkMotors = _me.get_param('chkMotors') + self.gadget_viewer.get_selection().connect("changed",self.on_row_selected) + #self.gadget_viewer.connect("row_activated", self.on_row_selected) + self.measure.event_tab = _me.get_param('config') + self.get_widget('cbb_conf_event').append_text(_me.string('conf_lblChange')) + self.get_widget('cbb_conf_event').append_text(_me.string('conf_lblThreshold')) + self.get_widget('cbb_conf_event').set_active(0) + + + for i in range(len(self.measure.event_tab)): + self.add_row(i) + ''' + + ''' + ########################################################### + # + # Update the labels + # + ########################################################### + def update_labels(self): + #self.get_widget("lbl_conf_event").set_text(_me.string('conf_lblEvent')) + + #self.get_widget("lbl_conf_type").set_text(_me.string('conf_lblType')) + #self.get_widget("lbl_conf_value").set_text(_me.string('conf_lblValue')) + #self.get_widget("lbl_conf_time").set_text(_me.string('conf_lblTime')) + #self.get_widget("lbl_conf_notified").set_text(_me.string('conf_lblNotified')) + #self.get_widget("lbl_conf_behavior").set_text(_me.string('conf_lblBehavior')) + #self.get_widget("btn_conf_add").set_label(_me.string('conf_btnAdd')) + #self.get_widget("btn_conf_remove").set_label(_me.string('conf_btnRemove')) + #self.get_widget("btn_conf_modify").set_label(_me.string('conf_btnModify')) + #self.get_widget("btnBehavior").set_label(_me.string('conf_btnBehavior')) + #self.get_widget("lbl_conf_sample").set_text(_me.string('conf_lblSample')) + #self.get_widget("lbl_conf_rate").set_text(_me.string('conf_lblRate')) + #self.get_widget("lblControlFrame").set_text(_me.string('conf_lblControl')) + #self.get_widget("lblScript").set_text(_me.string('MainBehavior')) + #self.get_widget("lblHighThreshold").set_label(_me.string('lblHighThreshold')) + #self.get_widget("lblLowThreshold").set_label(_me.string('lblLowThreshold')) + ''' + + ''' + ########################################################### + # + # On row selected + # + ########################################################### + def on_row_selected(self, obj): + path = obj.get_selected_rows() + self.__iter = self.value_list.get_iter(path[1][0]) + index = self.value_list.get_value(self.__iter, 0) + event = self.value_list.get_value(self.__iter, 1) + typet = self.value_list.get_value(self.__iter, 2) + value = self.value_list.get_value(self.__iter, 3) + time = self.value_list.get_value(self.__iter, 4) + notify = self.value_list.get_value(self.__iter, 5) + behavior = self.value_list.get_value(self.__iter, 6) + + if event == _me.string('conf_lblChange'): + self.get_widget('cbb_conf_event').set_active(0) + if typet == _me.string('conf_lblDrop'): + self.get_widget('cbb_conf_type').set_active(0) + if typet == _me.string('conf_lblRaise'): + self.get_widget('cbb_conf_type').set_active(1) + if typet == _me.string('conf_lblChangeD'): + self.get_widget('cbb_conf_type').set_active(2) + if typet == _me.string('conf_lblChangeU'): + self.get_widget('cbb_conf_type').set_active(3) + self.get_widget('txt_conf_value').set_text(value) + self.get_widget('txt_conf_time').set_text(time) + + else: + self.get_widget('cbb_conf_event').set_active(1) + if typet == _me.string('conf_lblIncrease'): + self.get_widget('cbb_conf_type').set_active(0) + if typet == _me.string('conf_lblDecrease'): + self.get_widget('cbb_conf_type').set_active(1) + if typet == _me.string('conf_lblBoth'): + self.get_widget('cbb_conf_type').set_active(2) + + self.get_widget('txt_conf_value').set_text(value) + self.get_widget('txt_conf_time').set_text('') + + if notify == _me.string('conf_lblNotifiedBehavior'): + self.get_widget('chk_conf_notified').set_active(True) + else: + self.get_widget('chk_conf_notified').set_active(False) + + if behavior != 'N.A.': + self.get_widget('conf_behavior').set_filename(behavior) + else: + self.get_widget('conf_behavior').set_filename('None') + + + ########################################################### + # + # On row modified + # + ########################################################### + def on_btn_conf_modify_clicked(self, widget, *args): + index = self.value_list.get_value(self.__iter, 0) + + self.measure.event_tab = _me.get_param('config') + length = len(_me.get_param('config')) + self.verify_value() + + value = [] + value = [index, + self.get_widget('cbb_conf_event').get_active(), + self.get_widget('cbb_conf_type').get_active(), + float(self.get_widget('txt_conf_value').get_text()), + float(self.get_widget('txt_conf_time').get_text()), + self.get_widget('chk_conf_notified').get_active(), + str(self.get_widget('conf_behavior').get_filename()), + False, + 0] + self.measure.event_tab = _me.get_param('config') + + if self.verify_tab(value): + self.measure.event_tab[(index-1)] = value + _me.set_param('config', self.measure.event_tab) + self.value_list.clear() + for i in range(len(self.measure.event_tab)): + self.add_row(i) + + ########################################################### + # + # On row deleted + # + ########################################################### + def on_btn_conf_remove_clicked(self, widget, *args): + index = self.value_list.get_value(self.__iter, 0) + self.measure.event_tab =_me.get_param('config') + self.measure.event_tab.pop(index - 1) + _me.set_param('config', self.measure.event_tab) + self.__iter = 0 + self.value_list.clear() + for i in range(len(self.measure.event_tab)): + self.add_row(i) + + ########################################################### + # + # On row added + # + ########################################################### + def on_btn_conf_add_clicked(self, widget, *args): + length = len(_me.get_param('config')) + self.verify_value() + value = [] + value = [(length + 1), + self.get_widget('cbb_conf_event').get_active(), + self.get_widget('cbb_conf_type').get_active(), + float(self.get_widget('txt_conf_value').get_text()), + float(self.get_widget('txt_conf_time').get_text()), + self.get_widget('chk_conf_notified').get_active(), + str(self.get_widget('conf_behavior').get_filename()), + False, + 0] + self.measure.event_tab = _me.get_param('config') + if self.verify_tab(value): + self.measure.event_tab.append(value) + self.refresh_tree() + + def refresh_tree(self): + _me.set_param('config', self.measure.event_tab) + self.value_list.clear() + for i in range(len(self.measure.event_tab)): + self.add_row(i) + + + def verify_tab(self, tab): + for i in range(len(self.measure.event_tab)): + if self.measure.event_tab[i][1] == tab[1]: + if self.measure.event_tab[i][2] == tab[2]: + if self.measure.event_tab[i][3] == tab[3]: + if self.measure.event_tab[i][4] == tab[4]: + if self.measure.event_tab[i][5] == tab[5]: + if self.measure.event_tab[i][6] == tab[6]: + return False + return True + + ########################################################### + # + # Add row function + # + ########################################################### + def add_row(self, tab_index): + self.measure.event_tab = _me.get_param('config') + i = tab_index + + if self.measure.event_tab[i][1] == 0: + Event = _me.string('conf_lblChange') + if self.measure.event_tab[i][2] == 0: + Type = _me.string('conf_lblDrop') + elif self.measure.event_tab[i][2] == 1: + Type = _me.string('conf_lblRaise') + elif self.measure.event_tab[i][2] == 2: + Type = _me.string('conf_lblChangeD') + elif self.measure.event_tab[i][2] == 3: + Type = _me.string('conf_lblChangeU') + Value = str(self.measure.event_tab[i][3]) + Time = str(self.measure.event_tab[i][4]) + else: + Event = _me.string('conf_lblThreshold') + if self.measure.event_tab[i][2] == 0: + Type = _me.string('conf_lblIncrease') + elif self.measure.event_tab[i][2] == 1: + Type = _me.string('conf_lblDecrease') + elif self.measure.event_tab[i][2] == 2: + Type = _me.string('conf_lblBoth') + Value = str(self.measure.event_tab[i][3]) + Time = 'N.A.' + + if self.measure.event_tab[i][5]: + Notify = _me.string('conf_lblNotifiedBehavior') + if self.measure.event_tab[i][6] ==None: + Behavior = _me.string('conf_lblDefaultBehavior') + else: + Behavior = str(self.measure.event_tab[i][6]) + else: + Notify = _me.string('conf_lblNotNotified') + Behavior = 'N.A.' + + self.value_list.append(None,[(i+1), Event, Type, Value, Time, Notify, Behavior]) + ''' + ''' + ########################################################### + # + # On combo box event + # + ########################################################### + def on_cbb_conf_event_changed(self, widget, *args): + if self.get_widget('cbb_conf_event').get_active() == 0: + for i in range (4): + self.get_widget('cbb_conf_type').remove_text(0) + self.get_widget('cbb_conf_type').append_text(_me.string('conf_lblDrop')) + self.get_widget('cbb_conf_type').append_text(_me.string('conf_lblRaise')) + self.get_widget('cbb_conf_type').append_text(_me.string('conf_lblChangeD')) + self.get_widget('cbb_conf_type').append_text(_me.string('conf_lblChangeU')) + self.get_widget('cbb_conf_type').set_active(0) + else: + for i in range (4): + self.get_widget('cbb_conf_type').remove_text(0) + self.get_widget('cbb_conf_type').append_text(_me.string('conf_lblIncrease')) + self.get_widget('cbb_conf_type').append_text(_me.string('conf_lblDecrease')) + self.get_widget('cbb_conf_type').append_text(_me.string('conf_lblBoth')) + self.get_widget('cbb_conf_type').set_active(0) + ''' + + + + + + + ''' + ########################################################### + # + # On Clear path button clicked + # + ########################################################### + def on_btnBehavior_clicked(self, widget, *args): + self.get_widget('conf_behavior').set_filename('None') + index = self.value_list.get_value(self.__iter, 0) + self.measure.event_tab[index-1][6] = None + + self.value_list.clear() + for i in range(len(self.measure.event_tab)): + self.add_row(i) + ''' + ''' + ########################################################### + # + # Verify the value + # + ########################################################### + def verify_value(self): + if self.get_widget('cbb_conf_event').get_active() == 0: + maximum = 2.5 + minimum = 0.025 + else: + maximum = 6.5 + minimum = 4.0 + try: + float(self.get_widget('txt_conf_time').get_text()) + except: + self.get_widget('txt_conf_time').set_text('0.1') + + if float(self.get_widget('txt_conf_time').get_text()) < self.measure.rate: + self.get_widget('txt_conf_time').set_text(str(self.measure.rate)) + if float(self.get_widget('txt_conf_time').get_text()) > self.measure.rate * self.measure.sample: + self.get_widget('txt_conf_time').set_text(str(self.measure.rate * self.measure.sample)) + + try: + float(self.get_widget('txt_conf_value').get_text()) + except: + self.get_widget('txt_conf_value').set_text(str(minimum)) + + if float(self.get_widget('txt_conf_value').get_text()) < minimum: + self.get_widget('txt_conf_value').set_text(str(minimum)) + if float(self.get_widget('txt_conf_value').get_text()) > maximum: + self.get_widget('txt_conf_value').set_text(str(maximum)) + ''' Added: software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/GUI/widget/other.glade =================================================================== --- software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/GUI/widget/other.glade (rev 0) +++ software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/GUI/widget/other.glade 2007-11-30 14:38:46 UTC (rev 745) @@ -0,0 +1,511 @@ +<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*--> +<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd"> + +<glade-interface> + +<widget class="GtkWindow" id="window1"> + <property name="visible">True</property> + <property name="title" translatable="yes">Widget</property> + <property name="type">GTK_WINDOW_TOPLEVEL</property> + <property name="window_position">GTK_WIN_POS_NONE</property> + <property name="modal">False</property> + <property name="default_width">600</property> + <property name="default_height">449</property> + <property name="resizable">False</property> + <property name="destroy_with_parent">False</property> + <property name="decorated">True</property> + <property name="skip_taskbar_hint">False</property> + <property name="skip_pager_hint">False</property> + <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property> + <property name="gravity">GDK_GRAVITY_NORTH_WEST</property> + <property name="focus_on_map">True</property> + <property name="urgency_hint">False</property> + <signal name="destroy" handler="on_window1_destroy"/> + + <child> + <widget class="GtkVBox" id="vbox1"> + <property name="visible">True</property> + <property name="homogeneous">False</property> + <property name="spacing">0</property> + + <child> + <widget class="GtkVBox" id="vbox2"> + <property name="visible">True</property> + <property name="homogeneous">False</property> + <property name="spacing">0</property> + + <child> + <placeholder/> + </child> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">True</property> + <property name="fill">True</property> + </packing> + </child> + + <child> + <widget class="GtkExpander" id="expander2"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="expanded">True</property> + <property name="spacing">0</property> + <signal name="activate" handler="on_expander_activate" last_modification_time="Wed, 10 Oct 2007 09:25:14 GMT"/> + + <child> + <widget class="GtkFrame" id="frame2"> + <property name="border_width">5</property> + <property name="width_request">400</property> + <property name="visible">True</property> + <property name="label_xalign">0</property> + <property name="label_yalign">0.5</property> + <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property> + + <child> + <widget class="GtkAlignment" id="alignment3"> + <property name="visible">True</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xscale">1</property> + <property name="yscale">1</property> + <property name="top_padding">0</property> + <property name="bottom_padding">0</property> + <property name="left_padding">12</property> + <property name="right_padding">0</property> + + <child> + <widget class="GtkFixed" id="fixed10"> + <property name="width_request">373</property> + <property name="height_request">197</property> + <property name="visible">True</property> + + <child> + <widget class="GtkEntry" id="txtValue"> + <property name="width_request">80</property> + <property name="height_request">24</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="editable">True</property> + <property name="visibility">True</property> + <property name="max_length">0</property> + <property name="text" translatable="yes"></property> + <property name="has_frame">True</property> + <property name="invisible_char">●</property> + <property name="activates_default">False</property> + </widget> + <packing> + <property name="x">200</property> + <property name="y">35</property> + </packing> + </child> + + <child> + <widget class="GtkEntry" id="txtTime"> + <property name="width_request">80</property> + <property name="height_request">24</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="editable">True</property> + <property name="visibility">True</property> + <property name="max_length">0</property> + <property name="text" translatable="yes"></property> + <property name="has_frame">True</property> + <property name="invisible_char">●</property> + <property name="activates_default">False</property> + </widget> + <packing> + <property name="x">284</property> + <property name="y">35</property> + </packing> + </child> + + <child> + <widget class="GtkComboBox" id="cbbType"> + <property name="width_request">88</property> + <property name="height_request">30</property> + <property name="visible">True</property> + <property name="items" translatable="yes"></property> + <property name="add_tearoffs">False</property> + <property name="focus_on_click">True</property> + </widget> + <packing> + <property name="x">104</property> + <property name="y">32</property> + </packing> + </child> + + <child> + <widget class="GtkLabel" id="lblType"> + <property name="width_request">88</property> + <property name="height_request">16</property> + <property name="visible">True</property> + <property name="label" translatable="yes">Type</property> + <property name="use_underline">False</property> + <property name="use_markup">False</property> + <property name="justify">GTK_JUSTIFY_LEFT</property> + <property name="wrap">True</property> + <property name="selectable">False</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> + <property name="width_chars">-1</property> + <property name="single_line_mode">False</property> + <property name="angle">0</property> + </widget> + <packing> + <property name="x">104</property> + <property name="y">8</property> + </packing> + </child> + + <child> + <widget class="GtkLabel" id="lblValue"> + <property name="width_request">80</property> + <property name="height_request">16</property> + <property name="visible">True</property> + <property name="label" translatable="yes">Value</property> + <property name="use_underline">False</property> + <property name="use_markup">False</property> + <property name="justify">GTK_JUSTIFY_LEFT</property> + <property name="wrap">True</property> + <property name="selectable">False</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> + <property name="width_chars">-1</property> + <property name="single_line_mode">False</property> + <property name="angle">0</property> + </widget> + <packing> + <property name="x">200</property> + <property name="y">8</property> + </packing> + </child> + + <child> + <widget class="GtkLabel" id="lblTime"> + <property name="width_request">80</property> + <property name="height_request">16</property> + <property name="visible">True</property> + <property name="label" translatable="yes">Time</property> + <property name="use_underline">False</property> + <property name="use_markup">False</property> + <property name="justify">GTK_JUSTIFY_LEFT</property> + <property name="wrap">True</property> + <property name="selectable">False</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> + <property name="width_chars">-1</property> + <property name="single_line_mode">False</property> + <property name="angle">0</property> + </widget> + <packing> + <property name="x">284</property> + <property name="y">8</property> + </packing> + </child> + + <child> + <widget class="GtkLabel" id="lblNotify"> + <property name="width_request">96</property> + <property name="height_request">16</property> + <property name="visible">True</property> + <property name="label" translatable="yes">Notified?</property> + <property name="use_underline">False</property> + <property name="use_markup">False</property> + <property name="justify">GTK_JUSTIFY_LEFT</property> + <property name="wrap">False</property> + <property name="selectable">False</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> + <property name="width_chars">-1</property> + <property name="single_line_mode">False</property> + <property name="angle">0</property> + </widget> + <packing> + <property name="x">0</property> + <property name="y">72</property> + </packing> + </child> + + <child> + <widget class="GtkLabel" id="lblScript"> + <property name="width_request">144</property> + <property name="height_request">16</property> + <property name="visible">True</property> + <property name="label" translatable="yes">Behavior script</property> + <property name="use_underline">False</property> + <property name="use_markup">False</property> + <property name="justify">GTK_JUSTIFY_LEFT</property> + <property name="wrap">True</property> + <property name="selectable">False</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> + <property name="width_chars">-1</property> + <property name="single_line_mode">False</property> + <property name="angle">0</property> + </widget> + <packing> + <property name="x">120</property> + <property name="y">72</property> + </packing> + </child> + + <child> + <widget class="GtkFileChooserButton" id="Behavior"> + <property name="width_request">144</property> + <property name="height_request">30</property> + <property name="visible">True</property> + <property name="title" translatable="yes">Select A File</property> + <property name="action">GTK_FILE_CHOOSER_ACTION_OPEN</property> + <property name="local_only">True</property> + <property name="show_hidden">False</property> + <property name="do_overwrite_confirmation">False</property> + <property name="width_chars">-1</property> + </widget> + <packing> + <property name="x">120</property> + <property name="y">96</property> + </packing> + </child> + + <child> + <widget class="GtkCheckButton" id="chkNotify"> + <property name="width_request">24</property> + <property name="height_request">24</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="relief">GTK_RELIEF_NORMAL</property> + <property name="focus_on_click">False</property> + <property name="active">False</property> + <property name="inconsistent">False</property> + <property name="draw_indicator">True</property> + + <child> + <placeholder/> + </child> + </widget> + <packing> + <property name="x">32</property> + <property name="y">96</property> + </packing> + </child> + + <child> + <widget class="GtkComboBox" id="cbbEvent"> + <property name="width_request">88</property> + <property name="height_request">30</property> + <property name="visible">True</property> + <property name="items" translatable="yes"></property> + <property name="add_tearoffs">False</property> + <property name="focus_on_click">True</property> + <signal name="changed" handler="on_cbb_conf_event_changed"/> + </widget> + <packing> + <property name="x">8</property> + <property name="y">32</property> + </packing> + </child> + + <child> + <widget class="GtkLabel" id="lblEvent"> + <property name="width_request">88</property> + <property name="height_request">16</property> + <property name="visible">True</property> + <property name="label" translatable="yes">Event</property> + <property name="use_underline">False</property> + <property name="use_markup">False</property> + <property name="justify">GTK_JUSTIFY_LEFT</property> + <property name="wrap">True</property> + <property name="selectable">False</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> + <property name="width_chars">-1</property> + <property name="single_line_mode">False</property> + <property name="angle">0</property> + </widget> + <packing> + <property name="x">8</property> + <property name="y">8</property> + </packing> + </child> + + <child> + <widget class="GtkButton" id="btnApply"> + <property name="width_request">144</property> + <property name="height_request">29</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="relief">GTK_RELIEF_NORMAL</property> + <property name="focus_on_click">True</property> + <signal name="clicked" handler="on_btnApply_clicked"/> + + <child> + <widget class="GtkAlignment" id="alignment1"> + <property name="visible">True</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xscale">0</property> + <property name="yscale">0</property> + <property name="top_padding">0</property> + <property name="bottom_padding">0</property> + <property name="left_padding">0</property> + <property name="right_padding">0</property> + + <child> + <widget class="GtkHBox" id="hbox1"> + <property name="visible">True</property> + <property name="homogeneous">False</property> + <property name="spacing">2</property> + + <child> + <widget class="GtkImage" id="image1"> + <property name="visible">True</property> + <property name="stock">gtk-yes</property> + <property name="icon_size">4</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">False</property> + <property name="fill">False</property> + </packing> + </child> + + <child> + <widget class="GtkLabel" id="lblBtnApply"> + <property name="visible">True</property> + <property name="label" translatable="yes">Apply changes</property> + <property name="use_underline">True</property> + <property name="use_markup">False</property> + <property name="justify">GTK_JUSTIFY_LEFT</property> + <property name="wrap">False</property> + <property name="selectable">False</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> + <property name="width_chars">-1</property> + <property name="single_line_mode">False</property> + <property name="angle">0</property> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">False</property> + <property name="fill">False</property> + </packing> + </child> + </widget> + </child> + </widget> + </child> + </widget> + <packing> + <property name="x">8</property> + <property name="y">160</property> + </packing> + </child> + + <child> + <widget class="GtkButton" id="btnAdd"> + <property name="width_request">144</property> + <property name="height_request">29</property> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="label" translatable="yes">button1</property> + <property name="use_underline">True</property> + <property name="relief">GTK_RELIEF_NORMAL</property> + <property name="focus_on_click">True</property> + <signal name="clicked" handler="on_btnAdd_clicked" last_modification_time="Tue, 09 Oct 2007 18:34:49 GMT"/> + </widget> + <packing> + <property name="x">176</property> + <property name="y">160</property> + </packing> + </child> + </widget> + </child> + </widget> + </child> + + <child> + <widget class="GtkLabel" id="label8"> + <property name="visible">True</property> + <property name="label" translatable="yes"></property> + <property name="use_underline">False</property> + <property name="use_markup">True</property> + <property name="justify">GTK_JUSTIFY_LEFT</property> + <property name="wrap">False</property> + <property name="selectable">False</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> + <property name="width_chars">-1</property> + <property name="single_line_mode">False</property> + <property name="angle">0</property> + </widget> + <packing> + <property name="type">label_item</property> + </packing> + </child> + </widget> + </child> + + <child> + <widget class="GtkLabel" id="lblThreshold"> + <property name="visible">True</property> + <property name="can_focus">True</property> + <property name="label" translatable="yes">Test notifications</property> + <property name="use_underline">False</property> + <property name="use_markup">False</property> + <property name="justify">GTK_JUSTIFY_LEFT</property> + <property name="wrap">False</property> + <property name="selectable">True</property> + <property name="xalign">0.5</property> + <property name="yalign">0.5</property> + <property name="xpad">0</property> + <property name="ypad">0</property> + <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> + <property name="width_chars">-1</property> + <property name="single_line_mode">False</property> + <property name="angle">0</property> + </widget> + <packing> + <property name="type">label_item</property> + </packing> + </child> + </widget> + <packing> + <property name="padding">0</property> + <property name="expand">True</property> + <property name="fill">True</property> + </packing> + </child> + </widget> + </child> +</widget> + +</glade-interface> Added: software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/GUI/widget/other.pyp =================================================================== --- software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/GUI/widget/other.pyp (rev 0) +++ software/gadgets/sound_monitor/trunk/audio_monitor/Scripts/Python/GUI/widget/other.pyp 2007-11-30 14:38:46 UTC (rev 745) @@ -0,0 +1,206 @@ +bindtextdomain("params", "") +sys.path.append(_me.get_path('root') + '/Scripts/Python') +from Sound_class import Sound_Graph + +class Window(SimpleGladeApp): + + def __init__(self, + path=_me.get_path('root') + '/Scripts/Python/GUI/widget/other.glade', + root="window1", + domain="params", **kwargs): + SimpleGladeApp.__init__(self, path, root, domain, **kwargs) + + ########################################################### + # + # Display the new window + # + ########################################################### + def new(self): + self.get_widget("window1").set_title(_me.string('name_to_read')) + self.get_widget("lblThreshold").set_text(_me.string('widget_lblTest')) + + self.get_widget("btnAdd").set_label(_me.string('widget_lblSet')) + + self.get_widget('txtValue').set_text('50.0') + self.get_widget('txtTime').set_text('0.1') + self.get_widget('txtTime').hide() + + self.get_widget('cbbEvent').append_text(_me.string('conf_lblChange')) + self.get_widget('cbbEvent').append_text(_me.string('conf_lblThreshold')) + self.get_widget('cbbEvent').set_active(0) + + self.get_widget("lblEvent").set_text(_me.string('conf_lblEvent')) + self.get_widget("lblType").set_text(_me.string('conf_lblType')) + self.get_widget("lblValue").set_text(_me.string('conf_lblValue')) + self.get_widget("lblTime").set_text(_me.string('conf_lblTime')) + self.get_widget("lblNotify").set_text(_me.string('conf_lblNotified')) + self.get_widget("lblScript").set_text(_me.string('conf_lblBehavior')) + self.get_widget("lblBtnApply").set_text(_me.string('widget_lblBtnApply')) + + tab = _me.get_param('test_tab') + self.get_widget('cbbType').hide() + self.get_widget('cbbEvent').set_active(tab[0][1]) + self.get_widget('cbbType').set_active(tab[0][2]) + self.get_widget('txtValue').set_text(str(tab[0][3])) + self.get_widget('txtTime').set_text(str(tab[0][4])) + self.get_widget('chkNotify').set_active(tab[0][5]) + if tab[0][6] != None: + self.get_widget('Behavior').set_filename(str(tab[0][6])) + + + + thread.start_new_thread(self.update, ()) + + ########################################################### + # + # Update the values + # + ########################################################### + def update_value(self): + + self.measure.changetext = _me.string('conf_lblChange') + self.measure.thresholdtext = _me.string('conf_lblThreshold') + ''' + try: + self.graph.battery = _me.string('battery') + self.graph.plugged = _me.string('plugged') + self.graph.charging = _me.string('charging') + except: + print sys.exc_info() + ''' + + ########################################################### + # + # Event functions + # + ########################################################### + def on_window1_destroy(self, widget, *args): + _me.get_param('measure').GUI_on = False + self.measure.GUI_on = False + + ''' + def on_btnAdd_clicked(self, widget, *args): + length = len(_me.get_param('config')) + self.verify_value() + value = [] + value = [(length + 1), + self.get_widget('cbbEvent').get_active(), + self.get_widget('cbbType').get_active(), + float(self.get_widget('txtValue').get_text()), + float(self.get_widget('txtTime').get... [truncated message content] |