Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/sensor_toolbar.py
diff options
context:
space:
mode:
Diffstat (limited to 'sensor_toolbar.py')
-rw-r--r--sensor_toolbar.py50
1 files changed, 28 insertions, 22 deletions
diff --git a/sensor_toolbar.py b/sensor_toolbar.py
index 5338e38..711146e 100644
--- a/sensor_toolbar.py
+++ b/sensor_toolbar.py
@@ -26,14 +26,16 @@ from config import ICONS_DIR, CAPTURE_GAIN, MIC_BOOST, XO1, XO15, XO175, XO4
from sugar.graphics.toolbutton import ToolButton
from sugar.graphics.menuitem import MenuItem
-from sugar.graphics.combobox import ComboBox
-from sugar.graphics.toolcombobox import ToolComboBox
from sugar.graphics.radiotoolbutton import RadioToolButton
import logging
log = logging.getLogger('measure-activity')
log.setLevel(logging.DEBUG)
LOG_TIMER_VALUES = [1, 10, 300, 3000, 18000] # In 10th second intervals
+LOG_TIMER_LABELS = {1: _('1/10 second'), 10: _('1 second'),
+ 300: _('30 seconds'), 3000: _('5 minutes'),
+ 30000: _('30 minutes')}
+
def _is_xo(hw):
''' Return True if this is xo hardware '''
@@ -120,8 +122,13 @@ of XO)") + ' '
self.insert(separator, -1)
self._log_value = LOG_TIMER_VALUES[1]
+ self.log_label = gtk.Label(self._log_to_string(self._log_value))
+ toolitem = gtk.ToolItem()
+ toolitem.add(self.log_label)
+ self.insert(toolitem, -1)
+
self._log_button = ToolButton('timer-10')
- self._log_button.set_tooltip(_('Select log'))
+ self._log_button.set_tooltip(_('Select logging interval'))
self._log_button.connect('clicked', self._log_selection_cb)
self.insert(self._log_button, -1)
self._setup_log_palette()
@@ -129,13 +136,18 @@ of XO)") + ' '
# Set up Logging/Stop Logging Button
self._record = ToolButton('media-record')
self.insert(self._record, -1)
- self._record.set_tooltip(_('Start Recording'))
+ self._record.set_tooltip(_('Start logging'))
self._record.connect('clicked', self.record_control_cb)
separator = gtk.SeparatorToolItem()
separator.props.draw = True
self.insert(separator, -1)
+ toolitem = gtk.ToolItem()
+ self.trigger_label = gtk.Label(_('Trigger'))
+ toolitem.add(self.trigger_label)
+ self.insert(toolitem, -1)
+
# Set up Trigger Combo box
self.trigger_none = RadioToolButton()
self.trigger_none.set_named_icon('trigger-none')
@@ -174,6 +186,7 @@ of XO)") + ' '
def set_log_idx(self, idx):
self._log_value = LOG_TIMER_VALUES[idx]
+ self.log_label.set_text(self._log_to_string(self._log_value))
if hasattr(self, '_log_button'):
self._log_button.set_icon('timer-%d' % (self._log_value))
@@ -189,27 +202,20 @@ of XO)") + ' '
def _log_to_seconds(self, tenth_seconds):
return tenth_seconds / 10.
- def _log_to_string(self, seconds):
- tenth_seconds = seconds / 10
- if seconds == 1:
- return _('1/10 second')
+ def _log_to_string(self, tenth_seconds):
+ if tenth_seconds in LOG_TIMER_LABELS:
+ return LOG_TIMER_LABELS[tenth_seconds]
else:
- return ngettext('%d second', '%d seconds', tenth_seconds) % \
- tenth_seconds
+ return _('1 second')
def _setup_log_palette(self):
self._log_palette = self._log_button.get_palette()
- for seconds in LOG_TIMER_VALUES:
- tenth_seconds = seconds / 10
- if seconds == 1:
- text = _('1/10 second')
- else:
- text = ngettext('%d second', '%d seconds', tenth_seconds) % \
- tenth_seconds
- menu_item = MenuItem(icon_name='timer-%d' % (seconds),
- text_label=text)
- menu_item.connect('activate', self._log_selected_cb, seconds)
+ for tenth_seconds in LOG_TIMER_VALUES:
+ text = self._log_to_string(tenth_seconds)
+ menu_item = MenuItem(icon_name='timer-%d' % (tenth_seconds),
+ text_label=self._log_to_string(tenth_seconds))
+ menu_item.connect('activate', self._log_selected_cb, tenth_seconds)
self._log_palette.menu.append(menu_item)
menu_item.show()
@@ -252,7 +258,7 @@ of XO)") + ' '
if button is None:
value = self.activity.wave.TRIGGER_NONE
if self.activity.wave.get_fft_mode():
- self.trigger_combo.set_active(self.activity.wave.TRIGGER_NONE)
+ self.trigger_none.set_active(True)
else:
self.activity.wave.set_trigger(value)
@@ -400,7 +406,7 @@ of XO)") + ' '
''' Called when an analog sensor is selected '''
self.activity.wave.set_mag_params(self.gain, self.y_mag)
self.update_string_for_textbox()
- self.update_trigger_control_cb(None)
+ self.update_trigger_control_cb(None, self.activity.wave.TRIGGER_NONE)
self.activity.audiograb.start_grabbing()
return False