Class: CapicuaGen::Balthazar::AndyMainActivityFeature
- Inherits:
-
TemplateFeature
- Object
- TemplateFeature
- CapicuaGen::Balthazar::AndyMainActivityFeature
- Includes:
- CapicuaGen, CapicuaGen::Balthazar, Melchior
- Defined in:
- lib/CapicuaGenBalthazar/GUI/AndyMainActivity/Source/andy_main_activity_feature.rb
Overview
Caracteristica generadora para pantalla visualizadora de entidades
Instance Method Summary collapse
-
#configure_attributes ⇒ Object
Configura los atributos personalizados de la caracteristica (antes de establecer el generador).
-
#configure_template_targets ⇒ Object
Configura los objetivos de las platillas (despues de establecer el generador).
-
#generate ⇒ Object
Genera el codigo de la carateristica.
-
#generate_configuration ⇒ Object
Modifica el archivo Manifest para agregar las actividades.
-
#initialize(values = {}) ⇒ AndyMainActivityFeature
constructor
Inicializa la caracteristica.
-
#reset_attributes ⇒ Object
Resetea los atributos personalizados de la caracteristica (antes de establecer el generador).
Constructor Details
#initialize(values = {}) ⇒ AndyMainActivityFeature
Inicializa la caracteristica
43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/CapicuaGenBalthazar/GUI/AndyMainActivity/Source/andy_main_activity_feature.rb', line 43 def initialize(values= {}) super(values) # Configuro los tipos si estos no han sido configurados previamente self.types= [:catalog] if self.types.blank? # Configuro los templates set_template("main", Template.new(:file => 'main.erb')) set_template('main_activity', Template.new(:file => 'main_activity.erb')) end |
Instance Method Details
#configure_attributes ⇒ Object
Configura los atributos personalizados de la caracteristica (antes de establecer el generador)
68 69 70 71 |
# File 'lib/CapicuaGenBalthazar/GUI/AndyMainActivity/Source/andy_main_activity_feature.rb', line 68 def configure_attributes() self.generation_attributes[:package] = "#{self.generation_attributes[:package]}.activities" unless self.generation_attributes.has_in_self?(:package) self.generation_attributes[:package_out_dir]= get_package_out_dir end |
#configure_template_targets ⇒ Object
Configura los objetivos de las platillas (despues de establecer el generador)
56 57 58 59 |
# File 'lib/CapicuaGenBalthazar/GUI/AndyMainActivity/Source/andy_main_activity_feature.rb', line 56 def configure_template_targets set_template_target("main", TemplateTarget.new(:out_file => get_package_out_file("MainActivity.java"))) set_template_target("main_activity", TemplateTarget.new(:out_file => get_activity_out_file("activity_main.xml"))) end |
#generate ⇒ Object
Genera el codigo de la carateristica
74 75 76 77 |
# File 'lib/CapicuaGenBalthazar/GUI/AndyMainActivity/Source/andy_main_activity_feature.rb', line 74 def generate super() generate_configuration end |
#generate_configuration ⇒ Object
Modifica el archivo Manifest para agregar las actividades.
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 |
# File 'lib/CapicuaGenBalthazar/GUI/AndyMainActivity/Source/andy_main_activity_feature.rb', line 81 def generate_configuration manifest_file= get_manifest_file return unless manifest_file # Ruta para conseguir el archivo manifiest.xml xml= Nokogiri::XML(File.read(manifest_file)) =begin <uses-permission android:name= "android.permission.INTERNET" /> =end xpath = "uses-permission[@android:name= 'android.permission.INTERNET']" node = XMLHelper.get_node_from_xml_document(xml, xpath) # Configuro el nodo node['android:name'] = "android.permission.INTERNET" =begin <application> <activity android:name= ".activities.MainActivity" android:screenOrientation= "portrait" android:theme= "@style/Theme.AppCompat" /> </application> =end # Recupero el nodo xpath = "application/activity[@android:name= '.activities.MainActivity']" node = XMLHelper.get_node_from_xml_document(xml, xpath) # Configuro el nodo node['android:name'] = ".activities.MainActivity" node['android:screenOrientation']= "portrait" node['android:theme'] = "@style/Theme.AppCompat" # Formateo el texto formatted_xml = XMLHelper.format(xml.to_xml) # Guardo el resultado File.write(manifest_file, formatted_xml) end |
#reset_attributes ⇒ Object
Resetea los atributos personalizados de la caracteristica (antes de establecer el generador)
62 63 64 65 |
# File 'lib/CapicuaGenBalthazar/GUI/AndyMainActivity/Source/andy_main_activity_feature.rb', line 62 def reset_attributes self.generation_attributes[:package] = nil self.generation_attributes[:package_out_dir]= nil end |