Пример #1
0
        public override IExplorerNode Creat(object sender, Models.Generic.IExplorerItem item_attribute)
        {
            var model     = sender as IBasicModel;
            var root_menu = ContextMenuFactory.Creat(item_attribute);

            root_mapdata = new Node("Map Coverage")
            {
                Image = Resources.DataFrame16,
                Tag   = root_menu
            };

            model.Project.FeatureCoverages.CollectionChanged     += LayerParameters_CollectionChanged;
            model.Project.RasterLayerCoverages.CollectionChanged += LayerParameters_CollectionChanged;
            foreach (var lp in model.Project.FeatureCoverages)
            {
                MapLayerItem layer_item = new MapLayerItem();
                layer_item.Coverage = lp;
                var creator    = NodeFactory.Select(layer_item);
                var layer_node = creator.Creat(model, layer_item) as Node;
                root_mapdata.Nodes.Add(layer_node);
            }
            foreach (var lp in model.Project.RasterLayerCoverages)
            {
                MapLayerItem layer_item = new MapLayerItem();
                layer_item.Coverage = lp;
                var creator    = NodeFactory.Select(layer_item);
                var layer_node = creator.Creat(model, layer_item) as Node;
                root_mapdata.Nodes.Add(layer_node);
            }

            return(root_mapdata);
        }
Пример #2
0
        public override IExplorerNode Creat(object package, IExplorerItem item_attribute)
        {
            var pck       = package as IPackage;
            var pck_menu  = ContextMenuFactory.Creat(item_attribute);
            var propinfos = pck.GetType().GetProperties();

            pck_menu.ExplorerItem = item_attribute;
            (pck_menu as IPackageContextMemu).Package = pck;

            Node pck_node = new Node(pck.Name)
            {
                Image = pck.Icon,
                Tag   = pck_menu
            };

            if (pck.State == ModelObjectState.Standby || pck.State == ModelObjectState.Error)
            {
                pck_node.Image = Resources.PkgInfo_File16;
            }
            foreach (var pr in propinfos)
            {
                var atr = pr.GetCustomAttributes(typeof(DisplayablePropertyItem), true);
                if (atr.Length > 0)
                {
                    var dp_item = atr[0] as DisplayablePropertyItem;
                    dp_item.PropertyInfo = pr;
                    var  prop_nodecreator = this.NodeFactory.Select(dp_item);
                    Node prop_node        = prop_nodecreator.Creat(pck, dp_item) as Node;
                    pck_node.Nodes.Add(prop_node);
                }
            }
            return(pck_node);
        }
Пример #3
0
        public override IExplorerNode Creat(object sender, IExplorerItem item_attribute)
        {
            var  pck      = sender as DataPackageCollection;
            var  pck_menu = ContextMenuFactory.Creat(item_attribute);
            Node node_pck = new Node(pck.Name)
            {
                Image = Resources.LayoutDataDrivenPagesChangeToPage16,
                Tag   = pck_menu
            };

            foreach (var pck_child in pck.Children)
            {
                VariablesFolderItem atr_pck_child = new VariablesFolderItem();
                atr_pck_child.PropertyInfo = new SimplePropertyInfo(pck_child.Name, pck_child.GetType());
                var child_menu = ContextMenuFactory.Creat(atr_pck_child) as IPackageContextMemu;
                child_menu.Package = pck_child;
                Node node_child = new Node(pck_child.Name)
                {
                    Image = Resources.FolderWithGISData16,
                    Tag   = child_menu
                };
                node_pck.Nodes.Add(node_child);
            }

            return(node_pck);
        }
Пример #4
0
 protected override void Context()
 {
     base.Context();
     _nodeContextMenuFactory = A.Fake <IContextMenuSpecificationFactory <ITreeNode> >();
     _node = A.Fake <ITreeNode>();
     _allContextMenus.Add(_nodeContextMenuFactory);
     A.CallTo(() => _nodeContextMenuFactory.IsSatisfiedBy(_node, _presenter)).Returns(false);
     sut = new ContextMenuFactory <ITreeNode>(_repository);
 }
Пример #5
0
        public override IExplorerNode Creat(object sender, IExplorerItem item_attribute)
        {
            var mat_atr     = item_attribute as StaticVariableItem;
            var pck         = sender as IPackage;
            var folder_item = new VariablesFolderItem()
            {
                PropertyInfo = item_attribute.PropertyInfo
            };
            var folder_menu = ContextMenuFactory.Creat(folder_item);
            var value       = pck.GetType().GetProperty(item_attribute.PropertyInfo.Name).GetValue(pck);
            var dc          = value as IDataCubeObject;

            folder_menu.EneableAll(false);
            folder_menu.Enable(VariablesFolderContextMenu._AT, true);
            folder_menu.Enable(VariablesFolderContextMenu._OP, false);
            (folder_menu as IPackageContextMemu).Package = pck;

            Node node_folder = new Node(item_attribute.PropertyInfo.Name)
            {
                Image = Resources.FolderWithGISData16,
                Tag   = folder_menu
            };

            if (dc != null)
            {
                folder_item.Variables = new string[dc.Size[0]];
                for (int i = 0; i < dc.Size[0]; i++)
                {
                    StaticVariableItem item = new StaticVariableItem("")
                    {
                        VariableIndex = i,
                        VariableName  = dc.Variables[i], //string.Format("{0} {1}{2}", item_attribute.PropertyInfo.Name, mat_atr.Prefix, i + 1),
                        PropertyInfo  = item_attribute.PropertyInfo
                    };
                    folder_item.Variables[i] = item.VariableName;
                    StaticVariableContextMenu elei = new StaticVariableContextMenu()
                    {
                        Package       = pck,
                        VariableIndex = i,
                        ExplorerItem  = item
                    };
                    elei.Initialize();
                    Node ndmat = new Node(item.VariableName)
                    {
                        Image = Resources.LayerRaster_B_16,
                        Tag   = elei
                    };
                    node_folder.Nodes.Add(ndmat);
                }
            }
            else
            {
            }
            return(node_folder);
        }
Пример #6
0
        public override IExplorerNode Creat(object sender, Models.Generic.IExplorerItem item_attribute)
        {
            var pck      = sender as IPackage;
            var pck_prop = pck.GetType().GetProperty(item_attribute.PropertyInfo.Name).GetValue(pck) as IDataPackage;
            var mat_menu = ContextMenuFactory.Creat(item_attribute) as IPackageContextMemu;

            mat_menu.Package = pck_prop;

            Node node_mat = new Node(item_attribute.PropertyInfo.Name)
            {
                Image = Resources.LayoutDataDrivenPagesChangeToPage16,
                Tag   = mat_menu
            };

            return(node_mat);
        }
Пример #7
0
        public override IExplorerNode Creat(object sender, IExplorerItem item_attribute)
        {
            var pck      = sender as IPackage;
            var atr      = item_attribute as TimeSeriesVariableItem;
            var mat_menu = ContextMenuFactory.Creat(item_attribute) as IPackageContextMemu;

            mat_menu.Package = pck;
            (mat_menu as IVariableContextMenu).VariableIndex = atr.VariableIndex;

            Node node_mat = new Node(item_attribute.PropertyInfo.Name)
            {
                Image = Resources.LayerRaster_B_16_gray,
                Tag   = mat_menu
            };

            return(node_mat);
        }
        public override IExplorerNode Creat(object sender, Models.Generic.IExplorerItem item_attribute)
        {
            var layer_item = item_attribute as MapLayerItem;
            var layer_menu = ContextMenuFactory.Creat(layer_item) as IMapLayerContextMenu;

            layer_menu.Coverage = layer_item.Coverage;
            Node layer_node = new Node(layer_item.Coverage.LegendText)
            {
                Image = Resources.MapPackageTiledTPKFile16,
                Tag   = layer_menu
            };

            layer_menu.Coverage.State = ModelObjectState.Ready;
            if (!File.Exists(layer_menu.Coverage.FullCoverageFileName))
            {
                layer_node.Image          = Resources.PkgInfo_File16;
                layer_menu.Coverage.State = ModelObjectState.Error;
            }
            return(layer_node);
        }
        public override IExplorerNode Creat(object sender, Models.Generic.IExplorerItem item_attribute)
        {
            var pck      = sender as IPackage;
            var mat_menu = ContextMenuFactory.Creat(item_attribute) as IPackageContextMemu;

            mat_menu.Package = pck;
            var name = item_attribute.PropertyInfo.Name;

            if (item_attribute.PropertyInfo != null)
            {
                name = item_attribute.PropertyInfo.Name;
            }

            Node node_mat = new Node(name)
            {
                Image = Resources.LayerRaster_B_16,
                Tag   = mat_menu
            };

            return(node_mat);
        }
Пример #10
0
        public override IExplorerNode Creat(object sender, Models.Generic.IExplorerItem item_attribute)
        {
            if (sender is IntegratedModel)
            {
                var ihm      = sender as IntegratedModel;
                var ihm_menu = ContextMenuFactory.Creat(item_attribute) as IModelContextMenu;
                ihm_menu.Model = ihm;

                Node node_ihm = new Node(ihm.Name)
                {
                    Image = ihm.Icon,
                    Tag   = ihm_menu,
                };

                foreach (var mm in ihm.Children.Values)
                {
                    var model_menu = ContextMenuFactory.Creat(item_attribute) as IModelContextMenu;
                    model_menu.Model = mm;

                    Node node_child = new Node(mm.Name)
                    {
                        Image = mm.Icon,
                        Tag   = model_menu
                    };

                    foreach (var pck in mm.Packages.Values)
                    {
                        var buf = pck.GetType().GetCustomAttributes(typeof(PackageItem), true);
                        if (buf.Length != 0)
                        {
                            var  pck_atr          = buf[0] as IExplorerItem;
                            var  pck_node_creator = NodeFactory.Select(pck_atr);
                            Node node_pck         = pck_node_creator.Creat(pck, pck_atr) as Node;
                            node_child.Nodes.Add(node_pck);
                        }
                    }

                    node_ihm.Nodes.Add(node_child);
                }
                return(node_ihm);
            }
            else if (sender is IBasicModel)
            {
                var ihm        = sender as IBasicModel;
                var model_menu = ContextMenuFactory.Creat(item_attribute) as IModelContextMenu;
                model_menu.Model = ihm;

                Node node_model = new Node(ihm.Name)
                {
                    Image = ihm.Icon,
                    Tag   = model_menu
                };
                foreach (var pck in ihm.Packages.Values)
                {
                    var buf = pck.GetType().GetCustomAttributes(typeof(PackageItem), true);
                    if (buf.Length != 0)
                    {
                        var  pck_atr          = buf[0] as IExplorerItem;
                        var  pck_node_creator = NodeFactory.Select(pck_atr);
                        Node node_pck         = pck_node_creator.Creat(pck, pck_atr) as Node;
                        node_model.Nodes.Add(node_pck);
                    }
                }
                return(node_model);
            }
            else
            {
                return(null);
            }
        }