コード例 #1
0
 def size(self, dialog):
     Control.size(self, dialog)
     self.width = 2 * (self.RADIUS + self.BORDER)
     self.height = self.width
     if self.circle_vlist is None:
         self.circle_vlist = dialog.batch.add(
             4 * self.NUM_SEGMENTS, gl.GL_QUADS, dialog.fg_group,
             ('v2f', self._get_circle_vlist_vertices()),
             ('c4B', [255, 255, 255, 255] * (4 * self.NUM_SEGMENTS)))
     if self.inner_circle_vlist is None:
         self.inner_circle_vlist = dialog.batch.add(
             3 * self.NUM_SEGMENTS, gl.GL_TRIANGLES, dialog.fg_group,
             ('v2f', self._get_inner_circle_vlist_vertices()),
             ('c4B', self.color * (3 * self.NUM_SEGMENTS)))
     if self.inner_circle_bg_vlist is None:
         self.inner_circle_bg_vlist = dialog.batch.add(
             3 * self.NUM_SEGMENTS, gl.GL_TRIANGLES, dialog.bg_group,
             ('v2f', self._get_inner_circle_vlist_vertices()),
             ('c4B', self._get_inner_circle_bg_vlist_colors()))
     if self.colors_vlist is None:
         self.colors_vlist = dialog.batch.add(
             4 * self.NUM_SEGMENTS, gl.GL_QUADS, dialog.fg_group,
             ('v2f', self._get_colors_vlist_vertices()),
             ('c3B', self._get_colors_vlist_colors()))
     if self.triangle_vlist is None:
         self.triangle_vlist = dialog.batch.add(
             6, gl.GL_TRIANGLES, dialog.highlight_group,
             ('v2f', self._get_triangle_vlist_vertices()),
             ('c3B', self._get_triangle_vlist_colors()))
     if self.crosshair is None:
         self.crosshair = dialog.theme[self.path]['image'].generate(
             [255, 255, 255, 255], dialog.batch, dialog.highlight_group)
コード例 #2
0
ファイル: resizable.py プロジェクト: SwineEngine/felyne
    def size(self, dialog):
        """Constructs a vertex list to draw a crossed square.

        @param dialog The Dialog within which we are contained
        """
        if dialog is None:
            return
        Control.size(self, dialog)
        if self.vertex_list is None and not self.is_disabled():
            self.color = dialog.theme['gui_color']
            num_points, vertices = self._get_vertices()
            self.vertex_list = dialog.batch.add(
                num_points, gl.GL_LINES, dialog.fg_group, ('v2i', vertices),
                ('c4B', self.color * num_points))
コード例 #3
0
ファイル: resizable.py プロジェクト: Parashurama/Kytten
    def size(self, dialog, scale):
        """Constructs a vertex list to draw a crossed square.

        @param dialog The Dialog within which we are contained
        """
        if dialog is None:
            return
        Control.size(self, dialog, scale)
        if self.vertex_list is None and not self.is_disabled():
            self.color = dialog.theme['gui_color']
            num_points, vertices = self._get_vertices()
            self.vertex_list = dialog.batch.add(num_points, gl.GL_LINES,
                dialog.fg_group,
                ('v2i', vertices),
                ('c4B', self.color * num_points))
コード例 #4
0
ファイル: color_selector.py プロジェクト: kitanata/Kytten
 def size(self, dialog):
     Control.size(self, dialog)
     self.width = 2 * (self.RADIUS + self.BORDER)
     self.height = self.width
     if self.circle_vlist is None:
         self.circle_vlist = dialog.batch.add(
             4 * self.NUM_SEGMENTS,
             gl.GL_QUADS,
             dialog.fg_group,
             ("v2f", self._get_circle_vlist_vertices()),
             ("c4B", [255, 255, 255, 255] * (4 * self.NUM_SEGMENTS)),
         )
     if self.inner_circle_vlist is None:
         self.inner_circle_vlist = dialog.batch.add(
             3 * self.NUM_SEGMENTS,
             gl.GL_TRIANGLES,
             dialog.fg_group,
             ("v2f", self._get_inner_circle_vlist_vertices()),
             ("c4B", self.color * (3 * self.NUM_SEGMENTS)),
         )
     if self.inner_circle_bg_vlist is None:
         self.inner_circle_bg_vlist = dialog.batch.add(
             3 * self.NUM_SEGMENTS,
             gl.GL_TRIANGLES,
             dialog.bg_group,
             ("v2f", self._get_inner_circle_vlist_vertices()),
             ("c4B", self._get_inner_circle_bg_vlist_colors()),
         )
     if self.colors_vlist is None:
         self.colors_vlist = dialog.batch.add(
             4 * self.NUM_SEGMENTS,
             gl.GL_QUADS,
             dialog.fg_group,
             ("v2f", self._get_colors_vlist_vertices()),
             ("c3B", self._get_colors_vlist_colors()),
         )
     if self.triangle_vlist is None:
         self.triangle_vlist = dialog.batch.add(
             6,
             gl.GL_TRIANGLES,
             dialog.highlight_group,
             ("v2f", self._get_triangle_vlist_vertices()),
             ("c3B", self._get_triangle_vlist_colors()),
         )
     if self.crosshair is None:
         self.crosshair = dialog.theme[self.path]["image"].generate(
             [255, 255, 255, 255], dialog.batch, dialog.highlight_group
         )
コード例 #5
0
ファイル: color_selector.py プロジェクト: kitanata/Kytten
 def size(self, dialog):
     Control.size(self, dialog)
     if self.swatch is None:
         self.swatch = dialog.theme[self.path]["image"].generate(
             dialog.theme[self.path]["gui_color"], dialog.batch, dialog.fg_group
         )
     if self.vlist is None:
         self.vlist = dialog.batch.add(
             4, gl.GL_QUADS, dialog.highlight_group, ("v2i", self._get_vlist_vertices()), ("c4B", self.color * 4)
         )
     if self.swatch_label is None:
         self.swatch_label = Label(repr(self.color))
     self.swatch_label.size(dialog)
     swatch_width, swatch_height = self.swatch.get_needed_size(self.content_width, self.content_height)
     self.height = max(self.swatch_label.height, swatch_height)
     self.width = swatch_width + 4 + self.swatch_label.width
コード例 #6
0
 def size(self, dialog):
     Control.size(self, dialog)
     if self.swatch is None:
         self.swatch = dialog.theme[self.path]['image'].generate(
             dialog.theme[self.path]['gui_color'], dialog.batch,
             dialog.fg_group)
     if self.vlist is None:
         self.vlist = dialog.batch.add(4, gl.GL_QUADS,
                                       dialog.highlight_group,
                                       ('v2i', self._get_vlist_vertices()),
                                       ('c4B', self.color * 4))
     if self.swatch_label is None:
         self.swatch_label = Label(repr(self.color))
     self.swatch_label.size(dialog)
     swatch_width, swatch_height = self.swatch.get_needed_size(
         self.content_width, self.content_height)
     self.height = max(self.swatch_label.height, swatch_height)
     self.width = swatch_width + 4 + self.swatch_label.width
コード例 #7
0
 def size(self, dialog):
     Control.size(self, dialog)
     self.width = self.texture.width * self.scale
     self.height = self.texture.height * self.scale
     if self.texture_vlist is None:
         self.texture_group = pyglet.graphics.TextureGroup(
             self.texture, dialog.fg_group)
         self.texture_vlist = dialog.batch.add(
             4, gl.GL_QUADS, self.texture_group,
             ('v2i', self._get_texture_vertices()),
             ('c4B', (255, 255, 255, 255) * 4),
             ('t3f', self.texture.tex_coords))
     if self.resizer_vlist is None:
         self.resizer_vlist = dialog.batch.add(
             40, gl.GL_LINES, dialog.highlight_group,
             ('v2i', self._get_resizer_vertices()),
             ('c4B', self.color * 40))
     if self.limits_vlist is None:
         self.limits_vlist = dialog.batch.add(
             8, gl.GL_LINES, dialog.highlight_group,
             ('v2i', self._get_limits_vertices()),
             ('c4B', (192, 192, 192, 255) * 8))
コード例 #8
0
 def size(self, dialog):
     Control.size(self, dialog)
     self.width = self.texture.width * self.scale
     self.height = self.texture.height * self.scale
     if self.texture_vlist is None:
         self.texture_group = pyglet.graphics.TextureGroup(
             self.texture, dialog.fg_group)
         self.texture_vlist = dialog.batch.add(4, gl.GL_QUADS,
             self.texture_group,
             ('v2i', self._get_texture_vertices()),
             ('c4B', (255, 255, 255, 255) * 4),
             ('t3f', self.texture.tex_coords))
     if self.resizer_vlist is None:
         self.resizer_vlist = dialog.batch.add(40, gl.GL_LINES,
             dialog.highlight_group,
             ('v2i', self._get_resizer_vertices()),
             ('c4B', self.color * 40))
     if self.limits_vlist is None:
         self.limits_vlist = dialog.batch.add(8, gl.GL_LINES,
             dialog.highlight_group,
             ('v2i', self._get_limits_vertices()),
             ('c4B', (192, 192, 192, 255) * 8))
コード例 #9
0
ファイル: kwidgets.py プロジェクト: HieuLsw/blobjob.editor
    def size(self, dialog):
        if dialog is None:
            return
        Control.size(self, dialog)
        if self.is_selected:
            path = ['menuoption', 'selection']
        else:
            path = ['menuoption']
        if self.sprite is None:
            if self.is_disabled():
                opacity = 50
                color = dialog.theme[path]['disabled_color']
            else:
                opacity = 255
                color = dialog.theme[path]['text_color']
            self.sprite = pyglet.sprite.Sprite(
                self.image, batch=dialog.batch, group=dialog.fg_group)#, y=y, x=x, batch=self.tiles_batch)
            self.sprite.opacity = opacity
            if self.scale_size is not None:
                self.sprite.scale = self.scale_size / float(self.sprite.width)
            self.width = self.sprite.width + self.padding * 2
            self.height = self.sprite.height + self.padding * 2

        #~ if self.background is None:
            #~ if self.is_selected:
                #~ self.background = \
                    #~ dialog.theme[path]['highlight']['image'].generate(
                        #~ dialog.theme[path]['gui_color'],
                        #~ dialog.batch,
                        #~ dialog.bg_group)

        if self.highlight is None:
            if self.is_selected:
                self.highlight = \
                    dialog.theme[path]['palette']['image'].generate(
                        dialog.theme[path]['input']['gui_color'],
                        dialog.batch,
                        dialog.highlight_group)