예제 #1
0
 private void TLVToolStripMenuItem_Click(object sender, EventArgs e)
 {
     if (FileListLV.SelectedItems != null)
     {
         TreeListViewItem selected = FileListLV.SelectedItems[0] as TreeListViewItem;
         if (selected != null)
         {
             P4.FileMetaData fmd = (P4.FileMetaData)selected.Tag;
             _scm.SccService.ScmProvider.LaunchTimeLapseView(fmd.DepotPath.Path);
         }
     }
 }
예제 #2
0
        public P4FileTreeListViewItem(TreeListViewItem parentItem, P4.FileMetaData fileData, IList <object> fields)
            : base()
        {
            ParentItem = parentItem;
            Fields     = fields;
            FileData   = fileData;

            Tag = fileData;

            //FileName = fileData.LocalPath.GetFileName();
            //FileFolder = fileData.LocalPath.GetFileName();
        }
예제 #3
0
        private void groupGridP4ObjectTreeListView_SelectedIndexChanged(object sender, EventArgs e)
        {
            TreeListViewItem selection = new TreeListViewItem();

            if (groupGridP4ObjectTreeListView.SelectedItems != null &&
                groupGridP4ObjectTreeListView.SelectedItems.Count > 0)
            {
                selection = (TreeListViewItem)groupGridP4ObjectTreeListView.SelectedItems[0];
            }

            OKBtn.Enabled = !(selection == null || selection.Tag == null);
        }
예제 #4
0
        public P4FileTreeListViewItem(TreeListViewItem parentItem, string path, P4.FileMetaData fileData)
            : base()
        {
            _fileData  = null; //fileData;
            ParentItem = parentItem;
            Fields     = null;
            Tag        = fileData;

            ImageIndex = (int)CenterImages.Portrait;
            AddSubitem(path, 0);

            this.FullLine = true;
        }
예제 #5
0
        public P4JobTreeListViewItem(TreeListViewItem parentItem, P4.Job jobData, IList <object> fields)
            : base()
        {
            _jobId     = null;
            ParentItem = parentItem;
            Fields     = fields;
            JobData    = jobData;

            Tag = jobData;

            //FileName = fileData.LocalPath.GetFileName();
            //FileFolder = fileData.LocalPath.GetFileName();
        }
예제 #6
0
        public P4JobTreeListViewItem(TreeListViewItem parentItem, string jobId)
            : base()
        {
            _jobData   = null;
            ParentItem = parentItem;
            Fields     = null;
            _jobId     = jobId;
            Tag        = jobId;

            ImageIndex = (int)CenterImages.Job;
            AddSubitem(jobId, 0);

            this.FullLine = true;
        }
예제 #7
0
        private void changelistContextMenuStrip_Opening(object sender, CancelEventArgs e)
        {
            if (FileListLV.SelectedItems == null)
            {
                e.Cancel = true;
            }
            TreeListViewItem selected = FileListLV.SelectedItems[0] as TreeListViewItem;

            if (selected != null)
            {
                P4.FileMetaData fmd = (P4.FileMetaData)selected.Tag;
                diffToolStripMenuItem.Visible = fmd.HeadRev != 1;
            }
        }
예제 #8
0
 private void historyToolStripMenuItem_Click(object sender, EventArgs e)
 {
     if (FileListLV.SelectedItems != null)
     {
         TreeListViewItem selected = FileListLV.SelectedItems[0] as TreeListViewItem;
         if (selected != null)
         {
             P4.FileMetaData fmd   = (P4.FileMetaData)selected.Tag;
             IList <string>  files = new List <string>();
             files.Add(fmd.DepotPath.Path);
             _scm.SccService._P4VsProvider.P4VsViewHistoryToolWindowExt(files);
         }
     }
 }
        private void filterBtn_Click(object sender, EventArgs e)
        {
            ReviewsLV.Items.Clear();


            // for real
            if (Scm == null)
            {
                // shouldn't happen but...
                return;
            }
            SwarmApi.Options searchOptions = new SwarmApi.Options();
            string           s             = reviewsCB.Text;

            if (string.IsNullOrEmpty(s) == false)
            {
                string ids = string.Format("[{0}]", s);
                searchOptions["ids[]"] = new JSONParser.JSONArray(ids);
            }
            s = participantsCB.Text;
            if (string.IsNullOrEmpty(s) == false)
            {
                string participants = string.Format("[{0}]", s);
                searchOptions["participants[]"] = new JSONParser.JSONArray(participants);
            }
            s = changesCB.Text;
            if (string.IsNullOrEmpty(s) == false)
            {
                string changes = string.Format("[{0}]", s);
                searchOptions["change[]"] = new JSONParser.JSONArray(changes);
            }
            searchOptions["max"] = new JSONParser.JSONNumericalField(Preferences.LocalSettings.GetInt("Number_specs", 100));
            try
            {
                SwarmServer sw = new SwarmServer(Scm.Connection.Swarm.SwarmUrl, Scm.Connection.User, Scm.Connection.Swarm.SwarmPassword);

                SwarmServer.ReviewList reviews = sw.GetReviews(searchOptions);

                foreach (SwarmServer.Review review in reviews)
                {
                    TreeListViewItem it = new TreeListViewItem(null, review.id.ToString(), review.description);
                    it.Tag = review;
                    ReviewsLV.Items.Add(it);
                }
            }
            catch (Exception)
            { }
        }
예제 #10
0
        public TreeListViewItem(TreeListViewItem parentItem, params string[] items)
            : base(items)
        {
            ParentItem = parentItem;

            Tagged   = false;
            FullLine = false;
            //Displayed = false;

            this.treeStateImageIndex = 0;
            ChildNodes = new List <TreeListViewItem>();

            LeftImageIndices   = new List <int>();
            RightImageIndices  = new List <int>();
            CenterImageIndices = new List <int>();
        }
예제 #11
0
        public P4ChangeTreeListViewItem(TreeListViewItem parentItem, P4.Changelist changeData,
                                        P4ScmProvider scm, IList <object> fields)
            : base()
        {
            ParentItem = parentItem;
            Fields     = fields;
            NodeType   = nodeType.Pending;           // default
            Scm        = scm;
            Tag        = changeData;

            Ours = (changeData.ClientId == Scm.Connection.Workspace);

            if (Ours)
            {
                P4.Options opts = new P4.Options();

                if (changeData.Id > 0)
                {
                    opts["-e"] = changeData.Id.ToString();
                }
                else
                {
                    opts["-e"] = "default";
                    NodeType.Set(nodeType.Default);
                }
                opts["-Ru"] = null;
                opts["-m"]  = "1";
                P4.FileSpec        fs  = new P4.FileSpec(new P4.ClientPath(@"//" + Scm.Connection.Workspace + @"/..."), null);
                List <P4.FileSpec> lfs = new List <P4.FileSpec>();
                lfs.Add(fs);
                IList <P4.FileMetaData> unresolved = Scm.GetFileMetaData(lfs, opts);

                if ((unresolved != null) && (unresolved.Count > 0))
                {
                    NeedsResolve = true;
                }
            }

            _changeData = changeData;             // don't call InitSubitems() or SelectImagesFromMetaData() yet

            if (changeData.Id > 0)
            {
                _reviewData = Scm.Connection.Swarm.IsChangelistAttachedToReview(changeData.Id);
            }
            InitSubitems();
            SelectImagesFromMetaData();
        }
예제 #12
0
        public GroupsBrowserDlg(P4ScmProvider scm, string sender)
        {
            PreferenceKey = "GroupsBrowserDlg";

            Scm = scm;
            InitializeComponent();

            if (components == null)
            {
                components = new Container();
            }
            this.Icon = Images.icon_p4vs_16px;

            imageList1 = new System.Windows.Forms.ImageList(components);

            //
            // imageList1
            //
            imageList1.TransparentColor = System.Drawing.Color.Transparent;
            imageList1.Images.Add("groups_icon.png", Images.groups_icon);
            imageList1.Images.Add("users_icon.png", Images.users_icon);

            this.groupGridP4ObjectTreeListView.LargeImageList = this.imageList1;
            this.groupGridP4ObjectTreeListView.SmallImageList = this.imageList1;

            if (Scm != null)
            {
                IList <P4.Group> groups = Scm.GetGroups(null, null);
                foreach (P4.Group group in groups)
                {
                    string           id   = group.Id;
                    TreeListViewItem tlvi = new TreeListViewItem();
                    tlvi.Name = id;
                    tlvi.Text = id;
                    tlvi.ChildNodes.Add(new TreeListViewItem());
                    tlvi.Collapse();
                    tlvi.Tag        = group;
                    tlvi.ImageIndex = 0;
                    groupGridP4ObjectTreeListView.Items.Add(tlvi);
                }
            }
            ClosedByDoubleClick = false;
        }
예제 #13
0
 private void diffToolStripMenuItem_Click(object sender, EventArgs e)
 {
     if (FileListLV.SelectedItems != null)
     {
         TreeListViewItem selected = FileListLV.SelectedItems[0] as TreeListViewItem;
         if (selected != null)
         {
             P4.FileMetaData fmd             = (P4.FileMetaData)selected.Tag;
             P4.FileSpec     fileSelectedRev = new P4.FileSpec();
             fileSelectedRev.DepotPath = fmd.DepotPath;
             fileSelectedRev.Version   = new P4.Revision(fmd.HeadRev);
             P4.FileSpec filePreviousRev = new P4.FileSpec();
             filePreviousRev.DepotPath = fmd.DepotPath;
             filePreviousRev.Version   = new P4.Revision(fmd.HeadRev - 1);
             IList <P4.FileSpec> files = new List <P4.FileSpec>();
             files.Add(filePreviousRev);
             files.Add(fileSelectedRev);
             if (files != null)
             {
                 _scm.Diff2Files(files);
             }
         }
     }
 }
예제 #14
0
        //public string FileName { get; set; }
        //public string FileFolder { get; set; }

        public P4FileTreeListViewItem(TreeListViewItem parentItem, P4.FileMetaData fileData, params object[] fields)
            : this(parentItem, fileData, fields.ToList <object>())
        {
        }
예제 #15
0
        //public string FileName { get; set; }
        //public string FileFolder { get; set; }

        public P4JobTreeListViewItem(TreeListViewItem parentItem, P4.Job jobData, params object[] fields)
            : this(parentItem, jobData, fields.ToList <object>())
        {
        }
예제 #16
0
 public P4ObjectTreeListViewItem(TreeListViewItem parentItem, string itemText, bool fullLine)
     : base(parentItem, itemText, fullLine)
 {
     NodeType = nodeType.None;
 }