Exemplo n.º 1
0
        public Control CreateControl()
        {
            var uiSvc = services.RequireService <IDecompilerShellUiService>();

            this.combinedCodeView      = new CombinedCodeView();
            this.combinedCodeView.Dock = DockStyle.Fill;

            this.combinedCodeView.CurrentAddressChanged += CombinedCodeView_CurrentAddressChanged;

            this.combinedCodeView.MixedCodeDataView.VScrollValueChanged += MixedCodeDataView_VScrollValueChanged;
            this.combinedCodeView.MixedCodeDataView.Services             = services;
            this.combinedCodeView.MixedCodeDataView.MouseDown           += MixedCodeDataView_MouseDown;
            this.combinedCodeView.MixedCodeDataView.ModelChanged        += MixedCodeDataView_ModelChanged;
            this.combinedCodeView.MixedCodeDataView.Navigate            += TextView_Navigate;

            this.combinedCodeView.CodeView.VScrollValueChanged += CodeView_VScrollValueChanged;
            this.combinedCodeView.CodeView.Services             = services;
            this.combinedCodeView.CodeView.MouseDown           += CodeView_MouseDown;
            this.combinedCodeView.CodeView.Navigate            += TextView_Navigate;

            this.combinedCodeView.ContextMenu = uiSvc.GetContextMenu(MenuIds.CtxCodeView);

            this.combinedCodeView.ToolBarGoButton.Click         += ToolBarGoButton_Click;
            this.combinedCodeView.ToolBarAddressTextbox.KeyDown += ToolBarAddressTextbox_KeyDown;

            this.gViewer                  = new GViewer();
            this.gViewer.Dock             = DockStyle.Fill;
            this.gViewer.Visible          = false;
            this.gViewer.PanButtonPressed = true;
            this.gViewer.ToolBarIsVisible = true;
            this.gViewer.KeyDown         += GViewer_KeyDown;
            this.gViewer.ContextMenu      = uiSvc.GetContextMenu(MenuIds.CtxCodeView);
            this.gViewer.LayoutAlgorithmSettingsButtonVisible = false;
            this.gViewer.LayoutEditingEnabled    = false;
            this.gViewer.EdgeInsertButtonVisible = false;
            this.gViewer.SaveButtonVisible       = false;
            this.gViewer.SaveGraphButtonVisible  = false;
            this.gViewer.SaveAsMsaglEnabled      = false;
            this.gViewer.UndoRedoButtonsVisible  = false;
            this.gViewer.KeyDown              += GViewer_KeyDown;
            this.gViewer.ContextMenu           = uiSvc.GetContextMenu(MenuIds.CtxCodeView);
            this.gViewer.MouseUp              += GViewer_MouseUp;
            this.gViewer.DrawingPanel.MouseUp += GViewer_MouseUp;
            var iViewer = (IViewer)gViewer;

            iViewer.MouseUp   += IViewer_MouseUp;
            iViewer.MouseDown += IViewer_MouseDown;

            this.navInteractor = new NavigationInteractor <Address>();
            this.navInteractor.Attach(this.combinedCodeView);

            declarationFormInteractor = new DeclarationFormInteractor(services);
            previewInteractor         = new PreviewInteractor(
                services,
                this.program,
                this.combinedCodeView.PreviewTimer,
                this.combinedCodeView.MixedCodeDataView);

            return(combinedCodeView);
        }
Exemplo n.º 2
0
 public void Close()
 {
     if (combinedCodeView != null)
     {
         combinedCodeView.Dispose();
     }
     combinedCodeView = null;
 }
Exemplo n.º 3
0
 public void Close()
 {
     program = null;
     ProgramChanged();
     if (combinedCodeView != null)
         combinedCodeView.Dispose();
     combinedCodeView = null;
 }
Exemplo n.º 4
0
 private void When_CombinedCodeViewCreated()
 {
     combinedCodeView = (CombinedCodeView)interactor.CreateControl();
 }