public MessageEditor() { toolUsers = new ToolFieldEditor { Name = "User", ContentMinWidth = 200, Editor = new CellEditorUserTree() { UserKeys = UserTreeKeys.Department | UserTreeKeys.Department | UserTreeKeys.User | UserTreeKeys.Current | UserTreeKeys.Access } }; toolUsers.Field.BindData(this, nameof(Staff)); toolHistory = new ToolItem(ToolHistoryClick) { DisplayStyle = ToolItemDisplayStyle.Text, Name = "History" }; toolSend = new ToolItem(ToolSendClick) { DisplayStyle = ToolItemDisplayStyle.Text, Name = "Send" }; tools = new Toolsbar( toolUsers, toolHistory, new ToolSeparator { FillWidth = true }, toolSend) { Name = "Bar" }; text = new TextEntry { Name = "text", MultiLine = true, BackgroundColor = GuiEnvironment.Theme["List"].BackBrush.Color, TextColor = GuiEnvironment.Theme["List"].FontBrush.Color, }; MessageText = string.Empty; PackStart(tools, false, false); PackStart(text, true, true); Name = nameof(MessageEditor); }
public TableView() : base() { list = new TableLayoutList() { EditState = EditListState.ReadOnly, GenerateToString = false, Name = "list" }; list.PositionChanged += OnNotifyPositionChangedEV; list.SelectionChanged += OnSelectionChanged; list.CellDoubleClick += TableViewCellDoubleClick; lable = new ToolLabel { Name = "lable", Text = "_" }; toolLoad = new ToolItem(ToolLoadClick) { DisplayStyle = ToolItemDisplayStyle.Text, Name = "Load", Text = "Load" }; toolProgress = new ToolTableLoader { Loader = loader }; bar = new Toolsbar( lable, toolLoad, toolProgress) { Name = "Bar" }; Name = "TableView"; PackStart(bar, false, false); PackStart(list, true, true); }
public ChangeViewer() { toolRefresh = new ToolItem(ToolRefreshClick) { Name = "Refresh", Text = "Refresh", Glyph = GlyphType.Refresh }; toolAccept = new ToolItem(ToolAcceptClick) { Name = "Accept", Text = "Accept", Glyph = GlyphType.Check }; toolReject = new ToolItem(ToolRejectClick) { Name = "Reject", Text = "Reject", Glyph = GlyphType.Undo }; toolDetails = new ToolItem(ToolDetailsClick) { Name = "Details", Text = "Details", Glyph = GlyphType.Tag }; tools = new Toolsbar(toolRefresh, toolAccept, toolReject, toolDetails) { Name = "Bar" }; listObjects = new DataTree() { Name = "listObjects", DataKeys = DataTreeKeys.CheckTableAdmin | DataTreeKeys.Table | DataTreeKeys.Schema }; listObjects.ListInfo.Columns.Add("Count", 35); listObjects.BuildColumn(listObjects.ListInfo, null, "Count"); listObjects.SelectionChanged += ListObjectsSelectionChanged; listRows = new LayoutList() { EditMode = EditModes.None, EditState = EditListState.Edit, GenerateColumns = false, GenerateToString = false, Mode = LayoutListMode.List, Name = "listRows" }; listRows.ListInfo.Columns.Add("Row.Status", 60); listRows.ListInfo.Columns.Add("Row", 200).FillWidth = true; listRows.ListInfo.Columns.Add("User", 100).FillWidth = true; listRows.SelectionChanged += RowsSelectionChanged; listDiff.EditMode = EditModes.None; listDiff.EditState = EditListState.Edit; listDiff.GenerateColumns = false; listDiff.GenerateToString = false; listDiff.Mode = LayoutListMode.List; listDiff.Name = "listDiff"; listDiff.Text = "listdetails"; listDiff.ListInfo.Columns.Add("Column", 120); listDiff.ListInfo.Columns.Add("OldFormat", 150).FillWidth = true; listDiff.ListInfo.Columns.Add("NewFormat", 150).FillWidth = true; listDiff.ListInfo.StyleRowName = "ChangeRow"; listDiff.ListInfo.HeaderVisible = false; this.Name = "ChangeViewer"; this.Text = "Change Viewer"; PackStart(tools, false, false); PackStart(split1, true, true); split1.Name = "splitter"; split1.Panel1.Content = listObjects; split1.Panel2.Content = split2; split2.Name = "groupBoxMap2"; split2.Panel1.Content = listRows; split2.Panel2.Content = listDiff; rows = new SelectableList <LogMap>(); rowsView = new SelectableListView <LogMap>(rows); //rowsView.Filter.Parameters.Add(typeof(RowChanges), LogicType.Undefined, "Row.Status", CompareType.NotEqual, DBStatus.Actual); listRows.ListSource = rowsView; }
public DataQuery() { tw.Mode = ToolShowMode.Dialog; tw.ButtonAccept.Click += ButtonAccept_Click; timeInterval.Interval = 1000; timeInterval.Elapsed += TimeIntervalTick; toolSave = new ToolItem(ToolSaveClick) { Name = "Save", Glyph = GlyphType.SaveAlias }; toolLoad = new ToolItem(ToolLoadClick) { Name = "Load", Glyph = GlyphType.FolderOpen }; toolExecute = new ToolItem(ToolExecuteClick) { Name = "Execute", Glyph = GlyphType.Play }; toolParser = new ToolItem(ToolParseClick) { Name = "Parse", Glyph = GlyphType.Code }; toolGenerate = new ToolItem(ToolGenerateClick) { Name = "Generate", Glyph = GlyphType.GearAlias }; toolStop = new ToolItem(ToolStopClick) { Name = "Stop", Glyph = GlyphType.Stop }; toolResult = new ToolItem(ToolSpliterClick) { Name = "Result", CheckOnClick = true, Glyph = GlyphType.List }; toolTimer = new ToolLabel { Name = "Timer", Text = "_:_" }; toolSchems = new ToolFieldEditor { Name = "toolSchems", Editor = new CellEditorList { DataType = typeof(DBSchema), DataSource = DBService.Schems } }; toolSchems.Field.BindData(this, nameof(CurrentSchema)); //var fieldstring = new DataField<string>(); //var fieldschema = new DataField<DBSchema>(); //ListStore store = new ListStore(fieldstring, fieldschema); //foreach (var schema in DBService.Schems) //store.SetValues(store.AddRow(), fieldstring, schema.Name, fieldschema, schema); //toolSchems.ComboBox.Views.Add(new TextCellView(fieldstring)); //toolSchems.ComboBox.ItemsSource = store; //toolSchems.ComboBox.DataSource = DBService.Schems; bar = new Toolsbar( toolSchems, toolLoad, toolSave, new ToolSeparator(), toolExecute, toolStop, new ToolSeparator(), toolGenerate, toolParser, new ToolSeparator() { FillWidth = true }, toolResult, toolTimer) { Name = "bar" }; queryText = new TextEditor { Name = "queryText", Text = "" }; queryText.Document.MimeType = "text/x-sql"; //queryText.TextArea.ColorStyle = Mono.TextEditor.Highlighting.ColorScheme.LoadFrom[""]; var scroll = new ScrollView() { Content = queryText }; list = new TableLayoutList() { GenerateToString = false, Visible = false }; container = new HPaned(); container.Panel1.Content = scroll; container.Panel2.Content = list; Name = "DataQuery"; PackStart(bar, false, false); PackStart(container, true, true); Localize(); toolFind = new FindWindow { Editor = queryText }; CurrentSchema = DBService.Schems.DefaultSchema; }
public DataLogView() { toolModeDefault = new ToolMenuItem { Name = "Default", Tag = DataLogMode.Default }; toolModeDocument = new ToolMenuItem { Name = "Document", Tag = DataLogMode.Document }; toolModeTable = new ToolMenuItem { Name = "Table", Tag = DataLogMode.Table }; toolMode = new ToolDropDown( toolModeDefault, toolModeDocument, toolModeTable) { DisplayStyle = ToolItemDisplayStyle.Text, Name = "LogMode", Text = "Mode: Default" }; toolMode.ItemClick += ToolModeClick; toolRollback = new ToolItem(ToolRollbackClick) { Name = "Rollback", DisplayStyle = ToolItemDisplayStyle.Text }; toolAccept = new ToolItem(ToolAcceptClick) { Name = "Accept", DisplayStyle = ToolItemDisplayStyle.Text }; toolCheck = new ToolItem() { Name = "Check", DisplayStyle = ToolItemDisplayStyle.Text }; toolDetails = new ToolItem(ToolDetailsClick) { Name = "Details", DisplayStyle = ToolItemDisplayStyle.Text }; dateField = new ToolFieldEditor() { Editor = new CellEditorDate { TwoDate = true, DataType = typeof(DateInterval) }, Name = "Date", ContentMinWidth = 200 }; dateField.Field.BindData(this, nameof(Date)); dataField = new ToolFieldEditor() { Editor = new CellEditorDataTree { DataType = typeof(DBTable) }, Name = "Table", ContentMinWidth = 200 }; dataField.Field.BindData(this, nameof(Table)); toolProgress = new ToolTableLoader() { }; bar = new Toolsbar( toolRollback, toolMode, toolDetails, new ToolSeparator { FillWidth = true }, dateField, dataField, toolProgress) { Name = "BarLog" }; list = new LayoutList() { AllowEditColumn = false, EditMode = EditModes.None, EditState = EditListState.Edit, GenerateToString = false, Mode = LayoutListMode.List, Name = "list", ListSource = listSource = new SelectableList <DBLogItem>() }; list.GenerateColumns = true; list.CellMouseClick += ListCellMouseClick; list.CellDoubleClick += ListCellDoubleClick; list.SelectionChanged += ListSelectionChanged; //if (logs.Table != null) // logs.ApplySort(new DBRowComparer(logs.Table.DateKey, ListSortDirection.Ascending)); detailList = new TableLayoutList() { GenerateToString = false, GenerateColumns = false, ReadOnly = true, EditMode = EditModes.ByClick }; detailList.ListInfo.Columns.Add("Column", 120).Editable = false; detailList.ListInfo.Columns.Add("OldFormat", 100).FillWidth = true; detailList.ListInfo.Columns.Add("NewFormat", 100).FillWidth = true; detailList.ListInfo.StyleRowName = "ChangeRow"; detailList.ListInfo.HeaderVisible = false; detailRow = new TableLayoutList(); map = new GroupBox( new GroupBoxItem { Name = "Details", Widget = detailList, Column = 0, FillWidth = true, FillHeight = true }, //new GroupBoxItem { Name = "Difference", Widget = detailText, Col = 1, FillWidth = true, FillHeight = true }, new GroupBoxItem { Name = "Record", Widget = detailRow, Column = 2, FillWidth = true, FillHeight = true }); //list.ListInfo.Columns.Add(list.BuildColumn(null, "Text")); split = new VPaned(); split.Panel1.Content = list; //split.Panel2.Content = map; PackStart(bar, false, false); PackStart(split, true, true); Name = "DataLog"; }
public PermissionEditor() { toolLogs = new ToolItem(ToolLogsClick) { Name = "Logs", Glyph = GlyphType.History }; toolSave = new ToolItem(ToolSaveClick) { Name = "Save", Sensitive = false, Glyph = GlyphType.SaveAlias }; toolReject = new ToolItem(ToolCancelClick) { Name = "Cancel", Glyph = GlyphType.Undo }; toolExport = new ToolItem(ToolExportClick) { Name = "Export", Glyph = GlyphType.FileTextO }; toolFilterText = new ToolTextEntry { Name = "FilterText" }; list = new LayoutList() { EditMode = EditModes.ByClick, EditState = EditListState.Edit, GenerateColumns = false, GenerateToString = false, Grouping = false, Mode = LayoutListMode.List, Name = "list", Text = "columns" }; bar = new Toolsbar( toolSave, toolReject, toolExport, toolLogs, new ToolSeparator { FillWidth = true }, toolFilterText) { Name = "Bar" }; var listInfo = new LayoutListInfo( new LayoutColumn { Name = nameof(Node.ToString), Editable = false, Width = 120, FillWidth = true, Invoker = ToStringInvoker.Instance }, new LayoutColumn { Name = "View", Width = 60, Invoker = new ActionInvoker <TableItemNode, bool?>("View", (item) => item.Access?.Get(Group).Read, (item, value) => CheckSave(item, AccessType.Read, value)) }, new LayoutColumn { Name = "Edit", Width = 60, Invoker = new ActionInvoker <TableItemNode, bool?>("Edit", (item) => item.Access?.Get(Group).Update, (item, value) => CheckSave(item, AccessType.Update, value)) }, new LayoutColumn { Name = "Create", Width = 60, Invoker = new ActionInvoker <TableItemNode, bool?>("Create", (item) => item.Access?.Get(Group).Create, (item, value) => CheckSave(item, AccessType.Create, value)) }, new LayoutColumn { Name = "Delete", Width = 60, Invoker = new ActionInvoker <TableItemNode, bool?>("Delete", (item) => item.Access?.Get(Group).Delete, (item, value) => CheckSave(item, AccessType.Delete, value)) }, new LayoutColumn { Name = "Admin", Width = 60, Invoker = new ActionInvoker <TableItemNode, bool?>("Admin", (item) => item.Access?.Get(Group).Admin, (item, value) => CheckSave(item, AccessType.Admin, value)) }, new LayoutColumn { Name = "Accept", Width = 60, Invoker = new ActionInvoker <TableItemNode, bool?>("Accept", (item) => item.Access?.Get(Group).Accept, (item, value) => CheckSave(item, AccessType.Accept, value)) }, new LayoutColumn { Name = "Table", Visible = false, Invoker = new PropertyInvoker <TableItemNode, string>("TableName") }) { Tree = true, ColumnsVisible = true, HeaderVisible = true, GroupCount = false }; listInfo.Sorters.Add(new LayoutSort("Order")); var nodeInfo = new LayoutNodeInfo { Columns = listInfo }; tree = new FlowTree { NodeInfo = nodeInfo, Name = "tree", EditState = EditListState.Edit, EditMode = EditModes.ByF2, UserKeys = UserTreeKeys.Department | UserTreeKeys.User | UserTreeKeys.Group | UserTreeKeys.Permission, FlowKeys = FlowTreeKeys.Template | FlowTreeKeys.TemplateData | FlowTreeKeys.Work | FlowTreeKeys.Stage | FlowTreeKeys.StageParam, FilterEntry = toolFilterText.Entry }; tree.SelectionChanged += TreeSelectionChanged; map = new GroupBox( new GroupBoxItem { Text = "Params", Widget = list, FillWidth = true }, new GroupBoxItem { Text = "Permissions", Widget = tree, FillWidth = true, FillHeight = true, Row = 1 }); Name = "PermissionEditor"; Text = "Permissions"; PackStart(bar, false, false); PackStart(map, true, true); UserReg.RowLoged += FlowEnvirRowLoged; Localize(); }
public DocumentEditor() { FileSerialize = true; toolProcedures = new ToolDropDown { Name = "Procedures", Glyph = GlyphType.PuzzlePiece, DropDown = new Menubar { Name = "Procedures" } }; toolSave = new ToolItem(ToolSaveClick) { DisplayStyle = ToolItemDisplayStyle.Text, Name = "Save", Glyph = GlyphType.SaveAlias }; toolRefresh = new ToolItem(ToolRefreshClick) { DisplayStyle = ToolItemDisplayStyle.Text, Name = "Refresh", Glyph = GlyphType.Refresh }; toolDelete = new ToolItem(ToolDeleteClick) { DisplayStyle = ToolItemDisplayStyle.Text, Name = "Delete", Glyph = GlyphType.MinusSquare }; toolLogs = new ToolItem(ToolLogsOnClick) { DisplayStyle = ToolItemDisplayStyle.Text, Name = "Logs", Glyph = GlyphType.History }; toolBarCode = new ToolItem(ToolBarCodeClick) { DisplayStyle = ToolItemDisplayStyle.Text, Name = "BarCode", Glyph = GlyphType.Barcode }; toolSend = new ToolItem(ToolAcceptClick) { DisplayStyle = ToolItemDisplayStyle.Text, Name = "Send/Accept", Glyph = GlyphType.CheckCircle }; bar = new Toolsbar( //toolProcedures, toolSave, toolRefresh, toolDelete, new ToolSeparator(), toolLogs, toolBarCode, new ToolSeparator(), toolSend ) { Name = "tools" }; toolsItems = bar.Items.Cast <ToolItem>(); dock = new DockBox() { Name = "dock", }; Glyph = GlyphType.Book; Name = nameof(DocumentEditor); Text = "Document"; Tag = "Document"; PackStart(bar, false, false); PackStart(dock, true, true); Localize(); }
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(); }
public DataExport() { toolInit = new ToolItem(ToolInitClick) { Name = "Init", DisplayStyle = ToolItemDisplayStyle.Text }; toolScript = new ToolItem(ToolScriptClick) { Name = "Script", DisplayStyle = ToolItemDisplayStyle.Text }; toolCode = new ToolItem(ToolCodeClick) { Name = "Code", DisplayStyle = ToolItemDisplayStyle.Text }; toolSchema = new ToolItem(ToolSchemaClick) { Name = "Schema", DisplayStyle = ToolItemDisplayStyle.Text }; toolStart = new ToolItem(ToolStartClick) { Name = "Start", DisplayStyle = ToolItemDisplayStyle.Text }; toolCancel = new ToolItem(ToolCancelClick) { Name = "Cancel", Sensitive = false, DisplayStyle = ToolItemDisplayStyle.Text }; toolProgress = new ToolProgressBar { Name = "Progress" }; tools = new Toolsbar( toolInit, toolScript, toolCode, toolSchema, toolStart, toolCancel, toolProgress) { Name = "tools" }; listTables = new ListEditor() { Name = "listTables", ReadOnly = false }; listTables.List.SelectionChanged += ListTablesOnSelectionChahged; listTables.List.AllowCheck = true; listTables.List.AllowSort = false; listTables.List.EditMode = EditModes.ByF2; listColumns = new ListEditor() { Name = "listColumns", ReadOnly = false }; listColumns.List.AllowCheck = true; listColumns.List.AllowSort = false; listColumns.List.EditMode = EditModes.ByF2; setting = new TableLayoutList() { EditMode = EditModes.ByClick, EditState = EditListState.Edit, Mode = LayoutListMode.List, Name = "setting", Text = "Settings" }; var gSetting = new GroupBoxItem() { Name = "Setting", Widget = setting, Column = 0, Row = 0, Autosize = false, DefaultHeight = 250, Width = 300 }; var gTable = new GroupBoxItem() { Name = "Tables", Widget = listTables, Column = 1, Row = 0, Autosize = false, FillWidth = true, DefaultHeight = 250 }; var gColumn = new GroupBoxItem() { Name = "Columns", Widget = listColumns, Column = 0, Row = 1, FillWidth = true, FillHeight = true }; map = new GroupBox(gSetting, gTable, gColumn); Name = "DataExport"; Text = "Export"; PackStart(tools, false, false); PackStart(map, true, true); }
public FlowExplorer() : base() { contextTools = new Menubar( new ToolMenuItem(ToolMainRefreshClick) { Name = "Refresh", Glyph = GlyphType.Refresh }, new ToolMenuItem(ToolGenerateDBClick) { Name = "Generate database", Glyph = GlyphType.Database }, new ToolMenuItem(ToolStatClick) { Name = "Stats", Glyph = GlyphType.Link }) { Name = "FlowExplorer" }; contextAdd = new Menubar( new ToolMenuItem { Name = "Template", Sensitive = Template.DBTable?.Access.GetFlag(AccessType.Create, GuiEnvironment.User) ?? false, Glyph = GlyphType.Book }, new ToolMenuItem { Name = "Template Data", Sensitive = TemplateData.DBTable?.Access.GetFlag(AccessType.Create, GuiEnvironment.User) ?? false, Glyph = GlyphType.File }, new ToolMenuItem { Name = "Work", Sensitive = Work.DBTable?.Access.GetFlag(AccessType.Create, GuiEnvironment.User) ?? false, Glyph = GlyphType.GearsAlias }, new ToolMenuItem { Name = "Work Stage", Sensitive = Stage.DBTable?.Access.GetFlag(AccessType.Create, GuiEnvironment.User) ?? false, Glyph = GlyphType.EditAlias }, new ToolMenuItem { Name = "Stage Parameter", Sensitive = StageParam.DBTable?.Access.GetFlag(AccessType.Create, GuiEnvironment.User) ?? false, Glyph = GlyphType.Columns, DropDown = new Menubar( new ToolMenuItem { Name = "Stage Procedure", Sensitive = StageParam.DBTable?.Access.GetFlag(AccessType.Create, GuiEnvironment.User) ?? false, Glyph = GlyphType.EditAlias }, new ToolMenuItem { Name = "Stage Reference", Sensitive = StageParam.DBTable?.Access.GetFlag(AccessType.Create, GuiEnvironment.User) ?? false, Glyph = GlyphType.EditAlias } ) }, new ToolMenuItem { Name = "Group", Sensitive = UserGroup.DBTable?.Access.GetFlag(AccessType.Create, GuiEnvironment.User) ?? false, Glyph = GlyphType.Users }, new ToolMenuItem { Name = "Department", Sensitive = Department.DBTable?.Access.GetFlag(AccessType.Create, GuiEnvironment.User) ?? false, Glyph = GlyphType.Home }, new ToolMenuItem { Name = "Position", Sensitive = Position.DBTable?.Access.GetFlag(AccessType.Create, GuiEnvironment.User) ?? false, Glyph = GlyphType.UserMd }, new ToolMenuItem { Name = "User", Sensitive = User.DBTable?.Access.GetFlag(AccessType.Create, GuiEnvironment.User) ?? false, Glyph = GlyphType.User }, new ToolMenuItem { Name = "Scheduler", Sensitive = Scheduler.DBTable?.Access.GetFlag(AccessType.Create, GuiEnvironment.User) ?? false, Glyph = GlyphType.ClockO }) { Name = "FlowExplorer" }; contextAdd.Bar.ItemClick += ContextAddItemClicked; barMain = new Toolsbar( new ToolDropDown { Name = "Add", GlyphColor = Colors.DarkGreen, DropDown = contextAdd, Glyph = GlyphType.PlusCircle }, new ToolItem(ToolMainRemoveClick) { Name = "Remove", GlyphColor = Colors.DarkRed, Glyph = GlyphType.MinusCircle }, new ToolItem(ToolMainCopyClick) { Name = "Copy", Glyph = GlyphType.CopyAlias }, new ToolDropDown { Name = "Tools", DropDown = contextTools, Glyph = GlyphType.Wrench }, new ToolSearchEntry() { Name = "FilterText", FillWidth = true }) { Name = "FlowExplorer" }; se = new ListEditor(); ose = new ToolWindow { Target = se }; ose.ButtonAcceptClick += AcceptOnActivated; var userKeys = UserTreeKeys.None; if (Department.DBTable?.Access.GetFlag(AccessType.Read, GuiEnvironment.User) ?? false) { userKeys |= UserTreeKeys.Department; } if (Position.DBTable?.Access.GetFlag(AccessType.Read, GuiEnvironment.User) ?? false) { userKeys |= UserTreeKeys.Position; } if (GroupPermission.DBTable?.Access.GetFlag(AccessType.Read, GuiEnvironment.User) ?? false) { userKeys |= UserTreeKeys.Permission; } if (User.DBTable?.Access.GetFlag(AccessType.Read, GuiEnvironment.User) ?? false) { userKeys |= UserTreeKeys.User; } if (UserGroup.DBTable?.Access.GetFlag(AccessType.Read, GuiEnvironment.User) ?? false) { userKeys |= UserTreeKeys.Group; } if (Scheduler.DBTable?.Access.GetFlag(AccessType.Read, GuiEnvironment.User) ?? false) { userKeys |= UserTreeKeys.Scheduler; } var keys = FlowTreeKeys.None; //if (TemplateParam.DBTable?.Access.View ?? false) keys |= FlowTreeKeys.TemplateParam; if (Template.DBTable?.Access.GetFlag(AccessType.Read, GuiEnvironment.User) ?? false) { keys |= FlowTreeKeys.Template; } if (StageParam.DBTable?.Access.GetFlag(AccessType.Read, GuiEnvironment.User) ?? false) { keys |= FlowTreeKeys.StageParam; } if (Stage.DBTable?.Access.GetFlag(AccessType.Read, GuiEnvironment.User) ?? false) { keys |= FlowTreeKeys.Stage; } if (Work.DBTable?.Access.GetFlag(AccessType.Read, GuiEnvironment.User) ?? false) { keys |= FlowTreeKeys.Work; } tree = new FlowTree { FlowKeys = keys, UserKeys = userKeys, FilterEntry = ((ToolSearchEntry)barMain["FilterText"]).Entry }; tree.ListInfo.HeaderVisible = true; tree.ListInfo.HeaderWidth = 35; tree.SelectionChanged += TreeAfterSelect; tree.CellMouseClick += TreeNodeMouseClick; tree.CellDoubleClick += TreeNodeMouseDoubleClick; Name = "FlowExplorer"; PackStart(barMain, false, false); PackStart(tree, true, true); }
public DataExplorer() { contextTools = new Menubar( new ToolMenuItem(ToolMainRefreshOnClick) { Name = "Refresh Tree", GlyphColor = Colors.DarkBlue, Glyph = GlyphType.Refresh }, new ToolMenuItem(ToolDBCheckClick) { Name = "Check Connection" }, new ToolMenuItem(ToolDBRefreshClick) { Name = "Refresh Schema Info" }, new ToolMenuItem(ToolDBGenerateClick) { Name = "Generate Database" }, new ToolSeparator(), new ToolMenuItem(ToolDBExportClick) { Name = "Export" }, new ToolMenuItem(ToolPatchCreateClick) { Name = "Patch Create" }, new ToolMenuItem(ToolPatchLoadClick) { Name = "Patch Load" }, new ToolSeparator(), new ToolMenuItem(ToolTableRefreshOnClick) { Name = "Refresh Table Info" }, new ToolMenuItem(ToolTableReportOnClick) { Name = "Table Report" }, new ToolMenuItem(ToolTableExplorerOnClick) { Name = "Table Explorer" }, new ToolMenuItem(ToolSequenceRefreshOnClick) { Name = "Refresh Sequence" }, new ToolSeparator(), new ToolMenuItem(ToolExtractDDLClick) { Name = "Extract DDL" }, new ToolMenuItem(ToolSerializeClick) { Name = "Serialize" }, new ToolMenuItem(ToolDeserializeClick) { Name = "Deserialize" }, new ToolMenuItem(ToolLoadFileClick) { Name = "Load Files" }) { Name = "DataExplorer" }; contextAdd = new Menubar( new ToolMenuItem(ToolAddConnectionClick) { Name = "Connection", Glyph = GlyphType.Connectdevelop }, new ToolMenuItem(ToolAddSchemaClick) { Name = "Schema", Glyph = GlyphType.Database }, new ToolMenuItem(ToolAddTableGroupClick) { Name = "TableGroup", Glyph = GlyphType.FolderOTable }, new ToolMenuItem(ToolAddTableClick) { Name = "Table", Glyph = GlyphType.Table }, new ToolMenuItem(ToolAddColumnGroupClick) { Name = "ColumnGroup", Glyph = GlyphType.FolderOColumn }, new ToolMenuItem(ToolAddColumnClick) { Name = "Column", Glyph = GlyphType.Columns }, new ToolMenuItem(ToolAddIndexClick) { Name = "Index", Glyph = GlyphType.Anchor }, new ToolMenuItem(ToolAddConstraintClick) { Name = "Constraint", Glyph = GlyphType.Check }, new ToolMenuItem(ToolAddForeignClick) { Name = "Foreign", Glyph = GlyphType.Link }, new ToolMenuItem(ToolAddSequenceClick) { Name = "Sequence", Glyph = GlyphType.Plus }, new ToolMenuItem(ToolAddProcedureClick) { Name = "Procedure", Glyph = GlyphType.GearAlias }, new ToolMenuItem(ToolAddProcedureParamClick) { Name = "Procedure Parameter", Glyph = GlyphType.Columns }) { Name = "DBSchema" }; contextMain = new Menubar( new ToolMenuItem { Name = "Add", GlyphColor = Colors.DarkGreen, DropDown = contextAdd, Glyph = GlyphType.PlusCircle }, new ToolMenuItem(ToolCopyClick) { Name = "Copy", Glyph = GlyphType.CopyAlias }, new ToolMenuItem(ToolRemoveClick) { Name = "Remove", GlyphColor = Colors.DarkRed, Glyph = GlyphType.MinusCircle }, new ToolSeparator(), new ToolMenuItem { Name = "Tools", DropDown = contextTools, Glyph = GlyphType.Wrench }, new ToolMenuItem(ToolPropertyClick) { Name = "Properties" }) { Name = "Bar" }; barMain = new Toolsbar( new ToolDropDown() { Name = "Add", GlyphColor = Colors.DarkGreen, DropDown = contextAdd, Glyph = GlyphType.PlusCircle }, new ToolItem(ToolRemoveClick) { Name = "Remove", GlyphColor = Colors.DarkRed, Glyph = GlyphType.MinusCircle }, new ToolItem(ToolCopyClick) { Name = "Copy", Glyph = GlyphType.CopyAlias }, new ToolDropDown { Name = "Tools", DropDown = contextTools, Glyph = GlyphType.Wrench }, new ToolSearchEntry() { Name = "FilterText" }) { Name = "Bar" }; barChanges = new Toolsbar( new ToolItem(ToolChangesCommitClick) { Name = "Commit", DisplayStyle = ToolItemDisplayStyle.Text }, new ToolItem(ToolChangesSkipClick) { Name = "Skip", DisplayStyle = ToolItemDisplayStyle.Text }) { Name = "Changes" }; changesView = new LayoutList { Name = "changesView", GenerateColumns = false, AutoToStringFill = true, CheckView = true, ListSource = DBService.Changes }; changesView.ListInfo.ColumnsVisible = false; dataTree = new DataTree() { Name = "dataTree", DataKeys = DataTreeKeys.Schema | DataTreeKeys.TableGroup | DataTreeKeys.Table | DataTreeKeys.LogTable | DataTreeKeys.ColumnGroup | DataTreeKeys.Column | DataTreeKeys.Index | DataTreeKeys.Constraint | DataTreeKeys.Foreign | DataTreeKeys.Procedure | DataTreeKeys.ProcedureParam | DataTreeKeys.Sequence, Menu = contextMain, FilterEntry = ((ToolSearchEntry)barMain["FilterText"]).Entry }; dataTree.CellMouseClick += DataTreeOnNodeMouseClick; dataTree.CellDoubleClick += DataTreeOnDoubleClick; dataTree.SelectionChanged += DataTreeOnAfterSelect; panel1 = new VBox { Name = "Panel1" }; panel1.PackStart(barMain, false, false); panel1.PackStart(dataTree, true, true); panel2 = new VBox { Name = "Panel2" }; panel2.PackStart(barChanges, false, false); panel2.PackStart(changesView, true, true); container = new VPaned(); container.Panel1.Content = panel1; PackStart(container, true, true); Name = "DataExplorer"; itemWindow.Target = listExplorer; itemWindow.ButtonAcceptClick += AcceptOnActivated; DBService.DBSchemaChanged += OnDBSchemaChanged; }