private void rightsItem_Click(object sender, EventArgs e)
        {
            if (list.SelectedItems.Count <= 0)
            {
                return;
            }

            DocListItem       item   = (DocListItem)list.SelectedItems[0];
            DocUserListDialog dialog = new DocUserListDialog(item.ID);

            dialog.Show();
        }
Exemplo n.º 2
0
        private void list_MouseUp(object sender, MouseEventArgs e)
        {
            if (e.Button != MouseButtons.Right || contextMenu == null)
            {
                return;
            }
            contextMenu.MenuItems.Clear();

            DocListItem item = null;

            try
            {
                item = list.GetItemAt(e.X, e.Y) as DocListItem;
            }
            catch
            {
            }
            if (item != null)
            {
                item.Selected = true;

                if (item.Rights)
                {
                    contextMenu.MenuItems.AddRange(new MenuItem[] { openItem, rightsItem });
                }
                else
                {
                    contextMenu.MenuItems.AddRange(new MenuItem[] { rightsItem });
                }

                if (contextMenu.MenuItems.Count > 0)
                {
                    contextMenu.Show(this, new Point(e.X + list.Left, e.Y + list.Top));
                }
            }
        }
        private void FillLV()
        {
            int    count = table == null ? 0 : table.Rows.Count;
            string msg   = Environment.StringResources.GetString("SimilarDocsDialog.ChooseDocDialog_Load.Message1") + " " +
                           count + " ";

            list.Items.Clear();

            if (count > 0 && table != null)
            {
                list.Visible = true;
                switch (count % 10)
                {
                case 1:
                    if (Environment.CurCultureInfo.TwoLetterISOLanguageName.Equals("ru"))
                    {
                        if (count != 11)
                        {
                            msg +=
                                Environment.StringResources.GetString(
                                    "SimilarDocsDialog.ChooseDocDialog_Load.Message2");
                        }
                        else
                        {
                            msg +=
                                Environment.StringResources.GetString(
                                    "SimilarDocsDialog.ChooseDocDialog_Load.Message4");
                        }
                    }
                    else
                    {
                        if (count == 1)
                        {
                            msg +=
                                Environment.StringResources.GetString(
                                    "SimilarDocsDialog.ChooseDocDialog_Load.Message2");
                        }
                        else
                        {
                            msg +=
                                Environment.StringResources.GetString(
                                    "SimilarDocsDialog.ChooseDocDialog_Load.Message4");
                        }
                    }
                    break;

                case 2:
                case 3:
                case 4:
                    msg += Environment.StringResources.GetString("SimilarDocsDialog.ChooseDocDialog_Load.Message3");
                    break;

                case 5:
                case 6:
                case 7:
                case 8:
                case 9:
                    msg += Environment.StringResources.GetString("SimilarDocsDialog.ChooseDocDialog_Load.Message4");
                    break;
                }

                msg += " " + Environment.StringResources.GetString("To") + " " + typeStr + " " +
                       Environment.StringResources.GetString("Num");

                if (NumberStr != "")
                {
                    msg += NumberStr;
                }
                else
                {
                    msg += Environment.StringResources.GetString("SimilarDocsDialog.ChooseDocDialog_Load.Message5");
                }

                msg += " " + Environment.StringResources.GetString("Of") + " ";

                if (DocDate > DateTime.MinValue)
                {
                    msg += DocDate.ToString("dd.MM.yyyy");
                }
                else
                {
                    msg += Environment.StringResources.GetString("SimilarDocsDialog.ChooseDocDialog_Load.Message6");
                }

                if (list.Columns.Count == 0)
                {
                    list.Columns.Add(Environment.StringResources.GetString("ID"), 60, HorizontalAlignment.Left);
                    list.Columns.Add(Lib.Win.Document.Environment.StringResources.GetString("DocumentName"), 120,
                                     HorizontalAlignment.Left);
                    list.Columns.Add(Environment.StringResources.GetString("DocumentNumber"), 80,
                                     HorizontalAlignment.Left);
                    list.Columns.Add(Environment.StringResources.GetString("Description"), 180, HorizontalAlignment.Left);
                    list.Columns.Add(
                        Environment.StringResources.GetString("LoopLinkDialog.ChooseDocDialog_Load.Message2"), 130,
                        HorizontalAlignment.Center);
                }

                foreach (DataRow dr in table.Rows)
                {
                    var id = (int)dr[Environment.DocData.IDField];

                    var values = new string[5];

                    // код документа
                    values[0] = id.ToString();

                    // тип документа
                    if (string.IsNullOrEmpty(dr[Environment.DocData.NameField].ToString()))
                    {
                        if (Environment.CurCultureInfo.TwoLetterISOLanguageName.Equals("ru"))
                        {
                            values[1] = dr[Environment.DocData.DocTypeField].ToString();
                        }
                        else if (table.Columns.Contains(Environment.DocData.DocTypeEngField))
                        {
                            values[1] = dr[Environment.DocData.DocTypeEngField].ToString();
                        }
                        else
                        {
                            values[1] = dr[Environment.DocData.DocTypeField].ToString();
                        }
                    }
                    else
                    {
                        values[1] = dr[Environment.DocData.NameField].ToString();
                    }

                    object obj;
                    // номер
                    obj = dr[Environment.DocData.NumberField];
                    if (!obj.Equals(DBNull.Value))
                    {
                        values[2] = obj.ToString();
                    }

                    // описание
                    obj = dr[Environment.DocData.DescriptionField];
                    if (!obj.Equals(DBNull.Value))
                    {
                        values[3] = obj.ToString();
                    }

                    // доступен?
                    var  available = (int)dr[Environment.DocData.RightsField];
                    bool rights    = (available == 1);
                    if (rights)
                    {
                        values[4] = Environment.StringResources.GetString("Available");
                    }
                    else
                    {
                        values[4] = Environment.StringResources.GetString("NotAvailable");
                    }

                    var item = new DocListItem(id, rights, values);
                    if (!item.Rights)
                    {
                        item.ForeColor = Color.Gray;
                    }

                    list.Items.Add(item);
                }
            }
            else
            {
                list.Visible = false;
            }
            labelX.Text = msg;
            UpdateControls();
        }
Exemplo n.º 4
0
        private void FillLV()
        {
            int count = 0;

            if (table != null)
            {
                count = table.Rows.Count;
            }

            var msg = new StringBuilder();

            msg.Append(Environment.StringResources.GetString("InArchiv"));
            msg.Append(" ");
            msg.Append(count == 1
                           ? Environment.StringResources.GetString("Find")
                           : Environment.StringResources.GetString("FindPlural"));
            msg.Append(" " + count + " ");
            list.Items.Clear();
            if (count > 0)
            {
                radioAdd.Enabled = true;
                radioAdd.Checked = true;

                switch (count % 10)
                {
                case 1:
                    msg.Append(
                        Environment.StringResources.GetString("Select_SelectDocDialog_ChooseDocDialog_Load_Message1"));
                    break;

                case 2:
                case 3:
                case 4:
                    msg.Append(
                        Environment.StringResources.GetString("Select_SelectDocDialog_ChooseDocDialog_Load_Message2"));
                    break;

                case 5:
                case 6:
                case 7:
                case 8:
                case 9:
                    msg.Append(
                        Environment.StringResources.GetString("Select_SelectDocDialog_ChooseDocDialog_Load_Message3"));
                    break;
                }

                msg.Append(" " + Environment.StringResources.GetString("On") + " " + typeStr + " " +
                           Environment.StringResources.GetString("Num"));

                msg.Append(numberStr != "" ? numberStr : Environment.StringResources.GetString("NoNumber"));

                msg.Append(" " + Environment.StringResources.GetString("Of") + " ");

                msg.Append(date > DateTime.MinValue
                               ? date.ToString("dd.MM.yyyy")
                               : Environment.StringResources.GetString("NoData"));

                if (list.Columns.Count == 0)
                {
                    list.Columns.Add(Environment.StringResources.GetString("ID"), 60, HorizontalAlignment.Left);
                    list.Columns.Add(Environment.StringResources.GetString("DocumentName"), 120,
                                     HorizontalAlignment.Left);
                    list.Columns.Add(Environment.StringResources.GetString("DocumentNumber"), 80,
                                     HorizontalAlignment.Left);
                    list.Columns.Add(Environment.StringResources.GetString("Description"), 180, HorizontalAlignment.Left);
                    list.Columns.Add(Environment.StringResources.GetString("AccessToEdit"), 130,
                                     HorizontalAlignment.Center);
                }

                bool lang = table.Columns.Contains(Environment.DocData.DocTypeEngField);
                for (int i = 0; i < count; i++)
                {
                    DataRow dr = table.Rows[i];

                    var _docID = (int)dr[Environment.DocData.IDField];

                    var values = new string[5];

                    // код документа
                    values[0] = _docID.ToString();

                    // тип документа
                    if (string.IsNullOrEmpty(dr[Environment.DocData.NameField].ToString()))
                    {
                        values[1] = lang && !Environment.CurCultureInfo.TwoLetterISOLanguageName.Equals("ru")
                                        ? dr[Environment.DocData.DocTypeEngField].ToString()
                                        : dr[Environment.DocData.DocTypeField].ToString();
                    }
                    else
                    {
                        values[1] = dr[Environment.DocData.NameField].ToString();
                    }

                    object obj;

                    // номер
                    obj = dr[Environment.DocData.NumberField];
                    if (!obj.Equals(DBNull.Value))
                    {
                        values[2] = obj.ToString();
                    }

                    // описание
                    obj = dr[Environment.DocData.DescriptionField];
                    if (!obj.Equals(DBNull.Value))
                    {
                        values[3] = obj.ToString();
                    }

                    // доступен?
                    var  avail  = (int)dr[Environment.DocData.RightsField];
                    bool rights = (avail == 1);
                    if (rights)
                    {
                        values[4] = Environment.StringResources.GetString("Available");
                    }
                    else
                    {
                        values[4] = Environment.StringResources.GetString("NotAvailable");
                    }
                    var  hd   = (int)dr[Environment.DocData.HaveDataField];
                    bool have = (hd == 1);
                    if (!image && have)
                    {
                        values[4] += ", " + Environment.StringResources.GetString("HaveEForm");
                    }

                    var item = new DocListItem(_docID, rights, values);
                    if (!image)
                    {
                        item.HaveData = have;
                    }
                    if (!item.Rights)
                    {
                        item.ForeColor = Color.Gray;
                    }

                    list.Items.Add(item);
                }
                // сортируем по коду в обратном порядке
                list.Sorting = SortOrder.Descending;
            }
            else
            {
                radioAdd.Enabled = false;
                radioNew.Checked = true;
            }
            labelX.Text = msg.ToString();
        }