Esempio n. 1
0
        private Form RunAnalyser()
        {
            string file = iInputs.SourceFiles[0].File.FullName;

            base.Engine.AnalysisEngine.DataSource = PrepareDataSource(file);
            base.Engine.AnalysisEngine.CreateParser();
            //
            Form ret = new HeapViewerForm(base.Engine.AnalysisEngine.Reconstructor, base.Settings);

            return(ret);
        }
Esempio n. 2
0
 // <summary>
 // Create a cell contents form that follows the main form selection and also
 // persists position of the form when it closes.
 // </summary>
 // <param name="aMainForm"></param>
 // <param name="aSettings"></param>
 public HeapCellContentsForm(HeapViewerForm aMainForm, XmlSettings aSettings)
 {
     iMainForm = aMainForm;
     iMainForm.HeapCellSelectedObserver += new HeapUiLib.Forms.HeapViewerForm.HeapCellSelectedObserverHandler(iMainForm_HeapCellSelectedObserver);
     iMainForm.Closing += new CancelEventHandler(iMainForm_Closing);
     iTrackingMainForm  = true;
     //
     iSettings = aSettings;
     //
     InitializeComponent();
 }
 public HeapCellRelationshipInspectorForm(HeapViewerForm aMainForm, XmlSettings aSettings)
 {
     iMainForm = aMainForm;
     iMainForm.HeapCellSelectedObserver += new HeapUiLib.Forms.HeapViewerForm.HeapCellSelectedObserverHandler(iMainForm_HeapCellSelectedObserver);
     iMainForm.Closing += new CancelEventHandler(iMainForm_Closing);
     //
     iCollection = aMainForm.CellCollection;
     iSettings   = aSettings;
     //
     InitializeComponent();
 }
Esempio n. 4
0
        // <summary>
        // Construct a new cell contents form, but persist no settings associated with this
        // popup window, nor observe the main form for positional changes
        // </summary>
        // <param name="aMainForm"></param>
        public HeapCellContentsForm(HeapViewerForm aMainForm, HeapCell aFixedCell)
        {
            iMainForm          = aMainForm;
            iMainForm.Closing += new CancelEventHandler(iMainForm_Closing);
            //
            iSettings = null;
            //
            InitializeComponent();

            // Show contents
            Cell = aFixedCell;

            // Title
            Text += " - 0x" + aFixedCell.Address.ToString("x8") + " " + aFixedCell.SymbolString;
        }
        public override Form HandleFormClosed(object aSender, EventArgs aArgs)
        {
            Form ret = null;

            //
            if (aSender is HASetupWizard)
            {
                // Check if the wizard finished successfully...
                string result = base.Settings["Wizard", "DialogResult"];
                if (result == DialogResult.OK.ToString())
                {
                    // Decide which form to show next
                    if (base.Engine.OperationType == HeapWizardEngine.TOperationType.EOperationTypeAnalyseAndView)
                    {
                        base.Engine.AnalysisEngine.CreateParser();
                        //
                        iAnalysisViewerForm = new HeapViewerForm(base.Engine.AnalysisEngine.Reconstructor, base.Settings);
                        ret = this.iAnalysisViewerForm;
                    }
                    else if (base.Engine.OperationType == HeapWizardEngine.TOperationType.EOperationTypeCompareHeapDumps)
                    {
                        // NB: Shows progress dialog immediately
                        base.Engine.ComparisonEngineData.CreateReconstructors();
                        ComparisonProgressDialogData.Compare(base.Engine.ComparisonEngineData.Reconstructor1,
                                                             base.Engine.ComparisonEngineData.Reconstructor2,
                                                             base.Engine.ComparisonEngineData.OutputFileName);
                    }
                    else if (base.Engine.OperationType == HeapWizardEngine.TOperationType.EOperationTypeCompareHeapCSV)
                    {
                        // NB: Shows progress dialog immediately
                        ComparisonProgressDialogCSV.Compare(base.Engine.ComparisonEngineCSV.SourceFileNames, base.Engine.ComparisonEngineCSV.OutputDirectory);
                    }
                }
            }
            //
            return(ret);
        }