예제 #1
0
 public InterfaceFigure(InterfaceNode interfacenode)
     : base(interfacenode, type)
 {
     base.color = new Cairo.Color(1.0, 1.0, 0.7, 0.3);
 }
예제 #2
0
 private static InterfaceNode GetInterfaceNode(InterfaceDeclarationSyntax EachInterface)
 {
     InterfaceNode interfacenode = new InterfaceNode();
     interfacenode.Name = EachInterface.Identifier.ToString();
     foreach (var member in EachInterface.Members)
     {
         if (member is MethodDeclarationSyntax)
         {
             MethodDeclarationSyntax method = member as MethodDeclarationSyntax;
             interfacenode.Methods.Add(GetMethodNode(method));
         }
         else if (member is PropertyDeclarationSyntax)
         {
             PropertyDeclarationSyntax property = member as PropertyDeclarationSyntax;
             interfacenode.Properties.Add(GetPropertyNode(property));
         }
         else if (member is EventFieldDeclarationSyntax)
         {
             EventFieldDeclarationSyntax evnt = member as EventFieldDeclarationSyntax;
             interfacenode.Events.Add(GetEventNode(evnt));
         }
     }
     if (EachInterface.BaseList != null)
     {
         var res = model.GetDeclaredSymbol(EachInterface);
         foreach(var item in res.Interfaces)
         {
             interfacenode.Implementations.Add(item.ToString());
         }
     }
     return interfacenode;
 }