コード例 #1
0
ファイル: ModelViewer.xaml.cs プロジェクト: yungtau/oea
        private void btnAddClasses_Click(object sender, RoutedEventArgs e)
        {
            if (_eom == null)
            {
                //注意:从 CommonModel 中获取的实体类,是没有继承关系的。
                CommonModel.Entities.EnsureAllLoaded();
                var converter = new MetaToEOM(CommonModel.Entities.Where(m => m.EntityCategory != EntityCategory.QueryObject));
                _eom = converter.Read();
            }

            var content = new ChooseClassesControl(_eom);

            var res = App.Windows.ShowDialog(content, w =>
            {
                w.Title = "添加实体类".Translate();
                w.Width = 400;
            });

            if (res == WindowButton.Yes)
            {
                var typeList = content.SelectedEntities;
                if (typeList.Count > 0)
                {
                    var document = modelViewer.GetDocument();
                    ODMLDocumentHelper.AddToDocument(new AddToDocumentArgs
                    {
                        Docment  = document,
                        TypeList = typeList,
                        AllTypes = _eom.EntityTypes
                    });
                    modelViewer.BindDocument(document);
                }
            }
        }
コード例 #2
0
        public ChooseClassesControl(EOMGroup eom)
        {
            _eom = eom;

            InitializeComponent();

            this.Loaded += ChooseClassesControl_Loaded;
        }
コード例 #3
0
        internal ChooseTypesWindow(EOMGroup eom)
        {
            InitializeComponent();

            _eom = eom;

            this.Loaded += ChooseClassesControl_Loaded;
        }
コード例 #4
0
ファイル: ProjectEOM.cs プロジェクト: yungtau/oea
        public static EOMGroup Get(Project project)
        {
            if (_project != project)
            {
                _project = project;
                _eom = null;
            }

            if (_eom == null)
            {
                if (_project != null)
                {
                    var visitor = new EOMReader();
                    visitor.ReadProject(project);
                    _eom = visitor.GetResult();
                }
                else
                {
                    _eom = new EOMGroup();
                }
            }

            return _eom;
        }
コード例 #5
0
ファイル: ProjectEOM.cs プロジェクト: yungtau/oea
 public static void Reset()
 {
     _eom = null;
 }
コード例 #6
0
 private void Reset()
 {
     _result = new EOMGroup();
 }
コード例 #7
0
 private void ResetEOM()
 {
     _eom = null;
     ProjectEOM.Reset();
 }