Esempio n. 1
0
        private void dataGridView1_MouseUp(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Right)
            {
                DataGridView.HitTestInfo ht;
                ht = dataGridView1.HitTest(e.X, e.Y);
                if (ht.Type == DataGridViewHitTestType.Cell)
                {
                    currentContextFile = getFileByRowIndex(ht.RowIndex);

                    contextMenuStrip1.Items[changePropertyValueMenuItem.Name].Text = String.Format(contextMenuStrip1.Items[changePropertyValueMenuItem.Name].Text, Settings.Default.propertyName);

                    // Enable items by default
                    foreach (object x in contextMenuStrip1.Items)
                    {
                        if (x.GetType() == toolStripSeparator1.GetType())
                        {
                            continue;
                        }
                        ToolStripMenuItem q = (ToolStripMenuItem)x;
                        q.Enabled = true;
                    }

                    if (currentContextFile != null)
                    {
                        contextMenuStrip1.Items[chooseFileManuallyToolStripMenuItem.Name].Enabled = false;
                        if (currentContextFile.getStatus().Type == SWFileStatusType.FILE_MISSING)
                        {
                            contextMenuStrip1.Items[chooseFileManuallyToolStripMenuItem.Name].Enabled = true;
                        }
                    }
                    else
                    {
                        foreach (object x in contextMenuStrip1.Items)
                        {
                            if (x.GetType() == toolStripSeparator1.GetType())
                            {
                                break;
                            }
                            ToolStripMenuItem q = (ToolStripMenuItem)x;
                            q.Enabled = false;
                        }
                    }

                    if (Settings.Default.showEmptyRows)
                    {
                        showEmptyRowsToolStripMenuItem.Checked = true;
                    }
                    contextMenuStrip1.Show(dataGridView1, e.Location);
                }
            }
        }
Esempio n. 2
0
        /// <summary>
        /// Updates file's name, path and status in grid view. Use only from thread that created the UI !!!
        /// </summary>
        /// <param name="f">File to update</param>
        public void updateFile(SWFile f)
        {
            foreach (DataGridViewRow row in dataGridView1.Rows)
            {
                if (row.Tag == f)
                {
                    row.Cells[typeColumn.Index].Value = f.typeString;
                    row.Cells[nameColumn.Index].Value = f.name;
                    row.Cells[filepath.Index].Value   = f.file;

                    SWFileStatus s = f.getStatus();
                    if (s != f.lastShownStatus)
                    {
                        row.Cells[statusColumn.Index].Value = s.ToString();
                        row.Cells[dataGridView1.Columns["statusColumn"].Index].Style.ForeColor = s.Color;
                    }
                    f.lastShownStatus = s;
                    break;
                }
            }
        }
Esempio n. 3
0
        private void contextMenuStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
        {
            // Hide context menu
            contextMenuStrip1.Hide();

            if (e.ClickedItem == contextMenuStrip1.Items[openToolStripMenuItem.Name])
            {
                // Open
                openFile(currentContextFile);
            }
            else if (e.ClickedItem == contextMenuStrip1.Items[readNamePropertyFromFileToolStripMenuItem.Name])
            {
                // Read name
                currentContextFile.getNameFromFile();
                if (currentContextFile.getStatus().Type == SWFileStatusType.FILE_MISSING)
                {
                    MessageBox.Show(String.Format("Can not read from missing file!", currentContextFile.file), "", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
                updateFile(currentContextFile);
            }
            else if (e.ClickedItem == contextMenuStrip1.Items[changePropertyValueMenuItem.Name])
            {
                // Change property value
                if (currentContextFile.getStatus().Type == SWFileStatusType.FILE_MISSING)
                {
                    MessageBox.Show("Changing property value of missing file!", "", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }
                ChangePropertyForm cpf = new ChangePropertyForm(this.project, this.currentContextFile);
                DialogResult       r   = cpf.ShowDialog();
                if (r == DialogResult.OK && currentContextFile.getStatus().Type != SWFileStatusType.FILE_MISSING)
                {
                    this.currentContextFile.setName(cpf.valueTextBox.Text.Trim());
                }
                else if (currentContextFile.getStatus().Type == SWFileStatusType.FILE_MISSING)
                {
                    this.currentContextFile.name = cpf.valueTextBox.Text.Trim();
                    this.updateFile(this.currentContextFile);
                }
            }
            else if (e.ClickedItem == contextMenuStrip1.Items[removeToolStripMenuItem.Name])
            {
                // Remove
                DialogResult r = MessageBox.Show(String.Format("Remove file {0} ?", currentContextFile.file), "", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                if (r == DialogResult.No)
                {
                    return;
                }
                if (currentContextFile.getStatus().Type != SWFileStatusType.FILE_MISSING)
                {
                    r = MessageBox.Show(String.Format("Remove file {0} also from disk?", currentContextFile.file), "", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                    if (r == DialogResult.Yes)
                    {
                        currentContextFile.removeFromDisk();
                    }
                }
                currentContextFile.removeFromProject();
                update();
            }
            else if (e.ClickedItem == contextMenuStrip1.Items[chooseFileManuallyToolStripMenuItem.Name])
            {
                // Choose manually
                chooseFile(currentContextFile);
            }
            else if (e.ClickedItem == contextMenuStrip1.Items[showEmptyRowsToolStripMenuItem.Name])
            {
                // Show empty rows
                if (showEmptyRowsToolStripMenuItem.Checked)
                {
                    showEmptyRowsToolStripMenuItem.Checked = false;
                }
                else
                {
                    showEmptyRowsToolStripMenuItem.Checked = true;
                }
                Settings.Default.showEmptyRows = showEmptyRowsToolStripMenuItem.Checked;
                this.update();
            }
            // Re-disable menus that should be disabled by default
            contextMenuStrip1.Items[chooseFileManuallyToolStripMenuItem.Name].Enabled = false;
        }