summaryrefslogtreecommitdiff
path: root/BCT/BytecodeTranslator/MetadataTraverser.cs
diff options
context:
space:
mode:
Diffstat (limited to 'BCT/BytecodeTranslator/MetadataTraverser.cs')
-rw-r--r--BCT/BytecodeTranslator/MetadataTraverser.cs27
1 files changed, 25 insertions, 2 deletions
diff --git a/BCT/BytecodeTranslator/MetadataTraverser.cs b/BCT/BytecodeTranslator/MetadataTraverser.cs
index d5e19fb0..f1f7e714 100644
--- a/BCT/BytecodeTranslator/MetadataTraverser.cs
+++ b/BCT/BytecodeTranslator/MetadataTraverser.cs
@@ -70,7 +70,7 @@ namespace BytecodeTranslator {
var savedPrivateTypes = this.privateTypes;
this.privateTypes = new List<ITypeDefinition>();
- trackPageNameVariableName(typeDefinition);
+ trackPhonePageNameVariableName(typeDefinition);
trackPhoneApplicationClassname(typeDefinition);
if (typeDefinition.IsClass) {
@@ -117,7 +117,7 @@ namespace BytecodeTranslator {
}
}
- private void trackPageNameVariableName(ITypeDefinition typeDef) {
+ private void trackPhonePageNameVariableName(ITypeDefinition typeDef) {
if (PhoneCodeHelper.instance().PhonePlugin != null && typeDef.isPhoneApplicationPageClass(sink.host)) {
INamespaceTypeDefinition namedTypeDef = typeDef as INamespaceTypeDefinition;
string fullyQualifiedName = namedTypeDef.ToString();
@@ -130,6 +130,29 @@ namespace BytecodeTranslator {
}
}
+ /*
+ private void translateAnonymousControlsForPage(ITypeDefinition typeDef) {
+ if (PhoneCodeHelper.instance().PhonePlugin != null && typeDef.isPhoneApplicationPageClass(sink.host)) {
+ IEnumerable<ControlInfoStructure> pageCtrls= PhoneCodeHelper.instance().PhonePlugin.getControlsForPage(typeDef.ToString());
+ foreach (ControlInfoStructure ctrlInfo in pageCtrls) {
+ if (ctrlInfo.Name.Contains(PhoneControlsPlugin.BOOGIE_DUMMY_CONTROL)) {
+ string anonymousControlName = ctrlInfo.Name;
+ IFieldDefinition fieldDef = new FieldDefinition() {
+ ContainingTypeDefinition = typeDef,
+ Name = sink.host.NameTable.GetNameFor(anonymousControlName),
+ InternFactory = sink.host.InternFactory,
+ Visibility = TypeMemberVisibility.Public,
+ Type = sink.host.PlatformType.SystemObject,
+ IsStatic = false,
+ };
+ (typeDef as Microsoft.Cci.MutableCodeModel.NamespaceTypeDefinition).Fields.Add(fieldDef);
+ //sink.FindOrCreateFieldVariable(fieldDef);
+ }
+ }
+ }
+ }
+ * */
+
private void CreateDefaultStructConstructor(ITypeDefinition typeDefinition) {
Contract.Requires(typeDefinition.IsStruct);