Grid FitColumns
This commit is contained in:
parent
ac1ff56288
commit
283fb2eba2
2 changed files with 44 additions and 1 deletions
|
|
@ -3227,6 +3227,12 @@
|
||||||
"key": "ListForms.ListForm.GridStateSaved",
|
"key": "ListForms.ListForm.GridStateSaved",
|
||||||
"en": "Grid State Saved",
|
"en": "Grid State Saved",
|
||||||
"tr": "Tablo Yapısı Kaydedildi"
|
"tr": "Tablo Yapısı Kaydedildi"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"resourceName": "Platform",
|
||||||
|
"key": "ListForms.ListForm.FitColumns",
|
||||||
|
"en": "Fit Columns",
|
||||||
|
"tr": "Sütunları Sığdır"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
|
|
|
||||||
|
|
@ -102,6 +102,28 @@ const setToolbarItemItems = (grid: GridInstance, itemName: string, items: any[])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const fitColumns = (grid: GridInstance) => {
|
||||||
|
if (!isDataGrid(grid)) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
grid.beginUpdate()
|
||||||
|
const visibleColumns = grid.getVisibleColumns() as any[]
|
||||||
|
visibleColumns.forEach((column) => {
|
||||||
|
if (!column?.dataField || column?.type === 'buttons') {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Clear explicit width so DataGrid can recalculate based on content.
|
||||||
|
grid.columnOption(column.dataField, 'width', undefined)
|
||||||
|
grid.columnOption(column.dataField, 'minWidth', undefined)
|
||||||
|
})
|
||||||
|
grid.option('columnAutoWidth', true)
|
||||||
|
grid.endUpdate()
|
||||||
|
grid.updateDimensions()
|
||||||
|
grid.repaint()
|
||||||
|
}
|
||||||
|
|
||||||
const clearGridFilter = (grid: GridInstance) => {
|
const clearGridFilter = (grid: GridInstance) => {
|
||||||
if (isDataGrid(grid)) {
|
if (isDataGrid(grid)) {
|
||||||
grid.clearFilter()
|
grid.clearFilter()
|
||||||
|
|
@ -253,6 +275,14 @@ const useFilters = ({
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (grdOpt?.columnOptionDto?.columnAutoWidth) {
|
||||||
|
menus.push({
|
||||||
|
text: translate('::ListForms.ListForm.FitColumns'),
|
||||||
|
id: 'fitColumns',
|
||||||
|
icon: 'columnchooser',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
if (checkPermission(gridDto?.gridOptions.permissionDto.i)) {
|
if (checkPermission(gridDto?.gridOptions.permissionDto.i)) {
|
||||||
menus.push({
|
menus.push({
|
||||||
text: translate('::ListForms.ListForm.ImportManager'),
|
text: translate('::ListForms.ListForm.ImportManager'),
|
||||||
|
|
@ -295,8 +325,15 @@ const useFilters = ({
|
||||||
// aktif filtreyi kaydetmek icin ilgili ekrani ac
|
// aktif filtreyi kaydetmek icin ilgili ekrani ac
|
||||||
setIsCreateUpdateModalOpen(true)
|
setIsCreateUpdateModalOpen(true)
|
||||||
} else if (itemData.id === 'deleteFilter') {
|
} else if (itemData.id === 'deleteFilter') {
|
||||||
// Kayitli bir filtreyi silmek icin ilgili ekrani ac
|
// aktif filtreyi kaydetmek icin ilgili ekrani ac
|
||||||
setIsDeleteModalOpen(true)
|
setIsDeleteModalOpen(true)
|
||||||
|
} else if (itemData.id === 'fitColumns') {
|
||||||
|
// Tüm sütunları fitlemeye sığacak şekilde yeniden boyutlandır
|
||||||
|
const grid = gridRef.current?.instance()
|
||||||
|
if (!grid) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
fitColumns(grid)
|
||||||
} else if (itemData.id === 'openManage') {
|
} else if (itemData.id === 'openManage') {
|
||||||
window.open(
|
window.open(
|
||||||
ROUTES_ENUM.protected.saas.listFormManagement.edit.replace(
|
ROUTES_ENUM.protected.saas.listFormManagement.edit.replace(
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue