예제 #1
0
        private void CreateExperimentControlToolbar()
        {
            DockItemToolbar toolbar             = m_experimentPad.GetToolbar(PositionType.Top);
            Button          runExperimentButton = new Button(new Gtk.Image(Gdk.Pixbuf.LoadFromResource("TraceLab.UI.GTK.Resources.Icon_Play16.png")));

            runExperimentButton.Clicked    += new EventHandler(OnRunExperimentButtonClick);
            runExperimentButton.TooltipText = "Run Experiment";
            toolbar.Add(runExperimentButton);

            Button stopExperimentButton = new Button(new Gtk.Image(Gdk.Pixbuf.LoadFromResource("TraceLab.UI.GTK.Resources.Stop.png")));

            stopExperimentButton.Clicked    += new EventHandler(OnStopExperimentButtonClick);
            stopExperimentButton.TooltipText = "Stop experiment after all currently running components have finished processing";
            toolbar.Add(stopExperimentButton);

            Button defineCompositeComponentButton = new Button(new Gtk.Image(Gdk.Pixbuf.LoadFromResource("TraceLab.UI.GTK.Resources.DefineCompositeComponent.png")));

            defineCompositeComponentButton.Clicked    += new EventHandler(OnDefineCompositeComponentButtonClick);
            defineCompositeComponentButton.TooltipText = "Define composite component from selected nodes";
            toolbar.Add(defineCompositeComponentButton);

            Button packageExperimentButton = new Button(new Gtk.Image(Gdk.Pixbuf.LoadFromResource("TraceLab.UI.GTK.Resources.Icon_PkgCreate16.png")));

            packageExperimentButton.Clicked    += OnPackageExperimentButtonClicked;
            packageExperimentButton.TooltipText = "Build package from experiment";
            toolbar.Add(packageExperimentButton);

            Button aboutExperimentButton = new Button(new Gtk.Image(Gdk.Pixbuf.LoadFromResource("TraceLab.UI.GTK.Resources.Icon_Info16.png")));

            aboutExperimentButton.Clicked    += new EventHandler(OnAboutExperimentButtonClick);
            aboutExperimentButton.TooltipText = "About Experiment";
            toolbar.Add(aboutExperimentButton);

            toolbar.ShowAll();
        }
예제 #2
0
        public void Initialize(DockFrame workspace, Menu padMenu)
        {
            var             layers      = new LayersListWidget();
            DockItem        layers_item = workspace.AddItem("Layers");
            DockItemToolbar layers_tb   = layers_item.GetToolbar(PositionType.Bottom);

            layers_item.Label     = Catalog.GetString("Layers");
            layers_item.Content   = layers;
            layers_item.Icon      = PintaCore.Resources.GetIcon("Menu.Layers.MergeLayerDown.png");
            layers_item.Behavior |= DockItemBehavior.CantClose;

            layers_tb.Add(PintaCore.Actions.Layers.AddNewLayer.CreateDockToolBarItem());
            layers_tb.Add(PintaCore.Actions.Layers.DeleteLayer.CreateDockToolBarItem());
            layers_tb.Add(PintaCore.Actions.Layers.DuplicateLayer.CreateDockToolBarItem());
            layers_tb.Add(PintaCore.Actions.Layers.MergeLayerDown.CreateDockToolBarItem());
            layers_tb.Add(PintaCore.Actions.Layers.MoveLayerUp.CreateDockToolBarItem());
            layers_tb.Add(PintaCore.Actions.Layers.MoveLayerDown.CreateDockToolBarItem());

            Gtk.ToggleAction show_layers = padMenu.AppendToggleAction("Layers", Catalog.GetString("Layers"), null, "Menu.Layers.MergeLayerDown.png");
            show_layers.Activated      += delegate { layers_item.Visible = show_layers.Active; };
            layers_item.VisibleChanged += delegate { show_layers.Active = layers_item.Visible; };

            show_layers.Active = layers_item.Visible;

            PintaCore.Workspace.ActiveDocumentChanged += delegate { layers.Reset(); };
        }
예제 #3
0
        protected override void Initialize(IPadWindow window)
        {
            DockItemToolbar toolbar = window.GetToolbar(DockPositionType.Left);

            optionsToolbar = toolbar;

            refreshButton             = new Button(new ImageView("gtk-refresh", IconSize.Menu));
            refreshButton.Clicked    += OnButtonRefreshClick;
            refreshButton.TooltipText = GettextCatalog.GetString("Refresh");
            toolbar.Add(refreshButton);

            toolbar.ShowAll();

            toolbar = window.GetToolbar(DockPositionType.Right);

            stopButton             = new Button(new ImageView(Ide.Gui.Stock.Stop, IconSize.Menu));
            stopButton.Clicked    += OnStopButtonClick;
            stopButton.TooltipText = GettextCatalog.GetString("Stop selected task");
            toolbar.Add(stopButton);

            clearButton             = new Button(new ImageView(Ide.Gui.Stock.Broom, IconSize.Menu));
            clearButton.Clicked    += OnClearButtonClick;
            clearButton.TooltipText = GettextCatalog.GetString("Clear Output");
            toolbar.Add(clearButton);

            showLogButton = new ToggleButton();
            AddIcon(showLogButton, Ide.Gui.Stock.Console);
            showLogButton.Clicked    += OnShowLogButtonClick;
            showLogButton.TooltipText = GettextCatalog.GetString("Show Task Runner Explorer Output");
            toolbar.Add(showLogButton);

            toolbar.ShowAll();
        }
예제 #4
0
        public void Initialize(IPadWindow window)
        {
            DockItemToolbar toolbar = window.GetToolbar(Gtk.PositionType.Top);

            Gtk.Button goUp = new Gtk.Button(new Gtk.Image(Gtk.Stock.GoUp, Gtk.IconSize.Menu));
            goUp.TooltipText = GettextCatalog.GetString("Go up one level");
            goUp.Clicked    += delegate
            {
                fb.GoUp();
            };
            toolbar.Add(goUp);

            Gtk.Button goHome = new Gtk.Button(new Gtk.Image(Gtk.Stock.Home, Gtk.IconSize.Menu));
            goHome.TooltipText = GettextCatalog.GetString("Home");
            goHome.Clicked    += delegate
            {
                fb.GoHome();
            };
            toolbar.Add(goHome);

            Gtk.Entry entry = new Gtk.Entry();
            entry.TooltipText = GettextCatalog.GetString("Location");
            entry.Activated  += delegate
            {
                fb.GoPath(entry.Text);
            };

            fb.DirectoryChangedEvent += delegate
            {
                entry.Text     = fb.CurrentDir;
                goUp.Sensitive = System.IO.Path.GetPathRoot(fb.CurrentDir) != fb.CurrentDir;
            };
            toolbar.Add(entry, true);
            toolbar.ShowAll();
        }
예제 #5
0
        void IPadContent.Initialize(IPadWindow window)
        {
            this.window = window;
            window.Icon = icon;

            DockItemToolbar toolbar = window.GetToolbar(PositionType.Right);

            buttonStop             = new Button(new Gtk.Image("gtk-stop", IconSize.Menu));
            buttonStop.Clicked    += new EventHandler(OnButtonStopClick);
            buttonStop.TooltipText = GettextCatalog.GetString("Stop");
            toolbar.Add(buttonStop);

            buttonClear             = new Button(new Gtk.Image("gtk-clear", IconSize.Menu));
            buttonClear.Clicked    += new EventHandler(OnButtonClearClick);
            buttonClear.TooltipText = GettextCatalog.GetString("Clear console");
            toolbar.Add(buttonClear);

            buttonPin       = new ToggleButton();
            buttonPin.Image = new Gtk.Image((IconId)"md-pin-up", IconSize.Menu);
            buttonPin.Image.ShowAll();
            buttonPin.Clicked    += new EventHandler(OnButtonPinClick);
            buttonPin.TooltipText = GettextCatalog.GetString("Pin output pad");
            toolbar.Add(buttonPin);
            toolbar.ShowAll();
        }
예제 #6
0
 public static void Add (this DockItemToolbar toolbar, CommandEntrySet entrySet, Gtk.Widget commandTarget)
 {
     CommandDockBar dockBar = new CommandDockBar (toolbar, commandTarget);
     foreach (CommandEntry entry in entrySet)
     {
         dockBar.Add (entry);
     }
 }
예제 #7
0
 public CommandDockBar (DockItemToolbar toolbar, object initialTarget)
 {
     this.toolbar = toolbar;
     this.initialTarget = initialTarget;
     if (toolbar.DockItem.ContentVisible)
         IdeApp.CommandService.RegisterCommandBar (this);
     toolbar.DockItem.ContentVisibleChanged += HandleToolbarDockItemContentVisibleChanged;
 }
예제 #8
0
        void CreateToolbar(IPadWindow window)
        {
            toolbarWidget = new PackageConsoleToolbarWidget();
            DockItemToolbar toolbar = window.GetToolbar(DockPositionType.Top);

            toolbar.Add(toolbarWidget, false);
            toolbar.ShowAll();
        }
예제 #9
0
        void IPadContent.Initialize(IPadWindow window)
        {
            this.window  = window;
            window.Title = GettextCatalog.GetString("Errors");

            DockItemToolbar toolbar = window.GetToolbar(PositionType.Top);

            errorBtn        = new ToggleButton();
            errorBtn.Active = (bool)PropertyService.Get(showErrorsPropertyName, true);
            errorBtn.Image  = new Gtk.Image(Stock.Error, Gtk.IconSize.Menu);
            errorBtn.Image.Show();
            errorBtn.Toggled    += new EventHandler(FilterChanged);
            errorBtn.TooltipText = GettextCatalog.GetString("Show Errors");
            UpdateErrorsNum();
            toolbar.Add(errorBtn);

            warnBtn        = new ToggleButton();
            warnBtn.Active = (bool)PropertyService.Get(showWarningsPropertyName, true);
            warnBtn.Image  = new Gtk.Image(Stock.Warning, Gtk.IconSize.Menu);
            warnBtn.Image.Show();
            warnBtn.Toggled    += new EventHandler(FilterChanged);
            warnBtn.TooltipText = GettextCatalog.GetString("Show Warnings");
            UpdateWarningsNum();
            toolbar.Add(warnBtn);

            msgBtn        = new ToggleButton();
            msgBtn.Active = (bool)PropertyService.Get(showMessagesPropertyName, true);
            msgBtn.Image  = new Gtk.Image(Stock.Information, Gtk.IconSize.Menu);
            msgBtn.Image.Show();
            msgBtn.Toggled    += new EventHandler(FilterChanged);
            msgBtn.TooltipText = GettextCatalog.GetString("Show Messages");
            UpdateMessagesNum();
            toolbar.Add(msgBtn);

            toolbar.Add(new SeparatorToolItem());

            logBtn       = new ToggleButton();
            logBtn.Label = GettextCatalog.GetString("Build Output");
            logBtn.Image = ImageService.GetImage("md-message-log", Gtk.IconSize.Menu);
            logBtn.Image.Show();
            logBtn.TooltipText = GettextCatalog.GetString("Show build output");
            logBtn.Toggled    += HandleLogBtnToggled;
            toolbar.Add(logBtn);

            //Dummy widget to take all space between "Build Output" button and SearchEntry
            toolbar.Add(new HBox(), true);

            searchEntry = new SearchEntry();
            searchEntry.Entry.Changed += searchPatternChanged;
            searchEntry.WidthRequest   = 200;
            searchEntry.Visible        = true;
            toolbar.Add(searchEntry);

            toolbar.ShowAll();

            UpdatePadIcon();
        }
예제 #10
0
 override protected void Initialize(IPadWindow window)
 {
     separator = new VSeparator();
     toolbar   = window.GetToolbar(DockPositionType.Top);
     toolbar.Add(switcherCombo);
     toolbar.ShowAll();
     switcherCombo.Changed += new EventHandler(OnContentSwitched);
     OnContentSwitched(null, null);
 }
예제 #11
0
 protected override void Initialize(IPadWindow window)
 {
     base.Initialize(window);
     IdeApp.Workbench.ActiveDocumentChanged += DocumentChangedHandler;
     CurrentDoc      = IdeApp.Workbench.ActiveDocument;
     toolbar         = window.GetToolbar(DockPositionType.Top);
     toolbar.Visible = false;
     Update();
 }
        void CreateToolbar(IPadWindow window)
        {
            toolbarWidget = new PackageConsoleToolbarWidget();
            toolbarWidget.ClearButtonClicked += ClearButtonClicked;
            DockItemToolbar toolbar = window.GetToolbar(Gtk.PositionType.Top);

            toolbar.Add(toolbarWidget, false);
            toolbar.ShowAll();
        }
        protected override void Initialize(IPadWindow window)
        {
            DockItemToolbar toolbar = window.GetToolbar(DockPositionType.Right);

            var clearButton = new Button(new ImageView(Ide.Gui.Stock.Broom, IconSize.Menu));

            clearButton.Clicked    += ButtonClearClick;
            clearButton.TooltipText = GettextCatalog.GetString("Clear");
            toolbar.Add(clearButton);
            toolbar.ShowAll();
            logView.ShowAll();
        }
예제 #14
0
        public override void Initialize(IPadWindow container)
        {
            DockItemToolbar toolbar = container.GetToolbar(PositionType.Right);

            var clearButton = new Button(new Gtk.Image(Ide.Gui.Stock.Broom, IconSize.Menu));

            clearButton.Clicked    += ButtonClearClick;
            clearButton.TooltipText = GettextCatalog.GetString("Clear");
            toolbar.Add(clearButton);
            toolbar.ShowAll();
            Control.ShowAll();
        }
예제 #15
0
        public ClassBrowserPadWidget(ExtensibleTreeView treeView, IPadWindow window)
        {
            this.treeView = treeView;

            DockItemToolbar searchBox = window.GetToolbar(PositionType.Top);

            searchEntry = new Entry();
            searchBox.Add(searchEntry, true);
            buttonSearch              = new Button(new Gtk.Image(Gtk.Stock.Find, IconSize.Menu));
            buttonSearch.Relief       = ReliefStyle.None;
            buttonCancelSearch        = new Button(new Gtk.Image(Gtk.Stock.Stop, IconSize.Menu));
            buttonCancelSearch.Relief = ReliefStyle.None;
            searchBox.Add(buttonSearch);
            searchBox.Add(buttonCancelSearch);
            searchBox.ShowAll();

            notebook            = new Notebook();
            notebook.ShowTabs   = false;
            notebook.ShowBorder = false;
            this.PackEnd(notebook, true, true, 0);

            notebook.AppendPage(treeView, null);
            ScrolledWindow scrolledWindow = new ScrolledWindow();

            scrolledWindow.Add(searchResultsTreeView);
            notebook.AppendPage(scrolledWindow, null);

            list = new ListStore(new Type[] {
                typeof(Pixbuf),
                typeof(string),
                typeof(IType)
            });
            model = new TreeModelSort(list);
            searchResultsTreeView.Model = model;
            searchResultsTreeView.AppendColumn(string.Empty, new Gtk.CellRendererPixbuf(), "pixbuf", 0);
            searchResultsTreeView.AppendColumn(string.Empty, new Gtk.CellRendererText(), "text", 1);
            searchResultsTreeView.HeadersVisible  = false;
            searchResultsTreeView.RowActivated   += SearchRowActivated;
            IdeApp.Workspace.WorkspaceItemOpened += OnOpenCombine;
            IdeApp.Workspace.WorkspaceItemClosed += OnCloseCombine;

            this.searchEntry.Changed        += SearchEntryChanged;
            this.buttonCancelSearch.Clicked += CancelSearchClicked;
            this.searchEntry.Activated      += SearchClicked;
            this.searchEntry.KeyPressEvent  += SearchEntryKeyPressEvent;
            this.buttonSearch.Clicked       += SearchClicked;

            this.ShowAll();
        }
예제 #16
0
        void IPadContent.Initialize(IPadWindow window)
        {
            this.window  = window;
            window.Title = GettextCatalog.GetString("Errors");

            DockItemToolbar toolbar = window.GetToolbar(PositionType.Top);

            errorBtn        = new ToggleButton();
            errorBtn.Active = (bool)PropertyService.Get(showErrorsPropertyName, true);
            errorBtn.Image  = new Gtk.Image(Stock.Error, Gtk.IconSize.Menu);
            errorBtn.Image.Show();
            errorBtn.Toggled    += new EventHandler(FilterChanged);
            errorBtn.TooltipText = GettextCatalog.GetString("Show Errors");
            UpdateErrorsNum();
            toolbar.Add(errorBtn);

            warnBtn        = new ToggleButton();
            warnBtn.Active = (bool)PropertyService.Get(showWarningsPropertyName, true);
            warnBtn.Image  = new Gtk.Image(Stock.Warning, Gtk.IconSize.Menu);
            warnBtn.Image.Show();
            warnBtn.Toggled    += new EventHandler(FilterChanged);
            warnBtn.TooltipText = GettextCatalog.GetString("Show Warnings");
            UpdateWarningsNum();
            toolbar.Add(warnBtn);

            msgBtn        = new ToggleButton();
            msgBtn.Active = (bool)PropertyService.Get(showMessagesPropertyName, true);
            msgBtn.Image  = new Gtk.Image(Stock.Information, Gtk.IconSize.Menu);
            msgBtn.Image.Show();
            msgBtn.Toggled    += new EventHandler(FilterChanged);
            msgBtn.TooltipText = GettextCatalog.GetString("Show Messages");
            UpdateMessagesNum();
            toolbar.Add(msgBtn);

            toolbar.Add(new SeparatorToolItem());

            logBtn       = new ToggleButton();
            logBtn.Label = GettextCatalog.GetString("Build Output");
            logBtn.Image = ImageService.GetImage("md-message-log", Gtk.IconSize.Menu);
            logBtn.Image.Show();
            logBtn.TooltipText = GettextCatalog.GetString("Show build output");
            logBtn.Toggled    += HandleLogBtnToggled;
            toolbar.Add(logBtn);

            toolbar.ShowAll();

            UpdatePadIcon();
        }
예제 #17
0
        void CreateToolbar(IPadWindow window)
        {
            DockItemToolbar toolbar = window.GetToolbar(DockPositionType.Right);

            stopButton             = new Button(new ImageView(Ide.Gui.Stock.Stop, IconSize.Menu));
            stopButton.Clicked    += StopButtonClicked;
            stopButton.TooltipText = GettextCatalog.GetString("Stop running");
            IsStopButtonEnabled    = false;
            toolbar.Add(stopButton);

            clearButton             = new Button(new ImageView(Ide.Gui.Stock.Broom, IconSize.Menu));
            clearButton.Clicked    += ClearButtonClicked;
            clearButton.TooltipText = GettextCatalog.GetString("Clear");
            toolbar.Add(clearButton);

            toolbar.ShowAll();
        }
예제 #18
0
        public MonoDroidDeviceLog(IPadWindow container)
        {
            Stetic.BinContainer.Attach(this);
            DockItemToolbar toolbar = container.GetToolbar(PositionType.Top);

            var chooseDeviceButton = new Button()
            {
                Label = GettextCatalog.GetString("Choose Device"),
            };

            deviceLabel = new Label()
            {
                Xalign = 0,
            };
            SetDeviceLabel();
            var reconnectButton = new Button()
            {
                Label = GettextCatalog.GetString("Reconnect"),
            };

            toolbar.Add(deviceLabel);
            toolbar.Add(chooseDeviceButton);
            toolbar.Add(reconnectButton);

            reconnectButton.Clicked += delegate {
                Disconnect();
                if (Device != null)
                {
                    Connect();
                }
                else
                {
                    SetDeviceLabel();
                }
            };
            chooseDeviceButton.Clicked += delegate {
                Device = MonoDroidUtility.ChooseDevice(null);
            };

            log = new LogView();
            this.Add(log);

            toolbar.ShowAll();
            ShowAll();
        }
예제 #19
0
        public void Initialize(IPadWindow container)
        {
            view = new ConsoleView();
            view.ConsoleInput += OnViewConsoleInput;
            Pango.FontDescription font = Pango.FontDescription.FromString(DesktopService.DefaultMonospaceFont);
            font.Size = (font.Size * 8) / 10;
            view.SetFont(font);
            view.ShadowType = Gtk.ShadowType.None;
            view.ShowAll();

            DockItemToolbar toolbar     = container.GetToolbar(Gtk.PositionType.Right);
            DockToolButton  buttonClear = new DockToolButton("gtk-clear");

            buttonClear.Clicked    += ButtonClearClicked;
            buttonClear.TooltipText = GettextCatalog.GetString("Clear");
            toolbar.Add(buttonClear);
            toolbar.ShowAll();
        }
예제 #20
0
        public void Initialize(DockFrame workspace, Menu padMenu)
        {
            var             history      = new HistoryTreeView();
            DockItem        history_item = workspace.AddItem("History");
            DockItemToolbar history_tb   = history_item.GetToolbar(PositionType.Bottom);

            history_item.Label           = Catalog.GetString("History");
            history_item.DefaultLocation = "Images/Bottom";
            history_item.Content         = history;
            history_item.Icon            = PintaCore.Resources.GetIcon("Menu.Layers.DuplicateLayer.png");

            history_tb.Add(PintaCore.Actions.Edit.Undo.CreateDockToolBarItem());
            history_tb.Add(PintaCore.Actions.Edit.Redo.CreateDockToolBarItem());
            Gtk.ToggleAction show_history = padMenu.AppendToggleAction("History", Catalog.GetString("History"), null, "Menu.Layers.DuplicateLayer.png");
            show_history.Activated      += delegate { history_item.Visible = show_history.Active; };
            history_item.VisibleChanged += delegate { show_history.Active = history_item.Visible; };

            show_history.Active = history_item.Visible;
        }
예제 #21
0
 public void Attach(DockItemToolbar tb)
 {
     if (this.tb == tb)
     {
         return;
     }
     this.tb = tb;
     if (tb != null)
     {
         tb.Visible = visible;
         foreach (var c in tb.Children)
         {
             tb.Remove(c);
         }
         foreach (var b in buttons)
         {
             tb.Add(b);
         }
     }
 }
예제 #22
0
        protected override void Initialize(IPadWindow window)
        {
            window.Icon = icon;

            DockItemToolbar toolbar = window.GetToolbar(DockPositionType.Right);

            buttonStop             = new Button(new ImageView(Stock.Stop, IconSize.Menu));
            buttonStop.Clicked    += new EventHandler(OnButtonStopClick);
            buttonStop.TooltipText = GettextCatalog.GetString("Stop");
            toolbar.Add(buttonStop);

            buttonClear             = new Button(new ImageView(Stock.Broom, IconSize.Menu));
            buttonClear.Clicked    += new EventHandler(OnButtonClearClick);
            buttonClear.TooltipText = GettextCatalog.GetString("Clear console");
            toolbar.Add(buttonClear);

            buttonPin       = new ToggleButton();
            buttonPin.Image = new ImageView(Stock.PinUp, IconSize.Menu);
            buttonPin.Image.ShowAll();
            buttonPin.Clicked    += new EventHandler(OnButtonPinClick);
            buttonPin.TooltipText = GettextCatalog.GetString("Pin output pad");
            toolbar.Add(buttonPin);
            toolbar.ShowAll();
        }
예제 #23
0
        /// <summary>
        /// Initialize the window pad in the given dock frame.
        /// </summary>
        /// <param name='dockFrame'>
        /// Dock frame.
        /// </param>
        public void Initialize(DockFrame dockFrame)
        {
            m_dockFrame = dockFrame;
            DockItem outputDockingWindow = m_dockFrame.AddItem("Output");

            outputDockingWindow.Label           = Catalog.GetString("Output");
            outputDockingWindow.DefaultHeight   = 100;
            outputDockingWindow.DefaultLocation = "ExperimentPad/Bottom"; //or experiment
            outputDockingWindow.Behavior       |= DockItemBehavior.CantClose;

            DockItemToolbar toolbar = outputDockingWindow.GetToolbar(PositionType.Top);

            m_buttonClear          = new Button(new Gtk.Image("gtk-clear", IconSize.Menu));
            m_buttonClear.Clicked += new EventHandler(OnButtonClearClick);
            toolbar.Add(m_buttonClear);

            toolbar.ShowAll();

            outputDockingWindow.Content = CreateOutputView();

            LoadIcons();

            m_initialized = true;
        }
예제 #24
0
        protected override void Initialize(IPadWindow window)
        {
            window.Title = GettextCatalog.GetString("Errors");

            DockItemToolbar toolbar = window.GetToolbar(DockPositionType.Top);

            toolbar.Accessible.Name = "ErrorPad.Toolbar";
            toolbar.Accessible.SetLabel("Error Pad Toolbar");
            toolbar.Accessible.SetRole("AXToolbar", "Pad toolbar");
            toolbar.Accessible.Description = GettextCatalog.GetString("The Error pad toolbar");

            errorBtn = MakeButton(Stock.Error, "toggleErrors", ShowErrors, out errorBtnLbl);
            errorBtn.Accessible.Name = "ErrorPad.ErrorButton";

            errorBtn.Toggled               += new EventHandler(FilterChanged);
            errorBtn.TooltipText            = GettextCatalog.GetString("Show Errors");
            errorBtn.Accessible.Description = GettextCatalog.GetString("Show Errors");
            UpdateErrorsNum();
            toolbar.Add(errorBtn);

            warnBtn = MakeButton(Stock.Warning, "toggleWarnings", ShowWarnings, out warnBtnLbl);
            warnBtn.Accessible.Name        = "ErrorPad.WarningButton";
            warnBtn.Toggled               += new EventHandler(FilterChanged);
            warnBtn.TooltipText            = GettextCatalog.GetString("Show Warnings");
            warnBtn.Accessible.Description = GettextCatalog.GetString("Show Warnings");
            UpdateWarningsNum();
            toolbar.Add(warnBtn);

            msgBtn = MakeButton(Stock.Information, "toggleMessages", ShowMessages, out msgBtnLbl);
            msgBtn.Accessible.Name        = "ErrorPad.MessageButton";
            msgBtn.Toggled               += new EventHandler(FilterChanged);
            msgBtn.TooltipText            = GettextCatalog.GetString("Show Messages");
            msgBtn.Accessible.Description = GettextCatalog.GetString("Show Messages");
            UpdateMessagesNum();
            toolbar.Add(msgBtn);

            var sep = new SeparatorToolItem();

            sep.Accessible.SetShouldIgnore(true);
            toolbar.Add(sep);

            logBtn = MakeButton("md-message-log", "toggleBuildOutput", out logBtnLbl);
            logBtn.Accessible.Name        = "ErrorPad.LogButton";
            logBtn.TooltipText            = GettextCatalog.GetString("Show build output");
            logBtn.Accessible.Description = GettextCatalog.GetString("Show build output");

            logBtnLbl.Text = GettextCatalog.GetString("Build Output");
            logBtn.Accessible.SetTitle(logBtnLbl.Text);

            logBtn.Clicked += HandleLogBtnClicked;
            toolbar.Add(logBtn);

            buildOutput = new BuildOutput();

            //Dummy widget to take all space between "Build Output" button and SearchEntry
            var spacer = new HBox();

            spacer.Accessible.SetShouldIgnore(true);
            toolbar.Add(spacer, true);

            searchEntry = new SearchEntry();
            searchEntry.Accessible.SetLabel(GettextCatalog.GetString("Search"));
            searchEntry.Accessible.Name        = "ErrorPad.Search";
            searchEntry.Accessible.Description = GettextCatalog.GetString("Search the error data");
            searchEntry.Entry.Changed         += searchPatternChanged;
            searchEntry.WidthRequest           = 200;
            searchEntry.Visible = true;
            toolbar.Add(searchEntry);

            toolbar.ShowAll();

            UpdatePadIcon();

            IdeApp.ProjectOperations.StartBuild += OnBuildStarted;
        }
예제 #25
0
        public Toolbox(ToolboxService toolboxService, IPadWindow container)
        {
            this.toolboxService = toolboxService;
            this.container      = container;

            #region Toolbar
            DockItemToolbar toolbar = container.GetToolbar(PositionType.Top);

            filterEntry              = new SearchEntry();
            filterEntry.Ready        = true;
            filterEntry.HasFrame     = true;
            filterEntry.WidthRequest = 150;
            filterEntry.Changed     += new EventHandler(filterTextChanged);
            filterEntry.Show();

            toolbar.Add(filterEntry, true);

            catToggleButton             = new ToggleButton();
            catToggleButton.Image       = new Image(Ide.Gui.Stock.GroupByCategory, IconSize.Menu);
            catToggleButton.Toggled    += new EventHandler(toggleCategorisation);
            catToggleButton.TooltipText = GettextCatalog.GetString("Show categories");
            toolbar.Add(catToggleButton);

            compactModeToggleButton             = new ToggleButton();
            compactModeToggleButton.Image       = new ImageView(ImageService.GetIcon("md-compact-display", IconSize.Menu));
            compactModeToggleButton.Toggled    += new EventHandler(ToggleCompactMode);
            compactModeToggleButton.TooltipText = GettextCatalog.GetString("Use compact display");
            toolbar.Add(compactModeToggleButton);

            toolboxAddButton = new Button(new Gtk.Image(Ide.Gui.Stock.Add, IconSize.Menu));
            toolbar.Add(toolboxAddButton);
            toolboxAddButton.TooltipText = GettextCatalog.GetString("Add toolbox items");
            toolboxAddButton.Clicked    += new EventHandler(toolboxAddButton_Clicked);
            toolbar.ShowAll();

            #endregion

            toolboxWidget = new ToolboxWidget();
            toolboxWidget.SelectedItemChanged += delegate {
                selectedNode = this.toolboxWidget.SelectedItem != null ? this.toolboxWidget.SelectedItem.Tag as ItemToolboxNode : null;
                toolboxService.SelectItem(selectedNode);
            };
            this.toolboxWidget.DragBegin += delegate(object sender, Gtk.DragBeginArgs e) {
                if (this.toolboxWidget.SelectedItem != null)
                {
                    this.toolboxWidget.HideTooltipWindow();
                    toolboxService.DragSelectedItem(this.toolboxWidget, e.Context);
                }
            };
            this.toolboxWidget.ActivateSelectedItem += delegate {
                toolboxService.UseSelectedItem();
            };

            fontChanger = new MonoDevelop.Ide.Gui.PadFontChanger(toolboxWidget, toolboxWidget.SetCustomFont, toolboxWidget.QueueResize);

            this.toolboxWidget.DoPopupMenu = ShowPopup;

            scrolledWindow = new MonoDevelop.Components.CompactScrolledWindow();
            base.PackEnd(scrolledWindow, true, true, 0);
            base.FocusChain = new Gtk.Widget [] { scrolledWindow };

            //Initialise self
            scrolledWindow.ShadowType       = ShadowType.None;
            scrolledWindow.VscrollbarPolicy = PolicyType.Automatic;
            scrolledWindow.HscrollbarPolicy = PolicyType.Never;
            scrolledWindow.WidthRequest     = 150;
            scrolledWindow.Add(this.toolboxWidget);

            //update view when toolbox service updated
            toolboxService.ToolboxContentsChanged += delegate { Refresh(); };
            toolboxService.ToolboxConsumerChanged += delegate { Refresh(); };
            Refresh();

            //set initial state
            this.toolboxWidget.ShowCategories = catToggleButton.Active = true;
            compactModeToggleButton.Active    = MonoDevelop.Core.PropertyService.Get("ToolboxIsInCompactMode", false);
            this.toolboxWidget.IsListMode     = !compactModeToggleButton.Active;
            this.ShowAll();
        }
예제 #26
0
        public override void Initialize(NodeBuilder[] builders, TreePadOption[] options, string menuPath)
        {
            base.Initialize(builders, options, menuPath);

            testChangedHandler            = (EventHandler)DispatchService.GuiDispatch(new EventHandler(OnDetailsTestChanged));
            testService.TestSuiteChanged += (EventHandler)DispatchService.GuiDispatch(new EventHandler(OnTestSuiteChanged));
            paned = new VPaned();

            VBox            vbox       = new VBox();
            DockItemToolbar topToolbar = Window.GetToolbar(PositionType.Top);

            var hbox = new HBox {
                Spacing = 6
            };

            hbox.PackStart(new ImageView(ImageService.GetIcon("nunit-run", IconSize.Menu)), false, false, 0);
            hbox.PackStart(new Label(GettextCatalog.GetString("Run All")), false, false, 0);
            buttonRunAll             = new Button(hbox);
            buttonRunAll.Clicked    += new EventHandler(OnRunAllClicked);
            buttonRunAll.Sensitive   = true;
            buttonRunAll.TooltipText = GettextCatalog.GetString("Run all tests");
            topToolbar.Add(buttonRunAll);

            buttonStop             = new Button(new Gtk.Image(Ide.Gui.Stock.Stop, IconSize.Menu));
            buttonStop.Clicked    += new EventHandler(OnStopClicked);
            buttonStop.Sensitive   = false;
            buttonStop.TooltipText = GettextCatalog.GetString("Cancel running test");
            topToolbar.Add(buttonStop);
            topToolbar.ShowAll();

            vbox.PackEnd(base.Control, true, true, 0);
            vbox.FocusChain = new Gtk.Widget [] { base.Control };

            paned.Pack1(vbox, true, true);

            detailsPad = new VBox();

            EventBox eb     = new EventBox();
            HBox     header = new HBox();

            eb.Add(header);

            detailLabel         = new HeaderLabel();
            detailLabel.Padding = 6;

            Button hb = new Button(new Gtk.Image("gtk-close", IconSize.SmallToolbar));

            hb.Relief   = ReliefStyle.None;
            hb.Clicked += new EventHandler(OnCloseDetails);
            header.PackEnd(hb, false, false, 0);

            hb          = new Button(new Gtk.Image("gtk-go-back", IconSize.SmallToolbar));
            hb.Relief   = ReliefStyle.None;
            hb.Clicked += new EventHandler(OnGoBackTest);
            header.PackEnd(hb, false, false, 0);

            header.Add(detailLabel);
            Gdk.Color hcol = eb.Style.Background(StateType.Normal);
            hcol.Red   = (ushort)(((double)hcol.Red) * 0.9);
            hcol.Green = (ushort)(((double)hcol.Green) * 0.9);
            hcol.Blue  = (ushort)(((double)hcol.Blue) * 0.9);
            //	eb.ModifyBg (StateType.Normal, hcol);

            detailsPad.PackStart(eb, false, false, 0);

            VPaned panedDetails = new VPaned();

            panedDetails.BorderWidth = 3;
            VBox boxPaned1 = new VBox();

            chart = new TestChart();
            chart.ButtonPressEvent += OnChartButtonPress;
            chart.SelectionChanged += new EventHandler(OnChartDateChanged);
            chart.HeightRequest     = 50;

            Toolbar toolbar = new Toolbar();

            toolbar.IconSize     = IconSize.SmallToolbar;
            toolbar.ToolbarStyle = ToolbarStyle.Icons;
            toolbar.ShowArrow    = false;
            ToolButton but = new ToolButton("gtk-zoom-in");

            but.Clicked += new EventHandler(OnZoomIn);
            toolbar.Insert(but, -1);

            but          = new ToolButton("gtk-zoom-out");
            but.Clicked += new EventHandler(OnZoomOut);
            toolbar.Insert(but, -1);

            but          = new ToolButton("gtk-go-back");
            but.Clicked += new EventHandler(OnChartBack);
            toolbar.Insert(but, -1);

            but          = new ToolButton("gtk-go-forward");
            but.Clicked += new EventHandler(OnChartForward);
            toolbar.Insert(but, -1);

            but          = new ToolButton("gtk-goto-last");
            but.Clicked += new EventHandler(OnChartLast);
            toolbar.Insert(but, -1);

            boxPaned1.PackStart(toolbar, false, false, 0);
            boxPaned1.PackStart(chart, true, true, 0);

            panedDetails.Pack1(boxPaned1, false, false);

            // Detailed test information --------

            infoBook = new ButtonNotebook();
            infoBook.PageLoadRequired += new EventHandler(OnPageLoadRequired);

            // Info - Group summary

            Frame          tf = new Frame();
            ScrolledWindow sw = new ScrolledWindow();

            detailsTree = new TreeView();

            detailsTree.HeadersVisible = true;
            detailsTree.RulesHint      = true;
            detailsStore = new ListStore(typeof(object), typeof(string), typeof(string), typeof(string), typeof(string));

            CellRendererText trtest = new CellRendererText();
            CellRendererText tr;

            TreeViewColumn col3 = new TreeViewColumn();

            col3.Expand = false;
//			col3.Alignment = 0.5f;
            col3.Widget = new ImageView(TestStatusIcon.Success);
            col3.Widget.Show();
            tr = new CellRendererText();
//			tr.Xalign = 0.5f;
            col3.PackStart(tr, false);
            col3.AddAttribute(tr, "markup", 2);
            detailsTree.AppendColumn(col3);

            TreeViewColumn col4 = new TreeViewColumn();

            col4.Expand = false;
//			col4.Alignment = 0.5f;
            col4.Widget = new ImageView(TestStatusIcon.Failure);
            col4.Widget.Show();
            tr = new CellRendererText();
//			tr.Xalign = 0.5f;
            col4.PackStart(tr, false);
            col4.AddAttribute(tr, "markup", 3);
            detailsTree.AppendColumn(col4);

            TreeViewColumn col5 = new TreeViewColumn();

            col5.Expand = false;
//			col5.Alignment = 0.5f;
            col5.Widget = new ImageView(TestStatusIcon.NotRun);
            col5.Widget.Show();
            tr = new CellRendererText();
//			tr.Xalign = 0.5f;
            col5.PackStart(tr, false);
            col5.AddAttribute(tr, "markup", 4);
            detailsTree.AppendColumn(col5);

            TreeViewColumn col1 = new TreeViewColumn();

//			col1.Resizable = true;
//			col1.Expand = true;
            col1.Title = "Test";
            col1.PackStart(trtest, true);
            col1.AddAttribute(trtest, "markup", 1);
            detailsTree.AppendColumn(col1);

            detailsTree.Model = detailsStore;

            sw.Add(detailsTree);
            tf.Add(sw);
            tf.ShowAll();

            TestSummaryPage = infoBook.AddPage(GettextCatalog.GetString("Summary"), tf);

            // Info - Regressions list

            tf = new Frame();
            sw = new ScrolledWindow();
            tf.Add(sw);
            regressionTree = new TreeView();
            regressionTree.HeadersVisible = false;
            regressionTree.RulesHint      = true;
            regressionStore = new ListStore(typeof(object), typeof(string), typeof(Xwt.Drawing.Image));

            CellRendererText trtest2 = new CellRendererText();
            var pr = new CellRendererImage();

            TreeViewColumn col = new TreeViewColumn();

            col.PackStart(pr, false);
            col.AddAttribute(pr, "image", 2);
            col.PackStart(trtest2, false);
            col.AddAttribute(trtest2, "markup", 1);
            regressionTree.AppendColumn(col);
            regressionTree.Model = regressionStore;
            sw.Add(regressionTree);
            tf.ShowAll();

            TestRegressionsPage = infoBook.AddPage(GettextCatalog.GetString("Regressions"), tf);

            // Info - Failed tests list

            tf = new Frame();
            sw = new ScrolledWindow();
            tf.Add(sw);
            failedTree = new TreeView();
            failedTree.HeadersVisible = false;
            failedTree.RulesHint      = true;
            failedStore = new ListStore(typeof(object), typeof(string), typeof(Xwt.Drawing.Image));

            trtest2 = new CellRendererText();
            pr      = new CellRendererImage();

            col = new TreeViewColumn();
            col.PackStart(pr, false);
            col.AddAttribute(pr, "image", 2);
            col.PackStart(trtest2, false);
            col.AddAttribute(trtest2, "markup", 1);
            failedTree.AppendColumn(col);
            failedTree.Model = failedStore;
            sw.Add(failedTree);
            tf.ShowAll();

            TestFailuresPage = infoBook.AddPage(GettextCatalog.GetString("Failed tests"), tf);

            // Info - results

            tf = new Frame();
            sw = new ScrolledWindow();
            tf.Add(sw);
            resultView          = new TextView();
            resultView.Editable = false;
            sw.Add(resultView);
            tf.ShowAll();
            TestResultPage = infoBook.AddPage(GettextCatalog.GetString("Result"), tf);

            // Info - Output

            tf = new Frame();
            sw = new ScrolledWindow();
            tf.Add(sw);
            outputView          = new TextView();
            outputView.Editable = false;
            sw.Add(outputView);
            tf.ShowAll();
            TestOutputPage = infoBook.AddPage(GettextCatalog.GetString("Output"), tf);

            panedDetails.Pack2(infoBook, true, true);
            detailsPad.PackStart(panedDetails, true, true, 0);
            paned.Pack2(detailsPad, true, true);

            paned.ShowAll();

            infoBook.HidePage(TestResultPage);
            infoBook.HidePage(TestOutputPage);
            infoBook.HidePage(TestSummaryPage);
            infoBook.HidePage(TestRegressionsPage);
            infoBook.HidePage(TestFailuresPage);

            detailsPad.Sensitive = false;
            detailsPad.Hide();

            detailsTree.RowActivated    += new Gtk.RowActivatedHandler(OnTestActivated);
            regressionTree.RowActivated += new Gtk.RowActivatedHandler(OnRegressionTestActivated);
            failedTree.RowActivated     += new Gtk.RowActivatedHandler(OnFailedTestActivated);

            foreach (UnitTest t in testService.RootTests)
            {
                TreeView.AddChild(t);
            }
        }
예제 #27
0
        void IPadContent.Initialize(IPadWindow window)
        {
            this.window = window;

            DockItemToolbar toolbar = window.GetToolbar(PositionType.Top);

            buttonSuccess        = new ToggleButton();
            buttonSuccess.Label  = GettextCatalog.GetString("Successful Tests");
            buttonSuccess.Active = false;
            buttonSuccess.Image  = new ImageView(TestStatusIcon.Success);
            buttonSuccess.Image.Show();
            buttonSuccess.Toggled    += new EventHandler(OnShowSuccessfulToggled);
            buttonSuccess.TooltipText = GettextCatalog.GetString("Show Successful Tests");
            toolbar.Add(buttonSuccess);

            buttonInconclusive        = new ToggleButton();
            buttonInconclusive.Label  = GettextCatalog.GetString("Inconclusive Tests");
            buttonInconclusive.Active = true;
            buttonInconclusive.Image  = new ImageView(TestStatusIcon.Inconclusive);
            buttonInconclusive.Image.Show();
            buttonInconclusive.Toggled    += new EventHandler(OnShowInconclusiveToggled);
            buttonInconclusive.TooltipText = GettextCatalog.GetString("Show Inconclusive Tests");
            toolbar.Add(buttonInconclusive);

            buttonFailures        = new ToggleButton();
            buttonFailures.Label  = GettextCatalog.GetString("Failed Tests");
            buttonFailures.Active = true;
            buttonFailures.Image  = new ImageView(TestStatusIcon.Failure);
            buttonFailures.Image.Show();
            buttonFailures.Toggled    += new EventHandler(OnShowFailuresToggled);
            buttonFailures.TooltipText = GettextCatalog.GetString("Show Failed Tests");
            toolbar.Add(buttonFailures);

            buttonIgnored        = new ToggleButton();
            buttonIgnored.Label  = GettextCatalog.GetString("Ignored Tests");
            buttonIgnored.Active = true;
            buttonIgnored.Image  = new ImageView(TestStatusIcon.NotRun);
            buttonIgnored.Image.Show();
            buttonIgnored.Toggled    += new EventHandler(OnShowIgnoredToggled);
            buttonIgnored.TooltipText = GettextCatalog.GetString("Show Ignored Tests");
            toolbar.Add(buttonIgnored);

            buttonOutput        = new ToggleButton();
            buttonOutput.Label  = GettextCatalog.GetString("Output");
            buttonOutput.Active = false;
            buttonOutput.Image  = ImageService.GetImage(MonoDevelop.Ide.Gui.Stock.OutputIcon, IconSize.Menu);
            buttonOutput.Image.Show();
            buttonOutput.Toggled    += new EventHandler(OnShowOutputToggled);
            buttonOutput.TooltipText = GettextCatalog.GetString("Show Output");
            toolbar.Add(buttonOutput);

            toolbar.Add(new SeparatorToolItem());

            buttonRun       = new Button();
            buttonRun.Label = GettextCatalog.GetString("Rerun Tests");
            buttonRun.Image = new Gtk.Image(Gtk.Stock.Execute, IconSize.Menu);
            buttonRun.Image.Show();
            buttonRun.Sensitive = false;
            toolbar.Add(buttonRun);

            buttonStop = new Button(new Gtk.Image(Ide.Gui.Stock.Stop, Gtk.IconSize.Menu));
            toolbar.Add(buttonStop);
            toolbar.ShowAll();

            buttonStop.Clicked += new EventHandler(OnStopClicked);
            buttonRun.Clicked  += new EventHandler(OnRunClicked);

            // Run panel

            DockItemToolbar runPanel = window.GetToolbar(PositionType.Bottom);

            infoSep = new VSeparator();

            resultLabel.UseMarkup    = true;
            infoCurrent.Ellipsize    = Pango.EllipsizeMode.Start;
            infoCurrent.WidthRequest = 0;
            runPanel.Add(resultLabel);
            runPanel.Add(progressBar);
            runPanel.Add(infoCurrent, true, 10);

            labels = new HBox(false, 10);

            infoLabel.UseMarkup = true;

            labels.PackStart(infoLabel, true, false, 0);

            runPanel.Add(new Gtk.Label(), true);
            runPanel.Add(labels);
            runPanel.Add(infoSep, false, 10);

            progressBar.HeightRequest = infoLabel.SizeRequest().Height;
            runPanel.ShowAll();
            resultSummary = new UnitTestResult();
            UpdateCounters();
        }
예제 #28
0
        protected override void Initialize(IPadWindow window)
        {
            Id = "MonoDevelop.Debugger.BreakpointPad";
            // Toolbar and menu definitions

            ActionCommand gotoCmd       = new ActionCommand(LocalCommands.GoToFile, GettextCatalog.GetString("Go to File"));
            ActionCommand propertiesCmd = new ActionCommand(LocalCommands.Properties, GettextCatalog.GetString("Edit Breakpoint…"), Stock.Properties);

            menuSet = new CommandEntrySet();
            menuSet.Add(propertiesCmd);
            menuSet.Add(gotoCmd);
            menuSet.AddSeparator();
            menuSet.AddItem(DebugCommands.EnableDisableBreakpoint);
            menuSet.AddItem(DebugCommands.DisableAllBreakpoints);
            menuSet.AddSeparator();
            menuSet.AddItem(EditCommands.DeleteKey);
            menuSet.AddItem(DebugCommands.ClearAllBreakpoints);

            CommandEntrySet toolbarSet = new CommandEntrySet();

            toolbarSet.AddItem(DebugCommands.EnableDisableBreakpoint);
            toolbarSet.AddItem(DebugCommands.ClearAllBreakpoints);
            toolbarSet.AddItem(DebugCommands.DisableAllBreakpoints);
            toolbarSet.AddItem(EditCommands.Delete);
            toolbarSet.AddSeparator();
            toolbarSet.Add(propertiesCmd);
            toolbarSet.AddSeparator();
            toolbarSet.Add(new CommandEntry(DebugCommands.NewFunctionBreakpoint)
            {
                DisplayType = CommandEntryDisplayType.IconAndText
            });
            toolbarSet.Add(new CommandEntry(DebugCommands.NewCatchpoint)
            {
                DisplayType = CommandEntryDisplayType.IconAndText
            });

            // The breakpoint list

            store = new TreeStore(typeof(string), typeof(bool), typeof(string), typeof(object), typeof(string), typeof(string), typeof(string), typeof(string));
            SemanticModelAttribute modelAttr = new SemanticModelAttribute("store__Icon", "store__Selected", "store_FileName",
                                                                          "store_Breakpoint", "store_Condition", "store_TraceExp", "store_HitCount", "store_LastTrace");

            TypeDescriptor.AddAttributes(store, modelAttr);

            tree                = new PadTreeView();
            tree.Model          = store;
            tree.RulesHint      = true;
            tree.HeadersVisible = true;
            tree.DoPopupMenu    = ShowPopup;
            tree.KeyPressEvent += OnKeyPressEvent;
            tree.Selection.Mode = SelectionMode.Multiple;

            treeState = new TreeViewState(tree, (int)Columns.Breakpoint);

            TreeViewColumn col = new TreeViewColumn();
            CellRenderer   crp = new CellRendererImage();

            col.PackStart(crp, false);
            col.AddAttribute(crp, "stock_id", (int)Columns.Icon);
            tree.AppendColumn(col);

            Gtk.CellRendererToggle toggleRender = new Gtk.CellRendererToggle();
            toggleRender.Toggled += new ToggledHandler(ItemToggled);
            col = new TreeViewColumn();
            col.PackStart(toggleRender, false);
            col.AddAttribute(toggleRender, "active", (int)Columns.Selected);
            tree.AppendColumn(col);

            TreeViewColumn FrameCol = new TreeViewColumn();
            CellRenderer   crt      = tree.TextRenderer;

            FrameCol.Title = GettextCatalog.GetString("Name");
            FrameCol.PackStart(crt, true);
            FrameCol.AddAttribute(crt, "text", (int)Columns.FileName);
            FrameCol.Resizable = true;
            FrameCol.Alignment = 0.0f;
            tree.AppendColumn(FrameCol);

            col           = tree.AppendColumn(GettextCatalog.GetString("Condition"), crt, "text", (int)Columns.Condition);
            col.Resizable = true;

            col           = tree.AppendColumn(GettextCatalog.GetString("Trace Expression"), crt, "text", (int)Columns.TraceExp);
            col.Resizable = true;

            col           = tree.AppendColumn(GettextCatalog.GetString("Hit Count"), crt, "text", (int)Columns.HitCount);
            col.Resizable = true;

            col           = tree.AppendColumn(GettextCatalog.GetString("Last Trace"), crt, "text", (int)Columns.LastTrace);
            col.Resizable = true;

            sw            = new Gtk.ScrolledWindow();
            sw.ShadowType = ShadowType.None;
            sw.Add(tree);

            control = sw;

            control.ShowAll();

            breakpoints = DebuggingService.Breakpoints;

            UpdateDisplay();

            breakpoints.BreakpointAdded   += OnBreakpointAdded;
            breakpoints.BreakpointRemoved += OnBreakpointRemoved;
            breakpoints.Changed           += OnBreakpointChanged;
            breakpoints.BreakpointUpdated += OnBreakpointUpdated;

            DebuggingService.PausedEvent  += OnDebuggerStatusCheck;
            DebuggingService.ResumedEvent += OnDebuggerStatusCheck;
            DebuggingService.StoppedEvent += OnDebuggerStatusCheck;

            tree.RowActivated += OnRowActivated;

            DockItemToolbar toolbar = window.GetToolbar(DockPositionType.Top);

            toolbar.Add(toolbarSet, sw);
            toolbar.ShowAll();
        }
        public void Initialize(IPadWindow window)
        {
            // Toolbar and menu definitions

            ActionCommand gotoCmd       = new ActionCommand(LocalCommands.GoToFile, GettextCatalog.GetString("Go to File"));
            ActionCommand propertiesCmd = new ActionCommand(LocalCommands.Properties, GettextCatalog.GetString("Properties"), Gtk.Stock.Properties);

            menuSet = new CommandEntrySet();
            menuSet.Add(gotoCmd);
            menuSet.AddSeparator();
            menuSet.AddItem(DebugCommands.EnableDisableBreakpoint);
            menuSet.AddItem(DebugCommands.ClearAllBreakpoints);
            menuSet.AddItem(DebugCommands.DisableAllBreakpoints);
            menuSet.AddItem(EditCommands.DeleteKey);
            menuSet.AddSeparator();
            menuSet.Add(propertiesCmd);

            CommandEntrySet toolbarSet = new CommandEntrySet();

            toolbarSet.AddItem(DebugCommands.EnableDisableBreakpoint);
            toolbarSet.AddItem(DebugCommands.ClearAllBreakpoints);
            toolbarSet.AddItem(DebugCommands.DisableAllBreakpoints);
            toolbarSet.AddItem(EditCommands.Delete);
            toolbarSet.AddSeparator();
            toolbarSet.Add(propertiesCmd);

            // The breakpoint list

            store = new TreeStore(typeof(string), typeof(bool), typeof(string), typeof(object), typeof(string), typeof(string), typeof(string), typeof(string));

            tree                = new PadTreeView();
            tree.Model          = store;
            tree.RulesHint      = true;
            tree.HeadersVisible = true;
            tree.DoPopupMenu    = ShowPopup;
            tree.KeyPressEvent += OnKeyPressEvent;

            treeState = new TreeViewState(tree, (int)Columns.Breakpoint);

            TreeViewColumn col = new TreeViewColumn();
            CellRenderer   crp = new CellRendererIcon();

            col.PackStart(crp, false);
            col.AddAttribute(crp, "stock_id", (int)Columns.Icon);
            tree.AppendColumn(col);

            Gtk.CellRendererToggle toggleRender = new Gtk.CellRendererToggle();
            toggleRender.Toggled += new ToggledHandler(ItemToggled);
            col = new TreeViewColumn();
            col.PackStart(toggleRender, false);
            col.AddAttribute(toggleRender, "active", (int)Columns.Selected);
            tree.AppendColumn(col);

            TreeViewColumn FrameCol = new TreeViewColumn();
            CellRenderer   crt      = tree.TextRenderer;

            FrameCol.Title = GettextCatalog.GetString("Name");
            FrameCol.PackStart(crt, true);
            FrameCol.AddAttribute(crt, "text", (int)Columns.FileName);
            FrameCol.Resizable = true;
            FrameCol.Alignment = 0.0f;
            tree.AppendColumn(FrameCol);

            col           = tree.AppendColumn(GettextCatalog.GetString("Condition"), crt, "text", (int)Columns.Condition);
            col.Resizable = true;

            col           = tree.AppendColumn(GettextCatalog.GetString("Trace Expression"), crt, "text", (int)Columns.TraceExp);
            col.Resizable = true;

            col           = tree.AppendColumn(GettextCatalog.GetString("Hit Count"), crt, "text", (int)Columns.HitCount);
            col.Resizable = true;

            col           = tree.AppendColumn(GettextCatalog.GetString("Last Trace"), crt, "text", (int)Columns.LastTrace);
            col.Resizable = true;

            sw            = new Gtk.ScrolledWindow();
            sw.ShadowType = ShadowType.None;
            sw.Add(tree);

            control = sw;

            control.ShowAll();

            bps = DebuggingService.Breakpoints;

            UpdateDisplay();

            breakpointUpdatedHandler = DispatchService.GuiDispatch <EventHandler <BreakpointEventArgs> > (OnBreakpointUpdated);
            breakpointRemovedHandler = DispatchService.GuiDispatch <EventHandler <BreakpointEventArgs> > (OnBreakpointRemoved);
            breakpointAddedHandler   = DispatchService.GuiDispatch <EventHandler <BreakpointEventArgs> > (OnBreakpointAdded);
            breakpointChangedHandler = DispatchService.GuiDispatch <EventHandler> (OnBreakpointChanged);

            DebuggingService.Breakpoints.BreakpointAdded   += breakpointAddedHandler;
            DebuggingService.Breakpoints.BreakpointRemoved += breakpointRemovedHandler;
            DebuggingService.Breakpoints.Changed           += breakpointChangedHandler;
            DebuggingService.Breakpoints.BreakpointUpdated += breakpointUpdatedHandler;

            DebuggingService.PausedEvent  += OnDebuggerStatusCheck;
            DebuggingService.ResumedEvent += OnDebuggerStatusCheck;
            DebuggingService.StoppedEvent += OnDebuggerStatusCheck;

            tree.RowActivated += OnRowActivated;

            DockItemToolbar toolbar = window.GetToolbar(PositionType.Top);

            toolbar.Add(toolbarSet, sw);
            toolbar.ShowAll();
        }
예제 #30
0
        protected override void Initialize(IPadWindow window)
        {
            window.Title = GettextCatalog.GetString("Errors");

            DockItemToolbar toolbar = window.GetToolbar(DockPositionType.Top);

            var btnBox = new HBox(false, 2);

            btnBox.PackStart(new ImageView(Stock.Error, Gtk.IconSize.Menu));
            errorBtnLbl = new Label();
            btnBox.PackStart(errorBtnLbl);

            errorBtn = new ToggleButton {
                Name = "toggleErrors"
            };
            errorBtn.Active      = ShowErrors;
            errorBtn.Child       = btnBox;
            errorBtn.Toggled    += new EventHandler(FilterChanged);
            errorBtn.TooltipText = GettextCatalog.GetString("Show Errors");
            UpdateErrorsNum();
            toolbar.Add(errorBtn);

            btnBox = new HBox(false, 2);
            btnBox.PackStart(new ImageView(Stock.Warning, Gtk.IconSize.Menu));
            warnBtnLbl = new Label();
            btnBox.PackStart(warnBtnLbl);

            warnBtn = new ToggleButton  {
                Name = "toggleWarnings"
            };
            warnBtn.Active      = ShowWarnings;
            warnBtn.Child       = btnBox;
            warnBtn.Toggled    += new EventHandler(FilterChanged);
            warnBtn.TooltipText = GettextCatalog.GetString("Show Warnings");
            UpdateWarningsNum();
            toolbar.Add(warnBtn);

            btnBox = new HBox(false, 2);
            btnBox.PackStart(new ImageView(Stock.Information, Gtk.IconSize.Menu));
            msgBtnLbl = new Label();
            btnBox.PackStart(msgBtnLbl);

            msgBtn = new ToggleButton  {
                Name = "toggleMessages"
            };
            msgBtn.Active      = ShowMessages;
            msgBtn.Child       = btnBox;
            msgBtn.Toggled    += new EventHandler(FilterChanged);
            msgBtn.TooltipText = GettextCatalog.GetString("Show Messages");
            UpdateMessagesNum();
            toolbar.Add(msgBtn);

            toolbar.Add(new SeparatorToolItem());

            btnBox = new HBox(false, 2);
            btnBox.PackStart(new ImageView("md-message-log", Gtk.IconSize.Menu));
            logBtnLbl = new Label(GettextCatalog.GetString("Build Output"));
            btnBox.PackStart(logBtnLbl);

            logBtn = new ToggleButton {
                Name = "toggleBuildOutput"
            };
            logBtn.Child       = btnBox;
            logBtn.TooltipText = GettextCatalog.GetString("Show build output");
            logBtn.Toggled    += HandleLogBtnToggled;
            toolbar.Add(logBtn);

            //Dummy widget to take all space between "Build Output" button and SearchEntry
            toolbar.Add(new HBox(), true);

            searchEntry = new SearchEntry();
            searchEntry.Entry.Changed += searchPatternChanged;
            searchEntry.WidthRequest   = 200;
            searchEntry.Visible        = true;
            toolbar.Add(searchEntry);

            toolbar.ShowAll();

            UpdatePadIcon();
        }