Ejemplo n.º 1
0
 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()
Ejemplo n.º 2
0
def getDateTimeWidget():
	from scal3.ui_gtk.mywidgets.multi_spin.date_time import DateTimeButton
	btn = DateTimeButton()
	btn.set_value((2011, 1, 1))
	btn.set_editable(True)
	return btn