Class CustomizeManager
java.lang.Object
org.eclipse.nebula.widgets.xviewer.customize.CustomizeManager
public class CustomizeManager
extends java.lang.Object
This manages the default table column definitions versus the user modified column data, sorter and filters.
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
CURRENT_LABEL
boolean
loading
static java.lang.String
TABLE_DEFAULT_LABEL
-
Constructor Summary
Constructors Constructor Description CustomizeManager(XViewer xViewer, IXViewerFactory xViewerFactory)
-
Method Summary
Modifier and Type Method Description void
addColumns()
void
appendToStatusLabel(java.lang.StringBuilder sb)
void
clearAllColumnFilters()
void
clearFilters()
void
clearSorter()
void
customizeColumnName(org.eclipse.nebula.widgets.xviewer.core.model.XViewerColumn xCol, java.lang.String newName)
Set to newName or clear if newName == ""void
deleteCustomization(org.eclipse.nebula.widgets.xviewer.core.model.CustomizeData custData)
org.eclipse.nebula.widgets.xviewer.core.model.CustomizeData
generateCustDataFromTable()
org.eclipse.nebula.widgets.xviewer.core.model.ColumnDateFilter
getColumnDateFilter(java.lang.String columnId)
org.eclipse.nebula.widgets.xviewer.core.model.ColumnFilterData
getColumnFilterData()
java.lang.String
getColumnFilterText(java.lang.String colId)
Pair<org.eclipse.nebula.widgets.xviewer.core.model.XViewerColumn,java.lang.Integer>
getColumnNumFromXViewerColumn(java.lang.String columnId)
int
getColumnNumFromXViewerColumn(org.eclipse.nebula.widgets.xviewer.core.model.XViewerColumn xCol)
org.eclipse.nebula.widgets.xviewer.core.model.CustomizeData
getCurrentCustomizeData()
java.util.List<org.eclipse.nebula.widgets.xviewer.core.model.XViewerColumn>
getCurrentHiddenTableColumns()
org.eclipse.nebula.widgets.xviewer.core.model.XViewerColumn
getCurrentTableColumn(java.lang.String id)
java.util.List<org.eclipse.nebula.widgets.xviewer.core.model.XViewerColumn>
getCurrentTableColumns()
java.util.Map<org.eclipse.nebula.widgets.xviewer.core.model.XViewerColumn,java.lang.Integer>
getCurrentTableColumnsIndex()
Return index of XColumn to original column index on creation of table.java.util.List<org.eclipse.nebula.widgets.xviewer.core.model.XViewerColumn>
getCurrentTableColumnsInOrder()
java.util.List<org.eclipse.nebula.widgets.xviewer.core.model.XViewerColumn>
getCurrentVisibleTableColumns()
int
getDefaultWidth(java.lang.String id)
java.lang.String
getFilterText()
java.util.List<org.eclipse.nebula.widgets.xviewer.core.model.CustomizeData>
getSavedCustDatas()
void
getSortingStr(java.lang.StringBuilder sb)
java.util.List<org.eclipse.nebula.widgets.xviewer.core.model.XViewerColumn>
getSortXCols()
static int
getSwtAlign(org.eclipse.nebula.widgets.xviewer.core.model.XViewerAlign align)
org.eclipse.nebula.widgets.xviewer.core.model.CustomizeData
getTableDefaultCustData()
void
handleTableCustomization()
boolean
isCustomizationUserDefault(org.eclipse.nebula.widgets.xviewer.core.model.CustomizeData custData)
boolean
isFilterTextRegularExpression()
boolean
isLoading()
boolean
isSorting()
void
loadCustomization()
Clears out current columns, sorting and filtering and loads table customizationvoid
loadCustomization(org.eclipse.nebula.widgets.xviewer.core.model.CustomizeData newCustData)
Clears out current columns, sorting and filtering and loads table customizationvoid
resetDefaultSorter()
org.eclipse.nebula.widgets.xviewer.core.model.CustomizeData
resolveLoadedCustomizeData(org.eclipse.nebula.widgets.xviewer.core.model.CustomizeData loadedCustData)
Since saved customize data is stored as xml, all the columns need to be resolved to the columns available from the factoryvoid
saveCustomization(org.eclipse.nebula.widgets.xviewer.core.model.CustomizeData custData)
void
setColumnDateFilter(java.lang.String columnId, org.eclipse.nebula.widgets.xviewer.core.model.DateRangeType dateRangeType, java.util.Date date1, java.util.Date date2)
void
setColumnFilterText(java.lang.String colId, java.lang.String text)
void
setFilterText(java.lang.String text, boolean regex)
void
setUserDefaultCustData(org.eclipse.nebula.widgets.xviewer.core.model.CustomizeData newCustData, boolean set)
-
Field Details
-
CURRENT_LABEL
public static final java.lang.String CURRENT_LABEL -
TABLE_DEFAULT_LABEL
public static final java.lang.String TABLE_DEFAULT_LABEL -
loading
public boolean loading
-
-
Constructor Details
-
CustomizeManager
- Throws:
XViewerException
-
-
Method Details
-
resolveLoadedCustomizeData
public org.eclipse.nebula.widgets.xviewer.core.model.CustomizeData resolveLoadedCustomizeData(org.eclipse.nebula.widgets.xviewer.core.model.CustomizeData loadedCustData)Since saved customize data is stored as xml, all the columns need to be resolved to the columns available from the factory -
setFilterText
public void setFilterText(java.lang.String text, boolean regex) -
getFilterText
public java.lang.String getFilterText() -
setColumnFilterText
public void setColumnFilterText(java.lang.String colId, java.lang.String text) -
clearFilters
public void clearFilters() -
clearAllColumnFilters
public void clearAllColumnFilters() -
getColumnFilterText
public java.lang.String getColumnFilterText(java.lang.String colId) -
getColumnFilterData
public org.eclipse.nebula.widgets.xviewer.core.model.ColumnFilterData getColumnFilterData() -
loadCustomization
public void loadCustomization()Clears out current columns, sorting and filtering and loads table customization -
resetDefaultSorter
public void resetDefaultSorter() -
clearSorter
public void clearSorter() -
handleTableCustomization
public void handleTableCustomization() -
appendToStatusLabel
public void appendToStatusLabel(java.lang.StringBuilder sb) -
generateCustDataFromTable
public org.eclipse.nebula.widgets.xviewer.core.model.CustomizeData generateCustDataFromTable()- Returns:
- the currentCustData; makes a copy of columns so they don't collide with each other
-
getCurrentTableColumns
public java.util.List<org.eclipse.nebula.widgets.xviewer.core.model.XViewerColumn> getCurrentTableColumns() -
getCurrentTableColumn
public org.eclipse.nebula.widgets.xviewer.core.model.XViewerColumn getCurrentTableColumn(java.lang.String id) -
getCurrentTableColumnsInOrder
public java.util.List<org.eclipse.nebula.widgets.xviewer.core.model.XViewerColumn> getCurrentTableColumnsInOrder() -
getCurrentVisibleTableColumns
public java.util.List<org.eclipse.nebula.widgets.xviewer.core.model.XViewerColumn> getCurrentVisibleTableColumns() -
getCurrentHiddenTableColumns
public java.util.List<org.eclipse.nebula.widgets.xviewer.core.model.XViewerColumn> getCurrentHiddenTableColumns() -
getCurrentTableColumnsIndex
public java.util.Map<org.eclipse.nebula.widgets.xviewer.core.model.XViewerColumn,java.lang.Integer> getCurrentTableColumnsIndex()Return index of XColumn to original column index on creation of table. Since table allows drag re-ordering of columns, this index will provide the map back to the original column index. Used for label providers getColumnText(object, index) -
getColumnNumFromXViewerColumn
public int getColumnNumFromXViewerColumn(org.eclipse.nebula.widgets.xviewer.core.model.XViewerColumn xCol) -
getColumnNumFromXViewerColumn
public Pair<org.eclipse.nebula.widgets.xviewer.core.model.XViewerColumn,java.lang.Integer> getColumnNumFromXViewerColumn(java.lang.String columnId) -
getTableDefaultCustData
public org.eclipse.nebula.widgets.xviewer.core.model.CustomizeData getTableDefaultCustData() -
getSortingStr
public void getSortingStr(java.lang.StringBuilder sb) -
getDefaultWidth
public int getDefaultWidth(java.lang.String id) -
isCustomizationUserDefault
public boolean isCustomizationUserDefault(org.eclipse.nebula.widgets.xviewer.core.model.CustomizeData custData) throws XViewerException- Throws:
XViewerException
-
getSortXCols
public java.util.List<org.eclipse.nebula.widgets.xviewer.core.model.XViewerColumn> getSortXCols() -
isLoading
public boolean isLoading() -
getSavedCustDatas
public java.util.List<org.eclipse.nebula.widgets.xviewer.core.model.CustomizeData> getSavedCustDatas() throws java.lang.Exception- Throws:
java.lang.Exception
-
saveCustomization
public void saveCustomization(org.eclipse.nebula.widgets.xviewer.core.model.CustomizeData custData) throws java.lang.Exception- Throws:
java.lang.Exception
-
customizeColumnName
public void customizeColumnName(org.eclipse.nebula.widgets.xviewer.core.model.XViewerColumn xCol, java.lang.String newName)Set to newName or clear if newName == "" -
setUserDefaultCustData
public void setUserDefaultCustData(org.eclipse.nebula.widgets.xviewer.core.model.CustomizeData newCustData, boolean set) throws java.lang.Exception- Throws:
java.lang.Exception
-
deleteCustomization
public void deleteCustomization(org.eclipse.nebula.widgets.xviewer.core.model.CustomizeData custData) throws java.lang.Exception- Throws:
java.lang.Exception
-
isSorting
public boolean isSorting() -
loadCustomization
public void loadCustomization(org.eclipse.nebula.widgets.xviewer.core.model.CustomizeData newCustData)Clears out current columns, sorting and filtering and loads table customization -
addColumns
public void addColumns() -
getSwtAlign
public static int getSwtAlign(org.eclipse.nebula.widgets.xviewer.core.model.XViewerAlign align) -
isFilterTextRegularExpression
public boolean isFilterTextRegularExpression() -
setColumnDateFilter
public void setColumnDateFilter(java.lang.String columnId, org.eclipse.nebula.widgets.xviewer.core.model.DateRangeType dateRangeType, java.util.Date date1, java.util.Date date2) -
getColumnDateFilter
public org.eclipse.nebula.widgets.xviewer.core.model.ColumnDateFilter getColumnDateFilter(java.lang.String columnId) -
getCurrentCustomizeData
public org.eclipse.nebula.widgets.xviewer.core.model.CustomizeData getCurrentCustomizeData()
-