private Menu CreateMenu()
        {
            Menu m = new Menu();
            MenuItem file = new MenuItem("File");
            Menu fileSubMenu = new Menu();

            MenuItem open = new MenuItem("Open");
            open.Clicked += open_Clicked;
            fileSubMenu.Items.Add(open);

            MenuItem saveas = new MenuItem("Save As");
            saveas.Clicked += saveas_Clicked;
            fileSubMenu.Items.Add(saveas);


            MenuItem exit = new MenuItem("Exit");
            exit.Clicked += exit_Clicked;
            fileSubMenu.Items.Add(exit);


            file.SubMenu = fileSubMenu;
            m.Items.Add(file);

            return m;
        }
Exemple #2
0
        /// <summary>
        /// Initializes a new instance of the class.
        /// </summary>
        public MainWindow()
        {
            Title = "Xwt Demo Application";
              Width = 500;
              Height = 400;

              // Create a simple File Menu with Exit button

              Xwt.Menu menu = new Xwt.Menu();

              Xwt.MenuItem file = new Xwt.MenuItem("_File");
              file.SubMenu = new Xwt.Menu();
              file.SubMenu.Items.Add(new Xwt.MenuItem("_Open"));
              file.SubMenu.Items.Add(new Xwt.MenuItem("_New"));
              Xwt.MenuItem mi = new Xwt.MenuItem("_Close");
              mi.Clicked += delegate
              {
            Application.Exit();
              };

              file.SubMenu.Items.Add(mi);
              menu.Items.Add(file);

              Xwt.MenuItem edit = new Xwt.MenuItem("_Edit");
              edit.SubMenu = new Xwt.Menu();
              edit.SubMenu.Items.Add(new Xwt.MenuItem("_Copy"));
              edit.SubMenu.Items.Add(new Xwt.MenuItem("Cu_t"));
              edit.SubMenu.Items.Add(new Xwt.MenuItem("_Paste"));
              menu.Items.Add(edit);

              MainMenu = menu;

              CloseRequested += Form_Close;
        }
Exemple #3
0
 void CreateMenu()
 {
     var menu = new Menu ();
     var file = CreateFileMenu ();
     menu.Items.Add (file);
     try
     {
         status.Menu = menu;
     }
     catch { }
     MainMenu = menu;
 }
        public MiniCardContextMenu()
        {
            menu = new Menu();

            var resetPoints = new MenuItem("Reset points");
            resetPoints.Clicked += (sender, e) =>
                ItemEvent(activeCard.Card.ResetPoints);
            menu.Items.Add(resetPoints);

            hideItem = new MenuItem("Hide Card");
            hideItem.Clicked += (sender, e) =>
                ItemEvent(() => activeCard.Card.Visible = false);
            menu.Items.Add(hideItem);

            showItem = new MenuItem("Show Card");
            showItem.Clicked += (sender, e) =>
                ItemEvent(() => activeCard.Card.Visible = true);
            menu.Items.Add(showItem);
        }
Exemple #5
0
        //CTOR
        static PluginWidget()
        {
            menu = new Menu();

            MenuItem item;

            (item = new MenuItem("Delete")).Clicked += (s, e) => { if (!lastClicked.Delete()) errorSound(); };
            item.Image = Resources.GetImage("delete.png");
            menu.Items.Add(item);

            (item = new MenuItem("Create Copy")).Clicked += (s, e) => { if (!lastClicked.CreateCopy()) errorSound(); };
            item.Image = Resources.GetImage("copy.png");
            menu.Items.Add(item);

            (item = new MenuItem("Rename")).Clicked += (s, e) => { lastClicked.StartRename(); };
            item.Image = Resources.GetImage("rename.png");
            menu.Items.Add(item);

            menu.Items.Add(new SeparatorMenuItem());

            (item = new MenuItem("Copy Path")).Clicked += (s, e) => { Xwt.Clipboard.SetText(lastClicked.Path); };
            menu.Items.Add(item);
        }
        public TextArea(TextEditor editor)
        {
            this.editor = editor;

            CanGetFocus = true;

            lineNumberMargin = new LineNumberMargin(editor);
            paddingMargin = new PaddingMargin(5);
            textViewMargin = new TextViewMargin(editor);

            margins.Add(lineNumberMargin);
            margins.Add(paddingMargin);
            margins.Add(textViewMargin);

            contextMenu = new Menu();

            cutMenuItem = new MenuItem("Cut");
            cutMenuItem.Clicked += (sender, e) => Cut();
            contextMenu.Items.Add(cutMenuItem);

            copyMenuItem = new MenuItem("Copy");
            copyMenuItem.Clicked += (sender, e) => Copy();
            contextMenu.Items.Add(copyMenuItem);

            pasteMenuItem = new MenuItem("Paste");
            pasteMenuItem.Clicked += (sender, e) => Paste();
            contextMenu.Items.Add(pasteMenuItem);

            contextMenu.Items.Add(new SeparatorMenuItem());

            selectallMenuItem = new MenuItem("Select All");
            selectallMenuItem.Clicked += (sender, e) => SelectAll();
            contextMenu.Items.Add(selectallMenuItem);

            ButtonPressed += HandleButtonPressed;
        }
Exemple #7
0
        /// <summary>
        /// Initializes the context menu.
        /// </summary>
        void InitializeContextMenu()
        {
            contextMenu = new Menu();
            contextMenuFibertype = new Menu();

            contextMenu.Items.Add(new MenuItem { Label = "Fiber Type", SubMenu = contextMenuFibertype });

            MenuItem magnificationMenu = new MenuItem { Label = "Magnification..." };
            contextMenu.Items.Add(magnificationMenu);

            magnificationMenu.Clicked += delegate {
                Dialog d = new Dialog();
                d.Title = "Change magnification factor to...";
                d.Buttons.Add(new DialogButton(Command.Apply));
                d.Buttons.Add(new DialogButton(Command.Cancel));

                TextEntry newMagnification = new TextEntry { PlaceholderText = "Magnification factor" };
                d.Content = newMagnification;

                Command ret = d.Run();
                if (ret != null && ret.Id == Command.Apply.Id) {
                    TreeStore currentStore = DataSource as TreeStore;
                    foreach (TreePosition x in SelectedRows) {
                        string n = currentStore.GetNavigatorAt(x)
                            .GetValue(isFiltered ? nameColFilter : nameCol);

                        BaseScan found = scanCollection.Find(o => o.Name == n);
                        if (found != null) {
                            try {
                                found.Metadata["LensMagnification"] = float.Parse(newMagnification.Text);
                            } catch (Exception e) {
                                // TODO show error
                                Console.WriteLine(e.Message);
                                Console.WriteLine(e.StackTrace);
                            }
                        }
                    }
                }

                d.Dispose();
            };
        }
        private void Build()
        {
            this.Title = "Spritefont Editor";
            this.Width = 600;
            this.Height = 480;
            this.Icon = Xwt.Drawing.Image.FromResource("Resources.icon.png");

            menu1 = new Menu ();

            MenuItem fileMenuItem = new MenuItem ("File");
            Menu fileMenu = new Menu ();

            menuitem_new = new MenuItem ("New");
            fileMenu.Items.Add (menuitem_new);

            menuitem_open = new MenuItem ("Open");
            fileMenu.Items.Add (menuitem_open);

            fileMenu.Items.Add(new SeparatorMenuItem());

            menuitem_save = new MenuItem ("Save");
            fileMenu.Items.Add (menuitem_save);

            menuitem_saveas = new MenuItem ("Save As");
            fileMenu.Items.Add (menuitem_saveas);

            fileMenu.Items.Add(new SeparatorMenuItem());

            menuitem_exit = new MenuItem ("Exit");
            fileMenu.Items.Add (menuitem_exit);

            fileMenuItem.SubMenu = fileMenu;
            menu1.Items.Add (fileMenuItem);

            if (Settings.SuportedPlatformToolkits.Length > 1)
            {
                menuitem_toolkit = new MenuItem("Toolkit");
                var toolKitMenu = new Menu();

                foreach (var t in Settings.SuportedPlatformToolkits)
                {
                    var m = new RadioButtonMenuItem(t.ToString());
                    m.Checked = (t == Settings.GetToolkit());
                    m.Clicked += ToolKitClicked;
                    m.Tag = t;
                    toolKitMenu.Items.Add(m);
                }

                menuitem_toolkit.SubMenu = toolKitMenu;
                menu1.Items.Add(menuitem_toolkit);
            }

            this.MainMenu = menu1;

            sfwidget1 = new SFWidget();
            this.Content = sfwidget1;
            this.Padding = 0;

            this.menuitem_new.Clicked += NewClicked;
            this.menuitem_open.Clicked += OpenClicked;
            this.menuitem_save.Clicked += SaveClicked;
            this.menuitem_saveas.Clicked += (sender, e) => SaveAs();
            this.menuitem_exit.Clicked += (sender, e) => Application.Exit();
        }
Exemple #9
0
        private Menu CreatePopupMenu()
        {
            var popup = new Menu();

            var copyItem = new MenuItem("Copy");
            copyItem.Clicked += delegate
            {
                Clipboard.SetText(terminal.CollectClipboardData().Text);
            };
            popup.Items.Add(copyItem);

            var pasteItem = new MenuItem("Paste");
            pasteItem.Clicked += delegate
            {
                var text = Clipboard.GetText();
                if(string.IsNullOrEmpty(text))
                {
                    return;
                }
                var textAsBytes = Encoding.UTF8.GetBytes(text);
                foreach(var b in textAsBytes)
                {
                    terminalInputOutputSource.HandleInput(b);
                }
            };
            popup.Items.Add(pasteItem);

            if(additionlMenuItemProvider != null)
            {
                foreach(var item in additionlMenuItemProvider(this))
                {
                    popup.Items.Add(item);
                }
            }

            return popup;
        }
Exemple #10
0
        private void BuildMenu()
        {
            var menu = new Menu();

            var fileMenu = new MenuItem("File");
            fileMenu.SubMenu = new Menu();
            menu.Items.Add(fileMenu);

            newMenuItem = new MenuItem("New");
            newMenuItem.Clicked += (sender, e) => New();
            fileMenu.SubMenu.Items.Add(newMenuItem);

            openMenuItem = new MenuItem("Open");
            openMenuItem.Clicked += (sender, e) => Open();
            fileMenu.SubMenu.Items.Add(openMenuItem);

            fileMenu.SubMenu.Items.Add(new SeparatorMenuItem());

            saveMenuItem = new MenuItem("Save");
            saveMenuItem.Clicked += (sender, e) => Save(false);
            fileMenu.SubMenu.Items.Add(saveMenuItem);

            saveAsMenuItem = new MenuItem("Save As");
            saveAsMenuItem.Clicked += (sender, e) => Save(true);
            fileMenu.SubMenu.Items.Add(saveAsMenuItem);

            fileMenu.SubMenu.Items.Add(new SeparatorMenuItem());

            exitMenuItem = new MenuItem("Exit");
            exitMenuItem.Clicked += (sender, e) => this.Close();
            fileMenu.SubMenu.Items.Add(exitMenuItem);

            var editMenu = new MenuItem("Edit");
            editMenu.SubMenu = new Menu();
            menu.Items.Add(editMenu);

            undoMenuItem = new MenuItem("Undo");
            undoMenuItem.Clicked += (sender, e) => te1.Undo();
            editMenu.SubMenu.Items.Add(undoMenuItem);

            redoMenuItem = new MenuItem("Redo");
            redoMenuItem.Clicked += (sender, e) => te1.Redo();
            editMenu.SubMenu.Items.Add(redoMenuItem);

            editMenu.SubMenu.Items.Add(new SeparatorMenuItem());

            cutMenuItem = new MenuItem("Cut");
            cutMenuItem.Clicked += (sender, e) => te1.Cut();
            editMenu.SubMenu.Items.Add(cutMenuItem);

            copyMenuItem = new MenuItem("Copy");
            copyMenuItem.Clicked += (sender, e) => te1.Copy();
            editMenu.SubMenu.Items.Add(copyMenuItem);

            pasteMenuItem = new MenuItem("Paste");
            pasteMenuItem.Clicked += (sender, e) => te1.Paste();
            editMenu.SubMenu.Items.Add(pasteMenuItem);

            editMenu.SubMenu.Items.Add(new SeparatorMenuItem());

            selectAllMenuItem = new MenuItem("Select All");
            selectAllMenuItem.Clicked += (sender, e) => te1.SelectAll();
            editMenu.SubMenu.Items.Add(selectAllMenuItem);

            var buildMenu = new MenuItem("Build");
            buildMenu.SubMenu = new Menu();
            menu.Items.Add(buildMenu);

            runMenuItem = new MenuItem("Run");
            runMenuItem.Clicked += (sender, e) => Run();
            buildMenu.SubMenu.Items.Add(runMenuItem);

            debugMenuItem = new CheckBoxMenuItem("Debug");
            debugMenuItem.Checked = true;
            buildMenu.SubMenu.Items.Add(debugMenuItem);

            var helpMenu = new MenuItem("Help");
            helpMenu.SubMenu = new Menu();
            menu.Items.Add(helpMenu);

            aboutMenuItem = new MenuItem("About");
            aboutMenuItem.Clicked += (sender, e) => ShowAboutDialog();
            helpMenu.SubMenu.Items.Add(aboutMenuItem);

            MainMenu = menu;
        }
        /// <summary>
        /// Prepare menu.
        /// </summary>
        private void _initializeMenu()
        {
            // Default menu
            Menu menu = new Menu();

            // Create main menu item
            MenuItem server = new MenuItem(Director.Properties.Resources.MenuServer);

            // Prepare submenu
            server.SubMenu = _createServerMenu();

            // Add server menu to items
            menu.Items.Add(server);

            // Create running menu
            MenuItem RunMenu = new MenuItem(Director.Properties.Resources.MenuRun);

            // Create submenu
            RunMenu.SubMenu = _createRunSubmenu();

            // Add
            menu.Items.Add(RunMenu);

            // Import menu
            MenuItem ImportMenu = new MenuItem(Director.Properties.Resources.Import);
            menu.Items.Add(ImportMenu);
            ImportMenu.SubMenu = _createImportMenu();

            // Settings
            MenuItem SettingsMenu = new MenuItem(Director.Properties.Resources.SettingsMenu);
            menu.Items.Add(SettingsMenu);
            SettingsMenu.SubMenu = new Menu();

            // Language
            MenuItem Languages = new MenuItem(Director.Properties.Resources.Language)
            {
                Image = Image.FromResource(DirectorImages.LIST_ICON)
            };
            SettingsMenu.SubMenu.Items.Add(Languages);

            // Langauges submenu
            Menu LanguagesSubMenu = new Menu();
            Languages.SubMenu = LanguagesSubMenu;

            // Get locale
            string locale = Director.Properties.Settings.Default.language;

            // English
            MenuItem LocaleEnglish = new MenuItem("English")
            {
                Image = Image.FromResource(DirectorImages.EN_ICON)
            };
            LanguagesSubMenu.Items.Add(LocaleEnglish);
            LocaleEnglish.Clicked += delegate
            {
                Director.Properties.Settings.Default.language = "en";
                Director.Properties.Settings.Default.Save();
                MessageDialog.ShowMessage(Director.Properties.Resources.RestartApp);
            };

            // Czech
            MenuItem LocaleCzech = new MenuItem("Czech")
            {
                Image = Image.FromResource(DirectorImages.CS_ICON)
            };
            LanguagesSubMenu.Items.Add(LocaleCzech);
            LocaleCzech.Clicked += delegate
            {
                Director.Properties.Settings.Default.language = "cs";
                Director.Properties.Settings.Default.Save();
                MessageDialog.ShowMessage(Director.Properties.Resources.RestartApp);
            };

            // Help menu
            MenuItem HelpMenu = new MenuItem(Director.Properties.Resources.HelpMenu);
            menu.Items.Add(HelpMenu);

            // Help menu
            Menu HelpSubMenu = new Menu();
            HelpMenu.SubMenu = HelpSubMenu;

            // About menu
            MenuItem AboutMenu = new MenuItem(Director.Properties.Resources.About)
            {
                Image = Image.FromResource(DirectorImages.HELP_ICON)
            };
            HelpSubMenu.Items.Add(AboutMenu);
            AboutMenu.Clicked += delegate
            {
                About.About AboutWindow = new About.About();
                AboutWindow.Run();
                AboutWindow.Dispose();
            };

            // Set as main menu
            MainMenu = menu;

            // Create server menu
            ServerMenu = new Menu();

            // Add scenario item
            MenuItem MenuAddScenario = new MenuItem(Director.Properties.Resources.MenuAddScenario)
            {
                Image = Image.FromResource(DirectorImages.ADD_ICON)
            };
            ServerMenu.Items.Add(MenuAddScenario);
            MenuAddScenario.Clicked += AddScenario;

            // Menu paste scenario
            PasteScenario = new MenuItem(Director.Properties.Resources.MenuPasteScenario)
            {
                Image = Image.FromResource(DirectorImages.PASTE_ICON),
                Sensitive = false
            };
            ServerMenu.Items.Add(PasteScenario);

            // Separator
            ServerMenu.Items.Add(new SeparatorMenuItem());

            // Edit default headers
            MenuItem MenuEditDefaultHeaders = new MenuItem(Director.Properties.Resources.MenuEditDefaultHeaders)
            {
                Image = Image.FromResource(DirectorImages.DEFAULT_HEADERS_ICON)
            };
            MenuEditDefaultHeaders.Clicked += MenuEditDefaultHeaders_Clicked;
            ServerMenu.Items.Add(MenuEditDefaultHeaders);

            // Create Scenario menu
            ScenarioMenu = new Menu();

            // Add request menu
            MenuItem MenuAddRequest = new MenuItem(Director.Properties.Resources.ContextMenuAddRequest)
            {
                Image = Image.FromResource(DirectorImages.ADD_ICON)
            };
            MenuAddRequest.Clicked += AddRequest;
            ScenarioMenu.Items.Add(MenuAddRequest);

            // Run scenario
            MenuItem MenuRunScenario = new MenuItem(Director.Properties.Resources.RunScenario)
            {
                Image = Image.FromResource(DirectorImages.RUN_ICON)
            };
            ScenarioMenu.Items.Add(MenuRunScenario);
            MenuRunScenario.Clicked += RunScenario;

            MenuItem MenuRunScVariables = new MenuItem(Director.Properties.Resources.SetVariables)
            {
                Image = Image.FromResource(DirectorImages.VARIABLES_ICON)
            };
            ScenarioMenu.Items.Add (MenuRunScVariables);
            MenuRunScVariables.Clicked += RunScenarioWithVariables;

            // Separator
            ScenarioMenu.Items.Add(new SeparatorMenuItem());

            // Scenario UP and down
            MenuItem ItemUpMenu = new MenuItem(Director.Properties.Resources.OrderUP)
            {
                Image = Image.FromResource(DirectorImages.UP_ICON)
            };
            ItemUpMenu.Clicked += ItemUpMenu_Clicked;
            ScenarioMenu.Items.Add(ItemUpMenu);

            MenuItem ItemDownMenu = new MenuItem(Director.Properties.Resources.OrderDOWN)
            {
                Image = Image.FromResource(DirectorImages.DOWN_ICON)
            };
            ItemDownMenu.Clicked += ItemDownMenu_Clicked;
            ScenarioMenu.Items.Add(ItemDownMenu);

            // Add to scenario and request menu
            ScenarioMenu.Items.Add(new SeparatorMenuItem());

            // Paste request
            PasteRequest = new MenuItem(Director.Properties.Resources.MenuPasteRequest)
            {
                Image = Image.FromResource(DirectorImages.PASTE_ICON),
                Sensitive = false
            };
            ScenarioMenu.Items.Add(PasteRequest);

            // Copy scenario
            CopyScenario = new MenuItem(Director.Properties.Resources.MenuCopyScenario)
            {
                Image = Image.FromResource(DirectorImages.COPY_ICON)
            };
            CopyScenario.Clicked += CopyScenario_Clicked;
            ScenarioMenu.Items.Add(CopyScenario);
            // Separator
            ScenarioMenu.Items.Add(new SeparatorMenuItem());

            // Delete scenario menu
            MenuItem MenuRemoveScenario = new MenuItem(Director.Properties.Resources.ContextMenuRemoveScenario)
            {
                Image = Image.FromResource(DirectorImages.CROSS_ICON)
            };
            ScenarioMenu.Items.Add(MenuRemoveScenario);
            MenuRemoveScenario.Clicked += RemoveScenario;

            // Request menu
            RequestMenu = new Menu();
            MenuItem MenuEditRequest = new MenuItem(Director.Properties.Resources.MenuEditRequest)
            {
                Image = Image.FromResource(DirectorImages.EDIT_ICON)
            };
            MenuEditRequest.Clicked += MenuEditRequest_Clicked;
            RequestMenu.Items.Add(MenuEditRequest);

            CopyRequest = new MenuItem(Director.Properties.Resources.MenuCopyRequest)
            {
                Image = Image.FromResource(DirectorImages.COPY_ICON)
            };
            CopyRequest.Clicked += CopyRequest_Clicked;
            RequestMenu.Items.Add(CopyRequest);

            RequestMenu.Items.Add(new SeparatorMenuItem());

            // Scenario UP and down
            MenuItem RequestItemUpMenu = new MenuItem(Director.Properties.Resources.OrderUP)
            {
                Image = Image.FromResource(DirectorImages.UP_ICON)
            };
            RequestItemUpMenu.Clicked += ItemUpMenu_Clicked;
            RequestMenu.Items.Add(RequestItemUpMenu);

            MenuItem RequestItemDownMenu = new MenuItem(Director.Properties.Resources.OrderDOWN)
            {
                Image = Image.FromResource(DirectorImages.DOWN_ICON)
            };
            RequestItemDownMenu.Clicked += ItemDownMenu_Clicked;
            RequestMenu.Items.Add(RequestItemDownMenu);

            // Separator
            RequestMenu.Items.Add(new SeparatorMenuItem());

            // Remove
            MenuItem MenuRemoveRequest = new MenuItem(Director.Properties.Resources.ContextMenuRemoveRequest)
            {
                Image = Image.FromResource(DirectorImages.CROSS_ICON)
            };
            RequestMenu.Items.Add(MenuRemoveRequest);
            MenuRemoveRequest.Clicked += MenuRemoveRequest_Clicked;
        }
        /// <summary>
        /// Create run submenu.
        /// </summary>
        /// <returns></returns>
        private Menu _createRunSubmenu()
        {
            Menu _runSubmenu = new Menu();

            // Run all
            RunAllMenu = new MenuItem(Director.Properties.Resources.RunAllMenu)
            {
                Image = Image.FromResource(DirectorImages.RUN_ICON),
                Sensitive = false
            };
            _runSubmenu.Items.Add(RunAllMenu);

            // Stop
            StopThreadMenu = new MenuItem(Director.Properties.Resources.Stop)
            {
                Image = Image.FromResource(DirectorImages.CROSS_ICON),
                Sensitive = false
            };
            _runSubmenu.Items.Add(StopThreadMenu);

            // Separator
            _runSubmenu.Items.Add(new SeparatorMenuItem());

            // Export variables
            ExportVariablesMenu = new MenuItem(Director.Properties.Resources.ExportVariablesStates)
            {
                Image = Image.FromResource(DirectorImages.EXPORT_VARIABLES_ICON),
                Sensitive = false
            };
            _runSubmenu.Items.Add(ExportVariablesMenu);

            return _runSubmenu;
        }
Exemple #13
0
 /// <summary>Display bookmark list to the specifed XWT Menu</summary>
 /// <param name="mnu">The XWT menu</param>
 /// <param name="OnClick">What should happen if user clicks the bookmark</param>
 public void DisplayBookmarks(Menu mnu, Action<string> OnClick)
 {
     if(mnu == null)  mnu = new Menu();
     mnu.Items.Clear();
     foreach (Bookmark b in bookmarks)
     {
         string url = b.url;
         MenuItem mi = new MenuItem();
         mi.Clicked += (o, ea) => OnClick(url);
         mi.Label = b.title;
         mi.Image = b.GetIcon();
         if (b.SubMenu != null) mi.SubMenu = GetBookmarkSubmenu(b, OnClick);
         mnu.Items.Add(mi);
     }
 }
Exemple #14
0
        private void Init()
        {
            progressWidget = new ProgressWidget();

            refreshButton = new Button("Refresh");
            refreshButton.Clicked += async (sender, e) => await RebuildIndex();

            pageStatusLabel = new Label();

            lastRefreshLabel = new Label("-");
            var autoRefreshBox = new HBox();
            autoRefreshBox.PackStart(pageStatusLabel);
            autoRefreshBox.PackStart(new Label(string.Empty), true);
            autoRefreshBox.PackStart(progressWidget);
            autoRefreshBox.PackStart(new Label(string.Empty), true);
            autoRefreshBox.PackStart(new Label("Log state from:"));
            autoRefreshBox.PackStart(lastRefreshLabel);
            autoRefreshBox.PackStart(refreshButton);
            PackStart(autoRefreshBox);

            var hbox = new HBox();

            var buttons = new LogLevelsSelectionWidget();

            hbox.PackStart(new Label("Filter:"));
            hbox.PackStart(buttons);

            hbox.PackStart(new HSeparator());
            filterTextEntry = new TextEntry();
            hbox.PackStart(filterTextEntry, true);
            filterTextEntry.KeyReleased += async (sender, e) => 
            {
                if (e.Key == Key.Return || e.Key == Key.NumPadEnter)
                {
                    await HandleFilterButtonClicked();
                }
            };
            var queryButton = new Button("Query");
            queryButton.Clicked += async (sender, e) => await HandleFilterButtonClicked();

            hbox.PackStart(queryButton);

            var helpButton = new Button("Help");
            helpButton.Clicked += (sender, e) => 
            {
                using (var dialog = new LogViewerHelpDialog())
                {
                    dialog.Run();
                }
            };
            hbox.PackStart(helpButton);

            listViewLog = new ListViewLog(false);
            listViewLog.ButtonPressed += (s, ea) =>
            {
                if (ea.Button != PointerButton.Right)
                {
                    return;
                }

                var menu = new Menu();
                var item = new MenuItem("Show surrounding log entries");

                item.Clicked += async (sender, e) =>
                {
                    var id = listViewLog.SelectedItemId;
                    if (!id.HasValue)
                    {
                        return;
                    }

                    var idFrom = Math.Max(0, id.Value - 20);
                    var idTo = id.Value + 20;
                    filterTextEntry.Text = string.Format("id:[{0} TO {1}]", idFrom, idTo);
                    await FilterEntriesAsync(progressWidget.ProgressMonitor);
                };

                menu.Items.Add(item);
                menu.Popup();
            };

            PackStart(listViewLog, true);
            PackStart(hbox);

            buttons.SelectionChanged += async (level, isSelected) => 
            {
                if (isSelected)
                {
                    levels.Add(level);
                }
                else
                {
                    levels.Remove(level);
                }
                await FilterEntriesAsync(progressWidget.ProgressMonitor, true);
            };

            listViewLog.Scrolled += async state =>
            {
                if(Interlocked.Increment(ref eventDepth) > 1)
                {
                    Interlocked.Decrement(ref eventDepth);
                    return;
                }

                await LoadEntriesAsync(progressWidget.ProgressMonitor, 
                    state == ListViewLog.ScrolledState.ScrolledUp ? Direction.Backward : Direction.Forward,
                    () => Interlocked.Decrement(ref eventDepth));
            };

            var searchBox = new HBox();
            searchTextEntry = new TextEntry();
            searchTextEntry.KeyReleased += async (sender, e) => 
            {
                if (e.Key == Key.Return || e.Key == Key.NumPadEnter)
                {
                    await HandleSearchButtonClicked();
                }
            };
            searchBox.PackStart(new Label("Search:"));
            searchBox.PackStart(searchTextEntry, true);
            searchButton = new Button("Search");
            searchButton.Clicked += async (sender, e) => await HandleSearchButtonClicked();
            searchBox.PackStart(searchButton);
            searchLabel = new Label();
            nextSearchResultButton = new Button("Next");
            prevSearchResultButton = new Button("Previous");
            resetSearchButton = new Button("Reset");
            resetSearchButton.Clicked += (sender, e) => ResetSearch();
            nextSearchResultButton.Clicked += async (sender, e) => await SearchEntriesAsync(progressWidget.ProgressMonitor, Direction.Forward);
            prevSearchResultButton.Clicked += async (sender, e) => await SearchEntriesAsync(progressWidget.ProgressMonitor, Direction.Backward);
            searchBox.PackStart(searchLabel);
            searchBox.PackStart(nextSearchResultButton);
            searchBox.PackStart(prevSearchResultButton);
            searchBox.PackStart(resetSearchButton);

            PackStart(searchBox);
            ResetSearch();

            RefreshPaging(0);
        }
        /// <summary>
        /// Initializes a new instance of the <see cref="Director.Forms.Controls.ResponseWidget"/> class.
        /// </summary>
        /// <param name="_request">_request.</param>
        public ResponseWidget(Request _request)
        {
            // Set request
            ActiveRequest = _request;

            // Set margin
            Margin = 10;

            // Expected status code
            PackStart(new Label(Director.Properties.Resources.ExpectedStatusCode));
            ExpectedStatusCode = new TextEntry()
            {
                Text = ActiveRequest.ExpectedStatusCode + "",
                ExpandHorizontal = true
            };
            PackStart(ExpectedStatusCode, expand: false, fill: false);
            PackStart(InvalidStatusCode, vpos: WidgetPlacement.End);
            ExpectedStatusCode.Changed += delegate
            {
                var t = ExpectedStatusCode.Text;
                if (t.Length == 0)
                {
                    InvalidStatusCode.Visible = false;
                    ActiveRequest.ExpectedStatusCode = -1;
                    return;
                }

                try
                {
                    int x = int.Parse(t);
                    if (x <= 0)
                        throw new InvalidCastException();

                    ActiveRequest.ExpectedStatusCode = x;
                    InvalidStatusCode.Visible = false;
                }
                catch
                {
                    InvalidStatusCode.Visible = true;
                }
            };

            // Label
            PackStart(new Label() { Markup = "<b>" + Director.Properties.Resources.ResponseContent + ":</b>" });

            // Content box
            ContentBox = new VBox () {
                ExpandHorizontal = true,
                ExpandVertical = true
            };
            PackStart(ContentBox, expand: true, fill: true);

            // Edit btn
            Button SetContent = new Button(Image.FromResource(DirectorImages.EDIT_CONTENT_ICON), Director.Properties.Resources.EditContent)
            {
                WidthRequest = 150,
                ExpandHorizontal = false,
                ExpandVertical = false
            };
            PackStart(SetContent, expand: false, hpos: WidgetPlacement.End);

            // Click events
            SetContent.Clicked += SetContent_Clicked;

            // Request menu helper
            RequestHelperMenu = new Menu();

            // Edit
            EditVariable = new MenuItem(Director.Properties.Resources.EditVariable)
            {
                Image = Image.FromResource(DirectorImages.EDIT_CONTENT_ICON)
            };
            RequestHelperMenu.Items.Add(EditVariable);
            EditVariable.Clicked += EditVariable_Clicked;
            RefreshContent ();
        }
Exemple #16
0
        /// <summary>
        /// Initializes the user inferface
        /// </summary>
        private void InitializeUI()
        {
            // restore last window size and location
            Location = new Point(
                Settings.Default.WindowLocationX,
                Settings.Default.WindowLocationY
            );

            Size = new Size(
                Settings.Default.WindowSizeWidth,
                Settings.Default.WindowSizeHeight
            );

            // set window preference
            Title = "BAIMP";

            // file menu
            var fileMenu = new MenuItem("_File");
            fileMenu.SubMenu = new Menu();

            MenuItem menuNew = new MenuItem("_New...");
            menuNew.Clicked += (object sender, EventArgs e) => project.NewDialog();
            fileMenu.SubMenu.Items.Add(menuNew);

            MenuItem menuOpen = new MenuItem("_Open...");
            menuOpen.Clicked += delegate {
                if (!project.OpenDialog() && !string.IsNullOrEmpty(project.ErrorMessage)) {
                    MessageDialog.ShowMessage ("Error while opening the file", project.ErrorMessage);
                    project.ErrorMessage = null;
                }
            };
            fileMenu.SubMenu.Items.Add(menuOpen);

            if (Settings.Default.LastOpenedProjects != null) {
                MenuItem menuLastOpened = new MenuItem("Recently opened");
                menuLastOpened.SubMenu = new Menu();
                fileMenu.SubMenu.Items.Add(menuLastOpened);

                for (int i = Settings.Default.LastOpenedProjects.Count-1; i >= 0; i--) {
                    string path = Settings.Default.LastOpenedProjects[i];

                    MenuItem menuLastOpenedi = new MenuItem(path);
                    menuLastOpenedi.Clicked += delegate(object sender, EventArgs e) {
                        if (!project.Open(path) && !string.IsNullOrEmpty(project.ErrorMessage)) {
                            MessageDialog.ShowMessage ("Error while opening the file", project.ErrorMessage);
                            project.ErrorMessage = null;
                        }
                    };

                    menuLastOpened.SubMenu.Items.Add(menuLastOpenedi);
                }
            }

            fileMenu.SubMenu.Items.Add(new SeparatorMenuItem());

            MenuItem menuImport = new MenuItem("_Import...");
            menuImport.Clicked += (object sender, EventArgs e) => project.ImportDialog();
            fileMenu.SubMenu.Items.Add(menuImport);

            MenuItem menuSave = new MenuItem("_Save");
            menuSave.Clicked += (object sender, EventArgs e) => SaveAll();
            fileMenu.SubMenu.Items.Add(menuSave);

            fileMenu.SubMenu.Items.Add(new SeparatorMenuItem());

            MenuItem menuClose = new MenuItem("_Exit");
            menuClose.Clicked += (object sender, EventArgs e) => Close();
            fileMenu.SubMenu.Items.Add(menuClose);

            // View menu
            MenuItem viewMenu = new MenuItem("_View");
            viewMenu.SubMenu = new Menu();
            RadioButtonMenuItemGroup viewRadioGroup = new RadioButtonMenuItemGroup();
            RadioButtonMenuItem menuViewOverview = new RadioButtonMenuItem("Overview");
            menuViewOverview.Checked = true;
            menuViewOverview.Group = viewRadioGroup;
            viewMenu.SubMenu.Items.Add(menuViewOverview);

            RadioButtonMenuItem menuViewPipeline = new RadioButtonMenuItem("Pipeline");
            menuViewPipeline.Group = menuViewOverview.Group;
            viewMenu.SubMenu.Items.Add(menuViewPipeline);

            menuViewOverview.Clicked += delegate {
                splitMain_Status.Remove(pipelineShelf);
                splitScan_Pipeline.Panel2.Content = pipelineShelf;
                splitMain_Status.PackStart(splitScan_Pipeline, true, true);
            };
            menuViewPipeline.Clicked += delegate {
                splitScan_Pipeline.Panel2.Content = null;
                splitMain_Status.Remove(splitScan_Pipeline);
                splitMain_Status.PackStart(pipelineShelf, true, true);
            };

            // Edit menu
            MenuItem editMenu = new MenuItem("_Edit");
            editMenu.SubMenu = new Menu();
            MenuItem menuWorksheetRename = new MenuItem("_Rename worksheet...");
            editMenu.SubMenu.Items.Add(menuWorksheetRename);
            menuWorksheetRename.Clicked += (object sender, EventArgs e) => pipelineController.RenameCurrentWorksheetDialog();

            // Pipeline menu
            MenuItem pipelineMenu = new MenuItem("_Pipeline");
            pipelineMenu.SubMenu = new Menu();

            MenuItem menuExecute = new MenuItem("_Execute");
            menuExecute.Clicked += (object sender, EventArgs e) => pipelineController.CurrentPipeline.Execute(project);
            pipelineMenu.SubMenu.Items.Add(menuExecute);

            pipelineMenu.SubMenu.Items.Add(new SeparatorMenuItem());

            MenuItem menuExport = new MenuItem("Export");
            menuExport.SubMenu = new Menu();
            pipelineMenu.SubMenu.Items.Add(menuExport);

            Type exporterType = typeof(BaseExporter);
            IEnumerable<Type> exporter = AppDomain.CurrentDomain.GetAssemblies()
                .SelectMany(s => s.GetTypes())
                .Where(t => t.BaseType == exporterType);

            foreach (Type export in exporter) {
                MenuItem ni = new MenuItem(string.Format("As {0}...", export.Name));
                ni.Tag = export.Name;
                menuExport.SubMenu.Items.Add(ni);
                var lExport = export;
                ni.Clicked += delegate(object sender, EventArgs e) {
                    MenuItem s = sender as MenuItem;

                    if (s != null) {
                        if (exporterList.ContainsKey(s.Tag.ToString())) {
                            exporterList[s.Tag.ToString()].ShowDialog(pipelineController.CurrentPipeline.Nodes);
                        } else {
                            BaseExporter instance =
                                Activator.CreateInstance(lExport, pipelineController.CurrentPipeline.PipelineName) as BaseExporter;
                            if (instance != null) {
                                exporterList[s.Tag.ToString()] = instance;
                                instance.ShowDialog(pipelineController.CurrentPipeline.Nodes);
                            }
                        }
                    }
                };
            }

            // Extras menu
            MenuItem extrasMenu = new MenuItem("E_xtras");
            extrasMenu.SubMenu = new Menu();
            MenuItem menuResetAllMasks = new MenuItem("_Reset all masks");
            menuResetAllMasks.Clicked += delegate {
                foreach (BaseScan scan in project.scanCollection) {
                    scan.Mask.ResetMask();
                }
            };
            MenuItem menuExportLog = new MenuItem("Export _logs");
            menuExportLog.Clicked += delegate {
                SaveFileDialog d = new SaveFileDialog("Export logs");
                if (d.Run()) {
                    string filename = d.FileName;
                    if (!string.IsNullOrEmpty(filename)) {
                        System.IO.File.WriteAllText(filename, Log.ToText());
                    }
                }
                d.Dispose();
            };

            extrasMenu.SubMenu.Items.Add(menuResetAllMasks);
            extrasMenu.SubMenu.Items.Add(menuExportLog);

            // main menu
            Menu menu = new Menu();
            menu.Items.Add(fileMenu);
            menu.Items.Add(viewMenu);
            menu.Items.Add(editMenu);
            menu.Items.Add(pipelineMenu);
            menu.Items.Add(extrasMenu);
            MainMenu = menu;

            // initialize preview widget
            preview = new Preview();

            // load tree view with all available files
            fileTree = new FileTreeView();
            VBox splitFileTreeSearch_FileTree = new VBox();
            splitFileTreeSearch_FileTree.PackStart(new FileTreeFilter(fileTree));
            splitFileTreeSearch_FileTree.PackStart(fileTree, true);

            // load pipeline controller
            pipelineShelf = new VBox();
            pipelineController = new PipelineController(project, pipelineShelf);

            splitFiletree_Preview = new HPaned();
            splitFiletree_Preview.Panel1.Content = splitFileTreeSearch_FileTree;
            splitFiletree_Preview.Panel1.Shrink = true;
            fileTree.HorizontalScrollPolicy = ScrollPolicy.Never;
            splitFiletree_Preview.Panel2.Content = preview;
            splitFiletree_Preview.Panel2.Resize = true;

            splitController_Preview = new VBox();
            //splitController_Preview.PackStart(controllbarShelf, false, false);
            splitController_Preview.PackEnd(splitFiletree_Preview, true, true);

            splitScan_Pipeline = new VPaned();
            splitScan_Pipeline.Panel1.Content = splitController_Preview;
            splitScan_Pipeline.Panel2.Content = pipelineShelf;
            splitScan_Pipeline.Panel2.Resize = true;

            splitMain_Status = new VBox();
            splitMain_Status.PackStart(splitScan_Pipeline, true, true);
            splitMain_Status.PackEnd(new StatusBar());

            Content = splitMain_Status;
        }
Exemple #17
0
        /// <summary>Open the FS item at <paramref name="url"/> (if it's file, load; if it's directory, go to)</summary>
        /// <param name="clearhistory">The number of history entrie after that all entries must be removed</param>
        private void NavigateTo(string url, int?ClearHistory = null)
        {
            if (!url.Contains("://"))
            {
                //the path is relative
                NavigateTo(FS.CurrentDirectory + FS.DirSeparator + url);
            }

            Xwt.Menu hm = HistoryButton.Menu;

            if (ClearHistory == null)
            {
                //register current directory in history
                MenuItem hmi = new MenuItem(url);
                hmi.Clicked += (o, ea) => { NavigateTo(url, (int)hmi.Tag); };
                hmi.Tag      = hm.Items.Count;
                hm.Items.Add(hmi);
            }
            if (ClearHistory != null)
            {
                //loading from history menu, thus don't making duplicates.
            }


            try
            {
                if (FS.DirectoryExists(url))
                {                //it's directory
                    if (Navigate != null)
                    {
                        Navigate(url);                                       //raise event
                    }
                    else
                    {
                        Console.WriteLine("WARNING: the event FLP.Navigate was not handled by the host");
                    }

                    LoadDir(url);
                    return;
                }
                else
                {                //it's file
                    if (OpenFile != null)
                    {
                        OpenFile(url);                                       //raise event
                    }
                    else
                    {
                        Console.WriteLine("WARNING: the event FLP.OpenFile was not handled by the host");
                    }
                }
            }
            catch (pluginner.PleaseSwitchPluginException)
            {
                throw;                 //delegate authority to the mainwindow (it is it's jurisdiction).
            }
            catch (Exception ex)
            {
                ListingView.Sensitive = true;
                ListingView.Cursor    = Xwt.CursorType.Arrow;

                Xwt.MessageDialog.ShowError(ex.Message);
                Console.WriteLine(ex.Message + "\n" + ex.StackTrace);
                WriteDefaultStatusLabel();
            }
        }
Exemple #18
0
        /// <summary>
        /// Initializes the context menu.
        /// </summary>
        void InitializeContextMenu()
        {
            contextMenu = new Menu();

            contextEditMask = new MenuItem("Edit mask");
            contextEditMask.UseMnemonic = true;
            contextEditMask.Clicked += (object sender, EventArgs e) => EditMode ^= true;
            contextMenu.Items.Add(contextEditMask);

            MenuItem contextResetMask = new MenuItem("Reset mask");
            contextResetMask.UseMnemonic = true;
            contextResetMask.Clicked += (object sender, EventArgs e) => scan.Mask.ResetMask();
            contextMenu.Items.Add(contextResetMask);

            MenuItem contextSaveMask = new MenuItem("Save changes");
            contextSaveMask.UseMnemonic = true;
            contextSaveMask.Clicked += (object sender, EventArgs e) => SaveMask();
            contextMenu.Items.Add(contextSaveMask);
        }
Exemple #19
0
        private Menu GetBookmarkSubmenu(Bookmark bookmark, Action<string> OnClick)
        {
            Menu mnu = new Menu();
            if (bookmark.SubMenu == null) throw new ArgumentException("The bookmark should have a submenu", "bookmark");

            List<Bookmark> lbm = bookmark.SubMenu;
            foreach (Bookmark b in lbm)
            {
                MenuItem mi = new MenuItem();
                mi.Label = b.title;
                mi.Image = b.GetIcon();

                if (b.SubMenu == null)
                {
                    string url = b.url;
                    mi.Clicked += (o, ea) => OnClick(url);

                }
                else
                {
                    mi.SubMenu = GetBookmarkSubmenu(b, OnClick);
                }
                mnu.Items.Add(mi);
            }

            return mnu;
        }
        /// <summary>
        /// Create import menu.
        /// </summary>
        /// <returns></returns>
        private Menu _createImportMenu()
        {
            Menu _imM = new Menu();

            // Apiary
            MenuItem ApiaryImport = new MenuItem(Director.Properties.Resources.ImportApiary)
            {
                Image = Image.FromResource(DirectorImages.APIARY_ICON)
            };
            _imM.Items.Add(ApiaryImport);
            ApiaryImport.Clicked += ApiaryImport_Clicked;

            // Postman
            MenuItem PostmanImport = new MenuItem(Director.Properties.Resources.ImportPostman)
            {
                Image = Image.FromResource(DirectorImages.POSTMAN_ICON)
            };
            _imM.Items.Add(PostmanImport);
            PostmanImport.Clicked += PostmanImport_Clicked;

            // Return
            return _imM;
        }
Exemple #21
0
        /// <summary>Translates the <paramref name="mnu"/> into the current UI language</summary>
        private void TranslateMenu(Menu mnu)
        {
            if (mnu == null) return;
            foreach (MenuItem currentMenuItem in mnu.Items)
                {
                    if (currentMenuItem.GetType() != typeof(SeparatorMenuItem))
                    { //skip separators
                        currentMenuItem.Label = Localizator.GetString("FCVE_" + currentMenuItem.Tag);
                        TranslateMenu(currentMenuItem.SubMenu);
                    }
                }

            KeyBoardHelp.Visible = Settings.Default.ShowKeybrdHelp;
            CommandBox.Visible = Settings.Default.VE_ShowCmdBar;
        }
        /// <summary>
        /// Create server menu.
        /// </summary>
        private Menu _createServerMenu()
        {
            Menu ServerMenu = new Menu();

            // Sub menu server
            NewServer = new MenuItem(Director.Properties.Resources.MenuNewServer)
            {
                Image = Image.FromResource(DirectorImages.NEW_SERVER_ICON)
            };
            ServerMenu.Items.Add(NewServer);

            // Scenario open
            OpenServerMenu = new MenuItem(Director.Properties.Resources.MenuOpenScenario)
            {
                Image = Image.FromResource(DirectorImages.OPEN_SCENARIO_ICON)
            };
            ServerMenu.Items.Add(OpenServerMenu);

            // Export scenario
            SaveServerMenu = new MenuItem(Director.Properties.Resources.MenuSaveServer)
            {
                Image = Image.FromResource(DirectorImages.SAVE_SCENARIO_ICON)
            };
            ServerMenu.Items.Add(SaveServerMenu);

            // Close scenario
            CloseServer = new MenuItem(Director.Properties.Resources.MenuCloseScenario)
            {
                Image = Image.FromResource(DirectorImages.CROSS_ICON),
                Sensitive = false
            };
            ServerMenu.Items.Add(CloseServer);

            // Separator before exit
            ServerMenu.Items.Add(new SeparatorMenuItem());

            // Sub menu exit
            MenuItem _exit = new MenuItem(Director.Properties.Resources.MenuExitProgram)
            {
                Image = Image.FromResource(DirectorImages.EXIT_ICON)
            };
            _exit.Clicked += delegate { Application.Exit(); };
            ServerMenu.Items.Add(_exit);

            return ServerMenu;
        }
		void ShowBatchFixContextMenu (double x, double y, IEnumerable<TreePosition> rows)
		{
			var possibleFixes = rows
				.Select (row => store.GetNavigatorAt (row).GetValue (nodeField))
				.Where (node1 => node1 != null)
				.SelectMany (node2 => node2.AllChildren.Union (new [] { node2 }))
				.Where (node3 => node3.Visible)
				.OfType<IssueSummary> ()
				.Where (issue => issue.Actions.Any (a => a.Batchable))
				.Distinct()
				.GroupBy(issue => issue.InspectorIdString)
				.OrderBy (group => -group.Count ());
				
			var groups = possibleFixes.Take (BatchChoiceCount).ToList ();
			if (!groups.Any ())
				return;

			if (groups.Count == 1) {
				CreateIssueMenu (groups.First ()).Popup (view, x, y);
			} else {
				var menu = new Menu ();
				foreach (var g in groups) {
					var menuItem = new MenuItem (g.First ().ProviderTitle);
					menuItem.SubMenu = CreateIssueMenu (g);
					menu.Items.Add (menuItem);
				}
				menu.Popup (view, x, y);
			}
		}
Exemple #24
0
		public MainWindow(string title, string pty)
		{
			Title = title;
			Width = 700;
			Height = 400;

			terminal = new TermSharp.Terminal();
			Content = terminal;
			terminal.InnerMargin = new WidgetSpacing(5, 0, 5, 0);
			Padding = new WidgetSpacing();

			terminal.Cursor.Enabled = true;

			Font.RegisterFontFromFile(Path.Combine(Directory.GetCurrentDirectory(), "External/TermsharpConsole/RobotoMono-Regular.ttf"));
			var robotoMonoFont = Font.FromName("Roboto Mono");
			if(robotoMonoFont.Family.Contains("Roboto"))
			{
				terminal.CurrentFont = robotoMonoFont;
			}

			var contextMenu = new Menu();

			var copyMenuItem = new MenuItem("Copy");
			copyMenuItem.Clicked += (sender, e) => Clipboard.SetText(terminal.CollectClipboardData().Text);
			contextMenu.Items.Add(copyMenuItem);

			var pasteMenuItem = new MenuItem("Paste");
			contextMenu.Items.Add(pasteMenuItem);

			terminal.ContextMenu = contextMenu;

			CloseRequested += delegate
			{
				Application.Exit();
			};

			terminal.SetFocus();

			var readerThread = new Thread(() =>
			{
				var stream = new PtyUnixStream(pty);
				var vt100decoder = new TermSharp.Vt100.Decoder(terminal, stream.WriteByte, new ConsoleDecoderLogger());
				var utfDecoder = new ByteUtf8Decoder(vt100decoder.Feed);

				Application.Invoke(() =>
				{
					pasteMenuItem.Clicked += delegate
					{
						var text = Clipboard.GetText();
						var textAsBytes = Encoding.UTF8.GetBytes(text);
						foreach(var b in textAsBytes)
						{
							stream.WriteByte(b);
						}
					};
				});

				var encoder = new TermSharp.Vt100.Encoder(x => 
				{
					terminal.ClearSelection();
					terminal.MoveScrollbarToEnd();
					stream.WriteByte(x); 
				});

				terminal.KeyPressed += (s, a) =>
				{
					a.Handled = true;

					var modifiers = a.Modifiers;
					if(!Utilities.IsOnOsX)
					{
						modifiers &= ~(ModifierKeys.Command);
					}

					if(modifiers== ModifierKeys.Shift)
					{
						if(a.Key == Key.PageUp)
						{
							terminal.PageUp();
							return;
						}
						if(a.Key == Key.PageDown)
						{
							terminal.PageDown();
							return;
						}
					}
					encoder.Feed(a.Key, modifiers);
				};

				var buffer = new List<byte>();
				var noTimeoutNextTime = true;
				while(true)
				{
					if(noTimeoutNextTime)
					{
						noTimeoutNextTime = false;
					}
					else
					{
						stream.ReadTimeout = 10;
					}
					var readByte = buffer.Count > 1024 ? BufferFull : stream.ReadByte();
					if(readByte == StreamClosed)
					{
						Application.Invoke(Application.Exit);
						return;
					}
					if(readByte >= 0)
					{
						buffer.Add((byte)readByte);
					}
					else
					{
						var bufferToWrite = buffer;
						Application.Invoke(() =>
						{
							foreach (var b in bufferToWrite)
							{
								utfDecoder.Feed(b);
							}
						});
						buffer = new List<byte>();
						noTimeoutNextTime = true;
					}
				}
			})
			{ IsBackground = true };

			readerThread.Start();
		}
Exemple #25
0
        private void InitalizeB()
        {
            listMenu = new Menu();

            editMenuItem = new MenuItem("Edit");

            editMenuItem.Clicked += Button_edit_Clicked;
            listMenu.Items.Add(editMenuItem);

            addMenuItem = new MenuItem("Add");
            addMenuItem.Clicked += Button_plus_Clicked;
            listMenu.Items.Add(addMenuItem);

            removeMenuItem = new MenuItem("Remove");
            removeMenuItem.Clicked += Button_minus_Clicked;
            listMenu.Items.Add(removeMenuItem);

            upMenuItem = new MenuItem("Move Up");
            upMenuItem.Clicked += Button_up_Clicked;
            listMenu.Items.Add(upMenuItem);

            downMenuItem = new MenuItem("Move Down");
            downMenuItem.Clicked += Button_down_Clicked;
            listMenu.Items.Add(downMenuItem);

            listStore = new ListStore(startCol, endCol);
            listView1.DataSource = listStore;
            listView1.Columns.Add("Start           ", startCol).CanResize = true;
            listView1.Columns.Add("End", endCol).CanResize = true;
            listView1.SelectionMode = SelectionMode.Single;

            listView1.ButtonPressed += ListView1_ButtonPressed;
            listView1.ButtonReleased += ListView1_ButtonReleased;
            listView1.SelectionChanged += ListView1_SelectionChanged;
            listView1.RowActivated += ListView1_RowActivated;
            button_plus.Clicked += Button_plus_Clicked;
            button_minus.Clicked += Button_minus_Clicked;
            button_edit.Clicked += Button_edit_Clicked;
            button_up.Clicked += Button_up_Clicked;
            button_down.Clicked += Button_down_Clicked;

            /*listView1.SetDragSource (TransferDataType.FromType(typeof(DragData)));
            listView1.SetDragDropTarget (DragDropAction.All ,TransferDataType.FromType(typeof(DragData)));
            listView1.DragStarted += ListView1_DragStarted;
            listView1.DragOver += ListView1_DragOver;*/
        }
Exemple #26
0
 IMenuBackend CreateMenu()
 {
     Menu menu = null;
     BackendHost.ToolkitEngine.Invoke (delegate {
         menu = OnCreateMenu();
     });
     return ((IMenuBackend)BackendHost.ToolkitEngine.GetSafeBackend (menu));
 }
Exemple #27
0
        public MainWindow()
        {
            var w = System.Diagnostics.Stopwatch.StartNew();
            Title = App.WindowTitle;

            this.Icon = App.Icon;

            Width = 870;
            Height = 550;

            Padding = new WidgetSpacing();

            new Task(() => CheckUpdates()).Start();

            //Menu
            Menu mainMenu = new Menu();
            {
                {
                    var sub = new MenuItem("4Plug");

                    Menu subMenu = new Menu();
                    {
                        MenuItem m;

                        subMenu.Items.Add(m = new MenuItem("Reload Plugins") { Image = imgRefresh });
                        m.Clicked += (s, e) => { LoadPlugins(); };

                        subMenu.Items.Add(m = new SeparatorMenuItem());

                        subMenu.Items.Add(m = new MenuItem("Submit Feedback"));
                        m.Clicked += (s, e) => { new SubmitFeedbackWindow("via Main Window").Run(this); };

                        subMenu.Items.Add(m = new MenuItem("Program Folder"));
                        m.Clicked += (s, e) => { Xwt.Desktop.OpenFolder(Environment.CurrentDirectory); };

                        subMenu.Items.Add(m = new MenuItem("Exit"));
                        m.Clicked += (s, e) => { Close(); };
                    }

                    sub.SubMenu = subMenu;
                    mainMenu.Items.Add(sub);
                }

                {
                    var sub = new MenuItem("Games");

                    Menu subMenu = gamesMenu = new Menu();
                    {
                        MenuItem m;
                        subMenu.Items.Add(m = new MenuItem("Manage Games") { Image = imgGear });
                        m.Clicked += (s, e) => { ShowGameSelector(); };

                        subMenu.Items.Add(new SeparatorMenuItem());

                        //subMenu.Items.Add(m = new MenuItem("Team Fortress 2"));
                        //m.Clicked += (s, e) => { Xwt.Desktop.OpenUrl("http://steamcommunity.com/groups/4stuff"); };
                    }

                    sub.SubMenu = subMenu;
                    mainMenu.Items.Add(sub);
                }

                {
                    //var sub = new MenuItem("Current Game");
                    //
                    //CustomGameMenu = sub;
                    //
                    //mainMenu.Items.Add(sub);
                }

                {
                    var sub = new MenuItem("About");

                    Menu subMenu = new Menu();
                    {
                        MenuItem m;
                        subMenu.Items.Add(m = new MenuItem("Steam Group") { Image = imgSteam });
                        m.Clicked += (s, e) => { Xwt.Desktop.OpenUrl(App.SteamGroup); };
                        subMenu.Items.Add(m = new MenuItem("TeamFortress.TV Thread") { Image = imgTFTV });
                        m.Clicked += (s, e) => { Xwt.Desktop.OpenUrl(App.TfTvThread); };

                        subMenu.Items.Add(new SeparatorMenuItem());

                        subMenu.Items.Add(m = new MenuItem("Licenses"));
                        m.Clicked += (s, e) => { new LicensesWindow().Show(); };
                    }

                    sub.SubMenu = subMenu;
                    mainMenu.Items.Add(sub);
                }
            }
            this.MainMenu = mainMenu;

            //if (BackendHost.ToolkitEngine.Type == ToolkitType.Wpf)
            //    mainMenu.Items.Do(item => item.Label = item.Label.ToUpper());

            //Flow Control
            layout = new PluginWidgetLayout();
            layout.Padding = new WidgetSpacing(16, 0, 8, 16);

            scrollView = new ScrollView();
            scrollView.Content = layout;
            //layout.BackgroundColor = Color.FromBytes(240, 240, 240);
            layout.BackgroundColor = Colors.White;
            //layout.BackgroundColor = Color.FromBytes(64, 64, 64);
            Content = scrollView;

            //LoadPlugins();
            //ReloadGames();

            //new Popover() { Content = new Label("eyyy leute") }.Show(Popover.Position.Top, scrollView);

            //Finish
            //CloseRequested += HandleCloseRequested;
            w.Stop();
            Console.WriteLine("MainWindow..ctor(): " + w.ElapsedMilliseconds + "ms");

            if (App.BeforeWindowShown != null)
                App.BeforeWindowShown(BackendHost.Backend);
        }
Exemple #28
0
        public VEd()
        {
            for (int i = 1; i < 11; i++)
            {
                KeybHelpButtons[i] = new KeyboardHelpButton();
                KeybHelpButtons[i].FKey = "F" + i;
                KeybHelpButtons[i].Text = Localizator.GetString("FCVE_F" + i);
                KeybHelpButtons[i].CanGetFocus = false;
                KeybHelpButtons[i].Clicked += KeyboardHelpButton_Clicked;
                KeybHelpButtons[i].Tag = i;
                KeyBoardHelp.PackStart(KeybHelpButtons[i], true, WidgetPlacement.Fill, WidgetPlacement.Fill, 0,1,0,1);
            }

            Title = "File Commander VE";
            Content = Layout;

            CommandBox.KeyReleased += CommandBox_KeyReleased;
            Layout.KeyReleased += Layout_KeyReleased;

            mnuFile.SubMenu = new Menu();
            mnuFile.SubMenu.Items.Add(mnuFileNew);
            mnuFile.SubMenu.Items.Add(mnuFileOpen);
            mnuFile.SubMenu.Items.Add(mnuFileReload);
            mnuFile.SubMenu.Items.Add(mnuFileSave);
            mnuFile.SubMenu.Items.Add(new SeparatorMenuItem());
            mnuFile.SubMenu.Items.Add(mnuFilePrint);
            mnuFile.SubMenu.Items.Add(mnuFilePrintPreview);
            mnuFile.SubMenu.Items.Add(mnuFilePrintSettings);
            mnuFile.SubMenu.Items.Add(new SeparatorMenuItem());
            mnuFile.SubMenu.Items.Add(mnuFileClose);

            mnuEdit.SubMenu = new Menu();
            mnuEdit.SubMenu.Items.Add(mnuEditCut);
            mnuEdit.SubMenu.Items.Add(mnuEditCopy);
            mnuEdit.SubMenu.Items.Add(mnuEditPaste);
            mnuEdit.SubMenu.Items.Add(new SeparatorMenuItem());
            mnuEdit.SubMenu.Items.Add(mnuEditSelectAll);
            mnuEdit.SubMenu.Items.Add(new SeparatorMenuItem());
            mnuEdit.SubMenu.Items.Add(mnuEditFindReplace);
            mnuEdit.SubMenu.Items.Add(mnuEditFindNext);

            mnuViewSettings.Clicked += (o, ea) => {
                new VEsettings().Run();
                Plugin.ShowToolbar = Settings.Default.VE_ShowToolbar;
                KeyBoardHelp.Visible = Settings.Default.ShowKeybrdHelp;
                CommandBox.Visible = Settings.Default.VE_ShowCmdBar;
            };
            mnuView.SubMenu = new Menu();
            mnuView.SubMenu.Items.Add(mnuViewSettings);

            mnuHelp.SubMenu = new Menu();
            mnuHelp.SubMenu.Items.Add(mnuHelpHelpme);
            mnuHelp.SubMenu.Items.Add(mnuHelpAbout);

            MainMenu = new Menu();
            MainMenu.Items.Add(mnuFile);
            MainMenu.Items.Add(mnuEdit);
            MainMenu.Items.Add(mnuView);
            MainMenu.Items.Add(mnuFormat);
            MainMenu.Items.Add(mnuHelp);

            mnuFileOpen.Clicked += (o, ea) => { OpenFile(); };
            mnuFilePrint.Clicked += (o, ea) => { SendCommand("print"); };
            mnuFilePrintSettings.Clicked += (o, ea) => { SendCommand("pagesetup"); };
            mnuFilePrintPreview.Clicked += (o, ea) => { SendCommand("print preview"); };
            mnuFileClose.Clicked += (o, ea) => { Exit(); };
            mnuEditCut.Clicked += (o, ea) => { SendCommand("cut selected"); };
            mnuEditCopy.Clicked += (o, ea) => { SendCommand("copy selected"); };
            mnuEditPaste.Clicked += (o, ea) => { SendCommand("paste clipboard"); };
            mnuEditSelectAll.Clicked += (o, ea) => { SendCommand("select *"); };
            mnuEditFindReplace.Clicked += (o, ea) => { SendCommand("findreplace"); };
            mnuEditFindNext.Clicked += (o, ea) => { SendCommand("findreplace last"); };
            mnuHelpAbout.Clicked += mnuHelpAbout_Clicked;

            CloseRequested += VEd_CloseRequested;

            Localizator.LocalizationChanged += (o, ea) => Localize();

            PluginBody = new Spinner { Animate = true };
            BuildLayout();
            Localize();
        }
Exemple #29
0
        /// <summary>
        /// Initializes all context menus.
        /// </summary>
        void InitializeContextMenus()
        {
            // edge context menu
            contextMenuEdge = new Menu();
            MenuItem contextMenuEdgeDelete = new MenuItem("Delete edge");
            contextMenuEdgeDelete.Clicked += delegate(object sender, EventArgs e) {
                if (lastSelectedEdge != null) {
                    lastSelectedEdge.Item1.RemoveEdge(lastSelectedEdge.Item2);
                    QueueDraw();
                }
            };
            contextMenuEdge.Items.Add(contextMenuEdgeDelete);

            // node context menu
            contextMenuNode = new Menu();
            MenuItem contextMenuNodeDelete = new MenuItem("Delete node");
            contextMenuNodeDelete.Clicked += delegate(object sender, EventArgs e) {
                if (lastSelectedNode != null) {
                    RemoveNode(lastSelectedNode);
                    QueueDraw();
                }
            };
            contextMenuNode.Items.Add(contextMenuNodeDelete);

            contextMenuNodeOptions = new MenuItem("Options");
            contextMenuNodeOptions.Clicked += delegate(object sender, EventArgs e) {
                if (lastSelectedNode != null) {
                    OpenOptionWindow(lastSelectedNode);
                    mouseAction = MouseAction.None;
                }
            };
            contextMenuNode.Items.Add(contextMenuNodeOptions);

            contextMenuNodeExport = new MenuItem("Export as arff");
            contextMenuNodeExport.Clicked += delegate(object sender, EventArgs e) {
                Arff exporter = new Arff(PipelineName);
                List<PipelineNode> thisnode = new List<PipelineNode>();
                thisnode.Add(lastSelectedNode);
                exporter.ShowDialog(thisnode);
            };
            contextMenuNode.Items.Add(contextMenuNodeExport);
        }
		Menu CreateIssueMenu (IEnumerable<IssueSummary> issues)
		{
			var allIssues = issues as IList<IssueSummary> ?? issues.ToList ();
			var issueMenu = new Menu ();
			
			var actionGroups = allIssues
				.SelectMany (issue => issue.Actions)
				.GroupBy (action => action.SiblingKey);
			foreach (var _actionGroup in actionGroups) {
				var actionGroup = _actionGroup;
				
				var actionMenuItem = new MenuItem (actionGroup.First ().Title);
				actionMenuItem.Clicked += delegate {
					ThreadPool.QueueUserWorkItem (delegate {
						try {
							using (var monitor = IdeApp.Workbench.ProgressMonitors.GetStatusProgressMonitor ("Applying fixes", null, false)) {
								var fixer = new BatchFixer (new ExactIssueMatcher (), monitor);
								var appliedActions = fixer.TryFixIssues (actionGroup);
								foreach (var action in appliedActions) {
									((IIssueTreeNode)action.IssueSummary).Visible = false;
								}
							}
							Application.Invoke (delegate {
								ProcessUpdateQueue ();
							});
						} catch (Exception e) {
							LoggingService.LogInternalError (e);
						}
					});
				};
				issueMenu.Items.Add (actionMenuItem);
			}
			return issueMenu;
		}
Exemple #31
0
 void BuildMenu()
 {
     MainMenu = new Menu ();
     MenuItem file = new MenuItem (I18N._ ("_File"));
     file.SubMenu = new Menu ();
     foreach (MenuItem menuItem in BuildFileMenu ()) {
         file.SubMenu.Items.Add (menuItem);
     }
     MainMenu.Items.Add (file);
     MenuItem configuration = new MenuItem (I18N._ ("_Configuration"));
     configuration.SubMenu = new Menu ();
     foreach (MenuItem menuItem in BuildConfigMenu ()) {
         configuration.SubMenu.Items.Add (menuItem);
     }
     MainMenu.Items.Add (configuration);
     MenuItem help = new MenuItem (I18N._ ("_Help"));
     help.SubMenu = new Menu ();
     foreach (MenuItem menuItem in BuildHelpMenu ()) {
         help.SubMenu.Items.Add (menuItem);
     }
     MainMenu.Items.Add (help);
 }