Esempio n. 1
0
 public BugsView()
 {
     BugzillaServer server = new BugzillaServer ();
     server.Product = "MonoDevelop";
     widget = new BugsViewWidget (server);
     widget.Show ();
     ContentName = "Bugs List";
 }
Esempio n. 2
0
        public static void AddServer(BugzillaServer server)
        {
            int i = 1;
            foreach (var si in serverIndex)
                if (si.Id >= i)
                    i = si.Id + 1;

            server.Id = i;
            servers.Add (server);
            serverIndex.Add (new ServerInfo () { Name = server.Name, Id = server.Id });
            server.Save ();
            SaveIndex ();
        }
Esempio n. 3
0
        public EditServerDialog(BugzillaServer server, bool isNew)
        {
            this.Build ();
            this.server = server;

            entryName.Text = server.Name;
            entryHost.Text = server.Host;
            entryProduct.Text = server.Product;
            entryUser.Text = server.User;
            entryPassword.Text = server.Password;
            checkSSL.Active = server.UseSSL;

            if (!isNew) {
                entryHost.Sensitive = false;
                entryProduct.Sensitive = false;
            }
        }
Esempio n. 4
0
 public static void RemoveServer(BugzillaServer server)
 {
     servers.Remove (server);
     serverIndex.RemoveAll (s => s.Id == server.Id);
     SaveIndex ();
 }
Esempio n. 5
0
        public BugsViewWidget(BugzillaServer server)
        {
            this.Build ();
            this.server = server;

            bugsStore = new TreeStore (
                                       typeof (BugInfo),
                                       typeof(string), // Group
                                       typeof(int), // Id
                                       typeof(int), // Local priority
                                       typeof(string), // Status
                                       typeof(string), // Severity
                                       typeof(string), // Target Milestone
                                       typeof(int), // Age
                                       typeof(string), // Assignee
                                       typeof(string), // ColOS
                                       typeof(string), // Component
                                       typeof(string), // Summary
                                       typeof(int), // Weight
                                       typeof(Gdk.Color), // Back color
                                       typeof(Gdk.Color), // Font color
                                       typeof(string) // Summary
                                       );
            bugsList.Model = bugsStore;

            /*			CellRendererSpin spin = new CellRendererSpin ();
            spin.Digits = 1;
                         */
            CellRendererText spin = new CellRendererText ();

            spin.Editable = true;
            spin.Edited += HandleSpinEdited;

            groupColumns = new TreeViewColumn [Enum.GetValues (typeof(GroupCommand)).Length - 1];

            groupColumn = bugsList.AppendColumn ("Category", new CellRendererText (), "text", ColGroup);
            bugsList.AppendColumn ("Id", new CellRendererText (), "text", ColId);
            bugsList.AppendColumn ("Prio", spin, "text", ColPriority);
            groupColumns [(int)GroupCommand.GroupByStatus] = bugsList.AppendColumn ("Status", new CellRendererText (), "text", ColStatus);
            groupColumns [(int)GroupCommand.GroupBySeverity] = bugsList.AppendColumn ("Severity", new CellRendererText (), "text", ColSeverity);
            groupColumns [(int)GroupCommand.GroupByMilestone] = bugsList.AppendColumn ("Milestone", new CellRendererText (), "text", ColTargetMilestone);
            bugsList.AppendColumn ("Age", new CellRendererText (), "text", ColAge);
            groupColumns [(int)GroupCommand.GroupByOwner] = bugsList.AppendColumn ("Assigned", new CellRendererText (), "text", ColAssignee);
            bugsList.AppendColumn ("OS", new CellRendererText (), "text", ColOS);
            groupColumns [(int)GroupCommand.GroupByComponent] = bugsList.AppendColumn ("Component", new CellRendererText (), "text", ColComponent);
            groupColumns [(int)GroupCommand.GroupByTag] = bugsList.AppendColumn ("Tags", new CellRendererText (), "text", ColTags);
            CellRendererText ct = new CellRendererText ();
            bugsList.AppendColumn ("Summary", ct, "text", ColSummary);

            int n = 1;
            foreach (TreeViewColumn col in bugsList.Columns) {
                col.SortColumnId = n++;
                col.Clickable = true;
                col.Resizable = true;
                col.Reorderable = true;
                CellRendererText crt = (CellRendererText) col.CellRenderers[0];
                col.AddAttribute (crt, "weight", ColWeight);
                col.AddAttribute (crt, "background-gdk", ColBackColor);
                col.AddAttribute (crt, "foreground-gdk", ColFontColor);
            }

            bugsList.DragBegin += HandleBugsListDragBegin;
            bugsList.DragDataReceived += HandleBugsListDragDataReceived;
            bugsList.DragEnd += HandleBugsListDragEnd;
            bugsList.DragMotion += HandleBugsListDragMotion;

            bugsList.Selection.Mode = SelectionMode.Multiple;
            bugsList.Selection.Changed += HandleBugsListSelectionChanged;

            Gtk.TargetEntry[] targets = new Gtk.TargetEntry [] { new TargetEntry ("bug", TargetFlags.Widget, 0) };
            //			bugsList.EnableModelDragSource (Gdk.ModifierType.None, targets, Gdk.DragAction.Move);
            Gtk.Drag.SourceSet (bugsList, Gdk.ModifierType.Button1Mask, targets, Gdk.DragAction.Move);
            bugsList.EnableModelDragDest (targets, Gdk.DragAction.Move);

            ActionCommand setPrioHigh = new ActionCommand (LocalCommands.SetPriorityHigh, GettextCatalog.GetString ("Set High Priority (Bottom)"));
            ActionCommand setPrioMed = new ActionCommand (LocalCommands.SetPriorityMed, GettextCatalog.GetString ("Set Medium Priority (Bottom)"));
            ActionCommand setPrioLow = new ActionCommand (LocalCommands.SetPriorityLow, GettextCatalog.GetString ("Set Low Priority (Bottom)"));
            ActionCommand setPrioHighTop = new ActionCommand (LocalCommands.SetPriorityHighTop, GettextCatalog.GetString ("Set High Priority (Top)"));
            ActionCommand setPrioMedTop = new ActionCommand (LocalCommands.SetPriorityMedTop, GettextCatalog.GetString ("Set Medium Priority (Top)"));
            ActionCommand setPrioLowTop = new ActionCommand (LocalCommands.SetPriorityLowTop, GettextCatalog.GetString ("Set Low Priority (Top)"));
            ActionCommand toggleRead = new ActionCommand (LocalCommands.ToggleNewMarker, GettextCatalog.GetString ("Mark as Changed"));
            ActionCommand openInBrowser = new ActionCommand (LocalCommands.OpenInBrowser, GettextCatalog.GetString ("Open in Browser"));
            ActionCommand refreshBugInfo = new ActionCommand (LocalCommands.RefreshFromSever, GettextCatalog.GetString ("Refresh From Server"));
            ActionCommand setTagCommand = new ActionCommand (LocalCommands.TagsList, GettextCatalog.GetString ("Set tag"));
            ActionCommand clearTagsCommand = new ActionCommand (LocalCommands.ClearTags, GettextCatalog.GetString ("Clear Tags"));
            ActionCommand editTagsCommand = new ActionCommand (LocalCommands.EditTags, GettextCatalog.GetString ("Edit Tags"));
            setTagCommand.CommandArray = true;
            setTagCommand.ActionType = ActionType.Check;

            menuSet = new CommandEntrySet ();
            menuSet.Add (openInBrowser);
            menuSet.AddSeparator ();
            menuSet.Add (setPrioHighTop);
            menuSet.Add (setPrioHigh);
            menuSet.Add (setPrioMedTop);
            menuSet.Add (setPrioMed);
            menuSet.Add (setPrioLowTop);
            menuSet.Add (setPrioLow);
            menuSet.AddSeparator ();

            CommandEntrySet tagsSet = menuSet.AddItemSet (GettextCatalog.GetString ("Tags"));
            tagsSet.Add (setTagCommand);
            tagsSet.AddSeparator ();
            tagsSet.Add (clearTagsCommand);
            tagsSet.Add (editTagsCommand);

            menuSet.Add (toggleRead);
            menuSet.AddSeparator ();
            menuSet.Add (refreshBugInfo);

            // Manage menu

            ActionCommand newServer = new ActionCommand (LocalCommands.NewServer, GettextCatalog.GetString ("Add Server..."));
            ActionCommand deleteServer = new ActionCommand (LocalCommands.DeleteServer, GettextCatalog.GetString ("Remove Server"));
            ActionCommand editServer = new ActionCommand (LocalCommands.EditServer, GettextCatalog.GetString ("Edit Server"));
            CommandEntrySet adminMenuSet = new CommandEntrySet ();
            adminMenuSet.Add (newServer);
            adminMenuSet.Add (deleteServer);
            adminMenuSet.Add (editServer);

            // Edit button

            MenuButton editButton = new MenuButton ();
            editButton.Relief = ReliefStyle.None;
            editButton.Label = GettextCatalog.GetString ("Manage");
            editButton.MenuCreator = delegate {
                return IdeApp.CommandService.CreateMenu (adminMenuSet);
            };
            hboxHeader.PackStart (editButton, false, false, 0);
            Box.BoxChild ch = (Box.BoxChild) hboxHeader [editButton];
            ch.Position = 1;
            editButton.ShowAll ();

            // Group by button

            CommandEntrySet groupByMenuSet = new CommandEntrySet ();
            groupByMenuSet.Add (new ActionCommand (GroupCommand.GroupByNothing, GettextCatalog.GetString ("Don't group")));
            groupByMenuSet.AddSeparator ();
            groupByMenuSet.Add (new ActionCommand (GroupCommand.GroupByComponent, GettextCatalog.GetString ("Component")));
            groupByMenuSet.Add (new ActionCommand (GroupCommand.GroupByMilestone, GettextCatalog.GetString ("Target Milestone")));
            groupByMenuSet.Add (new ActionCommand (GroupCommand.GroupByOwner, GettextCatalog.GetString ("Assigned To")));
            groupByMenuSet.Add (new ActionCommand (GroupCommand.GroupBySeverity, GettextCatalog.GetString ("Severity")));
            groupByMenuSet.Add (new ActionCommand (GroupCommand.GroupByStatus, GettextCatalog.GetString ("Status")));
            groupByMenuSet.Add (new ActionCommand (GroupCommand.GroupByTag, GettextCatalog.GetString ("Tag")));

            MenuButton groupButton = new MenuButton ();
            groupButton.Relief = ReliefStyle.None;
            groupButton.Label = GettextCatalog.GetString ("Group By");
            groupButton.MenuCreator = delegate {
                return IdeApp.CommandService.CreateMenu (groupByMenuSet);
            };
            hboxHeader.PackStart (groupButton, false, false, 0);
            ch = (Box.BoxChild) hboxHeader [groupButton];
            ch.Position = 4;
            groupButton.ShowAll ();

            // Load data

            FillServers ();
            FillServer (null);
        }
Esempio n. 6
0
 void FillServer(ServerInfo s)
 {
     if (s != null) {
         vpaned1.Sensitive = true;
         server = BugzillaService.LoadServer (s);
         Fill ();
     } else {
         server = null;
         bugsStore.Clear ();
         countLabel.Text = string.Empty;
         vpaned1.Sensitive = false;
     }
 }
Esempio n. 7
0
 protected void OnAddServer()
 {
     BugzillaServer newServer = new BugzillaServer ();
     EditServerDialog dlg = new EditServerDialog (newServer, true);
     if (dlg.Run () == (int) ResponseType.Ok) {
         dlg.Save ();
         BugzillaService.AddServer (newServer);
         FillServers ();
         servers = BugzillaService.GetServers ();
         comboServers.Active = servers.Length - 1;
     }
     dlg.Destroy ();
 }