示例#1
0
        private void radMenuItem13_Click(object sender, EventArgs e)
        {
            var np = new NewItemDialog();

            if (np.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                var f = new File();
                f.Name = np.Filename;
                f.Src  = np.Filename;
                f.ID   = np.Type;

                Workspace.SelectedProject.Files.Add(f);

                radTreeView1.Nodes.Clear();
                radTreeView1.Nodes.Add(SolutionExplorer.Build(Workspace.Solution));

                Workspace.Solution.Save(Workspace.SolutionPath);
                var p = np.Template;

                var editor = EditorBuilder.Build(p.Extension, null, null, null);

                var doc = new DocumentWindow(f.Name);
                doc.Controls.Add(editor);

                radDock1.AddDocument(doc);
            }
        }
示例#2
0
        public static void RegisterEditor(EditorBuilder value)
        {
            if (value == null)
            {
                throw new ArgumentNullException(nameof(value), Resources.NullParameterErrorMessage);
            }

            if (!Builders.ContainsKey(value.SystemType))
            {
                Builders.Add(value.SystemType, value);
            }
        }
示例#3
0
        public Form1()
        {
            InitializeComponent();

            Workspace.PluginManager = new PluginManager();
            Workspace.PluginManager.Load(Environment.CurrentDirectory + "\\Plugins");

            var p = Workspace.PluginManager.Plugins[0];

            var editor = EditorBuilder.Build(p.ItemTemplates[0].Extension, null, null, null);

            documentWindow1.Controls.Add(editor);
        }
示例#4
0
        public SplittedView(ItemTemplate p, View v)
        {
            var editor = EditorBuilder.Build(p.Extension, null, null, null);

            editor.Text = new StreamReader(new MemoryStream(Data)).ReadToEnd();

            v.Data = Data;
            var first = v.GetView();

            first.Dock = System.Windows.Forms.DockStyle.Fill;

            var c = new System.Windows.Forms.SplitContainer();

            c.Panel1.Controls.Add(first);
            c.Panel2.Controls.Add(editor);
        }
示例#5
0
        public EditorView(ItemTemplate p, File f)
        {
            var e = EditorBuilder.Build(p.Extension, null, null);

            e.CompletionRequest += (s, ee) =>
            {
                if (p.AutoCompletionProvider != null)
                {
                    e.ShowCompletionWindow(p.AutoCompletionProvider, ee.Key, true);
                }
            };

            e.DocumentChanged += (s, ev) =>
            {
                p.Plugin.Events.Fire("OnDocumentChanged", p, ev.Document.TextContent);
            };

            e.Tag = this;
            File  = f;

            _view = e;
        }
示例#6
0
        public EditorView(ItemTemplate p)
        {
            var e = EditorBuilder.Build(p.Extension, null, null, null);

            _view = e;
        }
 public EditorBuilderTests()
 {
     editor = EditorTestHelper.CreateEditor();
     builder = new EditorBuilder(editor);
 }
        public static int SetupBrowseTree(this TreeNode value, EditorBuilder builder,
                                          bool fillContent, string filter)
        {
            if (value == null)
            {
                throw new ArgumentNullException(nameof(value), Resources.NullParameterErrorMessage);
            }
            if (builder == null)
            {
                throw new ArgumentNullException(nameof(builder), Resources.NullParameterErrorMessage);
            }
            if (filter == null)
            {
                throw new ArgumentNullException(nameof(filter), Resources.NullParameterErrorMessage);
            }

            var saveNodes = new Dictionary <int, TreeNode>();

            foreach (TreeNode node in value.Nodes)
            {
                if (!node.IsExpanded)
                {
                    continue;
                }
                var saveBrowseInfo = node.Tag as EditorBrowseInfo;
                if (saveBrowseInfo == null)
                {
                    continue;
                }
                saveNodes.Add(saveBrowseInfo.ClassId, node);
            }

            var elementCount = 0;

            value.Nodes.Clear();

            var browseInfo = value.Tag as EditorBrowseInfo;

            if (browseInfo == null)
            {
                return(0);
            }

            var dbContext = Program.NinjectKernel.Get <IRealmDbContext>();
            var classList = dbContext.SystemClasses.Where(x => x.ParentClassId == browseInfo.ClassId);

            foreach (var c in classList)
            {
                var node = value.Nodes.Add("class_" + c.Id, c.Name);
                node.Tag              = new EditorBrowseInfo(builder.SystemType, c.Name, c.Id, 0);
                node.ImageKey         = Resources.ClosedFolderImageKey;
                node.ContextMenuStrip = Program.MainForm.BrowseFolder;

                elementCount += SetupBrowseTree(node, builder, fillContent, filter.Trim());
                if (saveNodes.ContainsKey(c.Id))
                {
                    node.Expand();
                }
            }

            if (!fillContent)
            {
                return(elementCount);
            }

            elementCount += builder.PopulateBrowseNode(value, browseInfo.ClassId,
                                                       Program.MainForm.BrowseFolder, filter);
            if (string.IsNullOrEmpty(filter) && elementCount > 0)
            {
                value.Expand();
            }

            return(elementCount);
        }
 public EditorBuilderTests()
 {
     editor  = EditorTestHelper.CreateEditor();
     builder = new EditorBuilder(editor);
 }