Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/calibration_toolbar.py
blob: 1f4725825e25e2179dbe0d00fb7d6f06ec5c125e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# Copyright 2009 Benjamin M. Schwartz
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA

import gtk
import arange
import locale
from gettext import gettext


class CalibrationToolbar(gtk.Toolbar):

    def __init__(self):
        gtk.Toolbar.__init__(self)
        
        offset_label = gtk.Label(gettext("Calibration Offset (meters): "))
        self._offset_field = gtk.Entry()
        self._offset_field.set_max_length(10)
        self._offset_field.set_width_chars(10)
        
        bigbox = gtk.HBox()
        
        bigbox.pack_start(offset_label, expand=False, fill=False)
        bigbox.pack_end(self._offset_field, expand=False, fill=False)
        
        self.set_offset(arange.OLPC_OFFSET)

        tool_item = gtk.ToolItem()
        tool_item.add(bigbox)
        tool_item.set_expand(False)
        self.insert(tool_item, 0)
        tool_item.show()
        
    def get_offset(self):
        try:
            t = locale.atof(self._offset_field.get_text())
        except:
            t = 0
        finally:
            return t
        
    def set_offset(self, t):
        try:
            self._offset_field.set_text(locale.str(t))
            return True
        except:
            return False