private void gridControl_MouseDoubleClick(object sender, MouseEventArgs e) { if (ReadOnly) { return; } GridHitInfo info = gridView.CalcHitInfo(e.X, e.Y); if (info.InRow) { TimeColumnInfo timeinfo = GetColumnInfo(info.Column); if (timeinfo != null) { EmployeeDayView dayView = GetEmployeeDayView(); if (dayView != null) { if (dayView.IsBuzyByTimeRange(timeinfo.FromTime, timeinfo.ToTime)) { dayView.RemoveWorkingTime(timeinfo.FromTime, timeinfo.ToTime); } else { dayView.AddWorkingTime(timeinfo.FromTime, timeinfo.ToTime); } if (dayView.Modified) { Context.Modified = true; } UpdateEmployeePlanningDays(); } } } }
private void workingTimeToolStripMenuItem_Click(object sender, EventArgs e) { if (ReadOnly) { return; } EmployeeDayView dayView = GetEmployeeDayView(); if (gridView.SelectedRowsCount == 1) { GridCell[] cells = gridView.GetSelectedCells(); if (cells.Length > 1) { bool ignore = false; for (int i = 0; i < cells.Length; i++) { if (cells[i].Column.Tag == null) { ignore = true; } } if (!ignore) { if (dayView != null) { foreach (GridCell cell in cells) { TimeColumnInfo infocolumn = GetColumnInfo(cell.Column); if (infocolumn != null) { dayView.AddWorkingTime(infocolumn.FromTime, infocolumn.ToTime); } } if (dayView.Modified) { Context.Modified = true; } } UpdateEmployeePlanningDays(); } } else { if (cells != null && cells.Length == 1) { TimeColumnInfo info = GetColumnInfo(cells[0].Column); StoreDay sd = Context.StoreDays[Context.ViewDate]; if (info != null) { using (FormEnterWorkingTime form = new FormEnterWorkingTime()) { if (sd.OpenTime == 0) { form.BeginTime = 9 * 60; } else { form.BeginTime = sd.OpenTime; } form.EndTime = sd.CloseTime; if (sd.CloseTime == 0) { form.EndTime = 18 * 60; } else { form.EndTime = sd.CloseTime; } form.BeginTime = info.FromTime; if (form.ShowDialog() == DialogResult.OK) { int bt = form.BeginTime; int et = form.EndTime; if (dayView != null) { dayView.AddWorkingTime(bt, et); if (dayView.Modified) { Context.Modified = true; } } UpdateEmployeePlanningDays(); } } } } } } }
private void gridView_MouseDown(object sender, MouseEventArgs e) { GridHitInfo info = gridView.CalcHitInfo(e.Location); if (e.Button == MouseButtons.Left && info.InColumn) { GridColumn column = info.Column; if (column == gc_HWGR || column == gc_Employee) { column.SortMode = ColumnSortMode.DisplayText; if (column.SortOrder == ColumnSortOrder.Ascending) { column.SortOrder = ColumnSortOrder.Descending; } else { column.SortOrder = ColumnSortOrder.Ascending; } if (column == gc_HWGR) { gridView.SortInfo.ClearAndAddRange(new GridColumnSortInfo[] { new GridColumnSortInfo(gc_HWGR, gc_HWGR.SortOrder), new GridColumnSortInfo(gc_Employee, gc_Employee.SortOrder) }); } else { gridView.SortInfo.ClearAndAddRange(new GridColumnSortInfo[] { new GridColumnSortInfo(gc_Employee, gc_Employee.SortOrder), new GridColumnSortInfo(gc_HWGR, gc_HWGR.SortOrder) }); } } } if (e.Button == MouseButtons.Left && info.InRowCell) { if (selectedCell != null && selectedCell.Length > 1) { if (selectedCell[0].RowHandle == info.RowHandle) { bool bOk = false; foreach (GridCell cell in selectedCell) { if (cell.Column == info.Column) { bOk = true; break; } } if (bOk && !ReadOnly) { EmployeeDayView dayView = GetEmployeeDayView(info.RowHandle); //m_dailyView.GetByEmployeeId(empl.EmployeeId); TimeColumnInfo columninfo = null; if (dayView != null) { foreach (GridCell cell in selectedCell) { columninfo = GetColumnInfo(cell.Column); if (columninfo != null) { dayView.AddWorkingTime(columninfo.FromTime, columninfo.ToTime); } } if (dayView.Modified) { Context.Modified = true; } UpdateEmployeePlanningDays(); } selectedCell = null; } } } } }