This commit is contained in:
626
source/WinFormApp/NotifyDeliveryLogsForm.cs
Normal file
626
source/WinFormApp/NotifyDeliveryLogsForm.cs
Normal file
@@ -0,0 +1,626 @@
|
||||
using System;
|
||||
using System.Drawing;
|
||||
using System.Collections;
|
||||
using System.ComponentModel;
|
||||
using System.Windows.Forms;
|
||||
using GZTW.AyaNova.BLL;
|
||||
using Infragistics.Win.UltraWinGrid;
|
||||
using Infragistics.Win;
|
||||
using log4net;
|
||||
|
||||
|
||||
namespace AyaNova
|
||||
{
|
||||
/// <summary>
|
||||
/// Summary description for NotifyDeliveryLogsForm.
|
||||
/// </summary>
|
||||
public class NotifyDeliveryLogsForm : System.Windows.Forms.Form
|
||||
{
|
||||
// Create a logger for use in this class
|
||||
//case 1039 private static readonly log4net.ILog log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
|
||||
|
||||
private Infragistics.Win.UltraWinGrid.UltraGrid Grid;
|
||||
private Infragistics.Win.UltraWinToolbars.UltraToolbarsDockArea _NotifyDeliveryLogsForm_Toolbars_Dock_Area_Left;
|
||||
private Infragistics.Win.UltraWinToolbars.UltraToolbarsDockArea _NotifyDeliveryLogsForm_Toolbars_Dock_Area_Right;
|
||||
private Infragistics.Win.UltraWinToolbars.UltraToolbarsDockArea _NotifyDeliveryLogsForm_Toolbars_Dock_Area_Top;
|
||||
private Infragistics.Win.UltraWinToolbars.UltraToolbarsDockArea _NotifyDeliveryLogsForm_Toolbars_Dock_Area_Bottom;
|
||||
private Infragistics.Win.UltraWinToolbars.UltraToolbarsManager ToolBarManager;
|
||||
private GZTW.WinForm.Controls.GZDateTimePicker GridCalendar;
|
||||
private System.ComponentModel.IContainer components;
|
||||
|
||||
public NotifyDeliveryLogsForm()
|
||||
{
|
||||
//
|
||||
// Required for Windows Form Designer support
|
||||
//
|
||||
InitializeComponent();
|
||||
|
||||
//
|
||||
//
|
||||
//
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
protected override void Dispose( bool disposing )
|
||||
{
|
||||
if( disposing )
|
||||
{
|
||||
if(components != null)
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
}
|
||||
base.Dispose( disposing );
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.components = new System.ComponentModel.Container();
|
||||
Infragistics.Win.UltraWinToolbars.UltraToolbar ultraToolbar1 = new Infragistics.Win.UltraWinToolbars.UltraToolbar("SecurityGroupsToolBar");
|
||||
Infragistics.Win.UltraWinToolbars.PopupMenuTool popupMenuTool1 = new Infragistics.Win.UltraWinToolbars.PopupMenuTool("LT:UI.Toolbar.Print");
|
||||
Infragistics.Win.UltraWinToolbars.ButtonTool buttonTool1 = new Infragistics.Win.UltraWinToolbars.ButtonTool("LT:UI.Toolbar.Refresh");
|
||||
Infragistics.Win.UltraWinToolbars.ButtonTool buttonTool2 = new Infragistics.Win.UltraWinToolbars.ButtonTool("LT:UI.Toolbar.Refresh");
|
||||
Infragistics.Win.Appearance appearance1 = new Infragistics.Win.Appearance();
|
||||
Infragistics.Win.Appearance appearance2 = new Infragistics.Win.Appearance();
|
||||
Infragistics.Win.UltraWinToolbars.ListTool listTool1 = new Infragistics.Win.UltraWinToolbars.ListTool("REPORTLIST");
|
||||
Infragistics.Win.UltraWinToolbars.PopupMenuTool popupMenuTool2 = new Infragistics.Win.UltraWinToolbars.PopupMenuTool("LT:UI.Toolbar.Print");
|
||||
Infragistics.Win.Appearance appearance3 = new Infragistics.Win.Appearance();
|
||||
Infragistics.Win.Appearance appearance4 = new Infragistics.Win.Appearance();
|
||||
Infragistics.Win.UltraWinToolbars.ListTool listTool2 = new Infragistics.Win.UltraWinToolbars.ListTool("REPORTLIST");
|
||||
this.Grid = new Infragistics.Win.UltraWinGrid.UltraGrid();
|
||||
this.ToolBarManager = new Infragistics.Win.UltraWinToolbars.UltraToolbarsManager(this.components);
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Left = new Infragistics.Win.UltraWinToolbars.UltraToolbarsDockArea();
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Right = new Infragistics.Win.UltraWinToolbars.UltraToolbarsDockArea();
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Top = new Infragistics.Win.UltraWinToolbars.UltraToolbarsDockArea();
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Bottom = new Infragistics.Win.UltraWinToolbars.UltraToolbarsDockArea();
|
||||
this.GridCalendar = new GZTW.WinForm.Controls.GZDateTimePicker();
|
||||
((System.ComponentModel.ISupportInitialize)(this.Grid)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.ToolBarManager)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.GridCalendar)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// Grid
|
||||
//
|
||||
this.Grid.Cursor = System.Windows.Forms.Cursors.Default;
|
||||
this.Grid.DisplayLayout.Override.RowSizing = Infragistics.Win.UltraWinGrid.RowSizing.Sychronized;
|
||||
this.Grid.DisplayLayout.Override.RowSizingArea = Infragistics.Win.UltraWinGrid.RowSizingArea.EntireRow;
|
||||
this.Grid.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.Grid.Location = new System.Drawing.Point(0, 26);
|
||||
this.Grid.Name = "Grid";
|
||||
this.Grid.Size = new System.Drawing.Size(536, 499);
|
||||
this.Grid.TabIndex = 1;
|
||||
this.Grid.Text = "NotifyDeliveryLog form";
|
||||
this.Grid.InitializeRow += new Infragistics.Win.UltraWinGrid.InitializeRowEventHandler(this.Grid_InitializeRow);
|
||||
this.Grid.AfterColPosChanged += new Infragistics.Win.UltraWinGrid.AfterColPosChangedEventHandler(this.Grid_AfterColPosChanged);
|
||||
this.Grid.MouseDown += new System.Windows.Forms.MouseEventHandler(this.Grid_MouseDown);
|
||||
//
|
||||
// ToolBarManager
|
||||
//
|
||||
this.ToolBarManager.DesignerFlags = 1;
|
||||
this.ToolBarManager.DockWithinContainer = this;
|
||||
this.ToolBarManager.DockWithinContainerBaseType = typeof(System.Windows.Forms.Form);
|
||||
this.ToolBarManager.MdiMergeable = false;
|
||||
this.ToolBarManager.ShowFullMenusDelay = 500;
|
||||
ultraToolbar1.DockedColumn = 0;
|
||||
ultraToolbar1.DockedRow = 0;
|
||||
ultraToolbar1.NonInheritedTools.AddRange(new Infragistics.Win.UltraWinToolbars.ToolBase[] {
|
||||
popupMenuTool1,
|
||||
buttonTool1});
|
||||
ultraToolbar1.Text = "NotifydeliverylogsToolBar";
|
||||
this.ToolBarManager.Toolbars.AddRange(new Infragistics.Win.UltraWinToolbars.UltraToolbar[] {
|
||||
ultraToolbar1});
|
||||
this.ToolBarManager.ToolbarSettings.AllowCustomize = Infragistics.Win.DefaultableBoolean.False;
|
||||
this.ToolBarManager.ToolbarSettings.AllowFloating = Infragistics.Win.DefaultableBoolean.False;
|
||||
this.ToolBarManager.ToolbarSettings.AllowHiding = Infragistics.Win.DefaultableBoolean.False;
|
||||
appearance1.Image = global::AyaNova.Resource1.Refresh32;
|
||||
buttonTool2.SharedPropsInternal.AppearancesLarge.Appearance = appearance1;
|
||||
appearance2.Image = global::AyaNova.Resource1.Refresh16;
|
||||
buttonTool2.SharedPropsInternal.AppearancesSmall.Appearance = appearance2;
|
||||
buttonTool2.SharedPropsInternal.Caption = "LT:UI.Toolbar.Refresh";
|
||||
buttonTool2.SharedPropsInternal.DisplayStyle = Infragistics.Win.UltraWinToolbars.ToolDisplayStyle.ImageAndText;
|
||||
listTool1.DisplayCheckmark = false;
|
||||
appearance3.Image = global::AyaNova.Resource1.Print32;
|
||||
popupMenuTool2.SharedPropsInternal.AppearancesLarge.Appearance = appearance3;
|
||||
appearance4.Image = global::AyaNova.Resource1.Print16;
|
||||
popupMenuTool2.SharedPropsInternal.AppearancesSmall.Appearance = appearance4;
|
||||
popupMenuTool2.SharedPropsInternal.Caption = "LT:UI.Toolbar.Print";
|
||||
popupMenuTool2.SharedPropsInternal.DisplayStyle = Infragistics.Win.UltraWinToolbars.ToolDisplayStyle.ImageOnlyOnToolbars;
|
||||
popupMenuTool2.Tools.AddRange(new Infragistics.Win.UltraWinToolbars.ToolBase[] {
|
||||
listTool2});
|
||||
this.ToolBarManager.Tools.AddRange(new Infragistics.Win.UltraWinToolbars.ToolBase[] {
|
||||
buttonTool2,
|
||||
listTool1,
|
||||
popupMenuTool2});
|
||||
this.ToolBarManager.ToolClick += new Infragistics.Win.UltraWinToolbars.ToolClickEventHandler(this.ToolBarManager_ToolClick);
|
||||
//
|
||||
// _NotifyDeliveryLogsForm_Toolbars_Dock_Area_Left
|
||||
//
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Left.AccessibleRole = System.Windows.Forms.AccessibleRole.Grouping;
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Left.BackColor = System.Drawing.SystemColors.Control;
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Left.DockedPosition = Infragistics.Win.UltraWinToolbars.DockedPosition.Left;
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Left.ForeColor = System.Drawing.SystemColors.ControlText;
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Left.Location = new System.Drawing.Point(0, 26);
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Left.Name = "_NotifyDeliveryLogsForm_Toolbars_Dock_Area_Left";
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Left.Size = new System.Drawing.Size(0, 499);
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Left.ToolbarsManager = this.ToolBarManager;
|
||||
//
|
||||
// _NotifyDeliveryLogsForm_Toolbars_Dock_Area_Right
|
||||
//
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Right.AccessibleRole = System.Windows.Forms.AccessibleRole.Grouping;
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Right.BackColor = System.Drawing.SystemColors.Control;
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Right.DockedPosition = Infragistics.Win.UltraWinToolbars.DockedPosition.Right;
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Right.ForeColor = System.Drawing.SystemColors.ControlText;
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Right.Location = new System.Drawing.Point(536, 26);
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Right.Name = "_NotifyDeliveryLogsForm_Toolbars_Dock_Area_Right";
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Right.Size = new System.Drawing.Size(0, 499);
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Right.ToolbarsManager = this.ToolBarManager;
|
||||
//
|
||||
// _NotifyDeliveryLogsForm_Toolbars_Dock_Area_Top
|
||||
//
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Top.AccessibleRole = System.Windows.Forms.AccessibleRole.Grouping;
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Top.BackColor = System.Drawing.SystemColors.Control;
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Top.DockedPosition = Infragistics.Win.UltraWinToolbars.DockedPosition.Top;
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Top.ForeColor = System.Drawing.SystemColors.ControlText;
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Top.Location = new System.Drawing.Point(0, 0);
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Top.Name = "_NotifyDeliveryLogsForm_Toolbars_Dock_Area_Top";
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Top.Size = new System.Drawing.Size(536, 26);
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Top.ToolbarsManager = this.ToolBarManager;
|
||||
//
|
||||
// _NotifyDeliveryLogsForm_Toolbars_Dock_Area_Bottom
|
||||
//
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Bottom.AccessibleRole = System.Windows.Forms.AccessibleRole.Grouping;
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Bottom.BackColor = System.Drawing.SystemColors.Control;
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Bottom.DockedPosition = Infragistics.Win.UltraWinToolbars.DockedPosition.Bottom;
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Bottom.ForeColor = System.Drawing.SystemColors.ControlText;
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Bottom.Location = new System.Drawing.Point(0, 525);
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Bottom.Name = "_NotifyDeliveryLogsForm_Toolbars_Dock_Area_Bottom";
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Bottom.Size = new System.Drawing.Size(536, 0);
|
||||
this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Bottom.ToolbarsManager = this.ToolBarManager;
|
||||
//
|
||||
// GridCalendar
|
||||
//
|
||||
this.GridCalendar.GZEnabled = true;
|
||||
this.GridCalendar.GZReadOnly = false;
|
||||
this.GridCalendar.Location = new System.Drawing.Point(259, 291);
|
||||
this.GridCalendar.Name = "GridCalendar";
|
||||
this.GridCalendar.Size = new System.Drawing.Size(125, 24);
|
||||
this.GridCalendar.TabIndex = 152;
|
||||
this.GridCalendar.Visible = false;
|
||||
//
|
||||
// NotifyDeliveryLogsForm
|
||||
//
|
||||
this.AutoScaleBaseSize = new System.Drawing.Size(6, 15);
|
||||
this.ClientSize = new System.Drawing.Size(536, 525);
|
||||
this.ControlBox = false;
|
||||
this.Controls.Add(this.Grid);
|
||||
this.Controls.Add(this.GridCalendar);
|
||||
this.Controls.Add(this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Left);
|
||||
this.Controls.Add(this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Right);
|
||||
this.Controls.Add(this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Bottom);
|
||||
this.Controls.Add(this._NotifyDeliveryLogsForm_Toolbars_Dock_Area_Top);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
|
||||
this.Name = "NotifyDeliveryLogsForm";
|
||||
this.Text = "NotifyDeliveryLogsForm";
|
||||
this.Closing += new System.ComponentModel.CancelEventHandler(this.Form_Closing);
|
||||
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.NotifyDeliveryLogsForm_FormClosing);
|
||||
this.Load += new System.EventHandler(this.Form_Load);
|
||||
this.VisibleChanged += new System.EventHandler(this.NotifyDeliveryLogsForm_VisibleChanged);
|
||||
((System.ComponentModel.ISupportInitialize)(this.Grid)).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.ToolBarManager)).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.GridCalendar)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
#endregion
|
||||
|
||||
// __ _ _ ___ ____ __ __ __ __ __ ___ ___
|
||||
// / _)( )( )/ __)(_ _)/ \( \/ ) / _)/ \( \( _)
|
||||
// ( (_ )()( \__ \ )( ( () )) ( ( (_( () )) ) )) _)
|
||||
// \__) \__/ (___/ (__) \__/(_/\/\_) \__)\__/(___/(___)
|
||||
//
|
||||
|
||||
|
||||
#region Public props
|
||||
private bool _AdminMode=false;
|
||||
private bool _UpdateDisplay=false;
|
||||
/// <summary>
|
||||
/// Show deliveries for all users if true else only for current logged in user
|
||||
/// </summary>
|
||||
public bool AdminMode
|
||||
{
|
||||
set
|
||||
{
|
||||
if(_AdminMode!=value)
|
||||
{
|
||||
_AdminMode=value;
|
||||
_UpdateDisplay=true;
|
||||
}
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Grid Preparation, Display and Events
|
||||
//variable to hold user form settings
|
||||
//UIUserFormSetting mFormSetting;
|
||||
private void Form_Load(object sender, System.EventArgs e)
|
||||
{
|
||||
//case 1039 //log.Debug("Form_Load");
|
||||
Util.LoadFormCustomization("NotifyDeliveryLogsForm", this, ToolBarManager, true);
|
||||
|
||||
Grid.DataSource=NotifyDeliveryLogList.GetEmptyList();
|
||||
Util.FetchGridLayout("NotifyDeliveryLog","",Grid);
|
||||
|
||||
|
||||
if(!Grid.DisplayLayout.Bands[0].Columns.Exists("EventDescription"))
|
||||
Grid.DisplayLayout.Bands[0].Columns.Add("EventDescription");
|
||||
|
||||
//GridCalendar.MaskInput=Util.LocaleDateTimeMask();
|
||||
Grid.DisplayLayout.Override.HeaderClickAction=HeaderClickAction.SortSingle;
|
||||
//Grid.DisplayLayout.Override.AllowUpdate=DefaultableBoolean.False;
|
||||
Grid.DisplayLayout.Bands[0].Override.RowSelectors=DefaultableBoolean.False;
|
||||
|
||||
//Set the caption to be on the left side of the grid
|
||||
Grid.DisplayLayout.CaptionAppearance.TextHAlign=HAlign.Left;
|
||||
Grid.DisplayLayout.Bands[0].Columns["LT_NotifyDeliveryLog_Label_EventKey"].Hidden=true;
|
||||
Grid.DisplayLayout.Bands[0].Columns["EventDescription"].Header.Caption=Util.LocaleText.GetLocalizedText("NotifySubscription.Label.EventDescription");
|
||||
Grid.DisplayLayout.Override.AllowRowFiltering=DefaultableBoolean.True;
|
||||
|
||||
Grid.DisplayLayout.Bands[0].Columns["LT_NotifyDeliveryLog_Label_ErrorMessage"].CellMultiLine=DefaultableBoolean.True;
|
||||
Grid.DisplayLayout.Bands[0].Columns["LT_NotifyDeliveryLog_Label_ErrorMessage"].AutoSizeEdit=DefaultableBoolean.True;
|
||||
Grid.DisplayLayout.Bands[0].Columns["LT_NotifyDeliveryLog_Label_ErrorMessage"].VertScrollBar=true;
|
||||
|
||||
|
||||
Grid.DisplayLayout.Bands[0].Columns["LT_NotifyDeliveryLog_Label_DeliveryDate"].EditorComponent=this.GridCalendar;
|
||||
|
||||
|
||||
|
||||
PopulateGridValueLists();
|
||||
|
||||
|
||||
Util.Localize(this);
|
||||
|
||||
|
||||
|
||||
BindGrid(false);
|
||||
|
||||
foreach(UltraGridColumn c in Grid.DisplayLayout.Bands[0].Columns)
|
||||
{
|
||||
c.CellActivation=Activation.NoEdit;//.NoEdit;
|
||||
|
||||
}
|
||||
if (AyaBizUtils.Right("Object.Report") < (int)SecurityLevelTypes.ReadOnly)
|
||||
{
|
||||
ToolBarManager.Tools["LT:UI.Toolbar.Print"].SharedProps.Visible = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
ToolBarManager.Tools["LT:UI.Toolbar.Print"].SharedProps.Visible = true;
|
||||
Util.ReportFillList(this.ToolBarManager.Tools["REPORTLIST"], NotifyDeliveryLogList.ReportKey, "");
|
||||
}
|
||||
|
||||
//case 2108
|
||||
Util.GridStyler(Grid);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// When form closes it will save
|
||||
/// (main form must call close on this form for this to work)
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void Form_Closing(object sender, System.ComponentModel.CancelEventArgs e)
|
||||
{
|
||||
//case 1039 //log.Debug("Form_Closing");
|
||||
Util.SaveGridLayout("NotifyDeliveryLog","","List of NotifyDeliveryLog",Grid);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Add custom filters for dates, alphabetic ranges etc etc
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void Grid_BeforeRowFilterDropDown(object sender, Infragistics.Win.UltraWinGrid.BeforeRowFilterDropDownEventArgs e)
|
||||
{
|
||||
//case 1039 //log.Debug("Grid_BeforeRowFilterDropDown");
|
||||
Util.SetCustomFilters(e);
|
||||
}
|
||||
|
||||
// /// <summary>
|
||||
// /// Intercept a sort change event
|
||||
// /// This is to ensure that no columns other than first
|
||||
// /// are sorted on
|
||||
// /// </summary>
|
||||
// /// <param name="sender"></param>
|
||||
// /// <param name="e"></param>
|
||||
// private void Grid_BeforeSortChange(object sender, Infragistics.Win.UltraWinGrid.BeforeSortChangeEventArgs e)
|
||||
// {
|
||||
// //case 1039 //log.Debug("Grid_BeforeSortChange");
|
||||
// //Did the user click on any other column than the first visible one?
|
||||
// if(e.SortedColumns[0].Key!=Util.GetLeftMostColumnInBand(Grid.DisplayLayout.Bands[0]).Key)
|
||||
// {
|
||||
// e.Cancel=true;
|
||||
// //Yes they did so don't do anything or allow sorting to happen
|
||||
// return;
|
||||
// }
|
||||
//
|
||||
//
|
||||
// Grid.BeginUpdate();
|
||||
// //display new list
|
||||
// BindGrid(true);
|
||||
//
|
||||
// }
|
||||
|
||||
/// <summary>
|
||||
/// Intercept a filter change event
|
||||
/// Set the grid to an empty list, this effectively
|
||||
/// stops the grid from doing any time consuming work to filter the data
|
||||
/// which we want done in the sql server in the afterfilterchanged event
|
||||
///
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void Grid_BeforeRowFilterChanged(object sender, Infragistics.Win.UltraWinGrid.BeforeRowFilterChangedEventArgs e)
|
||||
{//
|
||||
////case 1039 //log.Debug("Grid_BeforeRowFilterChanged");
|
||||
|
||||
//Grid.BeginUpdate();
|
||||
//Grid.DataSource=NotifyDeliveryLogList.GetEmptyList();
|
||||
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// called when the user filters rows
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void Grid_AfterRowFilterChanged(object sender, Infragistics.Win.UltraWinGrid.AfterRowFilterChangedEventArgs e)
|
||||
{
|
||||
////case 1039 //log.Debug("Grid_AfterRowFilterChanged");
|
||||
//BindGrid(false);
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Called when the user repositions columns
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void Grid_AfterColPosChanged(object sender, Infragistics.Win.UltraWinGrid.AfterColPosChangedEventArgs e)
|
||||
{
|
||||
//case 1039 //log.Debug("Grid_AfterColPosChanged");
|
||||
// //rebind if columns were moved only
|
||||
// //i.e.don't do it if they were just resized
|
||||
// if(e.PosChanged==Infragistics.Win.UltraWinGrid.PosChanged.Moved)
|
||||
// {
|
||||
// //disable refresh for a time
|
||||
// Grid.BeginUpdate();
|
||||
//
|
||||
// //Deal with sort indicators on
|
||||
// //newly positioned columns
|
||||
// Util.HandleColPosChanged(Grid);
|
||||
//
|
||||
// //rebind to data source
|
||||
// BindGrid(false);
|
||||
// }
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Rebind the control to the data source based on the latest
|
||||
/// user filter and sort settings
|
||||
/// </summary>
|
||||
private void BindGrid(bool bReverseSort)
|
||||
{
|
||||
//case 1039 //log.Debug("BindGrid - entering");
|
||||
Cursor.Current=Cursors.WaitCursor;
|
||||
|
||||
Grid.DataSource=NotifyDeliveryLogList.GetList(this._AdminMode);
|
||||
Grid.Text=Util.LocaleText.GetLocalizedText("NotifyDeliveryLog.Label.List")+" ("+Grid.Rows.FilteredInRowCount.ToString()+")";
|
||||
bool bFiltered=(Grid.Rows.FilteredInRowCount<((NotifyDeliveryLogList)Grid.DataSource).Count);
|
||||
|
||||
Util.SetGridFilteredStyle(Grid,bFiltered);
|
||||
//case 1039 //if(log.IsDebugEnabled) //case 1039 //log.Debug("BindGrid - finished (" + Grid.Text + ")");
|
||||
Grid.EndUpdate();
|
||||
Cursor.Current = Cursors.Default;
|
||||
}
|
||||
|
||||
|
||||
private void Grid_InitializeRow(object sender, Infragistics.Win.UltraWinGrid.InitializeRowEventArgs e)
|
||||
{
|
||||
// if((bool)e.Row.Cells["LT_NotifyDeliveryLog_Label_Viewed"].Value==true)
|
||||
// {
|
||||
// e.Row.Appearance.FontData.Bold=DefaultableBoolean.False;
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// e.Row.Appearance.FontData.Bold=DefaultableBoolean.True;
|
||||
// }
|
||||
|
||||
e.Row.Cells["EventDescription"].Value=
|
||||
Util.LocaleText.GetLocalizedText((string)e.Row.Cells["LT_NotifyDeliveryLog_Label_EventKey"].Value);
|
||||
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Populate the drop down lists inside the grid
|
||||
/// so they display and can select the correct underlying
|
||||
/// value
|
||||
/// </summary>
|
||||
private void PopulateGridValueLists()
|
||||
{
|
||||
//case 1039 //log.Debug("PopulateGridValueLists");
|
||||
|
||||
Grid.DisplayLayout.ValueLists.Clear();
|
||||
|
||||
//Populate NotifyDeliveryMethods
|
||||
ValueList vl=Grid.DisplayLayout.ValueLists.Add("NotifyDeliveryMethods");
|
||||
vl.ValueListItems.Add(NotifyDeliveryMethods.Memo,Util.LocaleText.GetLocalizedText("NotifyDeliveryMethods.Label.Memo"));
|
||||
vl.ValueListItems.Add(NotifyDeliveryMethods.PopUp,Util.LocaleText.GetLocalizedText("NotifyDeliveryMethods.Label.PopUp"));
|
||||
vl.ValueListItems.Add(NotifyDeliveryMethods.SMS,Util.LocaleText.GetLocalizedText("NotifyDeliveryMethods.Label.SMS"));
|
||||
vl.ValueListItems.Add(NotifyDeliveryMethods.SMTP,Util.LocaleText.GetLocalizedText("NotifyDeliveryMethods.Label.SMTP"));
|
||||
|
||||
//Bind value lists to correct columns in grid
|
||||
Grid.DisplayLayout.Bands[0].Columns["LT_O_NotifySubscriptionDelivery"].ValueList=Grid.DisplayLayout.ValueLists["NotifyDeliveryMethods"];
|
||||
|
||||
//Set column to dropdownlist style so that user can not type an invalid value in a cell
|
||||
//but must select from the list only
|
||||
Grid.DisplayLayout.Bands[0].Columns["LT_O_NotifySubscriptionDelivery"].Style=Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownValidate;//Case 96 for autocomplete (was DropDownList)
|
||||
Grid.DisplayLayout.Bands[0].Columns["LT_O_NotifySubscriptionDelivery"].AutoCompleteMode = Infragistics.Win.AutoCompleteMode.SuggestAppend;
|
||||
|
||||
}
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
#region Selection and Editing
|
||||
|
||||
Infragistics.Win.UIElement ElementLastClicked;
|
||||
|
||||
/// <summary>
|
||||
/// This is whacky Infragistics stuff, where normally we would
|
||||
/// just do someting like override Row.OnDoubleClick we can't
|
||||
/// do that with a grid because it's rows don't have a click event
|
||||
///
|
||||
/// To know which row is clicked on we need to always keep
|
||||
/// track of what element of the grid was last clicked on
|
||||
/// so that later on we can (in doubleclick) pre-know what was
|
||||
/// clicked in the first click of the double click.
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void Grid_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
|
||||
{
|
||||
ElementLastClicked = Grid.DisplayLayout.UIElement.ElementFromPoint(new System.Drawing.Point(e.X, e.Y));
|
||||
|
||||
//Handle right click
|
||||
if( e.Button == MouseButtons.Right)
|
||||
{
|
||||
GridNameValueCellItem nvb=Util.NameValueButtonRightClicked(Grid,e);
|
||||
if(nvb!=null)
|
||||
{
|
||||
Util.DisplayObjectContextMenu(nvb.RootObjectType,nvb.Value,this);
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
UltraGridBand b=Util.BandRightClicked(Grid/*NAME OF GRID HERE, REST IS STOCK TO ANY FORM*/,e);
|
||||
if(b!=null)
|
||||
{
|
||||
UtilGridColumnSelector c = new UtilGridColumnSelector();
|
||||
c.HideColumns.Add("LT_NotifyDeliveryLog_Label_EventKey",0);
|
||||
c.BandToEdit=b;
|
||||
c.ShowDialog(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
#region MenuMerging
|
||||
public Infragistics.Win.UltraWinToolbars.UltraToolbarsManager ToolBar
|
||||
{
|
||||
get
|
||||
{
|
||||
Util.Localize(ToolBarManager);
|
||||
return ToolBarManager;
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Menu tool items
|
||||
|
||||
private void ToolBarManager_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
|
||||
{
|
||||
//case 1039 //if(log.IsDebugEnabled) //case 1039 //log.Debug("ToolClick: "+e.Tool.Key);
|
||||
|
||||
|
||||
switch (e.Tool.Key)
|
||||
{
|
||||
|
||||
|
||||
|
||||
case "LT:UI.Toolbar.Refresh": // ButtonTool
|
||||
Grid.BeginUpdate();
|
||||
BindGrid(false);
|
||||
break;
|
||||
|
||||
case "REPORTLIST":
|
||||
{
|
||||
|
||||
//if(Util.ReportHandleToolClickIsSummary(e.Tool))
|
||||
Util.ReportHandleToolClick(e.Tool,NotifyDeliveryLogList.ReportKey,Grid.DataSource);
|
||||
//else
|
||||
//{
|
||||
|
||||
//bool bFiltered=false;
|
||||
//Util.ReportHandleToolClick(e.Tool,ClientListDetailed.ReportKey,ClientListDetailed.GetListByCriteria(Util.GetGridSortAndFilterXML(Grid.DisplayLayout.Bands[0],false,ref bFiltered)));
|
||||
//}
|
||||
Util.ReportFillList(this.ToolBarManager.Tools["REPORTLIST"],NotifyDeliveryLogList.ReportKey,"");
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
/// This is to ensure that if a user goes from User's view to admin view
|
||||
/// it will force a refresh
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
private void NotifyDeliveryLogsForm_VisibleChanged(object sender, System.EventArgs e)
|
||||
{
|
||||
if(_UpdateDisplay && this.Visible)
|
||||
{
|
||||
_UpdateDisplay=false;
|
||||
BindGrid(false);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void NotifyDeliveryLogsForm_FormClosing(object sender, FormClosingEventArgs e)
|
||||
{
|
||||
Util.SaveFormCustomization("NotifyDeliveryLogsForm", this, ToolBarManager, true);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user