def createContent(self): self.byteConf = PopUpMenuController(self.req,' ',pop=PU.UP_LEFT) def param(var,val): from urllib import urlencode fields = self.getAllFields() fields[var] = val return '?%s' % self.escape(urlencode(fields)) fixed = BytesToText.getFixed() fixedUnit = PopUpMenuController(self.req,'Fixed Units',pop=PU.LEFT_UP) fixedUnit.addItems(PopUpMenuController(self.req,'Tera',href=param('fixedUnit','T'),toggle=fixed=='T')) fixedUnit.addItems(PopUpMenuController(self.req,'Giga',href=param('fixedUnit','G'),toggle=fixed=='G')) fixedUnit.addItems(PopUpMenuController(self.req,'Mega',href=param('fixedUnit','M'),toggle=fixed=='M')) fixedUnit.addItems(PopUpMenuController(self.req,'Kilo',href=param('fixedUnit','K'),toggle=fixed=='K')) fixedUnit.addItems(PopUpMenuController(self.req,'Bytes',href=param('fixedUnit',''),toggle=fixed==True or fixed=='')) fixedUnit.addItems(PopUpMenuController(self.req,'Off',href=param('fixedUnit','0'),toggle=fixed in (False,None))) digits = BytesToText.getPrecision() precision = PopUpMenuController(self.req,'Precision',pop=PU.LEFT_UP) precision.addItems(PopUpMenuController(self.req,'Default',toggle=digits==None)) precision.addItems(PopUpMenuController(self.req,'4 Digits',href=param('precisionUnit',4),toggle=digits==4)) precision.addItems(PopUpMenuController(self.req,'3 Digits',href=param('precisionUnit',3),toggle=digits==3)) precision.addItems(PopUpMenuController(self.req,'2 Digits',href=param('precisionUnit',2),toggle=digits==2)) precision.addItems(PopUpMenuController(self.req,'1 Digits',href=param('precisionUnit',1),toggle=digits==1)) precision.addItems(PopUpMenuController(self.req,'No Digits',href=param('precisionUnit',0),toggle=digits==0)) base = BytesToText.getBase() baseUnit = PopUpMenuController(self.req,'Base System',pop=PU.LEFT_UP) baseUnit.addItem(PopUpMenuController(self.req,'1000',href=param('baseUnit',1000),toggle=base==1000)) baseUnit.addItem(PopUpMenuController(self.req,'1024',href=param('baseUnit',1024),toggle=base==1024)) show = BytesToText.getShowUnit() showUnit = PopUpMenuController(self.req,'Show Unit',pop=PU.LEFT_UP) showUnit.addItem(PopUpMenuController(self.req,'On',href=param('showUnit',1),toggle=show==True)) showUnit.addItem(PopUpMenuController(self.req,'Off',href=param('showUnit',0),toggle=show==False)) self.byteConf.addItem(baseUnit) self.byteConf.addItem(fixedUnit) self.byteConf.addItem(precision) self.byteConf.addItem(showUnit) self.styleConf = PopUpMenuController(self.req,' ',pop=PU.UP_LEFT) themes = PopUpMenuController(self.req,'Themes',pop=PU.LEFT_UP) theme = self.parent.getColorTheme() for name,file in _themes: themes.addItem(PopUpMenuController(self.req,name.capitalize(),href=param('color-theme-sheet',name),onclick='''toggleList(this);switchStyleSheets('%s','color-theme'); return false;''' % name,toggle=theme==name)) shadows = PopUpMenuController(self.req,'Shadows',pop=PU.LEFT_UP) shadow = self.parent.getShadows() shadows.addItem(PopUpMenuController(self.req,'Full',href=param('shadows-sheet','full'),onclick='''toggleList(this);return !switchStyleSheets('full','shadows');''',toggle=shadow=='full')) shadows.addItem(PopUpMenuController(self.req,'Half',href=param('shadows-sheet','half'),onclick='''toggleList(this);return !switchStyleSheets('half','shadows'); return false;''',toggle=shadow=='half')) shadows.addItem(PopUpMenuController(self.req,'Off',href=param('shadows-sheet','off'), onclick='''toggleList(this);switchStyleSheets( null, 'shadows'); return false;''',toggle=shadow==False)) layout = PopUpMenuController(self.req,'Base Layout',pop=PU.LEFT_UP) baselayout=self.parent.getBaseLayout() layout.addItem(PopUpMenuController(self.req,'Inner',href=param('baselayout-sheet','inner'),onclick='''toggleList(this);switchStyleSheets( 'inner', 'baselayout'); return false;''',toggle=baselayout=='inner')) layout.addItem(PopUpMenuController(self.req,'Outer',href=param('baselayout-sheet','outer'),onclick='''toggleList(this);switchStyleSheets( 'outer', 'baselayout'); return false;''',toggle=baselayout=='outer')) media = PopUpMenuController(self.req,'Media Type',pop=PU.LEFT_UP) printLayout = self.parent.getPrintLayout() media.addItem(PopUpMenuController(self.req,'Normal',href=param('printLayout',0),onclick='''toggleList(this);displayCSSMediaType(); return false;''',toggle=not printLayout)) media.addItem(PopUpMenuController(self.req,'Print',href=param('printLayout',1),onclick='''toggleList(this);displayCSSMediaType('print'); return false;''',toggle=printLayout)) self.styleConf.addItem(layout) self.styleConf.addItem(themes) self.styleConf.addItem(shadows) self.styleConf.addItem(media)