Exemple #1
0
    def __init__(
        self,
        items,
        foreground_left_pixbuf=ui_theme.get_pixbuf(
            "notebook/foreground_left.png"),
        foreground_middle_pixbuf=ui_theme.get_pixbuf(
            "notebook/foreground_middle.png"),
        foreground_right_pixbuf=ui_theme.get_pixbuf(
            "notebook/foreground_right.png"),
        background_left_pixbuf=ui_theme.get_pixbuf(
            "notebook/background_left.png"),
        background_middle_pixbuf=ui_theme.get_pixbuf(
            "notebook/background_middle.png"),
        background_right_pixbuf=ui_theme.get_pixbuf(
            "notebook/background_right.png"),
    ):
        '''
        Initialize Notebook class.

        @param items: Notebook item, foramt (item_icon, item_content, item_callback).
        @param foreground_left_pixbuf: Left foreground pixbuf.
        @param foreground_middle_pixbuf: Middle foreground pixbuf.
        @param foreground_right_pixbuf: Right foreground pixbuf.
        @param background_left_pixbuf: Left background pixbuf.
        @param background_middle_pixbuf: Middle background pixbuf.
        @param background_right_pixbuf: Right background pixbuf.
        '''
        # Init.
        gtk.EventBox.__init__(self)
        self.set_visible_window(False)
        self.set_can_focus(True)
        self.add_events(gtk.gdk.ALL_EVENTS_MASK)

        self.items = items
        self.current_item_index = 0
        self.padding_side = 27  # pixel
        self.padding_middle = 10  # pixel
        self.foreground_left_pixbuf = foreground_left_pixbuf
        self.foreground_middle_pixbuf = foreground_middle_pixbuf
        self.foreground_right_pixbuf = foreground_right_pixbuf
        self.background_left_pixbuf = background_left_pixbuf
        self.background_middle_pixbuf = background_middle_pixbuf
        self.background_right_pixbuf = background_right_pixbuf
        self.cache_bg_pixbuf = CachePixbuf()
        self.cache_fg_pixbuf = CachePixbuf()

        # Calcuate tab width.
        (self.tab_width, self.tab_height) = self.calculate_tab_width()
        self.set_size_request(-1, self.tab_height)

        # Expose.
        self.connect("expose-event", self.expose_notebook)
        self.connect("button-press-event", self.button_press_notebook)
Exemple #2
0
    def __init__(self):
        '''
        Initialize SkinConfig class.
        '''
        # Init.
        gobject.GObject.__init__(self)
        self.cache_pixbuf = CachePixbuf()

        self.theme_list = []
        self.window_list = []
Exemple #3
0
    def __init__(self,
                 timezone=0,
                 width=800,
                 height=409,
                 padding_top=0,
                 padding_left=0,
                 ):
        '''
        Initialize TimeZone class.

        @param timezone: Timezone, default is 0.
        @param width: The width of timezone, default is 800 pixels.
        @param height: The height of timezone, default is 409 pixels.
        @param padding_top: The padding value of top, default is 0.
        @param padding_left: The padding value of left, default is 0.
        '''
        gtk.EventBox.__init__(self)

        self.__timezone = timezone + 9

        self.width = width
        self.height = height
        self.set_size_request(self.width, self.height)

        self.padding_top = padding_top
        self.padding_left = padding_left

        self.__const_width = 800
        self.__const_height = 409

        self.cache_bg_pixbuf = CachePixbuf()
        self.bg_pixbuf = ui_theme.get_pixbuf("timezone/bg.png")
        self.cache_timezone_pixbuf = CachePixbuf()
        self.timezone_pixbuf = []
        i = -9
        while i <= 13:
            self.timezone_pixbuf.append(ui_theme.get_pixbuf("timezone/timezone_%d.png" % i))

            i += 1

        self.connect("button-press-event", self.__button_press)
        self.connect("expose-event", self.__expose)
Exemple #4
0
    def __init__(self,
                 upper_fg_dpixbuf,
                 upper_bg_dpixbuf,
                 middle_fg_dpixbuf,
                 middle_bg_dpixbuf,
                 bottom_fg_dpixbuf,
                 bottom_bg_dpixbuf,
                 point_dpixbuf,
                 ):
        '''
        Initialize VScalebar class.

        @param upper_fg_dpixbuf: Upper foreground pixbuf.
        @param upper_bg_dpixbuf: Upper background pixbuf.
        @param middle_fg_dpixbuf: Middle foreground pixbuf.
        @param middle_bg_dpixbuf: Middle background pixbuf.
        @param bottom_fg_dpixbuf: Bottom foreground pixbuf.
        @param bottom_bg_dpixbuf: Bottom background pixbuf.
        @param point_dpixbuf: Pointer pixbuf.
        '''
        gtk.VScale.__init__(self)

        self.set_draw_value(False)
        self.set_range(0, 100)
        self.__has_point = True
        self.set_inverted(True)
        self.upper_fg_dpixbuf = upper_fg_dpixbuf
        self.upper_bg_dpixbuf = upper_bg_dpixbuf
        self.middle_fg_dpixbuf = middle_fg_dpixbuf
        self.middle_bg_dpixbuf = middle_bg_dpixbuf
        self.bottom_fg_dpixbuf = bottom_fg_dpixbuf
        self.bottom_bg_dpixbuf = bottom_bg_dpixbuf
        self.point_dpixbuf = point_dpixbuf
        self.cache_bg_pixbuf = CachePixbuf()
        self.cache_fg_pixbuf = CachePixbuf()

        self.set_size_request(self.point_dpixbuf.get_pixbuf().get_height(), -1)

        self.connect("expose-event", self.expose_v_scalebar)
        self.connect("button-press-event", self.press_progressbar)
Exemple #5
0
    def __init__(self, background_dpixbuf):
        '''
        Initialize CycleStrip class.

        @param background_dpixbuf: DynamicPixbuf background.
        '''
        gtk.HBox.__init__(self)
        self.background_dpixbuf = background_dpixbuf
        self.cache_pixbuf = CachePixbuf()

        self.set_size_request(
            -1,
            self.background_dpixbuf.get_pixbuf().get_height())

        self.connect("expose-event", self.expose_cycle_strip)
Exemple #6
0
    def __init__(
        self,
        volume_max_value=100,
        volume_width=52,
        volume_x=0,
        volume_y=15,
        line_height=3,
        volume_padding_x=5,
        volume_level_values=[(1, 33), (34, 66), (67, 100)],
        scroll_bool=False,
        press_emit_bool=False,
        inc_value=5,
        bg_pixbuf=ui_theme.get_pixbuf("volumebutton/bg.png"),
        fg_pixbuf=ui_theme.get_pixbuf("volumebutton/fg.png"),
        zero_volume_normal_pixbuf=ui_theme.get_pixbuf(
            "volumebutton/zero_normal.png"),
        zero_volume_hover_pixbuf=ui_theme.get_pixbuf(
            "volumebutton/zero_hover.png"),
        zero_volume_press_pixbuf=ui_theme.get_pixbuf(
            "volumebutton/zero_press.png"),
        min_volume_normal_pixbuf=ui_theme.get_pixbuf(
            "volumebutton/lower_normal.png"),
        min_volume_hover_pixbuf=ui_theme.get_pixbuf(
            "volumebutton/lower_hover.png"),
        min_volume_press_pixbuf=ui_theme.get_pixbuf(
            "volumebutton/lower_press.png"),
        mid_volume_normal_pixbuf=ui_theme.get_pixbuf(
            "volumebutton/middle_normal.png"),
        mid_volume_hover_pixbuf=ui_theme.get_pixbuf(
            "volumebutton/middle_hover.png"),
        mid_volume_press_pixbuf=ui_theme.get_pixbuf(
            "volumebutton/middle_press.png"),
        max_volume_normal_pixbuf=ui_theme.get_pixbuf(
            "volumebutton/high_normal.png"),
        max_volume_hover_pixbuf=ui_theme.get_pixbuf(
            "volumebutton/high_hover.png"),
        max_volume_press_pixbuf=ui_theme.get_pixbuf(
            "volumebutton/high_press.png"),
        mute_volume_normal_pixbuf=ui_theme.get_pixbuf(
            "volumebutton/mute_normal.png"),
        mute_volume_hover_pixbuf=ui_theme.get_pixbuf(
            "volumebutton/mute_hover.png"),
        mute_volume_press_pixbuf=ui_theme.get_pixbuf(
            "volumebutton/mute_press.png"),
        point_volume_pixbuf=ui_theme.get_pixbuf(
            "volumebutton/point_normal.png"),
    ):
        '''
        Initialize VolumeButton class.

        @param volume_max_value: Maximum value of volume, default is 100.
        @param volume_width: Width of volume button widget, default is 52 pixel.
        @param volume_x: X padding of volume button widget.
        @param volume_y: Y padding of volume button widget.
        @param line_height: Height of volume progressbar, default is 3 pixel.
        @param volume_padding_x: X padding value around volume progressbar.
        @param volume_level_values: The values of volume level.
        @param scroll_bool: True allowed scroll to change value, default is False.
        @param press_emit_bool: True to emit `volume-state-changed` signal when press, default is False.
        @param inc_value: The increase value of volume change, default is 5.
        '''
        gtk.Button.__init__(self)
        ###########################
        if volume_x < max_volume_normal_pixbuf.get_pixbuf().get_width():
            volume_x = max_volume_normal_pixbuf.get_pixbuf().get_width()
        '''Init pixbuf.'''
        self.__bg_pixbuf = bg_pixbuf
        self.__fg_pixbuf = fg_pixbuf
        self.__bg_cache_pixbuf = CachePixbuf()
        self.__fg_cache_pixbuf = CachePixbuf()
        # zero volume pixbuf.
        self.__zero_volume_normal_pixbuf = zero_volume_normal_pixbuf
        self.__zero_volume_hover_pixbuf = zero_volume_hover_pixbuf
        self.__zero_volume_press_pixbuf = zero_volume_press_pixbuf
        # min volume pixbuf.
        self.__min_volume_normal_pixbuf = min_volume_normal_pixbuf
        self.__min_volume_hover_pixbuf = min_volume_hover_pixbuf
        self.__min_volume_press_pixbuf = min_volume_press_pixbuf
        # mid volume pixbuf:
        self.__mid_volume_normal_pixbuf = mid_volume_normal_pixbuf
        self.__mid_volume_hover_pixbuf = mid_volume_hover_pixbuf
        self.__mid_volume_press_pixbuf = mid_volume_press_pixbuf
        # max volume pixbuf[normal, hover, press].
        self.__max_volume_normal_pixbuf = max_volume_normal_pixbuf
        self.__max_volume_hover_pixbuf = max_volume_hover_pixbuf
        self.__max_volume_press_pixbuf = max_volume_press_pixbuf
        # mute volume pixbuf[normal, hover, press].
        self.__mute_volume_normal_pixbuf = mute_volume_normal_pixbuf
        self.__mute_volume_hover_pixbuf = mute_volume_hover_pixbuf
        self.__mute_volume_press_pixbuf = mute_volume_press_pixbuf
        # point volume pixbuf.
        self.__point_volume_pixbuf = point_volume_pixbuf
        '''Init Set VolumeButton attr.'''
        '''Init value.'''
        self.__press_emit_bool = press_emit_bool
        self.__line_height = line_height
        self.__current_value = 0
        self.__mute_bool = False
        self.temp_mute_bool = False
        self.__drag = False
        self.__volume_max_value = volume_max_value
        self.__volume_width = volume_width

        self.__volume_left_x = volume_x - self.__max_volume_normal_pixbuf.get_pixbuf(
        ).get_width() - volume_padding_x
        self.__volume_left_y = volume_y - self.__max_volume_normal_pixbuf.get_pixbuf(
        ).get_height() / 2 + self.__point_volume_pixbuf.get_pixbuf(
        ).get_height() / 2
        self.__volume_right_x = volume_x
        self.__volume_right_y = volume_y
        '''Left'''
        self.volume_level_values = volume_level_values
        self.__volume_state = MIN_STATE
        self.__mouse_state = MOUSE_VOLUME_STATE_NORMAL
        '''Right'''
        # bg value.
        self.__bg_x = 0
        self.__bg_y = self.__volume_right_y
        self.__bg_padding_x = self.__volume_right_x
        # fg value.
        self.__fg_x = 0
        self.__fg_y = self.__volume_right_y
        self.__fg_padding_x = self.__volume_right_x
        # point value.
        self.__point_y = self.__volume_right_y
        self.__point_padding_x = self.__volume_right_x
        self.inc_value = inc_value
        '''Init VolumeButton event.'''
        self.add_events(gtk.gdk.ALL_EVENTS_MASK)
        self.connect("expose-event", self.__expose_draw_volume)
        self.connect("motion-notify-event", self.__motion_mouse_set_point)
        self.connect("button-press-event", self.__press_mouse_set_point)
        self.connect("button-release-event", self.__release_mouse_set_point)
        '''Event value'''
        self.press_bool = False
        # scroll event.
        if scroll_bool:
            self.connect("scroll-event", self.__scroll_mouse_set_point)

        self.set_size_request(
            volume_width + self.__volume_left_x + self.__volume_right_x +
            self.__mute_volume_normal_pixbuf.get_pixbuf().get_width(), 30)

        set_clickable_cursor(self)