Пример #1
0
        public DocumentListView()
        {
            filterClear = new ToolItem(FilterClearClick)
            {
                Name = "Clear", Glyph = GlyphType.Eraser
            };
            filterWork = new ToolItem((s, e) =>
            {
                Filter.IsWork = filterWork.Checked ? CheckedState.Checked : CheckedState.Indeterminate;
            })
            {
                Name = "Work", DisplayStyle = ToolItemDisplayStyle.Text, CheckOnClick = true
            };
            filterCurrent = new ToolItem((s, e) =>
            {
                Filter.IsCurrent = filterCurrent.Checked;
            })
            {
                Name = "TODO", DisplayStyle = ToolItemDisplayStyle.Text, CheckOnClick = true
            };
            filterToolView = new ToolFieldEditor {
                FillWidth = true, Name = nameof(Filter), DisplayStyle = ToolItemDisplayStyle.Text
            };
            filterCustomer = new ToolFieldEditor {
                FillWidth = true, Name = nameof(DocumentFilter.Customer), DisplayStyle = ToolItemDisplayStyle.Text
            };
            filterNumber = new ToolFieldEditor {
                FillWidth = true, Name = nameof(DocumentFilter.Number), DisplayStyle = ToolItemDisplayStyle.Text
            };
            filterTitle = new ToolFieldEditor {
                FillWidth = true, Name = nameof(DocumentFilter.Title), DisplayStyle = ToolItemDisplayStyle.Text
            };
            filterDate = new ToolFieldEditor {
                FillWidth = true, Name = nameof(DocumentFilter.Date), DisplayStyle = ToolItemDisplayStyle.Text
            };

            var filterGroup = new ToolItem {
                Row = 1, Name = "FilterBar"
            };

            filterGroup.AddRange(new ToolItem[]
            {
                filterToolView,
                filterCustomer,
                filterNumber,
                filterTitle,
                filterDate,
                new ToolSeparator {
                    Width = 20
                },
                filterWork,
                filterCurrent,
                filterClear
            });

            ofDialog = new OpenFileDialog()
            {
                Multiselect = true
            };

            loader = new TableLoader {
                LoadParam = DBLoadParam.Referencing
            };

            toolCreate = new ToolItem(ToolCreateClick)
            {
                DisplayStyle = ToolItemDisplayStyle.Text, Name = "Create", GlyphColor = Colors.Green, Glyph = GlyphType.PlusCircle
            };
            toolCopy = new ToolItem(ToolCopyClick)
            {
                DisplayStyle = ToolItemDisplayStyle.Text, Name = "Copy", Glyph = GlyphType.CopyAlias
            };
            toolLoad = new ToolItem(ToolLoadClick)
            {
                DisplayStyle = ToolItemDisplayStyle.Text, Name = "Load", Glyph = GlyphType.Download
            };
            toolSend = new ToolItem(ToolAcceptClick)
            {
                DisplayStyle = ToolItemDisplayStyle.Text, Name = "Send/Accept", Glyph = GlyphType.CheckCircle
            };

            toolCount = new ToolLabel {
                Text = "0"
            };
            toolPreview = new ToolItem(ToolPreviewClick)
            {
                CheckOnClick = true, Checked = true, Name = "Preview", Glyph = GlyphType.List
            };
            toolParam = new ToolDropDown(ToolParamClick)
            {
                Name = "Parameters", Glyph = GlyphType.Spinner
            };
            toolProgress = new ToolTableLoader {
                Loader = loader
            };

            bar = new Toolsbar(
                toolCreate,
                toolCopy,
                toolLoad,
                new ToolSeparator {
                FillWidth = true
            },
                toolCount,
                toolPreview,
                toolProgress,
                filterGroup)
            {
                Name = "DocumentListBar"
            };

            list = new DocumentLayoutList()
            {
                EditMode = EditModes.ByF2,
                Name     = "DocumentList",
                ReadOnly = true
            };
            list.CellDoubleClick  += ListCellMouseDoubleClick;
            list.PositionChanged  += ListOnPositionChanged;
            list.SelectionChanged += ListOnSelectionChanged;

            //hSplit.Panel1.Resize = false;
            //hSplit.Panel2.Resize = true;
            //hSplit.Panel2.Content = vSplit;

            PackStart(bar, false, false);
            PackStart(list, true, true);
            Name      = "DocumentListView";
            Documents = new DBTableView <Document>();
            Filter    = new DocumentFilter();
        }