Beispiel #1
0
	def __init__(self, entry):
		TransparentWindow.__init__(self, gtk.WINDOW_POPUP)
		
		self._entry = entry
		self._vbox = gtk.VBox(False, 3)
		
		self.set_transient_for(entry.get_toplevel())
		
		self._vw = gtk.ScrolledWindow()
		self._vw.set_policy(gtk.POLICY_NEVER, gtk.POLICY_NEVER)
		self._vw.show()

		self._text = gtk.TextView()
		self._text.modify_font(entry._view.style.font_desc)
		self._text.modify_text(gtk.STATE_NORMAL, entry._entry.style.text[gtk.STATE_NORMAL])
		self._text.connect('expose-event', self.on_text_expose)
		self._text.set_wrap_mode(gtk.WRAP_WORD_CHAR)
		
		buf = self._text.get_buffer()
		
		buf.connect_after('insert-text', self.on_text_insert_text)
		buf.connect_after('delete-range', self.on_text_delete_range)
		
		self._text.set_editable(False)
		
		self._vw.add(self._text)
		self._vbox.pack_end(self._vw, expand=False, fill=False)
		self._vbox.show()
		self._button_bar = None

		self.add(self._vbox)
		self._text.show()
		self._status_label = None
		
		self.props.can_focus = False
		self.set_border_width(8)
		
		self._text.connect('realize', self.on_text_realize)
		
		self.attach()
		self.show()
		
		self.connect_after('size-allocate', self.on_size_allocate)
		self._vw.connect_after('size-allocate', self.on_text_size_allocate)

		self.max_lines = 10
		
		self._attr_map = {
			pango.ATTR_STYLE: 'style',
			pango.ATTR_WEIGHT: 'weight',
			pango.ATTR_VARIANT: 'variant',
			pango.ATTR_STRETCH: 'stretch',
			pango.ATTR_SIZE: 'size',
			pango.ATTR_FOREGROUND: 'foreground',
			pango.ATTR_BACKGROUND: 'background',
			pango.ATTR_UNDERLINE: 'underline',
			pango.ATTR_STRIKETHROUGH: 'strikethrough',
			pango.ATTR_RISE: 'rise',
			pango.ATTR_SCALE: 'scale'
		}
Beispiel #2
0
    def __init__(self, title, weather):
        TransparentWindow.__init__(self)
        self.set_title(title)
        self.set_keep_below(True)

        self.mainbox = Gtk.Box(spacing=10)
        self.menu = Gtk.Menu()

        self.set_events(Gdk.EventMask.BUTTON_PRESS_MASK)
        self.enable_drag = 1

        self.weather = weather
        self.weatherboxs = []

        self.initUI()
        self.connect("destroy", Gtk.main_quit)
Beispiel #3
0
	def on_expose(self, widget, evnt):
		ret = TransparentWindow.on_expose(self, widget, evnt)
		
		if ret:
			return True
		
		ct = evnt.window.cairo_create()
		ct.save()
		
		area = evnt.area
		ct.rectangle(area.x, area.y, area.width, area.height)
		ct.clip()			
			
		color = self.background_color()
		
		self.background_shape(ct)

		ct.set_source_rgba(1 - color[0], 1 - color[1], 1 - color[2], 0.3)
		ct.stroke()
		
		ct.restore()
		return False
Beispiel #4
0
    def on_expose(self, widget, evnt):
        ret = TransparentWindow.on_expose(self, widget, evnt)

        if ret:
            return True

        ct = evnt.window.cairo_create()
        ct.save()

        area = evnt.area
        ct.rectangle(area.x, area.y, area.width, area.height)
        ct.clip()

        color = self.background_color()

        self.background_shape(ct)

        ct.set_source_rgba(1 - color[0], 1 - color[1], 1 - color[2], 0.3)
        ct.stroke()

        ct.restore()
        return False
Beispiel #5
0
    def __init__(self, entry):
        TransparentWindow.__init__(self, gtk.WINDOW_POPUP)

        self._entry = entry
        self._vbox = gtk.VBox(False, 3)

        self.set_transient_for(entry.get_toplevel())

        self._vw = gtk.ScrolledWindow()
        self._vw.set_policy(gtk.POLICY_NEVER, gtk.POLICY_NEVER)
        self._vw.show()

        self._text = gtk.TextView()
        self._text.modify_font(entry._view.style.font_desc)
        self._text.modify_text(gtk.STATE_NORMAL,
                               entry._entry.style.text[gtk.STATE_NORMAL])
        self._text.connect('expose-event', self.on_text_expose)
        self._text.set_wrap_mode(gtk.WRAP_WORD_CHAR)

        buf = self._text.get_buffer()

        buf.connect_after('insert-text', self.on_text_insert_text)
        buf.connect_after('delete-range', self.on_text_delete_range)

        self._text.set_editable(False)

        self._vw.add(self._text)
        self._vbox.pack_end(self._vw, expand=False, fill=False)
        self._vbox.show()
        self._button_bar = None

        self.add(self._vbox)
        self._text.show()
        self._status_label = None

        self.props.can_focus = False
        self.set_border_width(8)

        self._text.connect('realize', self.on_text_realize)

        self.attach()
        self.show()

        self.connect_after('size-allocate', self.on_size_allocate)
        self._vw.connect_after('size-allocate', self.on_text_size_allocate)

        self.max_lines = 10

        self._attr_map = {
            pango.ATTR_STYLE: 'style',
            pango.ATTR_WEIGHT: 'weight',
            pango.ATTR_VARIANT: 'variant',
            pango.ATTR_STRETCH: 'stretch',
            pango.ATTR_SIZE: 'size',
            pango.ATTR_FOREGROUND: 'foreground',
            pango.ATTR_BACKGROUND: 'background',
            pango.ATTR_UNDERLINE: 'underline',
            pango.ATTR_STRIKETHROUGH: 'strikethrough',
            pango.ATTR_RISE: 'rise',
            pango.ATTR_SCALE: 'scale'
        }