def __init__(self, event): from scal3.ui_gtk.mywidgets.cal_type_combo import CalTypeCombo from scal3.ui_gtk.mywidgets.tz_combo import TimeZoneComboBoxEntry gtk.VBox.__init__(self) self.event = event ########### hbox = gtk.HBox() ### pack(hbox, gtk.Label(_('Calendar Type'))) combo = CalTypeCombo() combo.set_active(calTypes.primary) ## overwritten in updateWidget() pack(hbox, combo) pack(hbox, gtk.Label(''), 1, 1) self.modeCombo = combo ### pack(self, hbox) ########### if event.isAllDay: self.tzCheck = None else: hbox = gtk.HBox() self.tzCheck = gtk.CheckButton(_('Time Zone')) set_tooltip(self.tzCheck, _('For input times of event')) pack(hbox, self.tzCheck) combo = TimeZoneComboBoxEntry() pack(hbox, combo) pack(hbox, gtk.Label(''), 1, 1) self.tzCombo = combo pack(self, hbox) self.tzCheck.connect( 'clicked', lambda check: self.tzCombo.set_sensitive(check.get_active())) ########### hbox = gtk.HBox() pack(hbox, gtk.Label(_('Summary'))) self.summaryEntry = gtk.Entry() pack(hbox, self.summaryEntry, 1, 1) pack(self, hbox) ########### self.descriptionInput = TextFrame() swin = gtk.ScrolledWindow() swin.set_policy(gtk.PolicyType.AUTOMATIC, gtk.PolicyType.AUTOMATIC) swin.add_with_viewport(self.descriptionInput) ### exp = gtk.Expander() exp.set_expanded(True) exp.set_label(_('Description')) exp.add(swin) pack(self, exp, 1, 1) ########### hbox = gtk.HBox() pack(hbox, gtk.Label(_('Icon') + ':')) self.iconSelect = IconSelectButton() pack(hbox, self.iconSelect) pack(hbox, gtk.Label(''), 1, 1) pack(self, hbox) ########## self.modeCombo.connect( 'changed', self.modeComboChanged) ## right place? before updateWidget? FIXME
def __init__(self, event): from scal3.ui_gtk.mywidgets.cal_type_combo import CalTypeCombo from scal3.ui_gtk.mywidgets.tz_combo import TimeZoneComboBoxEntry gtk.VBox.__init__(self) self.event = event ########### hbox = gtk.HBox() ### pack(hbox, gtk.Label(_('Calendar Type'))) combo = CalTypeCombo() combo.set_active(calTypes.primary)## overwritten in updateWidget() pack(hbox, combo) pack(hbox, gtk.Label(''), 1, 1) self.modeCombo = combo ### pack(self, hbox) ########### if event.isAllDay: self.tzCheck = None else: hbox = gtk.HBox() self.tzCheck = gtk.CheckButton(_('Time Zone')) set_tooltip(self.tzCheck, _('For input times of event')) pack(hbox, self.tzCheck) combo = TimeZoneComboBoxEntry() pack(hbox, combo) pack(hbox, gtk.Label(''), 1, 1) self.tzCombo = combo pack(self, hbox) self.tzCheck.connect('clicked', lambda check: self.tzCombo.set_sensitive(check.get_active())) ########### hbox = gtk.HBox() pack(hbox, gtk.Label(_('Summary'))) self.summaryEntry = gtk.Entry() pack(hbox, self.summaryEntry, 1, 1) pack(self, hbox) ########### self.descriptionInput = TextFrame() swin = gtk.ScrolledWindow() swin.set_policy(gtk.PolicyType.AUTOMATIC, gtk.PolicyType.AUTOMATIC) swin.add_with_viewport(self.descriptionInput) ### exp = gtk.Expander() exp.set_expanded(True) exp.set_label(_('Description')) exp.add(swin) pack(self, exp, 1, 1) ########### hbox = gtk.HBox() pack(hbox, gtk.Label(_('Icon')+':')) self.iconSelect = IconSelectButton() pack(hbox, self.iconSelect) pack(hbox, gtk.Label(''), 1, 1) pack(self, hbox) ########## self.modeCombo.connect('changed', self.modeComboChanged)## right place? before updateWidget? FIXME
def __init__(self, group): from scal3.ui_gtk.mywidgets.cal_type_combo import CalTypeCombo gtk.VBox.__init__(self) self.group = group ######## self.sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL) ##### hbox = gtk.HBox() label = gtk.Label(_('Title')) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.titleEntry = gtk.Entry() pack(hbox, self.titleEntry, 1, 1) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Color')) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.colorButton = MyColorButton() self.colorButton.set_use_alpha(True) ## FIXME pack(hbox, self.colorButton) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Default Icon')) ## FIXME label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.iconSelect = IconSelectButton() pack(hbox, self.iconSelect) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Default Calendar Type')) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) combo = CalTypeCombo() pack(hbox, combo) pack(hbox, gtk.Label(''), 1, 1) self.modeCombo = combo pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Show in Calendar')) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.showInDCalCheck = gtk.CheckButton(_('Day')) self.showInWCalCheck = gtk.CheckButton(_('Week')) self.showInMCalCheck = gtk.CheckButton(_('Month')) pack(hbox, self.showInDCalCheck) pack(hbox, gtk.Label(''), 1, 1) pack(hbox, self.showInWCalCheck) pack(hbox, gtk.Label(''), 1, 1) pack(hbox, self.showInMCalCheck) pack(hbox, gtk.Label(''), 1, 1) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Show in')) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.showInTimeLineCheck = gtk.CheckButton(_('Time Line')) self.showInStatusIconCheck = gtk.CheckButton(_('Status Icon')) pack(hbox, self.showInTimeLineCheck) pack(hbox, gtk.Label(''), 1, 1) pack(hbox, self.showInStatusIconCheck) pack(hbox, gtk.Label(''), 1, 1) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Event Cache Size')) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.cacheSizeSpin = IntSpinButton(0, 9999) pack(hbox, self.cacheSizeSpin) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Event Text Seperator')) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.sepInput = TextFrame() pack(hbox, self.sepInput, 1, 1) pack(self, hbox) set_tooltip( hbox, _('Using to seperate Summary and Description when displaying event' )) ##### #hbox = gtk.HBox() #label = gtk.Label(_('Show Full Event Description')) #label.set_alignment(0, 0.5) #pack(hbox, label) #self.sizeGroup.add_widget(label) #self.showFullEventDescCheck = gtk.CheckButton('') #pack(hbox, self.showFullEventDescCheck, 1, 1) #pack(self, hbox) ### self.modeCombo.connect( 'changed', self.modeComboChanged) ## right place? before updateWidget? FIXME
class WidgetClass(gtk.VBox): def __init__(self, event): ## FIXME gtk.VBox.__init__(self) self.event = event assert event.parent.name == "universityTerm" ## FIXME sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL) ##### if not event.parent.courses: showError(event.parent.noCourseError, ui.eventManDialog) raise RuntimeError("No courses added") self.courseIds = [] self.courseNames = [] combo = gtk.ComboBoxText() for course in event.parent.courses: self.courseIds.append(course[0]) self.courseNames.append(course[1]) combo.append_text(course[1]) #combo.connect("changed", self.updateSummary) self.courseCombo = combo ## hbox = gtk.HBox() label = gtk.Label(_("Course")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) pack(hbox, combo) ## pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Date")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.dateInput = DateButton() pack(hbox, self.dateInput) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Time")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) ## self.dayTimeStartCombo = HourMinuteButton() self.dayTimeEndCombo = HourMinuteButton() ## #self.dayTimeStartCombo.get_child().set_direction(gtk.TextDirection.LTR) #self.dayTimeEndCombo.get_child().set_direction(gtk.TextDirection.LTR) ## pack(hbox, self.dayTimeStartCombo) pack(hbox, gtk.Label(" " + _("to") + " ")) pack(hbox, self.dayTimeEndCombo) pack(self, hbox) ########### #hbox = gtk.HBox() #label = gtk.Label(_("Summary")) #label.set_alignment(0, 0.5) #sizeGroup.add_widget(label) #pack(hbox, label) #self.summaryEntry = gtk.Entry() #pack(hbox, self.summaryEntry, 1, 1) #pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Description")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.descriptionInput = TextFrame() pack(hbox, self.descriptionInput, 1, 1) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Icon")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.iconSelect = IconSelectButton() #print(join(pixDir, self.icon)) pack(hbox, self.iconSelect) pack(hbox, gtk.Label(""), 1, 1) pack(self, hbox) ###### self.notificationBox = common.NotificationBox(event) pack(self, self.notificationBox) ###### #self.filesBox = common.FilesBox(self.event) #pack(self, self.filesBox) ###### self.courseCombo.set_active(0) #self.updateSummary() def focusSummary(self): pass #def updateSummary(self, widget=None): # courseIndex = self.courseCombo.get_active() # summary = _("%s Exam")%self.courseNames[courseIndex] # self.summaryEntry.set_text(summary) # self.event.summary = summary def updateWidget(self): ## FIXME if self.event.courseId is None: pass else: self.courseCombo.set_active( self.courseIds.index(self.event.courseId)) ## self.dateInput.set_value(self.event.getDate()) ## timeRangeRule, ok = self.event["dayTimeRange"] if not ok: raise RuntimeError("no dayTimeRange rule") self.dayTimeStartCombo.set_value(timeRangeRule.dayTimeStart) self.dayTimeEndCombo.set_value(timeRangeRule.dayTimeEnd) #### #self.summaryEntry.set_text(self.event.summary) self.descriptionInput.set_text(self.event.description) self.iconSelect.set_filename(self.event.icon) #### self.notificationBox.updateWidget() #### #self.filesBox.updateWidget() def updateVars(self): ## FIXME courseIndex = self.courseCombo.get_active() if courseIndex is None: showError(_("No course is selected"), ui.eventManDialog) raise RuntimeError("No courses is selected") else: self.event.courseId = self.courseIds[courseIndex] ## self.event.setDate(*tuple(self.dateInput.get_value())) ## timeRangeRule, ok = self.event["dayTimeRange"] if not ok: raise RuntimeError("no dayTimeRange rule") timeRangeRule.setRange( self.dayTimeStartCombo.get_value(), self.dayTimeEndCombo.get_value(), ) #### #self.event.summary = self.summaryEntry.get_text() self.event.description = self.descriptionInput.get_text() self.event.icon = self.iconSelect.get_filename() #### self.notificationBox.updateVars() self.event.updateSummary() def modeComboChanged(self, obj=None): # overwrite method from common.WidgetClass newMode = self.modeCombo.get_active() self.dateInput.changeMode(self.event.mode, newMode) self.event.mode = newMode
def __init__(self, container, **kwargs): from scal3.ui_gtk.mywidgets.tz_combo import TimeZoneComboBoxEntry self._container = container gtk.Dialog.__init__(self, **kwargs) self.set_title(_("Bulk Edit Events")) #### dialog_add_button( self, gtk.STOCK_CANCEL, _("_Cancel"), gtk.ResponseType.CANCEL, ) dialog_add_button( self, gtk.STOCK_OK, _("_OK"), gtk.ResponseType.OK, ) ## self.connect("response", lambda w, e: self.hide()) #### try: title = container.title except AttributeError: event_count = len(container) msg = _( "Here you are going to modify these %s events at once." ) % event_count else: msg = _( "Here you are going to modify all events " "inside group \"%s\" at once." ) % title msg += " " msg += _( "You better make a backup from your events before doing this." + " Just right click on group and select \"Export\"" + " (or a full backup: menu File -> Export)" ) msg += "\n\n" label = gtk.Label(msg) label.set_line_wrap(True) pack(self.vbox, label) #### hbox = gtk.HBox() self.iconRadio = gtk.RadioButton(label=_("Icon")) pack(hbox, self.iconRadio, 1, 1) self.summaryRadio = gtk.RadioButton( label=_("Summary"), group=self.iconRadio, ) pack(hbox, self.summaryRadio, 1, 1) self.descriptionRadio = gtk.RadioButton( label=_("Description"), group=self.iconRadio, ) pack(hbox, self.descriptionRadio, 1, 1) self.timeZoneRadio = gtk.RadioButton( label=_("Time Zone"), group=self.iconRadio, ) pack(hbox, self.timeZoneRadio, 1, 1) pack(self.vbox, hbox) ### self.iconRadio.connect("clicked", self.firstRadioChanged) self.summaryRadio.connect("clicked", self.firstRadioChanged) self.descriptionRadio.connect("clicked", self.firstRadioChanged) self.timeZoneRadio.connect("clicked", self.firstRadioChanged) #### hbox = gtk.HBox() self.iconChangeCombo = gtk.ComboBoxText() self.iconChangeCombo.append_text("----") self.iconChangeCombo.append_text(_("Change")) self.iconChangeCombo.append_text(_("Change if empty")) pack(hbox, self.iconChangeCombo) pack(hbox, gtk.Label(" ")) self.iconSelect = IconSelectButton() try: self.iconSelect.set_filename(container.icon) except AttributeError: pass pack(hbox, self.iconSelect) pack(hbox, gtk.Label(""), 1, 1) pack(self.vbox, hbox) self.iconHbox = hbox #### self.textVbox = gtk.VBox() ### hbox = gtk.HBox() self.textChangeCombo = gtk.ComboBoxText() self.textChangeCombo.append_text("----") self.textChangeCombo.append_text(_("Add to beginning")) self.textChangeCombo.append_text(_("Add to end")) self.textChangeCombo.append_text(_("Replace text")) self.textChangeCombo.connect("changed", self.textChangeComboChanged) pack(hbox, self.textChangeCombo) pack(hbox, gtk.Label(""), 1, 1) ## CheckButton(_("Regexp")) pack(self.textVbox, hbox) ### self.textInput1 = TextFrame() pack(self.textVbox, self.textInput1, 1, 1) ### hbox = gtk.HBox() pack(hbox, gtk.Label(_("with"))) pack(hbox, gtk.Label(""), 1, 1) pack(self.textVbox, hbox, 1, 1) self.withHbox = hbox ### self.textInput2 = TextFrame() pack(self.textVbox, self.textInput2, 1, 1) #### pack(self.vbox, self.textVbox, 1, 1) #### hbox = gtk.HBox() self.timeZoneChangeCombo = gtk.ComboBoxText() self.timeZoneChangeCombo.append_text("----") self.timeZoneChangeCombo.append_text(_("Change")) self.timeZoneChangeCombo.append_text(_("Change if empty")) pack(hbox, self.timeZoneChangeCombo) pack(hbox, gtk.Label(" ")) self.timeZoneInput = TimeZoneComboBoxEntry() pack(hbox, self.timeZoneInput) pack(hbox, gtk.Label(""), 1, 1) pack(self.vbox, hbox, 1, 1) self.timeZoneHbox = hbox #### self.vbox.show_all() self.iconRadio.set_active(True) self.iconChangeCombo.set_active(0) self.textChangeCombo.set_active(0) self.firstRadioChanged() #### window_set_size_aspect(self, 1.6)
class WidgetClass(gtk.VBox): def __init__(self, event): ## FIXME gtk.VBox.__init__(self) self.event = event assert event.parent.name == "universityTerm" ## FIXME sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL) ##### if not event.parent.courses: showError(event.parent.noCourseError, ui.eventManDialog) raise RuntimeError("No courses added") self.courseIds = [] self.courseNames = [] combo = gtk.ComboBoxText() for course in event.parent.courses: self.courseIds.append(course[0]) self.courseNames.append(course[1]) combo.append_text(course[1]) #combo.connect("changed", self.updateSummary) self.courseCombo = combo ## hbox = gtk.HBox() label = gtk.Label(_("Course")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) pack(hbox, combo) ## pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Week")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) weekNumModeRule, ok = event["weekNumMode"] if not ok: raise RuntimeError("no weekNumMode rule") self.weekNumModeCombo = WeekNumModeWidgetClass(weekNumModeRule) pack(hbox, self.weekNumModeCombo) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Week Day")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.weekDayCombo = WeekDayComboBox() #self.weekDayCombo.connect("changed", self.updateSummary) pack(hbox, self.weekDayCombo) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Time")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) ## self.dayTimeStartCombo = HourMinuteButtonOption() self.dayTimeEndCombo = HourMinuteButtonOption() ## #self.dayTimeStartCombo.get_child().set_direction(gtk.TextDirection.LTR) #self.dayTimeEndCombo.get_child().set_direction(gtk.TextDirection.LTR) ## pack(hbox, self.dayTimeStartCombo) pack(hbox, gtk.Label(" " + _("to") + " ")) pack(hbox, self.dayTimeEndCombo) pack(self, hbox) ########### #hbox = gtk.HBox() #label = gtk.Label(_("Summary")) #label.set_alignment(0, 0.5) #sizeGroup.add_widget(label) #pack(hbox, label) #self.summaryEntry = gtk.Entry() #pack(hbox, self.summaryEntry, 1, 1) #pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Description")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.descriptionInput = TextFrame() pack(hbox, self.descriptionInput, 1, 1) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Icon")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.iconSelect = IconSelectButton() #print(join(pixDir, self.icon)) pack(hbox, self.iconSelect) pack(hbox, gtk.Label(""), 1, 1) pack(self, hbox) ###### self.notificationBox = common.NotificationBox(event) pack(self, self.notificationBox) ###### #self.filesBox = common.FilesBox(self.event) #pack(self, self.filesBox) ###### self.courseCombo.set_active(0) #self.updateSummary() def focusSummary(self): pass #def updateSummary(self, widget=None): # courseIndex = self.courseCombo.get_active() # summary = ( # _("%s Class")%self.courseNames[courseIndex] + # " (" + # self.weekDayCombo.get_active_text() + # ")" # ) # self.summaryEntry.set_text(summary) # self.event.summary = summary def updateWidget(self): ## FIXME if self.event.courseId is None: pass else: self.courseCombo.set_active( self.courseIds.index(self.event.courseId)) ## self.weekNumModeCombo.updateWidget() weekDayRule, ok = self.event["weekDay"] if not ok: raise RuntimeError("no weekDay rule") weekDayList = weekDayRule.weekDayList if len(weekDayList) == 1: self.weekDayCombo.setValue(weekDayList[0]) # FIXME else: self.weekDayCombo.set_active(0) ## self.dayTimeStartCombo.clear_history() self.dayTimeEndCombo.clear_history() for hm in reversed(self.event.parent.classTimeBounds): for combo in (self.dayTimeStartCombo, self.dayTimeEndCombo): combo.set_value(hm) combo.add_history() timeRangeRule, ok = self.event["dayTimeRange"] if not ok: raise RuntimeError("no dayTimeRange rule") self.dayTimeStartCombo.set_value(timeRangeRule.dayTimeStart) self.dayTimeEndCombo.set_value(timeRangeRule.dayTimeEnd) #### #self.summaryEntry.set_text(self.event.summary) self.descriptionInput.set_text(self.event.description) self.iconSelect.set_filename(self.event.icon) #### self.notificationBox.updateWidget() #### #self.filesBox.updateWidget() def updateVars(self): ## FIXME courseIndex = self.courseCombo.get_active() if courseIndex is None: showError(_("No course is selected"), ui.eventManDialog) raise RuntimeError("No courses is selected") else: self.event.courseId = self.courseIds[courseIndex] ## self.weekNumModeCombo.updateVars() ## weekDay, ok = self.event["weekDay"] if not ok: raise RuntimeError("no weekDay rule") weekDay.weekDayList = [self.weekDayCombo.getValue()] ## FIXME ## dayTimeRange, ok = self.event["dayTimeRange"] if not ok: raise RuntimeError("no dayTimeRange rule") dayTimeRange.setRange( self.dayTimeStartCombo.get_value(), self.dayTimeEndCombo.get_value(), ) #### #self.event.summary = self.summaryEntry.get_text() self.event.description = self.descriptionInput.get_text() self.event.icon = self.iconSelect.get_filename() #### self.notificationBox.updateVars() self.event.updateSummary()
class WidgetClass(gtk.VBox): def __init__(self, event): ## FIXME gtk.VBox.__init__(self) self.event = event assert event.parent.name == 'universityTerm' ## FIXME sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL) ##### if not event.parent.courses: showError(event.parent.noCourseError, ui.eventManDialog) raise RuntimeError('No courses added') self.courseIds = [] self.courseNames = [] combo = gtk.ComboBoxText() for course in event.parent.courses: self.courseIds.append(course[0]) self.courseNames.append(course[1]) combo.append_text(course[1]) #combo.connect('changed', self.updateSummary) self.courseCombo = combo ## hbox = gtk.HBox() label = gtk.Label(_('Course')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) pack(hbox, combo) ## pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Week')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.weekNumModeCombo = WeekNumModeWidgetClass(event['weekNumMode']) pack(hbox, self.weekNumModeCombo) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Week Day')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.weekDayCombo = WeekDayComboBox() #self.weekDayCombo.connect('changed', self.updateSummary) pack(hbox, self.weekDayCombo) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Time')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) ## self.dayTimeStartCombo = HourMinuteButtonOption() self.dayTimeEndCombo = HourMinuteButtonOption() ## #self.dayTimeStartCombo.get_child().set_direction(gtk.TextDirection.LTR) #self.dayTimeEndCombo.get_child().set_direction(gtk.TextDirection.LTR) ## pack(hbox, self.dayTimeStartCombo) pack(hbox, gtk.Label(' ' + _('to') + ' ')) pack(hbox, self.dayTimeEndCombo) pack(self, hbox) ########### #hbox = gtk.HBox() #label = gtk.Label(_('Summary')) #label.set_alignment(0, 0.5) #sizeGroup.add_widget(label) #pack(hbox, label) #self.summaryEntry = gtk.Entry() #pack(hbox, self.summaryEntry, 1, 1) #pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Description')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.descriptionInput = TextFrame() pack(hbox, self.descriptionInput, 1, 1) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Icon')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.iconSelect = IconSelectButton() #print(join(pixDir, self.icon)) pack(hbox, self.iconSelect) pack(hbox, gtk.Label(''), 1, 1) pack(self, hbox) ###### self.notificationBox = common.NotificationBox(event) pack(self, self.notificationBox) ###### #self.filesBox = common.FilesBox(self.event) #pack(self, self.filesBox) ###### self.courseCombo.set_active(0) #self.updateSummary() def focusSummary(self): pass #def updateSummary(self, widget=None): # courseIndex = self.courseCombo.get_active() # summary = _('%s Class')%self.courseNames[courseIndex] + ' (' + self.weekDayCombo.get_active_text() + ')' # self.summaryEntry.set_text(summary) # self.event.summary = summary def updateWidget(self): ## FIXME if self.event.courseId is None: pass else: self.courseCombo.set_active( self.courseIds.index(self.event.courseId)) ## self.weekNumModeCombo.updateWidget() weekDayList = self.event['weekDay'].weekDayList if len(weekDayList) == 1: self.weekDayCombo.setValue(weekDayList[0]) ## FIXME else: self.weekDayCombo.set_active(0) ## self.dayTimeStartCombo.clear_history() self.dayTimeEndCombo.clear_history() for hm in reversed(self.event.parent.classTimeBounds): for combo in (self.dayTimeStartCombo, self.dayTimeEndCombo): combo.set_value(hm) combo.add_history() timeRangeRule = self.event['dayTimeRange'] self.dayTimeStartCombo.set_value(timeRangeRule.dayTimeStart) self.dayTimeEndCombo.set_value(timeRangeRule.dayTimeEnd) #### #self.summaryEntry.set_text(self.event.summary) self.descriptionInput.set_text(self.event.description) self.iconSelect.set_filename(self.event.icon) #### self.notificationBox.updateWidget() #### #self.filesBox.updateWidget() def updateVars(self): ## FIXME courseIndex = self.courseCombo.get_active() if courseIndex is None: showError(_('No course is selected'), ui.eventManDialog) raise RuntimeError('No courses is selected') else: self.event.courseId = self.courseIds[courseIndex] ## self.weekNumModeCombo.updateVars() self.event['weekDay'].weekDayList = [self.weekDayCombo.getValue() ] ## FIXME ## self.event['dayTimeRange'].setRange( self.dayTimeStartCombo.get_value(), self.dayTimeEndCombo.get_value(), ) #### #self.event.summary = self.summaryEntry.get_text() self.event.description = self.descriptionInput.get_text() self.event.icon = self.iconSelect.get_filename() #### self.notificationBox.updateVars() self.event.updateSummary()
def __init__(self, event):## FIXME gtk.VBox.__init__(self) self.event = event assert event.parent.name == 'universityTerm' ## FIXME sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL) ##### if not event.parent.courses: showError(event.parent.noCourseError, ui.eventManDialog) raise RuntimeError('No courses added') self.courseIds = [] self.courseNames = [] combo = gtk.ComboBoxText() for course in event.parent.courses: self.courseIds.append(course[0]) self.courseNames.append(course[1]) combo.append_text(course[1]) #combo.connect('changed', self.updateSummary) self.courseCombo = combo ## hbox = gtk.HBox() label = gtk.Label(_('Course')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) pack(hbox, combo) ## pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Date')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.dateInput = DateButton() pack(hbox, self.dateInput) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Time')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) ## self.dayTimeStartCombo = HourMinuteButton() self.dayTimeEndCombo = HourMinuteButton() ## #self.dayTimeStartCombo.get_child().set_direction(gtk.TextDirection.LTR) #self.dayTimeEndCombo.get_child().set_direction(gtk.TextDirection.LTR) ## pack(hbox, self.dayTimeStartCombo) pack(hbox, gtk.Label(' ' + _('to') + ' ')) pack(hbox, self.dayTimeEndCombo) pack(self, hbox) ########### #hbox = gtk.HBox() #label = gtk.Label(_('Summary')) #label.set_alignment(0, 0.5) #sizeGroup.add_widget(label) #pack(hbox, label) #self.summaryEntry = gtk.Entry() #pack(hbox, self.summaryEntry, 1, 1) #pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Description')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.descriptionInput = TextFrame() pack(hbox, self.descriptionInput, 1, 1) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Icon')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.iconSelect = IconSelectButton() #print(join(pixDir, self.icon)) pack(hbox, self.iconSelect) pack(hbox, gtk.Label(''), 1, 1) pack(self, hbox) ###### self.notificationBox = common.NotificationBox(event) pack(self, self.notificationBox) ###### #self.filesBox = common.FilesBox(self.event) #pack(self, self.filesBox) ###### self.courseCombo.set_active(0)
def __init__(self, event): from scal3.ui_gtk.mywidgets.cal_type_combo import CalTypeCombo from scal3.ui_gtk.mywidgets.tz_combo import TimeZoneComboBoxEntry gtk.VBox.__init__(self) self.event = event ########### hbox = gtk.HBox() ### pack(hbox, gtk.Label(_("Calendar Type"))) combo = CalTypeCombo() combo.set_active(calTypes.primary)## overwritten in updateWidget() pack(hbox, combo) pack(hbox, gtk.Label(""), 1, 1) self.modeCombo = combo ### pack(self, hbox) ########### if event.isAllDay: self.tzCheck = None else: hbox = gtk.HBox() self.tzCheck = gtk.CheckButton(_("Time Zone")) set_tooltip(self.tzCheck, _("For input times of event")) pack(hbox, self.tzCheck) combo = TimeZoneComboBoxEntry() pack(hbox, combo) pack(hbox, gtk.Label(""), 1, 1) self.tzCombo = combo pack(self, hbox) self.tzCheck.connect( "clicked", lambda check: self.tzCombo.set_sensitive( check.get_active(), ), ) ########### hbox = gtk.HBox() pack(hbox, gtk.Label(_("Summary"))) self.summaryEntry = gtk.Entry() pack(hbox, self.summaryEntry, 1, 1) pack(self, hbox) ########### self.descriptionInput = TextFrame() swin = gtk.ScrolledWindow() swin.set_policy(gtk.PolicyType.AUTOMATIC, gtk.PolicyType.AUTOMATIC) swin.add_with_viewport(self.descriptionInput) ### frame = gtk.Frame() frame.set_label(_("Description")) frame.add(swin) pack(self, frame, self.expandDescription, self.expandDescription) ########### hbox = gtk.HBox() pack(hbox, gtk.Label(_("Icon") + ":")) self.iconSelect = IconSelectButton() pack(hbox, self.iconSelect) pack(hbox, gtk.Label(""), 1, 1) pack(self, hbox) ########## self.modeCombo.connect( "changed", self.modeComboChanged, ) # right place? before updateWidget? FIXME
class WidgetClass(gtk.VBox): def __init__(self, event): from scal3.ui_gtk.mywidgets.cal_type_combo import CalTypeCombo from scal3.ui_gtk.mywidgets.tz_combo import TimeZoneComboBoxEntry gtk.VBox.__init__(self) self.event = event ########### hbox = gtk.HBox() ### pack(hbox, gtk.Label(_('Calendar Type'))) combo = CalTypeCombo() combo.set_active(calTypes.primary)## overwritten in updateWidget() pack(hbox, combo) pack(hbox, gtk.Label(''), 1, 1) self.modeCombo = combo ### pack(self, hbox) ########### if event.isAllDay: self.tzCheck = None else: hbox = gtk.HBox() self.tzCheck = gtk.CheckButton(_('Time Zone')) set_tooltip(self.tzCheck, _('For input times of event')) pack(hbox, self.tzCheck) combo = TimeZoneComboBoxEntry() pack(hbox, combo) pack(hbox, gtk.Label(''), 1, 1) self.tzCombo = combo pack(self, hbox) self.tzCheck.connect('clicked', lambda check: self.tzCombo.set_sensitive(check.get_active())) ########### hbox = gtk.HBox() pack(hbox, gtk.Label(_('Summary'))) self.summaryEntry = gtk.Entry() pack(hbox, self.summaryEntry, 1, 1) pack(self, hbox) ########### self.descriptionInput = TextFrame() swin = gtk.ScrolledWindow() swin.set_policy(gtk.PolicyType.AUTOMATIC, gtk.PolicyType.AUTOMATIC) swin.add_with_viewport(self.descriptionInput) ### exp = gtk.Expander() exp.set_expanded(True) exp.set_label(_('Description')) exp.add(swin) pack(self, exp, 1, 1) ########### hbox = gtk.HBox() pack(hbox, gtk.Label(_('Icon')+':')) self.iconSelect = IconSelectButton() pack(hbox, self.iconSelect) pack(hbox, gtk.Label(''), 1, 1) pack(self, hbox) ########## self.modeCombo.connect('changed', self.modeComboChanged)## right place? before updateWidget? FIXME def focusSummary(self): self.summaryEntry.select_region(0, -1) self.summaryEntry.grab_focus() def updateWidget(self): #print('updateWidget', self.event.files) self.modeCombo.set_active(self.event.mode) if self.tzCheck: if self.event.timeZone: self.tzCheck.set_active(self.event.timeZoneEnable) self.tzCombo.set_sensitive(self.event.timeZoneEnable) self.tzCombo.set_text(self.event.timeZone) else: self.tzCheck.set_active(False) self.tzCombo.set_sensitive(False) ### self.summaryEntry.set_text(self.event.summary) self.descriptionInput.set_text(self.event.description) self.iconSelect.set_filename(self.event.icon) ##### for attr in ('notificationBox', 'filesBox'): try: getattr(self, attr).updateWidget() except AttributeError: pass ##### self.modeComboChanged() def updateVars(self): self.event.mode = self.modeCombo.get_active() if self.tzCheck: self.event.timeZoneEnable = self.tzCheck.get_active() self.event.timeZone = self.tzCombo.get_text() else: self.event.timeZoneEnable = False ## FIXME self.event.summary = self.summaryEntry.get_text() self.event.description = self.descriptionInput.get_text() self.event.icon = self.iconSelect.get_filename() ##### for attr in ('notificationBox', 'filesBox'): try: getattr(self, attr).updateVars() except AttributeError: pass ##### def modeComboChanged(self, obj=None):## FIXME pass
def __init__(self, event): from scal3.ui_gtk.mywidgets.cal_type_combo import CalTypeCombo from scal3.ui_gtk.mywidgets.tz_combo import TimeZoneComboBoxEntry gtk.VBox.__init__(self) self.event = event ########### hbox = gtk.HBox() ### pack(hbox, gtk.Label(_("Calendar Type"))) combo = CalTypeCombo() combo.set_active(calTypes.primary) ## overwritten in updateWidget() pack(hbox, combo) pack(hbox, gtk.Label(""), 1, 1) self.modeCombo = combo ### pack(self, hbox) ########### if event.isAllDay: self.tzCheck = None else: hbox = gtk.HBox() self.tzCheck = gtk.CheckButton(_("Time Zone")) set_tooltip(self.tzCheck, _("For input times of event")) pack(hbox, self.tzCheck) combo = TimeZoneComboBoxEntry() pack(hbox, combo) pack(hbox, gtk.Label(""), 1, 1) self.tzCombo = combo pack(self, hbox) self.tzCheck.connect( "clicked", lambda check: self.tzCombo.set_sensitive(check.get_active(), ), ) ########### hbox = gtk.HBox() pack(hbox, gtk.Label(_("Summary"))) self.summaryEntry = gtk.Entry() pack(hbox, self.summaryEntry, 1, 1) pack(self, hbox) ########### self.descriptionInput = TextFrame() swin = gtk.ScrolledWindow() swin.set_policy(gtk.PolicyType.AUTOMATIC, gtk.PolicyType.AUTOMATIC) swin.add_with_viewport(self.descriptionInput) ### frame = gtk.Frame() frame.set_label(_("Description")) frame.add(swin) pack(self, frame, self.expandDescription, self.expandDescription) ########### hbox = gtk.HBox() pack(hbox, gtk.Label(_("Icon") + ":")) self.iconSelect = IconSelectButton() pack(hbox, self.iconSelect) pack(hbox, gtk.Label(""), 1, 1) pack(self, hbox) ########## self.modeCombo.connect( "changed", self.modeComboChanged, ) # right place? before updateWidget? FIXME
def __init__(self, container, **kwargs): from scal3.ui_gtk.mywidgets.tz_combo import TimeZoneComboBoxEntry self._container = container gtk.Dialog.__init__(self, **kwargs) self.set_title(_('Bulk Edit Events')) #### dialog_add_button(self, gtk.STOCK_CANCEL, _('_Cancel'), gtk.ResponseType.CANCEL) dialog_add_button(self, gtk.STOCK_OK, _('_OK'), gtk.ResponseType.OK) ## self.connect('response', lambda w, e: self.hide()) #### try: title = container.title except AttributeError: event_count = len(container) msg = _('Here you are going to modify these %s events at once.'%event_count) else: msg = _('Here you are going to modify all events inside group "%s" at once.'%title) msg += ' ' msg += _('You better make a backup from you events before doing this. Just right click on group and select "Export" (or a full backup: menu File -> Export)') msg += '\n\n' label = gtk.Label(msg) label.set_line_wrap(True) pack(self.vbox, label) #### hbox = gtk.HBox() self.iconRadio = gtk.RadioButton(label=_('Icon')) pack(hbox, self.iconRadio, 1, 1) self.summaryRadio = gtk.RadioButton(label=_('Summary'), group=self.iconRadio) pack(hbox, self.summaryRadio, 1, 1) self.descriptionRadio = gtk.RadioButton(label=_('Description'), group=self.iconRadio) pack(hbox, self.descriptionRadio, 1, 1) self.timeZoneRadio = gtk.RadioButton(label=_('Time Zone'), group=self.iconRadio) pack(hbox, self.timeZoneRadio, 1, 1) pack(self.vbox, hbox) ### self.iconRadio.connect('clicked', self.firstRadioChanged) self.summaryRadio.connect('clicked', self.firstRadioChanged) self.descriptionRadio.connect('clicked', self.firstRadioChanged) self.timeZoneRadio.connect('clicked', self.firstRadioChanged) #### hbox = gtk.HBox() self.iconChangeCombo = gtk.ComboBoxText() self.iconChangeCombo.append_text('----') self.iconChangeCombo.append_text(_('Change')) self.iconChangeCombo.append_text(_('Change if empty')) pack(hbox, self.iconChangeCombo) pack(hbox, gtk.Label(' ')) self.iconSelect = IconSelectButton() try: self.iconSelect.set_filename(container.icon) except AttributeError: pass pack(hbox, self.iconSelect) pack(hbox, gtk.Label(''), 1, 1) pack(self.vbox, hbox) self.iconHbox = hbox #### self.textVbox = gtk.VBox() ### hbox = gtk.HBox() self.textChangeCombo = gtk.ComboBoxText() self.textChangeCombo.append_text('----') self.textChangeCombo.append_text(_('Add to beginning')) self.textChangeCombo.append_text(_('Add to end')) self.textChangeCombo.append_text(_('Replace text')) self.textChangeCombo.connect('changed', self.textChangeComboChanged) pack(hbox, self.textChangeCombo) pack(hbox, gtk.Label(''), 1, 1) ## CheckButton(_('Regexp')) pack(self.textVbox, hbox) ### self.textInput1 = TextFrame() pack(self.textVbox, self.textInput1, 1, 1) ### hbox = gtk.HBox() pack(hbox, gtk.Label(_('with'))) pack(hbox, gtk.Label(''), 1, 1) pack(self.textVbox, hbox, 1, 1) self.withHbox = hbox ### self.textInput2 = TextFrame() pack(self.textVbox, self.textInput2, 1, 1) #### pack(self.vbox, self.textVbox, 1, 1) #### hbox = gtk.HBox() self.timeZoneChangeCombo = gtk.ComboBoxText() self.timeZoneChangeCombo.append_text('----') self.timeZoneChangeCombo.append_text(_('Change')) self.timeZoneChangeCombo.append_text(_('Change if empty')) pack(hbox, self.timeZoneChangeCombo) pack(hbox, gtk.Label(' ')) self.timeZoneInput = TimeZoneComboBoxEntry() pack(hbox, self.timeZoneInput) pack(hbox, gtk.Label(''), 1, 1) pack(self.vbox, hbox, 1, 1) self.timeZoneHbox = hbox #### self.vbox.show_all() self.iconRadio.set_active(True) self.iconChangeCombo.set_active(0) self.textChangeCombo.set_active(0) self.firstRadioChanged()
class EventsBulkEditDialog(gtk.Dialog): def __init__(self, container, **kwargs): from scal3.ui_gtk.mywidgets.tz_combo import TimeZoneComboBoxEntry self._container = container gtk.Dialog.__init__(self, **kwargs) self.set_title(_('Bulk Edit Events')) #### dialog_add_button(self, gtk.STOCK_CANCEL, _('_Cancel'), gtk.ResponseType.CANCEL) dialog_add_button(self, gtk.STOCK_OK, _('_OK'), gtk.ResponseType.OK) ## self.connect('response', lambda w, e: self.hide()) #### try: title = container.title except AttributeError: event_count = len(container) msg = _('Here you are going to modify these %s events at once.'%event_count) else: msg = _('Here you are going to modify all events inside group "%s" at once.'%title) msg += ' ' msg += _('You better make a backup from you events before doing this. Just right click on group and select "Export" (or a full backup: menu File -> Export)') msg += '\n\n' label = gtk.Label(msg) label.set_line_wrap(True) pack(self.vbox, label) #### hbox = gtk.HBox() self.iconRadio = gtk.RadioButton(label=_('Icon')) pack(hbox, self.iconRadio, 1, 1) self.summaryRadio = gtk.RadioButton(label=_('Summary'), group=self.iconRadio) pack(hbox, self.summaryRadio, 1, 1) self.descriptionRadio = gtk.RadioButton(label=_('Description'), group=self.iconRadio) pack(hbox, self.descriptionRadio, 1, 1) self.timeZoneRadio = gtk.RadioButton(label=_('Time Zone'), group=self.iconRadio) pack(hbox, self.timeZoneRadio, 1, 1) pack(self.vbox, hbox) ### self.iconRadio.connect('clicked', self.firstRadioChanged) self.summaryRadio.connect('clicked', self.firstRadioChanged) self.descriptionRadio.connect('clicked', self.firstRadioChanged) self.timeZoneRadio.connect('clicked', self.firstRadioChanged) #### hbox = gtk.HBox() self.iconChangeCombo = gtk.ComboBoxText() self.iconChangeCombo.append_text('----') self.iconChangeCombo.append_text(_('Change')) self.iconChangeCombo.append_text(_('Change if empty')) pack(hbox, self.iconChangeCombo) pack(hbox, gtk.Label(' ')) self.iconSelect = IconSelectButton() try: self.iconSelect.set_filename(container.icon) except AttributeError: pass pack(hbox, self.iconSelect) pack(hbox, gtk.Label(''), 1, 1) pack(self.vbox, hbox) self.iconHbox = hbox #### self.textVbox = gtk.VBox() ### hbox = gtk.HBox() self.textChangeCombo = gtk.ComboBoxText() self.textChangeCombo.append_text('----') self.textChangeCombo.append_text(_('Add to beginning')) self.textChangeCombo.append_text(_('Add to end')) self.textChangeCombo.append_text(_('Replace text')) self.textChangeCombo.connect('changed', self.textChangeComboChanged) pack(hbox, self.textChangeCombo) pack(hbox, gtk.Label(''), 1, 1) ## CheckButton(_('Regexp')) pack(self.textVbox, hbox) ### self.textInput1 = TextFrame() pack(self.textVbox, self.textInput1, 1, 1) ### hbox = gtk.HBox() pack(hbox, gtk.Label(_('with'))) pack(hbox, gtk.Label(''), 1, 1) pack(self.textVbox, hbox, 1, 1) self.withHbox = hbox ### self.textInput2 = TextFrame() pack(self.textVbox, self.textInput2, 1, 1) #### pack(self.vbox, self.textVbox, 1, 1) #### hbox = gtk.HBox() self.timeZoneChangeCombo = gtk.ComboBoxText() self.timeZoneChangeCombo.append_text('----') self.timeZoneChangeCombo.append_text(_('Change')) self.timeZoneChangeCombo.append_text(_('Change if empty')) pack(hbox, self.timeZoneChangeCombo) pack(hbox, gtk.Label(' ')) self.timeZoneInput = TimeZoneComboBoxEntry() pack(hbox, self.timeZoneInput) pack(hbox, gtk.Label(''), 1, 1) pack(self.vbox, hbox, 1, 1) self.timeZoneHbox = hbox #### self.vbox.show_all() self.iconRadio.set_active(True) self.iconChangeCombo.set_active(0) self.textChangeCombo.set_active(0) self.firstRadioChanged() def firstRadioChanged(self, w=None): if self.iconRadio.get_active(): self.iconHbox.show() self.textVbox.hide() self.timeZoneHbox.hide() elif self.timeZoneRadio.get_active(): self.iconHbox.hide() self.textVbox.hide() self.timeZoneHbox.show() elif self.summaryRadio.get_active() or self.descriptionRadio.get_active(): self.iconHbox.hide() self.textChangeComboChanged() self.timeZoneHbox.hide() def textChangeComboChanged(self, w=None): self.textVbox.show_all() chType = self.textChangeCombo.get_active() if chType==0: self.textInput1.hide() self.withHbox.hide() self.textInput2.hide() elif chType in (1, 2): self.withHbox.hide() self.textInput2.hide() def doAction(self): container = self._container if self.iconRadio.get_active(): chType = self.iconChangeCombo.get_active() if chType!=0: icon = self.iconSelect.get_filename() for event in container: if not (chType==2 and event.icon): event.icon = icon event.afterModify() event.save() elif self.timeZoneRadio.get_active(): chType = self.timeZoneChangeCombo.get_active() timeZone = self.timeZoneInput.get_text() if chType!=0: try: natz.timezone(timeZone) except: myRaise('Invalid Time Zone "%s"'%timeZone) else: for event in container: if not (chType==2 and event.timeZone): event.timeZone = timeZone event.afterModify() event.save() else: chType = self.textChangeCombo.get_active() if chType!=0: text1 = self.textInput1.get_text() text2 = self.textInput2.get_text() if self.summaryRadio.get_active(): for event in container: if chType==1: event.summary = text1 + event.summary elif chType==2: event.summary = event.summary + text1 elif chType==3: event.summary = event.summary.replace(text1, text2) event.afterModify() event.save() elif self.descriptionRadio.get_active(): for event in container: if chType==1: event.description = text1 + event.description elif chType==2: event.description = event.description + text1 elif chType==3: event.description = event.description.replace(text1, text2) event.afterModify() event.save()
def __init__(self, showDesc=False): gtk.Window.__init__(self) self.maximize() self.initVars() ud.windowList.appendItem(self) ### self.set_title(_("Search Events")) self.connect("delete-event", self.closed) self.connect("key-press-event", self.keyPress) ### self.vbox = gtk.VBox() self.add(self.vbox) ###### frame = TextFrame() frame.set_label(_("Text")) frame.set_border_width(5) pack(self.vbox, frame) self.textInput = frame ## hbox = gtk.HBox() self.textCSensCheck = gtk.CheckButton(_("Case Sensitive")) self.textCSensCheck.set_active(False) ## FIXME pack(hbox, self.textCSensCheck) pack(self.vbox, hbox) ###### jd = core.getCurrentJd() year, month, day = jd_to_primary(jd) ###### hbox = gtk.HBox() frame = gtk.Frame() frame.set_label(_("Time")) frame.set_border_width(5) vboxIn = gtk.VBox() sgroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL) #### hboxIn = gtk.HBox() ## self.timeFromCheck = gtk.CheckButton(_("From")) sgroup.add_widget(self.timeFromCheck) pack(hboxIn, self.timeFromCheck) pack(hboxIn, gtk.Label(" ")) ## self.timeFromInput = DateTimeButton() self.timeFromInput.set_value(((year, 1, 1), (0, 0, 0))) pack(hboxIn, self.timeFromInput) ## pack(vboxIn, hboxIn) #### hboxIn = gtk.HBox() ## self.timeToCheck = gtk.CheckButton(_("To")) sgroup.add_widget(self.timeToCheck) pack(hboxIn, self.timeToCheck) pack(hboxIn, gtk.Label(" ")) ## self.timeToInput = DateTimeButton() self.timeToInput.set_value(( (year + 1, 1, 1), (0, 0, 0), )) pack(hboxIn, self.timeToInput) ## pack(vboxIn, hboxIn) ## self.timeFromCheck.connect("clicked", self.updateTimeFromSensitive) self.timeToCheck.connect("clicked", self.updateTimeToSensitive) self.updateTimeFromSensitive() self.updateTimeToSensitive() #### vboxIn.set_border_width(5) frame.add(vboxIn) pack(hbox, frame) pack(hbox, gtk.Label(""), 1, 1) pack(self.vbox, hbox) ###### hbox = gtk.HBox() hbox.set_border_width(5) self.modifiedFromCheck = gtk.CheckButton(_("Modified From")) pack(hbox, self.modifiedFromCheck) pack(hbox, gtk.Label(" ")) self.modifiedFromInput = DateTimeButton() self.modifiedFromInput.set_value(((year, 1, 1), (0, 0, 0))) pack(hbox, self.modifiedFromInput) ## self.modifiedFromCheck.connect("clicked", self.updateModifiedFromSensitive) self.updateModifiedFromSensitive() pack(self.vbox, hbox) ###### hbox = gtk.HBox() hbox.set_border_width(5) self.typeCheck = gtk.CheckButton(_("Event Type")) pack(hbox, self.typeCheck) pack(hbox, gtk.Label(" ")) ## combo = gtk.ComboBoxText() for cls in event_lib.classes.event: combo.append_text(cls.desc) combo.set_active(0) pack(hbox, combo) self.typeCombo = combo ## self.typeCheck.connect("clicked", self.updateTypeSensitive) self.updateTypeSensitive() pack(self.vbox, hbox) ###### hbox = gtk.HBox() hbox.set_border_width(5) self.groupCheck = gtk.CheckButton(_("Group")) pack(hbox, self.groupCheck) pack(hbox, gtk.Label(" ")) self.groupCombo = SingleGroupComboBox() pack(hbox, self.groupCombo) ## self.groupCheck.connect("clicked", self.updateGroupSensitive) self.updateGroupSensitive() pack(self.vbox, hbox) ###### bbox = gtk.HButtonBox() bbox.set_layout(gtk.ButtonBoxStyle.START) bbox.set_border_width(5) searchButton = gtk.Button() searchButton.set_label(_("_Search")) searchButton.set_image(gtk.Image.new_from_stock( gtk.STOCK_FIND, gtk.IconSize.BUTTON, )) searchButton.connect("clicked", self.searchClicked) bbox.add(searchButton) pack(self.vbox, bbox) ###### treev = gtk.TreeView() trees = gtk.TreeStore( int, # gid int, # eid str, # group_name GdkPixbuf.Pixbuf, # icon str, # summary str, # description ) ### treev.set_model(trees) treev.connect("button-press-event", self.treevButtonPress) treev.connect("row-activated", self.rowActivated) treev.connect("key-press-event", self.treevKeyPress) treev.set_headers_clickable(True) ### self.colGroup = gtk.TreeViewColumn( _("Group"), gtk.CellRendererText(), text=2, ) self.colGroup.set_resizable(True) self.colGroup.set_sort_column_id(2) self.colGroup.set_property("expand", False) treev.append_column(self.colGroup) ### self.colIcon = gtk.TreeViewColumn() cell = gtk.CellRendererPixbuf() pack(self.colIcon, cell) self.colIcon.add_attribute(cell, "pixbuf", 3) #self.colIcon.set_sort_column_id(3) # FIXME self.colIcon.set_property("expand", False) treev.append_column(self.colIcon) ### self.colSummary = gtk.TreeViewColumn( _("Summary"), gtk.CellRendererText(), text=4, ) self.colSummary.set_resizable(True) self.colSummary.set_sort_column_id(4) self.colSummary.set_property("expand", True) # FIXME treev.append_column(self.colSummary) ### self.colDesc = gtk.TreeViewColumn( _("Description"), gtk.CellRendererText(), text=5, ) self.colDesc.set_sort_column_id(5) self.colDesc.set_visible(showDesc) self.colDesc.set_property("expand", True) # FIXME treev.append_column(self.colDesc) ### trees.set_sort_func(2, self.sort_func_group) ###### swin = gtk.ScrolledWindow() swin.set_policy(gtk.PolicyType.AUTOMATIC, gtk.PolicyType.AUTOMATIC) swin.add(treev) #### vbox = gtk.VBox(spacing=5) vbox.set_border_width(5) ### topHbox = gtk.HBox() self.resultLabel = gtk.Label("") pack(topHbox, self.resultLabel) pack(topHbox, gtk.Label(""), 1, 1) pack(vbox, topHbox) #### columnBox = gtk.HBox(spacing=5) pack(columnBox, gtk.Label(_("Columns") + ": ")) ## check = gtk.CheckButton(_("Group")) check.set_active(True) check.connect( "clicked", lambda w: self.colGroup.set_visible(w.get_active()), ) pack(columnBox, check) ## check = gtk.CheckButton(_("Icon")) check.set_active(True) check.connect( "clicked", lambda w: self.colIcon.set_visible(w.get_active()), ) pack(columnBox, check) ## check = gtk.CheckButton(_("Summary")) check.set_active(True) check.connect( "clicked", lambda w: self.colSummary.set_visible(w.get_active()), ) pack(columnBox, check) ## check = gtk.CheckButton(_("Description")) check.set_active(showDesc) check.connect( "clicked", lambda w: self.colDesc.set_visible(w.get_active()), ) pack(columnBox, check) ## pack(vbox, columnBox) #### pack(vbox, swin, 1, 1) ## frame = gtk.Frame() frame.set_label(_("Search Results")) frame.set_border_width(10) frame.add(vbox) ## pack(self.vbox, frame, 1, 1) ### bbox2 = gtk.HButtonBox() bbox2.set_layout(gtk.ButtonBoxStyle.END) bbox2.set_border_width(10) closeButton = gtk.Button() closeButton.set_label(_("_Close")) closeButton.set_image(gtk.Image.new_from_stock( gtk.STOCK_CLOSE, gtk.IconSize.BUTTON, )) closeButton.connect("clicked", self.closed) bbox2.add(closeButton) pack(self.vbox, bbox2) ###### self.treev = treev self.trees = trees self.vbox.show_all()
class EventsBulkEditDialog(gtk.Dialog): def __init__(self, container, **kwargs): from scal3.ui_gtk.mywidgets.tz_combo import TimeZoneComboBoxEntry self._container = container gtk.Dialog.__init__(self, **kwargs) self.set_title(_('Bulk Edit Events')) #### dialog_add_button(self, gtk.STOCK_CANCEL, _('_Cancel'), gtk.ResponseType.CANCEL) dialog_add_button(self, gtk.STOCK_OK, _('_OK'), gtk.ResponseType.OK) ## self.connect('response', lambda w, e: self.hide()) #### try: title = container.title except AttributeError: event_count = len(container) msg = _('Here you are going to modify these %s events at once.') % event_count else: msg = _('Here you are going to modify all events inside group "%s" at once.') % title msg += ' ' msg += _('You better make a backup from your events before doing this. Just right click on group and select "Export" (or a full backup: menu File -> Export)') msg += '\n\n' label = gtk.Label(msg) label.set_line_wrap(True) pack(self.vbox, label) #### hbox = gtk.HBox() self.iconRadio = gtk.RadioButton(label=_('Icon')) pack(hbox, self.iconRadio, 1, 1) self.summaryRadio = gtk.RadioButton(label=_('Summary'), group=self.iconRadio) pack(hbox, self.summaryRadio, 1, 1) self.descriptionRadio = gtk.RadioButton(label=_('Description'), group=self.iconRadio) pack(hbox, self.descriptionRadio, 1, 1) self.timeZoneRadio = gtk.RadioButton(label=_('Time Zone'), group=self.iconRadio) pack(hbox, self.timeZoneRadio, 1, 1) pack(self.vbox, hbox) ### self.iconRadio.connect('clicked', self.firstRadioChanged) self.summaryRadio.connect('clicked', self.firstRadioChanged) self.descriptionRadio.connect('clicked', self.firstRadioChanged) self.timeZoneRadio.connect('clicked', self.firstRadioChanged) #### hbox = gtk.HBox() self.iconChangeCombo = gtk.ComboBoxText() self.iconChangeCombo.append_text('----') self.iconChangeCombo.append_text(_('Change')) self.iconChangeCombo.append_text(_('Change if empty')) pack(hbox, self.iconChangeCombo) pack(hbox, gtk.Label(' ')) self.iconSelect = IconSelectButton() try: self.iconSelect.set_filename(container.icon) except AttributeError: pass pack(hbox, self.iconSelect) pack(hbox, gtk.Label(''), 1, 1) pack(self.vbox, hbox) self.iconHbox = hbox #### self.textVbox = gtk.VBox() ### hbox = gtk.HBox() self.textChangeCombo = gtk.ComboBoxText() self.textChangeCombo.append_text('----') self.textChangeCombo.append_text(_('Add to beginning')) self.textChangeCombo.append_text(_('Add to end')) self.textChangeCombo.append_text(_('Replace text')) self.textChangeCombo.connect('changed', self.textChangeComboChanged) pack(hbox, self.textChangeCombo) pack(hbox, gtk.Label(''), 1, 1) ## CheckButton(_('Regexp')) pack(self.textVbox, hbox) ### self.textInput1 = TextFrame() pack(self.textVbox, self.textInput1, 1, 1) ### hbox = gtk.HBox() pack(hbox, gtk.Label(_('with'))) pack(hbox, gtk.Label(''), 1, 1) pack(self.textVbox, hbox, 1, 1) self.withHbox = hbox ### self.textInput2 = TextFrame() pack(self.textVbox, self.textInput2, 1, 1) #### pack(self.vbox, self.textVbox, 1, 1) #### hbox = gtk.HBox() self.timeZoneChangeCombo = gtk.ComboBoxText() self.timeZoneChangeCombo.append_text('----') self.timeZoneChangeCombo.append_text(_('Change')) self.timeZoneChangeCombo.append_text(_('Change if empty')) pack(hbox, self.timeZoneChangeCombo) pack(hbox, gtk.Label(' ')) self.timeZoneInput = TimeZoneComboBoxEntry() pack(hbox, self.timeZoneInput) pack(hbox, gtk.Label(''), 1, 1) pack(self.vbox, hbox, 1, 1) self.timeZoneHbox = hbox #### self.vbox.show_all() self.iconRadio.set_active(True) self.iconChangeCombo.set_active(0) self.textChangeCombo.set_active(0) self.firstRadioChanged() #### window_set_size_aspect(self, 1.6) def firstRadioChanged(self, w=None): if self.iconRadio.get_active(): self.iconHbox.show() self.textVbox.hide() self.timeZoneHbox.hide() elif self.timeZoneRadio.get_active(): self.iconHbox.hide() self.textVbox.hide() self.timeZoneHbox.show() elif self.summaryRadio.get_active() or self.descriptionRadio.get_active(): self.iconHbox.hide() self.textChangeComboChanged() self.timeZoneHbox.hide() def textChangeComboChanged(self, w=None): self.textVbox.show_all() chType = self.textChangeCombo.get_active() if chType==0: self.textInput1.hide() self.withHbox.hide() self.textInput2.hide() elif chType in (1, 2): self.withHbox.hide() self.textInput2.hide() def doAction(self): container = self._container if self.iconRadio.get_active(): chType = self.iconChangeCombo.get_active() if chType!=0: icon = self.iconSelect.get_filename() for event in container: if not (chType==2 and event.icon): event.icon = icon event.afterModify() event.save() elif self.timeZoneRadio.get_active(): chType = self.timeZoneChangeCombo.get_active() timeZone = self.timeZoneInput.get_text() if chType!=0: try: natz.timezone(timeZone) except: myRaise('Invalid Time Zone "%s"'%timeZone) else: for event in container: if not (chType==2 and event.timeZone): event.timeZone = timeZone event.afterModify() event.save() else: chType = self.textChangeCombo.get_active() if chType!=0: text1 = self.textInput1.get_text() text2 = self.textInput2.get_text() if self.summaryRadio.get_active(): for event in container: if chType==1: event.summary = text1 + event.summary elif chType==2: event.summary = event.summary + text1 elif chType==3: event.summary = event.summary.replace(text1, text2) event.afterModify() event.save() elif self.descriptionRadio.get_active(): for event in container: if chType==1: event.description = text1 + event.description elif chType==2: event.description = event.description + text1 elif chType==3: event.description = event.description.replace(text1, text2) event.afterModify() event.save()
class WidgetClass(gtk.VBox): def __init__(self, event):## FIXME gtk.VBox.__init__(self) self.event = event assert event.parent.name == 'universityTerm' ## FIXME sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL) ##### if not event.parent.courses: showError(event.parent.noCourseError, ui.eventManDialog) raise RuntimeError('No courses added') self.courseIds = [] self.courseNames = [] combo = gtk.ComboBoxText() for course in event.parent.courses: self.courseIds.append(course[0]) self.courseNames.append(course[1]) combo.append_text(course[1]) #combo.connect('changed', self.updateSummary) self.courseCombo = combo ## hbox = gtk.HBox() label = gtk.Label(_('Course')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) pack(hbox, combo) ## pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Date')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.dateInput = DateButton() pack(hbox, self.dateInput) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Time')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) ## self.dayTimeStartCombo = HourMinuteButton() self.dayTimeEndCombo = HourMinuteButton() ## #self.dayTimeStartCombo.get_child().set_direction(gtk.TextDirection.LTR) #self.dayTimeEndCombo.get_child().set_direction(gtk.TextDirection.LTR) ## pack(hbox, self.dayTimeStartCombo) pack(hbox, gtk.Label(' ' + _('to') + ' ')) pack(hbox, self.dayTimeEndCombo) pack(self, hbox) ########### #hbox = gtk.HBox() #label = gtk.Label(_('Summary')) #label.set_alignment(0, 0.5) #sizeGroup.add_widget(label) #pack(hbox, label) #self.summaryEntry = gtk.Entry() #pack(hbox, self.summaryEntry, 1, 1) #pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Description')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.descriptionInput = TextFrame() pack(hbox, self.descriptionInput, 1, 1) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Icon')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.iconSelect = IconSelectButton() #print(join(pixDir, self.icon)) pack(hbox, self.iconSelect) pack(hbox, gtk.Label(''), 1, 1) pack(self, hbox) ###### self.notificationBox = common.NotificationBox(event) pack(self, self.notificationBox) ###### #self.filesBox = common.FilesBox(self.event) #pack(self, self.filesBox) ###### self.courseCombo.set_active(0) #self.updateSummary() def focusSummary(self): pass #def updateSummary(self, widget=None): # courseIndex = self.courseCombo.get_active() # summary = _('%s Exam')%self.courseNames[courseIndex] # self.summaryEntry.set_text(summary) # self.event.summary = summary def updateWidget(self):## FIXME if self.event.courseId is None: pass else: self.courseCombo.set_active(self.courseIds.index(self.event.courseId)) ## self.dateInput.set_value(self.event.getDate()) ## timeRangeRule = self.event['dayTimeRange'] self.dayTimeStartCombo.set_value(timeRangeRule.dayTimeStart) self.dayTimeEndCombo.set_value(timeRangeRule.dayTimeEnd) #### #self.summaryEntry.set_text(self.event.summary) self.descriptionInput.set_text(self.event.description) self.iconSelect.set_filename(self.event.icon) #### self.notificationBox.updateWidget() #### #self.filesBox.updateWidget() def updateVars(self):## FIXME courseIndex = self.courseCombo.get_active() if courseIndex is None: showError(_('No course is selected'), ui.eventManDialog) raise RuntimeError('No courses is selected') else: self.event.courseId = self.courseIds[courseIndex] ## self.event.setDate(*tuple(self.dateInput.get_value())) ## self.event['dayTimeRange'].setRange( self.dayTimeStartCombo.get_value(), self.dayTimeEndCombo.get_value(), ) #### #self.event.summary = self.summaryEntry.get_text() self.event.description = self.descriptionInput.get_text() self.event.icon = self.iconSelect.get_filename() #### self.notificationBox.updateVars() self.event.updateSummary() def modeComboChanged(self, obj=None):## overwrite method from common.WidgetClass newMode = self.modeCombo.get_active() self.dateInput.changeMode(self.event.mode, newMode) self.event.mode = newMode
def __init__(self, container, **kwargs): from scal3.ui_gtk.mywidgets.tz_combo import TimeZoneComboBoxEntry self._container = container gtk.Dialog.__init__(self, **kwargs) self.set_title(_('Bulk Edit Events')) #### dialog_add_button(self, gtk.STOCK_CANCEL, _('_Cancel'), gtk.ResponseType.CANCEL) dialog_add_button(self, gtk.STOCK_OK, _('_OK'), gtk.ResponseType.OK) ## self.connect('response', lambda w, e: self.hide()) #### try: title = container.title except AttributeError: event_count = len(container) msg = _('Here you are going to modify these %s events at once.') % event_count else: msg = _('Here you are going to modify all events inside group "%s" at once.') % title msg += ' ' msg += _('You better make a backup from your events before doing this. Just right click on group and select "Export" (or a full backup: menu File -> Export)') msg += '\n\n' label = gtk.Label(msg) label.set_line_wrap(True) pack(self.vbox, label) #### hbox = gtk.HBox() self.iconRadio = gtk.RadioButton(label=_('Icon')) pack(hbox, self.iconRadio, 1, 1) self.summaryRadio = gtk.RadioButton(label=_('Summary'), group=self.iconRadio) pack(hbox, self.summaryRadio, 1, 1) self.descriptionRadio = gtk.RadioButton(label=_('Description'), group=self.iconRadio) pack(hbox, self.descriptionRadio, 1, 1) self.timeZoneRadio = gtk.RadioButton(label=_('Time Zone'), group=self.iconRadio) pack(hbox, self.timeZoneRadio, 1, 1) pack(self.vbox, hbox) ### self.iconRadio.connect('clicked', self.firstRadioChanged) self.summaryRadio.connect('clicked', self.firstRadioChanged) self.descriptionRadio.connect('clicked', self.firstRadioChanged) self.timeZoneRadio.connect('clicked', self.firstRadioChanged) #### hbox = gtk.HBox() self.iconChangeCombo = gtk.ComboBoxText() self.iconChangeCombo.append_text('----') self.iconChangeCombo.append_text(_('Change')) self.iconChangeCombo.append_text(_('Change if empty')) pack(hbox, self.iconChangeCombo) pack(hbox, gtk.Label(' ')) self.iconSelect = IconSelectButton() try: self.iconSelect.set_filename(container.icon) except AttributeError: pass pack(hbox, self.iconSelect) pack(hbox, gtk.Label(''), 1, 1) pack(self.vbox, hbox) self.iconHbox = hbox #### self.textVbox = gtk.VBox() ### hbox = gtk.HBox() self.textChangeCombo = gtk.ComboBoxText() self.textChangeCombo.append_text('----') self.textChangeCombo.append_text(_('Add to beginning')) self.textChangeCombo.append_text(_('Add to end')) self.textChangeCombo.append_text(_('Replace text')) self.textChangeCombo.connect('changed', self.textChangeComboChanged) pack(hbox, self.textChangeCombo) pack(hbox, gtk.Label(''), 1, 1) ## CheckButton(_('Regexp')) pack(self.textVbox, hbox) ### self.textInput1 = TextFrame() pack(self.textVbox, self.textInput1, 1, 1) ### hbox = gtk.HBox() pack(hbox, gtk.Label(_('with'))) pack(hbox, gtk.Label(''), 1, 1) pack(self.textVbox, hbox, 1, 1) self.withHbox = hbox ### self.textInput2 = TextFrame() pack(self.textVbox, self.textInput2, 1, 1) #### pack(self.vbox, self.textVbox, 1, 1) #### hbox = gtk.HBox() self.timeZoneChangeCombo = gtk.ComboBoxText() self.timeZoneChangeCombo.append_text('----') self.timeZoneChangeCombo.append_text(_('Change')) self.timeZoneChangeCombo.append_text(_('Change if empty')) pack(hbox, self.timeZoneChangeCombo) pack(hbox, gtk.Label(' ')) self.timeZoneInput = TimeZoneComboBoxEntry() pack(hbox, self.timeZoneInput) pack(hbox, gtk.Label(''), 1, 1) pack(self.vbox, hbox, 1, 1) self.timeZoneHbox = hbox #### self.vbox.show_all() self.iconRadio.set_active(True) self.iconChangeCombo.set_active(0) self.textChangeCombo.set_active(0) self.firstRadioChanged() #### window_set_size_aspect(self, 1.6)
class WidgetClass(gtk.VBox): def __init__(self, event): from scal3.ui_gtk.mywidgets.cal_type_combo import CalTypeCombo from scal3.ui_gtk.mywidgets.tz_combo import TimeZoneComboBoxEntry gtk.VBox.__init__(self) self.event = event ########### hbox = gtk.HBox() ### pack(hbox, gtk.Label(_('Calendar Type'))) combo = CalTypeCombo() combo.set_active(calTypes.primary)## overwritten in updateWidget() pack(hbox, combo) pack(hbox, gtk.Label(''), 1, 1) self.modeCombo = combo ### pack(self, hbox) ########### if event.isAllDay: self.tzCheck = None else: hbox = gtk.HBox() self.tzCheck = gtk.CheckButton(_('Time Zone')) set_tooltip(self.tzCheck, _('For input times of event')) pack(hbox, self.tzCheck) combo = TimeZoneComboBoxEntry() pack(hbox, combo) pack(hbox, gtk.Label(''), 1, 1) self.tzCombo = combo pack(self, hbox) self.tzCheck.connect('clicked', lambda check: self.tzCombo.set_sensitive(check.get_active())) ########### hbox = gtk.HBox() pack(hbox, gtk.Label(_('Summary'))) self.summaryEntry = gtk.Entry() pack(hbox, self.summaryEntry, 1, 1) pack(self, hbox) ########### self.descriptionInput = TextFrame() swin = gtk.ScrolledWindow() swin.set_policy(gtk.PolicyType.AUTOMATIC, gtk.PolicyType.AUTOMATIC) swin.add_with_viewport(self.descriptionInput) ### exp = gtk.Expander() exp.set_expanded(True) exp.set_label(_('Description')) exp.add(swin) pack(self, exp, 1, 1) ########### hbox = gtk.HBox() pack(hbox, gtk.Label(_('Icon')+':')) self.iconSelect = IconSelectButton() pack(hbox, self.iconSelect) pack(hbox, gtk.Label(''), 1, 1) pack(self, hbox) ########## self.modeCombo.connect('changed', self.modeComboChanged)## right place? before updateWidget? FIXME def focusSummary(self): self.summaryEntry.select_region(0, -1) self.summaryEntry.grab_focus() def updateWidget(self): #print('updateWidget', self.event.files) self.modeCombo.set_active(self.event.mode) if self.tzCheck: self.tzCheck.set_active(self.event.timeZoneEnable) self.tzCombo.set_sensitive(self.event.timeZoneEnable) self.tzCombo.set_text(self.event.timeZone) self.summaryEntry.set_text(self.event.summary) self.descriptionInput.set_text(self.event.description) self.iconSelect.set_filename(self.event.icon) ##### for attr in ('notificationBox', 'filesBox'): try: getattr(self, attr).updateWidget() except AttributeError: pass ##### self.modeComboChanged() def updateVars(self): self.event.mode = self.modeCombo.get_active() if self.tzCheck: self.event.timeZoneEnable = self.tzCheck.get_active() self.event.timeZone = self.tzCombo.get_text() else: self.event.timeZoneEnable = False ## FIXME self.event.summary = self.summaryEntry.get_text() self.event.description = self.descriptionInput.get_text() self.event.icon = self.iconSelect.get_filename() ##### for attr in ('notificationBox', 'filesBox'): try: getattr(self, attr).updateVars() except AttributeError: pass ##### def modeComboChanged(self, obj=None):## FIXME pass
def __init__(self, group): from scal3.ui_gtk.mywidgets.cal_type_combo import CalTypeCombo from scal3.ui_gtk.mywidgets.tz_combo import TimeZoneComboBoxEntry gtk.VBox.__init__(self) self.group = group ######## self.sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL) ##### hbox = gtk.HBox() label = gtk.Label(_("Title")) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.titleEntry = gtk.Entry() pack(hbox, self.titleEntry, 1, 1) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Color")) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.colorButton = MyColorButton() self.colorButton.set_use_alpha(True) ## FIXME pack(hbox, self.colorButton) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Default Icon"))## FIXME label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.iconSelect = IconSelectButton() pack(hbox, self.iconSelect) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Default Calendar Type")) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) combo = CalTypeCombo() pack(hbox, combo) pack(hbox, gtk.Label(""), 1, 1) self.modeCombo = combo pack(self, hbox) ##### hbox = gtk.HBox() self.tzCheck = gtk.CheckButton(_("Default Time Zone")) pack(hbox, self.tzCheck) self.sizeGroup.add_widget(self.tzCheck) combo = TimeZoneComboBoxEntry() pack(hbox, combo) pack(hbox, gtk.Label(""), 1, 1) self.tzCombo = combo pack(self, hbox) self.tzCheck.connect( "clicked", lambda check: self.tzCombo.set_sensitive(check.get_active()), ) ##### hbox = gtk.HBox() label = gtk.Label(_("Show in Calendar")) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.showInDCalCheck = gtk.CheckButton(_("Day")) self.showInWCalCheck = gtk.CheckButton(_("Week")) self.showInMCalCheck = gtk.CheckButton(_("Month")) pack(hbox, self.showInDCalCheck) pack(hbox, gtk.Label(""), 1, 1) pack(hbox, self.showInWCalCheck) pack(hbox, gtk.Label(""), 1, 1) pack(hbox, self.showInMCalCheck) pack(hbox, gtk.Label(""), 1, 1) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Show in")) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.showInTimeLineCheck = gtk.CheckButton(_("Time Line")) self.showInStatusIconCheck = gtk.CheckButton(_("Status Icon")) pack(hbox, self.showInTimeLineCheck) pack(hbox, gtk.Label(""), 1, 1) pack(hbox, self.showInStatusIconCheck) pack(hbox, gtk.Label(""), 1, 1) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Event Cache Size")) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.cacheSizeSpin = IntSpinButton(0, 9999) pack(hbox, self.cacheSizeSpin) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Event Text Seperator")) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.sepInput = TextFrame() pack(hbox, self.sepInput, 1, 1) pack(self, hbox) set_tooltip(hbox, _( "Using to seperate Summary and Description when displaying event" )) ##### #hbox = gtk.HBox() #label = gtk.Label(_("Show Full Event Description")) #label.set_alignment(0, 0.5) #pack(hbox, label) #self.sizeGroup.add_widget(label) #self.showFullEventDescCheck = gtk.CheckButton("") #pack(hbox, self.showFullEventDescCheck, 1, 1) #pack(self, hbox) ### self.modeCombo.connect( "changed", self.modeComboChanged, ) # right place? before updateWidget? FIXME
def __init__(self, group): from scal3.ui_gtk.mywidgets.cal_type_combo import CalTypeCombo from scal3.ui_gtk.mywidgets.tz_combo import TimeZoneComboBoxEntry gtk.VBox.__init__(self) self.group = group ######## self.sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL) ##### hbox = gtk.HBox() label = gtk.Label(_("Title")) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.titleEntry = gtk.Entry() pack(hbox, self.titleEntry, 1, 1) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Color")) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.colorButton = MyColorButton() self.colorButton.set_use_alpha(True) ## FIXME pack(hbox, self.colorButton) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Default Icon")) ## FIXME label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.iconSelect = IconSelectButton() pack(hbox, self.iconSelect) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Default Calendar Type")) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) combo = CalTypeCombo() pack(hbox, combo) pack(hbox, gtk.Label(""), 1, 1) self.modeCombo = combo pack(self, hbox) ##### hbox = gtk.HBox() self.tzCheck = gtk.CheckButton(_("Default Time Zone")) pack(hbox, self.tzCheck) self.sizeGroup.add_widget(self.tzCheck) combo = TimeZoneComboBoxEntry() pack(hbox, combo) pack(hbox, gtk.Label(""), 1, 1) self.tzCombo = combo pack(self, hbox) self.tzCheck.connect( "clicked", lambda check: self.tzCombo.set_sensitive(check.get_active()), ) ##### hbox = gtk.HBox() label = gtk.Label(_("Show in Calendar")) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.showInDCalCheck = gtk.CheckButton(_("Day")) self.showInWCalCheck = gtk.CheckButton(_("Week")) self.showInMCalCheck = gtk.CheckButton(_("Month")) pack(hbox, self.showInDCalCheck) pack(hbox, gtk.Label(""), 1, 1) pack(hbox, self.showInWCalCheck) pack(hbox, gtk.Label(""), 1, 1) pack(hbox, self.showInMCalCheck) pack(hbox, gtk.Label(""), 1, 1) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Show in")) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.showInTimeLineCheck = gtk.CheckButton(_("Time Line")) self.showInStatusIconCheck = gtk.CheckButton(_("Status Icon")) pack(hbox, self.showInTimeLineCheck) pack(hbox, gtk.Label(""), 1, 1) pack(hbox, self.showInStatusIconCheck) pack(hbox, gtk.Label(""), 1, 1) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Event Cache Size")) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.cacheSizeSpin = IntSpinButton(0, 9999) pack(hbox, self.cacheSizeSpin) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(label=_("Event Text Separator")) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.sepInput = TextFrame() pack(hbox, self.sepInput, 1, 1) pack(self, hbox) set_tooltip( hbox, _("Using to seperate Summary and Description when displaying event" )) ##### #hbox = gtk.HBox() #label = gtk.Label(_("Show Full Event Description")) #label.set_alignment(0, 0.5) #pack(hbox, label) #self.sizeGroup.add_widget(label) #self.showFullEventDescCheck = gtk.CheckButton("") #pack(hbox, self.showFullEventDescCheck, 1, 1) #pack(self, hbox) ### self.modeCombo.connect( "changed", self.modeComboChanged, ) # right place? before updateWidget? FIXME
def __init__(self, group): from scal3.ui_gtk.mywidgets.cal_type_combo import CalTypeCombo gtk.VBox.__init__(self) self.group = group ######## self.sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL) ##### hbox = gtk.HBox() label = gtk.Label(_('Title')) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.titleEntry = gtk.Entry() pack(hbox, self.titleEntry, 1, 1) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Color')) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.colorButton = MyColorButton() self.colorButton.set_use_alpha(True) ## FIXME pack(hbox, self.colorButton) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Default Icon'))## FIXME label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.iconSelect = IconSelectButton() pack(hbox, self.iconSelect) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Default Calendar Type')) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) combo = CalTypeCombo() pack(hbox, combo) pack(hbox, gtk.Label(''), 1, 1) self.modeCombo = combo pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Show in Calendar')) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.showInDCalCheck = gtk.CheckButton(_('Day')) self.showInWCalCheck = gtk.CheckButton(_('Week')) self.showInMCalCheck = gtk.CheckButton(_('Month')) pack(hbox, self.showInDCalCheck) pack(hbox, gtk.Label(''), 1, 1) pack(hbox, self.showInWCalCheck) pack(hbox, gtk.Label(''), 1, 1) pack(hbox, self.showInMCalCheck) pack(hbox, gtk.Label(''), 1, 1) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Show in')) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.showInTimeLineCheck = gtk.CheckButton(_('Time Line')) self.showInStatusIconCheck = gtk.CheckButton(_('Status Icon')) pack(hbox, self.showInTimeLineCheck) pack(hbox, gtk.Label(''), 1, 1) pack(hbox, self.showInStatusIconCheck) pack(hbox, gtk.Label(''), 1, 1) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Event Cache Size')) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.cacheSizeSpin = IntSpinButton(0, 9999) pack(hbox, self.cacheSizeSpin) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Event Text Seperator')) label.set_alignment(0, 0.5) pack(hbox, label) self.sizeGroup.add_widget(label) self.sepInput = TextFrame() pack(hbox, self.sepInput, 1, 1) pack(self, hbox) set_tooltip(hbox, _('Using to seperate Summary and Description when displaying event')) ##### #hbox = gtk.HBox() #label = gtk.Label(_('Show Full Event Description')) #label.set_alignment(0, 0.5) #pack(hbox, label) #self.sizeGroup.add_widget(label) #self.showFullEventDescCheck = gtk.CheckButton('') #pack(hbox, self.showFullEventDescCheck, 1, 1) #pack(self, hbox) ### self.modeCombo.connect('changed', self.modeComboChanged)## right place? before updateWidget? FIXME
def __init__(self, event): ## FIXME gtk.VBox.__init__(self) self.event = event assert event.parent.name == 'universityTerm' ## FIXME sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL) ##### if not event.parent.courses: showError(event.parent.noCourseError, ui.eventManDialog) raise RuntimeError('No courses added') self.courseIds = [] self.courseNames = [] combo = gtk.ComboBoxText() for course in event.parent.courses: self.courseIds.append(course[0]) self.courseNames.append(course[1]) combo.append_text(course[1]) #combo.connect('changed', self.updateSummary) self.courseCombo = combo ## hbox = gtk.HBox() label = gtk.Label(_('Course')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) pack(hbox, combo) ## pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Week')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.weekNumModeCombo = WeekNumModeWidgetClass(event['weekNumMode']) pack(hbox, self.weekNumModeCombo) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Week Day')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.weekDayCombo = WeekDayComboBox() #self.weekDayCombo.connect('changed', self.updateSummary) pack(hbox, self.weekDayCombo) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Time')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) ## self.dayTimeStartCombo = HourMinuteButtonOption() self.dayTimeEndCombo = HourMinuteButtonOption() ## #self.dayTimeStartCombo.get_child().set_direction(gtk.TextDirection.LTR) #self.dayTimeEndCombo.get_child().set_direction(gtk.TextDirection.LTR) ## pack(hbox, self.dayTimeStartCombo) pack(hbox, gtk.Label(' ' + _('to') + ' ')) pack(hbox, self.dayTimeEndCombo) pack(self, hbox) ########### #hbox = gtk.HBox() #label = gtk.Label(_('Summary')) #label.set_alignment(0, 0.5) #sizeGroup.add_widget(label) #pack(hbox, label) #self.summaryEntry = gtk.Entry() #pack(hbox, self.summaryEntry, 1, 1) #pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Description')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.descriptionInput = TextFrame() pack(hbox, self.descriptionInput, 1, 1) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Icon')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.iconSelect = IconSelectButton() #print(join(pixDir, self.icon)) pack(hbox, self.iconSelect) pack(hbox, gtk.Label(''), 1, 1) pack(self, hbox) ###### self.notificationBox = common.NotificationBox(event) pack(self, self.notificationBox) ###### #self.filesBox = common.FilesBox(self.event) #pack(self, self.filesBox) ###### self.courseCombo.set_active(0)
class WidgetClass(gtk.VBox): def __init__(self, event):## FIXME gtk.VBox.__init__(self) self.event = event assert event.parent.name == 'universityTerm' ## FIXME sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL) ##### if not event.parent.courses: showError(event.parent.noCourseError, ui.eventManDialog) raise RuntimeError('No courses added') self.courseIds = [] self.courseNames = [] combo = gtk.ComboBoxText() for course in event.parent.courses: self.courseIds.append(course[0]) self.courseNames.append(course[1]) combo.append_text(course[1]) #combo.connect('changed', self.updateSummary) self.courseCombo = combo ## hbox = gtk.HBox() label = gtk.Label(_('Course')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) pack(hbox, combo) ## pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Week')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.weekNumModeCombo = WeekNumModeWidgetClass(event['weekNumMode']) pack(hbox, self.weekNumModeCombo) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Week Day')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.weekDayCombo = WeekDayComboBox() #self.weekDayCombo.connect('changed', self.updateSummary) pack(hbox, self.weekDayCombo) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Time')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) ## self.dayTimeStartCombo = HourMinuteButtonOption() self.dayTimeEndCombo = HourMinuteButtonOption() ## #self.dayTimeStartCombo.get_child().set_direction(gtk.TextDirection.LTR) #self.dayTimeEndCombo.get_child().set_direction(gtk.TextDirection.LTR) ## pack(hbox, self.dayTimeStartCombo) pack(hbox, gtk.Label(' ' + _('to') + ' ')) pack(hbox, self.dayTimeEndCombo) pack(self, hbox) ########### #hbox = gtk.HBox() #label = gtk.Label(_('Summary')) #label.set_alignment(0, 0.5) #sizeGroup.add_widget(label) #pack(hbox, label) #self.summaryEntry = gtk.Entry() #pack(hbox, self.summaryEntry, 1, 1) #pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Description')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.descriptionInput = TextFrame() pack(hbox, self.descriptionInput, 1, 1) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_('Icon')) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.iconSelect = IconSelectButton() #print(join(pixDir, self.icon)) pack(hbox, self.iconSelect) pack(hbox, gtk.Label(''), 1, 1) pack(self, hbox) ###### self.notificationBox = common.NotificationBox(event) pack(self, self.notificationBox) ###### #self.filesBox = common.FilesBox(self.event) #pack(self, self.filesBox) ###### self.courseCombo.set_active(0) #self.updateSummary() def focusSummary(self): pass #def updateSummary(self, widget=None): # courseIndex = self.courseCombo.get_active() # summary = _('%s Class')%self.courseNames[courseIndex] + ' (' + self.weekDayCombo.get_active_text() + ')' # self.summaryEntry.set_text(summary) # self.event.summary = summary def updateWidget(self):## FIXME if self.event.courseId is None: pass else: self.courseCombo.set_active(self.courseIds.index(self.event.courseId)) ## self.weekNumModeCombo.updateWidget() weekDayList = self.event['weekDay'].weekDayList if len(weekDayList)==1: self.weekDayCombo.setValue(weekDayList[0])## FIXME else: self.weekDayCombo.set_active(0) ## self.dayTimeStartCombo.clear_history() self.dayTimeEndCombo.clear_history() for hm in reversed(self.event.parent.classTimeBounds): for combo in (self.dayTimeStartCombo, self.dayTimeEndCombo): combo.set_value(hm) combo.add_history() timeRangeRule = self.event['dayTimeRange'] self.dayTimeStartCombo.set_value(timeRangeRule.dayTimeStart) self.dayTimeEndCombo.set_value(timeRangeRule.dayTimeEnd) #### #self.summaryEntry.set_text(self.event.summary) self.descriptionInput.set_text(self.event.description) self.iconSelect.set_filename(self.event.icon) #### self.notificationBox.updateWidget() #### #self.filesBox.updateWidget() def updateVars(self):## FIXME courseIndex = self.courseCombo.get_active() if courseIndex is None: showError(_('No course is selected'), ui.eventManDialog) raise RuntimeError('No courses is selected') else: self.event.courseId = self.courseIds[courseIndex] ## self.weekNumModeCombo.updateVars() self.event['weekDay'].weekDayList = [self.weekDayCombo.getValue()]## FIXME ## self.event['dayTimeRange'].setRange( self.dayTimeStartCombo.get_value(), self.dayTimeEndCombo.get_value(), ) #### #self.event.summary = self.summaryEntry.get_text() self.event.description = self.descriptionInput.get_text() self.event.icon = self.iconSelect.get_filename() #### self.notificationBox.updateVars() self.event.updateSummary()
class EventsBulkEditDialog(gtk.Dialog): def __init__(self, container, **kwargs): from scal3.ui_gtk.mywidgets.tz_combo import TimeZoneComboBoxEntry self._container = container gtk.Dialog.__init__(self, **kwargs) self.set_title(_("Bulk Edit Events")) #### dialog_add_button( self, gtk.STOCK_CANCEL, _("_Cancel"), gtk.ResponseType.CANCEL, ) dialog_add_button( self, gtk.STOCK_OK, _("_OK"), gtk.ResponseType.OK, ) ## self.connect("response", lambda w, e: self.hide()) #### try: title = container.title except AttributeError: event_count = len(container) msg = _( "Here you are going to modify these %s events at once." ) % event_count else: msg = _( "Here you are going to modify all events " "inside group \"%s\" at once." ) % title msg += " " msg += _( "You better make a backup from your events before doing this." + " Just right click on group and select \"Export\"" + " (or a full backup: menu File -> Export)" ) msg += "\n\n" label = gtk.Label(msg) label.set_line_wrap(True) pack(self.vbox, label) #### hbox = gtk.HBox() self.iconRadio = gtk.RadioButton(label=_("Icon")) pack(hbox, self.iconRadio, 1, 1) self.summaryRadio = gtk.RadioButton( label=_("Summary"), group=self.iconRadio, ) pack(hbox, self.summaryRadio, 1, 1) self.descriptionRadio = gtk.RadioButton( label=_("Description"), group=self.iconRadio, ) pack(hbox, self.descriptionRadio, 1, 1) self.timeZoneRadio = gtk.RadioButton( label=_("Time Zone"), group=self.iconRadio, ) pack(hbox, self.timeZoneRadio, 1, 1) pack(self.vbox, hbox) ### self.iconRadio.connect("clicked", self.firstRadioChanged) self.summaryRadio.connect("clicked", self.firstRadioChanged) self.descriptionRadio.connect("clicked", self.firstRadioChanged) self.timeZoneRadio.connect("clicked", self.firstRadioChanged) #### hbox = gtk.HBox() self.iconChangeCombo = gtk.ComboBoxText() self.iconChangeCombo.append_text("----") self.iconChangeCombo.append_text(_("Change")) self.iconChangeCombo.append_text(_("Change if empty")) pack(hbox, self.iconChangeCombo) pack(hbox, gtk.Label(" ")) self.iconSelect = IconSelectButton() try: self.iconSelect.set_filename(container.icon) except AttributeError: pass pack(hbox, self.iconSelect) pack(hbox, gtk.Label(""), 1, 1) pack(self.vbox, hbox) self.iconHbox = hbox #### self.textVbox = gtk.VBox() ### hbox = gtk.HBox() self.textChangeCombo = gtk.ComboBoxText() self.textChangeCombo.append_text("----") self.textChangeCombo.append_text(_("Add to beginning")) self.textChangeCombo.append_text(_("Add to end")) self.textChangeCombo.append_text(_("Replace text")) self.textChangeCombo.connect("changed", self.textChangeComboChanged) pack(hbox, self.textChangeCombo) pack(hbox, gtk.Label(""), 1, 1) ## CheckButton(_("Regexp")) pack(self.textVbox, hbox) ### self.textInput1 = TextFrame() pack(self.textVbox, self.textInput1, 1, 1) ### hbox = gtk.HBox() pack(hbox, gtk.Label(_("with"))) pack(hbox, gtk.Label(""), 1, 1) pack(self.textVbox, hbox, 1, 1) self.withHbox = hbox ### self.textInput2 = TextFrame() pack(self.textVbox, self.textInput2, 1, 1) #### pack(self.vbox, self.textVbox, 1, 1) #### hbox = gtk.HBox() self.timeZoneChangeCombo = gtk.ComboBoxText() self.timeZoneChangeCombo.append_text("----") self.timeZoneChangeCombo.append_text(_("Change")) self.timeZoneChangeCombo.append_text(_("Change if empty")) pack(hbox, self.timeZoneChangeCombo) pack(hbox, gtk.Label(" ")) self.timeZoneInput = TimeZoneComboBoxEntry() pack(hbox, self.timeZoneInput) pack(hbox, gtk.Label(""), 1, 1) pack(self.vbox, hbox, 1, 1) self.timeZoneHbox = hbox #### self.vbox.show_all() self.iconRadio.set_active(True) self.iconChangeCombo.set_active(0) self.textChangeCombo.set_active(0) self.firstRadioChanged() #### window_set_size_aspect(self, 1.6) def firstRadioChanged(self, w=None): if self.iconRadio.get_active(): self.iconHbox.show() self.textVbox.hide() self.timeZoneHbox.hide() elif self.timeZoneRadio.get_active(): self.iconHbox.hide() self.textVbox.hide() self.timeZoneHbox.show() elif ( self.summaryRadio.get_active() or self.descriptionRadio.get_active() ): self.iconHbox.hide() self.textChangeComboChanged() self.timeZoneHbox.hide() def textChangeComboChanged(self, w=None): self.textVbox.show_all() chType = self.textChangeCombo.get_active() if chType == 0: self.textInput1.hide() self.withHbox.hide() self.textInput2.hide() elif chType in (1, 2): self.withHbox.hide() self.textInput2.hide() def doAction(self): container = self._container if self.iconRadio.get_active(): chType = self.iconChangeCombo.get_active() if chType != 0: icon = self.iconSelect.get_filename() for event in container: if not (chType == 2 and event.icon): event.icon = icon event.afterModify() event.save() elif self.timeZoneRadio.get_active(): chType = self.timeZoneChangeCombo.get_active() timeZone = self.timeZoneInput.get_text() if chType != 0: try: natz.gettz(timeZone) except: myRaise("Invalid Time Zone \"%s\"" % timeZone) else: for event in container: if not (chType == 2 and event.timeZone): event.timeZone = timeZone event.afterModify() event.save() else: chType = self.textChangeCombo.get_active() if chType != 0: text1 = self.textInput1.get_text() text2 = self.textInput2.get_text() if self.summaryRadio.get_active(): for event in container: if chType == 1: event.summary = text1 + event.summary elif chType == 2: event.summary = event.summary + text1 elif chType == 3: event.summary = event.summary.replace(text1, text2) event.afterModify() event.save() elif self.descriptionRadio.get_active(): for event in container: if chType == 1: event.description = text1 + event.description elif chType == 2: event.description = event.description + text1 elif chType == 3: event.description = event.description.replace(text1, text2) event.afterModify() event.save()
class WidgetClass(gtk.VBox): def __init__(self, event):## FIXME gtk.VBox.__init__(self) self.event = event assert event.parent.name == "universityTerm" ## FIXME sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL) ##### if not event.parent.courses: showError(event.parent.noCourseError, ui.eventManDialog) raise RuntimeError("No courses added") self.courseIds = [] self.courseNames = [] combo = gtk.ComboBoxText() for course in event.parent.courses: self.courseIds.append(course[0]) self.courseNames.append(course[1]) combo.append_text(course[1]) #combo.connect("changed", self.updateSummary) self.courseCombo = combo ## hbox = gtk.HBox() label = gtk.Label(_("Course")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) pack(hbox, combo) ## pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Week")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) weekNumModeRule, ok = event["weekNumMode"] if not ok: raise RuntimeError("no weekNumMode rule") self.weekNumModeCombo = WeekNumModeWidgetClass(weekNumModeRule) pack(hbox, self.weekNumModeCombo) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Week Day")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.weekDayCombo = WeekDayComboBox() #self.weekDayCombo.connect("changed", self.updateSummary) pack(hbox, self.weekDayCombo) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Time")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) ## self.dayTimeStartCombo = HourMinuteButtonOption() self.dayTimeEndCombo = HourMinuteButtonOption() ## #self.dayTimeStartCombo.get_child().set_direction(gtk.TextDirection.LTR) #self.dayTimeEndCombo.get_child().set_direction(gtk.TextDirection.LTR) ## pack(hbox, self.dayTimeStartCombo) pack(hbox, gtk.Label(" " + _("to") + " ")) pack(hbox, self.dayTimeEndCombo) pack(self, hbox) ########### #hbox = gtk.HBox() #label = gtk.Label(_("Summary")) #label.set_alignment(0, 0.5) #sizeGroup.add_widget(label) #pack(hbox, label) #self.summaryEntry = gtk.Entry() #pack(hbox, self.summaryEntry, 1, 1) #pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Description")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.descriptionInput = TextFrame() pack(hbox, self.descriptionInput, 1, 1) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Icon")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.iconSelect = IconSelectButton() #print(join(pixDir, self.icon)) pack(hbox, self.iconSelect) pack(hbox, gtk.Label(""), 1, 1) pack(self, hbox) ###### self.notificationBox = common.NotificationBox(event) pack(self, self.notificationBox) ###### #self.filesBox = common.FilesBox(self.event) #pack(self, self.filesBox) ###### self.courseCombo.set_active(0) #self.updateSummary() def focusSummary(self): pass #def updateSummary(self, widget=None): # courseIndex = self.courseCombo.get_active() # summary = ( # _("%s Class")%self.courseNames[courseIndex] + # " (" + # self.weekDayCombo.get_active_text() + # ")" # ) # self.summaryEntry.set_text(summary) # self.event.summary = summary def updateWidget(self):## FIXME if self.event.courseId is None: pass else: self.courseCombo.set_active(self.courseIds.index(self.event.courseId)) ## self.weekNumModeCombo.updateWidget() weekDayRule, ok = self.event["weekDay"] if not ok: raise RuntimeError("no weekDay rule") weekDayList = weekDayRule.weekDayList if len(weekDayList) == 1: self.weekDayCombo.setValue(weekDayList[0]) # FIXME else: self.weekDayCombo.set_active(0) ## self.dayTimeStartCombo.clear_history() self.dayTimeEndCombo.clear_history() for hm in reversed(self.event.parent.classTimeBounds): for combo in (self.dayTimeStartCombo, self.dayTimeEndCombo): combo.set_value(hm) combo.add_history() timeRangeRule, ok = self.event["dayTimeRange"] if not ok: raise RuntimeError("no dayTimeRange rule") self.dayTimeStartCombo.set_value(timeRangeRule.dayTimeStart) self.dayTimeEndCombo.set_value(timeRangeRule.dayTimeEnd) #### #self.summaryEntry.set_text(self.event.summary) self.descriptionInput.set_text(self.event.description) self.iconSelect.set_filename(self.event.icon) #### self.notificationBox.updateWidget() #### #self.filesBox.updateWidget() def updateVars(self):## FIXME courseIndex = self.courseCombo.get_active() if courseIndex is None: showError(_("No course is selected"), ui.eventManDialog) raise RuntimeError("No courses is selected") else: self.event.courseId = self.courseIds[courseIndex] ## self.weekNumModeCombo.updateVars() ## weekDay, ok = self.event["weekDay"] if not ok: raise RuntimeError("no weekDay rule") weekDay.weekDayList = [self.weekDayCombo.getValue()]## FIXME ## dayTimeRange, ok = self.event["dayTimeRange"] if not ok: raise RuntimeError("no dayTimeRange rule") dayTimeRange.setRange( self.dayTimeStartCombo.get_value(), self.dayTimeEndCombo.get_value(), ) #### #self.event.summary = self.summaryEntry.get_text() self.event.description = self.descriptionInput.get_text() self.event.icon = self.iconSelect.get_filename() #### self.notificationBox.updateVars() self.event.updateSummary()
def __init__(self, showDesc=False): gtk.Window.__init__(self) self.maximize() self.initVars() ud.windowList.appendItem(self) ### self.set_title(_("Search Events")) self.connect("delete-event", self.closed) self.connect("key-press-event", self.keyPress) ### self.vbox = gtk.VBox() self.add(self.vbox) ###### frame = TextFrame() frame.set_label(_("Text")) frame.set_border_width(5) pack(self.vbox, frame) self.textInput = frame ## hbox = gtk.HBox() self.textCSensCheck = gtk.CheckButton(_("Case Sensitive")) self.textCSensCheck.set_active(False) ## FIXME pack(hbox, self.textCSensCheck) pack(self.vbox, hbox) ###### jd = core.getCurrentJd() year, month, day = jd_to_primary(jd) ###### hbox = gtk.HBox() frame = gtk.Frame() frame.set_label(_("Time")) frame.set_border_width(5) vboxIn = gtk.VBox() sgroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL) #### hboxIn = gtk.HBox() ## self.timeFromCheck = gtk.CheckButton(_("From")) sgroup.add_widget(self.timeFromCheck) pack(hboxIn, self.timeFromCheck) pack(hboxIn, gtk.Label(" ")) ## self.timeFromInput = DateTimeButton() self.timeFromInput.set_value(((year, 1, 1), (0, 0, 0))) pack(hboxIn, self.timeFromInput) ## pack(vboxIn, hboxIn) #### hboxIn = gtk.HBox() ## self.timeToCheck = gtk.CheckButton(_("To")) sgroup.add_widget(self.timeToCheck) pack(hboxIn, self.timeToCheck) pack(hboxIn, gtk.Label(" ")) ## self.timeToInput = DateTimeButton() self.timeToInput.set_value(( (year + 1, 1, 1), (0, 0, 0), )) pack(hboxIn, self.timeToInput) ## pack(vboxIn, hboxIn) ## self.timeFromCheck.connect("clicked", self.updateTimeFromSensitive) self.timeToCheck.connect("clicked", self.updateTimeToSensitive) self.updateTimeFromSensitive() self.updateTimeToSensitive() #### vboxIn.set_border_width(5) frame.add(vboxIn) pack(hbox, frame) pack(hbox, gtk.Label(""), 1, 1) pack(self.vbox, hbox) ###### hbox = gtk.HBox() hbox.set_border_width(5) self.modifiedFromCheck = gtk.CheckButton(_("Modified From")) pack(hbox, self.modifiedFromCheck) pack(hbox, gtk.Label(" ")) self.modifiedFromInput = DateTimeButton() self.modifiedFromInput.set_value(((year, 1, 1), (0, 0, 0))) pack(hbox, self.modifiedFromInput) ## self.modifiedFromCheck.connect("clicked", self.updateModifiedFromSensitive) self.updateModifiedFromSensitive() pack(self.vbox, hbox) ###### hbox = gtk.HBox() hbox.set_border_width(5) self.typeCheck = gtk.CheckButton(_("Event Type")) pack(hbox, self.typeCheck) pack(hbox, gtk.Label(" ")) ## combo = gtk.ComboBoxText() for cls in event_lib.classes.event: combo.append_text(cls.desc) combo.set_active(0) pack(hbox, combo) self.typeCombo = combo ## self.typeCheck.connect("clicked", self.updateTypeSensitive) self.updateTypeSensitive() pack(self.vbox, hbox) ###### hbox = gtk.HBox() hbox.set_border_width(5) self.groupCheck = gtk.CheckButton(_("Group")) pack(hbox, self.groupCheck) pack(hbox, gtk.Label(" ")) self.groupCombo = SingleGroupComboBox() pack(hbox, self.groupCombo) ## self.groupCheck.connect("clicked", self.updateGroupSensitive) self.updateGroupSensitive() pack(self.vbox, hbox) ###### bbox = gtk.HButtonBox() bbox.set_layout(gtk.ButtonBoxStyle.START) bbox.set_border_width(5) searchButton = gtk.Button() searchButton.set_label(_("_Search")) searchButton.set_image( gtk.Image.new_from_stock( gtk.STOCK_FIND, gtk.IconSize.BUTTON, )) searchButton.connect("clicked", self.searchClicked) bbox.add(searchButton) pack(self.vbox, bbox) ###### treev = gtk.TreeView() trees = gtk.TreeStore( int, # gid int, # eid str, # group_name GdkPixbuf.Pixbuf, # icon str, # summary str, # description ) ### treev.set_model(trees) treev.connect("button-press-event", self.treevButtonPress) treev.connect("row-activated", self.rowActivated) treev.connect("key-press-event", self.treevKeyPress) treev.set_headers_clickable(True) ### self.colGroup = gtk.TreeViewColumn( _("Group"), gtk.CellRendererText(), text=2, ) self.colGroup.set_resizable(True) self.colGroup.set_sort_column_id(2) self.colGroup.set_property("expand", False) treev.append_column(self.colGroup) ### self.colIcon = gtk.TreeViewColumn() cell = gtk.CellRendererPixbuf() pack(self.colIcon, cell) self.colIcon.add_attribute(cell, "pixbuf", 3) #self.colIcon.set_sort_column_id(3) # FIXME self.colIcon.set_property("expand", False) treev.append_column(self.colIcon) ### self.colSummary = gtk.TreeViewColumn( _("Summary"), gtk.CellRendererText(), text=4, ) self.colSummary.set_resizable(True) self.colSummary.set_sort_column_id(4) self.colSummary.set_property("expand", True) # FIXME treev.append_column(self.colSummary) ### self.colDesc = gtk.TreeViewColumn( _("Description"), gtk.CellRendererText(), text=5, ) self.colDesc.set_sort_column_id(5) self.colDesc.set_visible(showDesc) self.colDesc.set_property("expand", True) # FIXME treev.append_column(self.colDesc) ### trees.set_sort_func(2, self.sort_func_group) ###### swin = gtk.ScrolledWindow() swin.set_policy(gtk.PolicyType.AUTOMATIC, gtk.PolicyType.AUTOMATIC) swin.add(treev) #### vbox = gtk.VBox(spacing=5) vbox.set_border_width(5) ### topHbox = gtk.HBox() self.resultLabel = gtk.Label("") pack(topHbox, self.resultLabel) pack(topHbox, gtk.Label(""), 1, 1) pack(vbox, topHbox) #### columnBox = gtk.HBox(spacing=5) pack(columnBox, gtk.Label(_("Columns") + ": ")) ## check = gtk.CheckButton(_("Group")) check.set_active(True) check.connect( "clicked", lambda w: self.colGroup.set_visible(w.get_active()), ) pack(columnBox, check) ## check = gtk.CheckButton(_("Icon")) check.set_active(True) check.connect( "clicked", lambda w: self.colIcon.set_visible(w.get_active()), ) pack(columnBox, check) ## check = gtk.CheckButton(_("Summary")) check.set_active(True) check.connect( "clicked", lambda w: self.colSummary.set_visible(w.get_active()), ) pack(columnBox, check) ## check = gtk.CheckButton(_("Description")) check.set_active(showDesc) check.connect( "clicked", lambda w: self.colDesc.set_visible(w.get_active()), ) pack(columnBox, check) ## pack(vbox, columnBox) #### pack(vbox, swin, 1, 1) ## frame = gtk.Frame() frame.set_label(_("Search Results")) frame.set_border_width(10) frame.add(vbox) ## pack(self.vbox, frame, 1, 1) ### bbox2 = gtk.HButtonBox() bbox2.set_layout(gtk.ButtonBoxStyle.END) bbox2.set_border_width(10) closeButton = gtk.Button() closeButton.set_label(_("_Close")) closeButton.set_image( gtk.Image.new_from_stock( gtk.STOCK_CLOSE, gtk.IconSize.BUTTON, )) closeButton.connect("clicked", self.closed) bbox2.add(closeButton) pack(self.vbox, bbox2) ###### self.treev = treev self.trees = trees self.vbox.show_all()
def __init__(self, event):## FIXME gtk.VBox.__init__(self) self.event = event assert event.parent.name == "universityTerm" ## FIXME sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL) ##### if not event.parent.courses: showError(event.parent.noCourseError, ui.eventManDialog) raise RuntimeError("No courses added") self.courseIds = [] self.courseNames = [] combo = gtk.ComboBoxText() for course in event.parent.courses: self.courseIds.append(course[0]) self.courseNames.append(course[1]) combo.append_text(course[1]) #combo.connect("changed", self.updateSummary) self.courseCombo = combo ## hbox = gtk.HBox() label = gtk.Label(_("Course")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) pack(hbox, combo) ## pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Week")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) weekNumModeRule, ok = event["weekNumMode"] if not ok: raise RuntimeError("no weekNumMode rule") self.weekNumModeCombo = WeekNumModeWidgetClass(weekNumModeRule) pack(hbox, self.weekNumModeCombo) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Week Day")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.weekDayCombo = WeekDayComboBox() #self.weekDayCombo.connect("changed", self.updateSummary) pack(hbox, self.weekDayCombo) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Time")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) ## self.dayTimeStartCombo = HourMinuteButtonOption() self.dayTimeEndCombo = HourMinuteButtonOption() ## #self.dayTimeStartCombo.get_child().set_direction(gtk.TextDirection.LTR) #self.dayTimeEndCombo.get_child().set_direction(gtk.TextDirection.LTR) ## pack(hbox, self.dayTimeStartCombo) pack(hbox, gtk.Label(" " + _("to") + " ")) pack(hbox, self.dayTimeEndCombo) pack(self, hbox) ########### #hbox = gtk.HBox() #label = gtk.Label(_("Summary")) #label.set_alignment(0, 0.5) #sizeGroup.add_widget(label) #pack(hbox, label) #self.summaryEntry = gtk.Entry() #pack(hbox, self.summaryEntry, 1, 1) #pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Description")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.descriptionInput = TextFrame() pack(hbox, self.descriptionInput, 1, 1) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Icon")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.iconSelect = IconSelectButton() #print(join(pixDir, self.icon)) pack(hbox, self.iconSelect) pack(hbox, gtk.Label(""), 1, 1) pack(self, hbox) ###### self.notificationBox = common.NotificationBox(event) pack(self, self.notificationBox) ###### #self.filesBox = common.FilesBox(self.event) #pack(self, self.filesBox) ###### self.courseCombo.set_active(0)
def __init__(self, event): ## FIXME gtk.VBox.__init__(self) self.event = event assert event.parent.name == "universityTerm" ## FIXME sizeGroup = gtk.SizeGroup(gtk.SizeGroupMode.HORIZONTAL) ##### if not event.parent.courses: showError(event.parent.noCourseError, ui.eventManDialog) raise RuntimeError("No courses added") self.courseIds = [] self.courseNames = [] combo = gtk.ComboBoxText() for course in event.parent.courses: self.courseIds.append(course[0]) self.courseNames.append(course[1]) combo.append_text(course[1]) #combo.connect("changed", self.updateSummary) self.courseCombo = combo ## hbox = gtk.HBox() label = gtk.Label(_("Course")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) pack(hbox, combo) ## pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Date")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.dateInput = DateButton() pack(hbox, self.dateInput) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Time")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) ## self.dayTimeStartCombo = HourMinuteButton() self.dayTimeEndCombo = HourMinuteButton() ## #self.dayTimeStartCombo.get_child().set_direction(gtk.TextDirection.LTR) #self.dayTimeEndCombo.get_child().set_direction(gtk.TextDirection.LTR) ## pack(hbox, self.dayTimeStartCombo) pack(hbox, gtk.Label(" " + _("to") + " ")) pack(hbox, self.dayTimeEndCombo) pack(self, hbox) ########### #hbox = gtk.HBox() #label = gtk.Label(_("Summary")) #label.set_alignment(0, 0.5) #sizeGroup.add_widget(label) #pack(hbox, label) #self.summaryEntry = gtk.Entry() #pack(hbox, self.summaryEntry, 1, 1) #pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Description")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.descriptionInput = TextFrame() pack(hbox, self.descriptionInput, 1, 1) pack(self, hbox) ##### hbox = gtk.HBox() label = gtk.Label(_("Icon")) label.set_alignment(0, 0.5) sizeGroup.add_widget(label) pack(hbox, label) self.iconSelect = IconSelectButton() #print(join(pixDir, self.icon)) pack(hbox, self.iconSelect) pack(hbox, gtk.Label(""), 1, 1) pack(self, hbox) ###### self.notificationBox = common.NotificationBox(event) pack(self, self.notificationBox) ###### #self.filesBox = common.FilesBox(self.event) #pack(self, self.filesBox) ###### self.courseCombo.set_active(0)
def __init__(self, container, **kwargs): from scal3.ui_gtk.mywidgets.tz_combo import TimeZoneComboBoxEntry self._container = container gtk.Dialog.__init__(self, **kwargs) self.set_title(_("Bulk Edit Events")) #### dialog_add_button( self, gtk.STOCK_CANCEL, _("_Cancel"), gtk.ResponseType.CANCEL, ) dialog_add_button( self, gtk.STOCK_OK, _("_OK"), gtk.ResponseType.OK, ) ## self.connect("response", lambda w, e: self.hide()) #### try: title = container.title except AttributeError: event_count = len(container) msg = _("Here you are going to modify these %s events at once." ) % event_count else: msg = _("Here you are going to modify all events " "inside group \"%s\" at once.") % title msg += " " msg += _( "You better make a backup from your events before doing this." + " Just right click on group and select \"Export\"" + " (or a full backup: menu File -> Export)") msg += "\n\n" label = gtk.Label(msg) label.set_line_wrap(True) pack(self.vbox, label) #### hbox = gtk.HBox() self.iconRadio = gtk.RadioButton(label=_("Icon")) pack(hbox, self.iconRadio, 1, 1) self.summaryRadio = gtk.RadioButton( label=_("Summary"), group=self.iconRadio, ) pack(hbox, self.summaryRadio, 1, 1) self.descriptionRadio = gtk.RadioButton( label=_("Description"), group=self.iconRadio, ) pack(hbox, self.descriptionRadio, 1, 1) self.timeZoneRadio = gtk.RadioButton( label=_("Time Zone"), group=self.iconRadio, ) pack(hbox, self.timeZoneRadio, 1, 1) pack(self.vbox, hbox) ### self.iconRadio.connect("clicked", self.firstRadioChanged) self.summaryRadio.connect("clicked", self.firstRadioChanged) self.descriptionRadio.connect("clicked", self.firstRadioChanged) self.timeZoneRadio.connect("clicked", self.firstRadioChanged) #### hbox = gtk.HBox() self.iconChangeCombo = gtk.ComboBoxText() self.iconChangeCombo.append_text("----") self.iconChangeCombo.append_text(_("Change")) self.iconChangeCombo.append_text(_("Change if empty")) pack(hbox, self.iconChangeCombo) pack(hbox, gtk.Label(" ")) self.iconSelect = IconSelectButton() try: self.iconSelect.set_filename(container.icon) except AttributeError: pass pack(hbox, self.iconSelect) pack(hbox, gtk.Label(""), 1, 1) pack(self.vbox, hbox) self.iconHbox = hbox #### self.textVbox = gtk.VBox() ### hbox = gtk.HBox() self.textChangeCombo = gtk.ComboBoxText() self.textChangeCombo.append_text("----") self.textChangeCombo.append_text(_("Add to beginning")) self.textChangeCombo.append_text(_("Add to end")) self.textChangeCombo.append_text(_("Replace text")) self.textChangeCombo.connect("changed", self.textChangeComboChanged) pack(hbox, self.textChangeCombo) pack(hbox, gtk.Label(""), 1, 1) ## CheckButton(_("Regexp")) pack(self.textVbox, hbox) ### self.textInput1 = TextFrame() pack(self.textVbox, self.textInput1, 1, 1) ### hbox = gtk.HBox() pack(hbox, gtk.Label(_("with"))) pack(hbox, gtk.Label(""), 1, 1) pack(self.textVbox, hbox, 1, 1) self.withHbox = hbox ### self.textInput2 = TextFrame() pack(self.textVbox, self.textInput2, 1, 1) #### pack(self.vbox, self.textVbox, 1, 1) #### hbox = gtk.HBox() self.timeZoneChangeCombo = gtk.ComboBoxText() self.timeZoneChangeCombo.append_text("----") self.timeZoneChangeCombo.append_text(_("Change")) self.timeZoneChangeCombo.append_text(_("Change if empty")) pack(hbox, self.timeZoneChangeCombo) pack(hbox, gtk.Label(" ")) self.timeZoneInput = TimeZoneComboBoxEntry() pack(hbox, self.timeZoneInput) pack(hbox, gtk.Label(""), 1, 1) pack(self.vbox, hbox, 1, 1) self.timeZoneHbox = hbox #### self.vbox.show_all() self.iconRadio.set_active(True) self.iconChangeCombo.set_active(0) self.textChangeCombo.set_active(0) self.firstRadioChanged() #### window_set_size_aspect(self, 1.6)