Package icaro-bloques :: Module abrir'
[hide private]
[frames] | no frames]

Source Code for Module icaro-bloques.abrir'

  1  #!/usr/bin/python 
  2  # -*- coding: utf-8 -*- 
  3   
  4  # This program is free software: you can redistribute it and/or modify 
  5  # it under the terms of the GNU General Public License as published by 
  6  # the Free Software Foundation, either version 3 of the License, or 
  7  # (at your option) any later version. 
  8  # 
  9  # This program is distributed in the hope that it will be useful, 
 10  # but WITHOUT ANY WARRANTY; without even the implied warranty of 
 11  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
 12  # GNU General Public License for more details. 
 13  import gtk 
 14  import os 
 15  from componente import * 
 16   
17 -def abrir(diccio,ruta,fon,ventana,textorender):
18 file=open(ruta,"r") 19 cadena=file.readlines() 20 tupla=(0,0,0,0) 21 for valor in range(len(cadena)): 22 if cadena[valor]=="<fondo>\n": 23 cadena3=cadena[valor+1].strip("()\n") 24 cadena4=cadena3.split(',') 25 color=(int(cadena4[0]),int(cadena4[1]),int(cadena4[2])) 26 band=cadena[valor+2] 27 img=cadena[valor+3] 28 fon.FONDO=color 29 fon.band=int(band) 30 31 fon.img=img.strip("\n") 32 if int(band)==1: 33 try: 34 fon.carga_img(img.strip("\n")) 35 except Exception, ex: 36 try: 37 (filepath, filename) = os.path.split(ruta) 38 (filepath2, filename2) = os.path.split(img.strip("\n")) 39 print filepath+"/"+filename2 40 fon.carga_img(filepath+"/"+filename2) 41 except Exception, ex: 42 ventana.mensajes(2,"no se pudo abrir la imagen de fondo") 43 fon.band=0 44 45 46 if cadena[valor]=="<objeto_inicial>\n": 47 cadena1= cadena[valor+1].strip("()\n") 48 cadena2=cadena1.split(',') 49 x,y=cadena2 50 fon.objetos[0].posicion=float(x),float(y) 51 if cadena[valor]=="<objeto_dato>\n": 52 cadena1= cadena[valor+2].strip("()\n") 53 cadena2=cadena1.split(',') 54 x,y=cadena2 55 cadena3=cadena[valor+4].strip("()\n") 56 cadena4=cadena3.split(',') 57 tupla1=(int(cadena4[0]),int(cadena4[1]),int(cadena4[2])) 58 dato=cadena[valor+1].strip("()\n") 59 print dato 60 print "valor de la cadena " ,cadena[valor+4].strip("\n"), 61 c1=comp_dat_arg( 62 float(x), 63 float(y), 64 fon.identificador_dat, 65 1, 66 cadena[valor+3].strip("\n"), 67 tupla1, 68 cadena[valor+6].strip("\n"), 69 dato, 70 7, 71 fon, 72 ventana, 73 textorender 74 ) 75 fon.identificador_dat+=1 76 fon.datos.add(c1) 77 fon.objetos_datos.append(c1) 78 fon.tipo_obj_datos.append(7) 79 if cadena[valor]=="<objeto_dato_img>\n": 80 dato=cadena[valor+1].strip("()\n") 81 cadena1= cadena[valor+3].strip("()\n") 82 cadena2=cadena1.split(',') 83 x,y=cadena2 84 cadena3=cadena[valor+5].strip("()\n") 85 cadena4=cadena3.split(',') 86 tupla1=(int(cadena4[0]),int(cadena4[1]),int(cadena4[2])) 87 c1=comp_dat_arg( 88 float(x), 89 float(y), 90 fon.identificador_dat, 91 0, 92 cadena[valor+4].strip("\n"), 93 tupla1, 94 cadena[valor+7].strip("\n"), 95 dato, 96 6, 97 fon, 98 ventana, 99 textorender 100 ) 101 fon.identificador_dat+=1 102 fon.datos.add(c1) 103 fon.objetos_datos.append(c1) 104 fon.tipo_obj_datos.append(6) 105 if cadena[valor]=="<objeto_componente>\n": 106 cadena1= cadena[valor+4].strip("()\n") 107 cadena2=cadena1.split(',') 108 x,y=cadena2 109 argumento=cadena[valor+2].strip("()\n") 110 fon.identificador+=1 111 cadena3=cadena[valor+5].strip("()\n") 112 cadena4=cadena3.split(',') 113 color=(int(cadena4[0]),int(cadena4[1]),int(cadena4[2])) 114 text=cadena[valor+1].strip("()\n") 115 text=text+" " 116 print "texto", text 117 c1=componente ( 118 float(x), 119 float(y), 120 fon.identificador, 121 int(argumento), 122 color, 123 text, 124 fon, 125 ventana, 126 textorender 127 ) 128 fon.componentes.add(c1) 129 fon.objetos.append(c1) 130 fon.tipo_obj.append(1) 131 if cadena[valor]=="<objeto_bloque>\n": 132 cadena1= cadena[valor+2].strip("()\n") 133 cadena2=cadena1.split(',') 134 x,y=cadena2 135 cadena1fin= cadena[valor+5].strip("()\n") 136 cadena2fin=cadena1fin.split(',') 137 xfin,yfin=cadena2fin 138 cadena3=cadena[valor+3].strip("()\n") 139 cadena4=cadena3.split(',') 140 color=(int(cadena4[0]),int(cadena4[1]),int(cadena4[2])) 141 text=cadena[valor+4].strip("()\n") 142 fon.identificador+=1 143 c1=componente_bloque_uno( 144 float(x), 145 float(y), 146 fon.identificador, 147 color, 148 text, 149 fon, 150 ventana, 151 textorender 152 ) 153 fon.componentes.add(c1) 154 fon.objetos.append(c1) 155 fon.identificador +=1 156 c1=componente_bloque_dos ( 157 float(xfin), 158 float(yfin), 159 fon.identificador, 160 color, 161 "fin ", 162 fon, 163 ventana, 164 textorender 165 ) 166 fon.componentes.add(c1) 167 fon.objetos.append(c1) 168 fon.tipo_obj.append(5) 169 fon.tipo_obj.append(0) 170 if cadena[valor]=="<objeto_cero>\n": 171 cadena1= cadena[valor+2].strip("()\n") 172 cadena2=cadena1.split(',') 173 x,y=cadena2 174 cadenap= cadena[valor+3].strip("()\n") 175 cadenap2=cadenap.split(',') 176 x1,y1=cadenap2 177 cadena3=cadena[valor+4].strip("()\n") 178 cadena4=cadena3.split(',') 179 tupla1=(int(cadena4[0]),int(cadena4[1]),int(cadena4[2])) 180 dato=cadena[valor+1].strip("()\n") 181 fon.identificador+=1 182 c1=componente_cero_arg ( 183 float(x), 184 float(y), 185 fon.identificador, 186 tupla1, 187 "siguiente ", 188 fon, 189 ventana, 190 textorender 191 ) 192 fon.componentes.add(c1) 193 fon.objetos.append(c1) 194 fon.tipo_obj.append(4) 195 fon.objetos[fon.identificador-1].posicion2=( 196 float(x1), 197 float(y1) 198 )
199