Package pilas :: Package actores :: Module texto
[hide private]
[frames] | no frames]

Source Code for Module pilas.actores.texto

 1  # -*- encoding: utf-8 -*- 
 2  # Pilas engine - A video game framework. 
 3  # 
 4  # Copyright 2010 - Hugo Ruscitti 
 5  # License: LGPLv3 (see http://www.gnu.org/licenses/lgpl.html) 
 6  # 
 7  # Website - http://www.pilas-engine.com.ar 
 8   
 9  import pilas 
10  from actor import Actor 
11   
12 -class Texto(Actor):
13 """Representa un texto en pantalla. 14 15 El texto tiene atributos como ``texto``, ``magnitud`` y ``color``, por 16 ejemplo para crear un mensaje de saludo podríamos escribir: 17 18 >>> saludo = pilas.actores.Texto("Hola mundo!") 19 """ 20
21 - def __init__(self, texto="None", x=0, y=0, magnitud=20, vertical=False, fuente=None):
22 """Inicializa el actor. 23 24 :param texto: Texto a mostrar. 25 :param x: Posición horizontal. 26 :param y: Posición vertical. 27 :param magnitud: Tamaño del texto. 28 :param vertical: Si el texto será vertical u horizontal, como True o False. 29 :param fuente: Nombre de la fuente a utilizar. 30 """ 31 imagen = pilas.mundo.motor.obtener_texto(texto, magnitud, vertical, fuente) 32 self._definir_area_de_texto(texto, magnitud) 33 Actor.__init__(self, imagen, x=x, y=y) 34 self.magnitud = magnitud 35 self.texto = texto 36 self.color = pilas.colores.blanco 37 self.centro = ("centro", "centro") 38 self.fijo = True
39
40 - def obtener_texto(self):
41 """Retorna el texto definido.""" 42 return self.imagen.texto
43
44 - def definir_texto(self, texto):
45 """Define el texto a mostrar.""" 46 self.imagen.texto = texto 47 self._definir_area_de_texto(texto, self.magnitud)
48 49 texto = property(obtener_texto, definir_texto, doc="El texto que se tiene que mostrar.") 50
51 - def obtener_magnitud(self):
52 """Devuelve el tamaño del texto.""" 53 return self.imagen.magnitud
54
55 - def definir_magnitud(self, magnitud):
56 """Define el tamaño del texto a mostrar.""" 57 self._magnitud = magnitud 58 self.imagen.magnitud = magnitud
59 60 magnitud = property(obtener_magnitud, definir_magnitud, doc="El tamaño del texto.") 61
62 - def obtener_color(self):
63 """Devuelve el color que tiene asignado el texto.""" 64 return self.imagen.color
65
66 - def definir_color(self, color):
67 """Define el color del texto.""" 68 self.imagen.color = color
69 70 color = property(obtener_color, definir_color, doc="Color del texto.") 71
72 - def _definir_area_de_texto(self, texto, magnitud):
73 self._ancho, self._alto = pilas.mundo.motor.obtener_area_de_texto(texto, magnitud)
74