Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAjay Garg <ajay@activitycentral.com>2012-10-16 12:41:02 (GMT)
committer Ajay Garg <ajay@activitycentral.com>2012-10-16 12:57:20 (GMT)
commit274ddde27feb895905931178fffc388f983604da (patch)
tree5002fd37017971e5c3b5e98effcc6c3254f3327a
parentea0162bf509ae87cdf0b2236824b87d037a2b5da (diff)
XO-Model-Number in "My Settings" -> "About My Computer" (gconf-controllable).
Signed-off-by: Ajay Garg <ajay@activitycentral.com>
-rw-r--r--extensions/cpsection/aboutcomputer/model.py13
-rw-r--r--extensions/cpsection/aboutcomputer/view.py32
2 files changed, 36 insertions, 9 deletions
diff --git a/extensions/cpsection/aboutcomputer/model.py b/extensions/cpsection/aboutcomputer/model.py
index 0732b1b..a4ffd0f 100644
--- a/extensions/cpsection/aboutcomputer/model.py
+++ b/extensions/cpsection/aboutcomputer/model.py
@@ -126,6 +126,15 @@ def print_build_number():
print get_build_number()
+def get_model_laptop():
+ from ceibal import laptop
+
+ model_laptop = laptops.get_model_laptop()
+ if model_laptop is None or not model_laptop:
+ model_laptop = _not_available
+ return model_laptop
+
+
def _parse_firmware_number(firmware_no):
if firmware_no is None:
firmware_no = _not_available
@@ -309,3 +318,7 @@ def get_last_updated_on_field():
# Everything should be fine (hopefully :-) )
return last_update_readable_format
+
+
+def get_sugar_version():
+ return config.version
diff --git a/extensions/cpsection/aboutcomputer/view.py b/extensions/cpsection/aboutcomputer/view.py
index ac89e08..587e1b6 100644
--- a/extensions/cpsection/aboutcomputer/view.py
+++ b/extensions/cpsection/aboutcomputer/view.py
@@ -23,7 +23,6 @@ from gi.repository import Gdk
from sugar3.graphics import style
-from jarabe import config
from jarabe.controlpanel.sectionview import SectionView
@@ -67,24 +66,34 @@ class AboutComputer(SectionView):
self._setup_component_if_applicable(None,
_('Serial Number:'),
- self._model.get_serial_number(),
+ self._model.get_serial_number,
vbox_identity)
self._setup_component_if_applicable(None,
_('Lease:'),
- self._model.get_lease_days(),
+ self._model.get_lease_days,
vbox_identity)
self._vbox.pack_start(vbox_identity, False, True, 0)
vbox_identity.show()
def _is_feature_to_be_shown(slf, gconf_key):
+ if gconf_key is None:
+ return True
+
from gi.repository import GConf
client = GConf.Client.get_default()
return client.get_bool(gconf_key) is True
- def _setup_component_if_applicable(self, gconf_key, key, value, packer):
+ def _setup_component_if_applicable(self, gconf_key, key, value_func, packer):
+ if not self._is_feature_to_be_shown(gconf_key):
+ return
+
+ # Now that we do need to show, fetch the value.
+ print value_func
+ value = value_func()
+
box = Gtk.HBox(spacing=style.DEFAULT_SPACING)
key_label = Gtk.Label(label=key)
key_label.set_alignment(1, 0)
@@ -113,29 +122,34 @@ class AboutComputer(SectionView):
box_software.set_border_width(style.DEFAULT_SPACING * 2)
box_software.set_spacing(style.DEFAULT_SPACING)
+ self._setup_component_if_applicable('/desktop/sugar/extensions/aboutcomputer/display_model',
+ _('Model:'),
+ self._model.get_model_laptop,
+ box_software)
+
self._setup_component_if_applicable(None,
_('Build:'),
- self._model.get_build_number(),
+ self._model.get_build_number,
box_software)
self._setup_component_if_applicable(None,
_('Sugar:'),
- config.version,
+ self._model.get_sugar_version,
box_software)
self._setup_component_if_applicable(None,
_('Firmware:'),
- self._model.get_firmware_number(),
+ self._model.get_firmware_number,
box_software)
self._setup_component_if_applicable(None,
_('Wireless Firmware:'),
- self._model.get_wireless_firmware(),
+ self._model.get_wireless_firmware,
box_software)
self._setup_component_if_applicable(None,
_('Last Updated On:'),
- self._model.get_last_updated_on_field(),
+ self._model.get_last_updated_on_field,
box_software)
self._vbox.pack_start(box_software, False, True, 0)