IDEMPIERE-1246 Implement Open in Grid Mode as user preference
This commit is contained in:
parent
bb799e6446
commit
9ee817ca32
|
@ -0,0 +1,15 @@
|
||||||
|
-- Aug 29, 2013 12:54:44 PM COT
|
||||||
|
-- IDEMPIERE-1246 Implement Open in Grid Mode as user preference
|
||||||
|
INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,Version,AD_Table_ID,AD_Column_ID,AD_Reference_Value_ID,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,ColumnName,DefaultValue,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,IsToolbarButton,IsAlwaysUpdateable,AD_Client_ID,EntityType,IsEncrypted,AD_Element_ID,IsSecure) VALUES (0,'N',0,200008,210850,319,'N','N','N',0,'N',1,'N',17,'N','N','Y','6326bd83-7b11-4da6-8407-26b186050943','Y','IsDisplayedGrid',NULL,'Show in Grid','Y',TO_DATE('2013-08-29 12:54:44','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_DATE('2013-08-29 12:54:44','YYYY-MM-DD HH24:MI:SS'),100,'N','N',0,'D','N',200083,'N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Aug 29, 2013 12:55:27 PM COT
|
||||||
|
ALTER TABLE AD_Tab_Customization ADD IsDisplayedGrid CHAR(1) DEFAULT NULL
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Aug 22, 2013 2:45:25 PM COT
|
||||||
|
INSERT INTO AD_Message (MsgType,MsgText,AD_Message_ID,AD_Message_UU,Value,IsActive,Updated,CreatedBy,UpdatedBy,Created,AD_Org_ID,AD_Client_ID,EntityType) VALUES ('I','Open in Grid Mode',200224,'4603f89b-78cf-4f1d-beeb-b33146aa91fa','OpenInGridMode','Y',TO_DATE('2013-08-22 14:45:25','YYYY-MM-DD HH24:MI:SS'),100,100,TO_DATE('2013-08-22 14:45:25','YYYY-MM-DD HH24:MI:SS'),0,0,'D')
|
||||||
|
;
|
||||||
|
|
||||||
|
SELECT register_migration_script('201308281230_IDEMPIERE-1246.sql') FROM dual
|
||||||
|
;
|
|
@ -0,0 +1,15 @@
|
||||||
|
-- Aug 29, 2013 12:54:44 PM COT
|
||||||
|
-- IDEMPIERE-1246 Implement "Open in Grid Mode" as user preference
|
||||||
|
INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,Version,AD_Table_ID,AD_Column_ID,AD_Reference_Value_ID,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,ColumnName,DefaultValue,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,IsToolbarButton,IsAlwaysUpdateable,AD_Client_ID,EntityType,IsEncrypted,AD_Element_ID,IsSecure) VALUES (0,'N',0,200008,210850,319,'N','N','N',0,'N',1,'N',17,'N','N','Y','6326bd83-7b11-4da6-8407-26b186050943','Y','IsDisplayedGrid',NULL,'Show in Grid','Y',TO_TIMESTAMP('2013-08-29 12:54:44','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_TIMESTAMP('2013-08-29 12:54:44','YYYY-MM-DD HH24:MI:SS'),100,'N','N',0,'D','N',200083,'N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Aug 29, 2013 12:55:27 PM COT
|
||||||
|
ALTER TABLE AD_Tab_Customization ADD COLUMN IsDisplayedGrid CHAR(1) DEFAULT NULL
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Aug 22, 2013 2:45:25 PM COT
|
||||||
|
INSERT INTO AD_Message (MsgType,MsgText,AD_Message_ID,AD_Message_UU,Value,IsActive,Updated,CreatedBy,UpdatedBy,Created,AD_Org_ID,AD_Client_ID,EntityType) VALUES ('I','Open in Grid Mode',200224,'4603f89b-78cf-4f1d-beeb-b33146aa91fa','OpenInGridMode','Y',TO_TIMESTAMP('2013-08-22 14:45:25','YYYY-MM-DD HH24:MI:SS'),100,100,TO_TIMESTAMP('2013-08-22 14:45:25','YYYY-MM-DD HH24:MI:SS'),0,0,'D')
|
||||||
|
;
|
||||||
|
|
||||||
|
SELECT register_migration_script('201308281230_IDEMPIERE-1246.sql') FROM dual
|
||||||
|
;
|
|
@ -42,6 +42,7 @@ import org.adempiere.base.Core;
|
||||||
import org.adempiere.base.IColumnCallout;
|
import org.adempiere.base.IColumnCallout;
|
||||||
import org.adempiere.base.ServiceQuery;
|
import org.adempiere.base.ServiceQuery;
|
||||||
import org.adempiere.base.equinox.EquinoxExtensionLocator;
|
import org.adempiere.base.equinox.EquinoxExtensionLocator;
|
||||||
|
import org.adempiere.model.MTabCustomization;
|
||||||
import org.adempiere.util.ContextRunnable;
|
import org.adempiere.util.ContextRunnable;
|
||||||
import org.compiere.Adempiere;
|
import org.compiere.Adempiere;
|
||||||
import org.compiere.util.CLogMgt;
|
import org.compiere.util.CLogMgt;
|
||||||
|
@ -1610,6 +1611,9 @@ public class GridTab implements DataStatusListener, Evaluatee, Serializable
|
||||||
*/
|
*/
|
||||||
public boolean isSingleRow()
|
public boolean isSingleRow()
|
||||||
{
|
{
|
||||||
|
MTabCustomization tabcust = MTabCustomization.get(Env.getCtx(), Env.getAD_User_ID(Env.getCtx()), getAD_Tab_ID(), null);
|
||||||
|
if (tabcust != null && tabcust.getIsDisplayedGrid() != null)
|
||||||
|
return "N".equals(tabcust.getIsDisplayedGrid());
|
||||||
return m_vo.IsSingleRow;
|
return m_vo.IsSingleRow;
|
||||||
} // isSingleRow;
|
} // isSingleRow;
|
||||||
|
|
||||||
|
|
|
@ -148,6 +148,15 @@ public interface I_AD_Tab_Customization
|
||||||
*/
|
*/
|
||||||
public boolean isActive();
|
public boolean isActive();
|
||||||
|
|
||||||
|
/** Column name IsDisplayedGrid */
|
||||||
|
public static final String COLUMNNAME_IsDisplayedGrid = "IsDisplayedGrid";
|
||||||
|
|
||||||
|
/** Set Show in Grid */
|
||||||
|
public void setIsDisplayedGrid (String IsDisplayedGrid);
|
||||||
|
|
||||||
|
/** Get Show in Grid */
|
||||||
|
public String getIsDisplayedGrid();
|
||||||
|
|
||||||
/** Column name Updated */
|
/** Column name Updated */
|
||||||
public static final String COLUMNNAME_Updated = "Updated";
|
public static final String COLUMNNAME_Updated = "Updated";
|
||||||
|
|
||||||
|
|
|
@ -29,7 +29,7 @@ public class X_AD_Tab_Customization extends PO implements I_AD_Tab_Customization
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
private static final long serialVersionUID = 20130626L;
|
private static final long serialVersionUID = 20130829L;
|
||||||
|
|
||||||
/** Standard Constructor */
|
/** Standard Constructor */
|
||||||
public X_AD_Tab_Customization (Properties ctx, int AD_Tab_Customization_ID, String trxName)
|
public X_AD_Tab_Customization (Properties ctx, int AD_Tab_Customization_ID, String trxName)
|
||||||
|
@ -173,4 +173,25 @@ public class X_AD_Tab_Customization extends PO implements I_AD_Tab_Customization
|
||||||
{
|
{
|
||||||
return (String)get_Value(COLUMNNAME_Custom);
|
return (String)get_Value(COLUMNNAME_Custom);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** IsDisplayedGrid AD_Reference_ID=319 */
|
||||||
|
public static final int ISDISPLAYEDGRID_AD_Reference_ID=319;
|
||||||
|
/** Yes = Y */
|
||||||
|
public static final String ISDISPLAYEDGRID_Yes = "Y";
|
||||||
|
/** No = N */
|
||||||
|
public static final String ISDISPLAYEDGRID_No = "N";
|
||||||
|
/** Set Show in Grid.
|
||||||
|
@param IsDisplayedGrid Show in Grid */
|
||||||
|
public void setIsDisplayedGrid (String IsDisplayedGrid)
|
||||||
|
{
|
||||||
|
|
||||||
|
set_Value (COLUMNNAME_IsDisplayedGrid, IsDisplayedGrid);
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Get Show in Grid.
|
||||||
|
@return Show in Grid */
|
||||||
|
public String getIsDisplayedGrid ()
|
||||||
|
{
|
||||||
|
return (String)get_Value(COLUMNNAME_IsDisplayedGrid);
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -42,12 +42,13 @@ import org.adempiere.webui.component.SimpleListModel;
|
||||||
import org.adempiere.webui.factory.ButtonFactory;
|
import org.adempiere.webui.factory.ButtonFactory;
|
||||||
import org.adempiere.webui.theme.ThemeManager;
|
import org.adempiere.webui.theme.ThemeManager;
|
||||||
import org.adempiere.webui.window.FDialog;
|
import org.adempiere.webui.window.FDialog;
|
||||||
import org.compiere.model.GridTab;
|
import org.compiere.model.MRefList;
|
||||||
import org.compiere.util.CLogger;
|
import org.compiere.util.CLogger;
|
||||||
import org.compiere.util.DB;
|
import org.compiere.util.DB;
|
||||||
import org.compiere.util.Env;
|
import org.compiere.util.Env;
|
||||||
import org.compiere.util.Msg;
|
import org.compiere.util.Msg;
|
||||||
import org.compiere.util.NamePair;
|
import org.compiere.util.NamePair;
|
||||||
|
import org.compiere.util.ValueNamePair;
|
||||||
import org.zkoss.zhtml.Span;
|
import org.zkoss.zhtml.Span;
|
||||||
import org.zkoss.zk.au.out.AuFocus;
|
import org.zkoss.zk.au.out.AuFocus;
|
||||||
import org.zkoss.zk.ui.event.DropEvent;
|
import org.zkoss.zk.ui.event.DropEvent;
|
||||||
|
@ -58,6 +59,7 @@ import org.zkoss.zk.ui.util.Clients;
|
||||||
import org.zkoss.zul.Borderlayout;
|
import org.zkoss.zul.Borderlayout;
|
||||||
import org.zkoss.zul.Center;
|
import org.zkoss.zul.Center;
|
||||||
import org.zkoss.zul.Div;
|
import org.zkoss.zul.Div;
|
||||||
|
import org.zkoss.zul.Separator;
|
||||||
import org.zkoss.zul.South;
|
import org.zkoss.zul.South;
|
||||||
import org.zkoss.zul.Vbox;
|
import org.zkoss.zul.Vbox;
|
||||||
|
|
||||||
|
@ -71,11 +73,13 @@ public class CustomizeGridViewPanel extends Panel
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
private static final long serialVersionUID = -3190425241947591357L;
|
private static final long serialVersionUID = 1592146462575454625L;
|
||||||
|
|
||||||
private Map<Integer, String> m_columnsWidth;
|
private Map<Integer, String> m_columnsWidth;
|
||||||
ArrayList<Integer> tableSeqs;
|
ArrayList<Integer> tableSeqs;
|
||||||
GridView gridPanel = null;
|
GridView gridPanel = null;
|
||||||
|
MTabCustomization m_tabcust;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Sort Tab Constructor
|
* Sort Tab Constructor
|
||||||
*
|
*
|
||||||
|
@ -91,7 +95,7 @@ public class CustomizeGridViewPanel extends Panel
|
||||||
m_AD_User_ID = AD_User_ID;
|
m_AD_User_ID = AD_User_ID;
|
||||||
m_columnsWidth = columnsWidth;
|
m_columnsWidth = columnsWidth;
|
||||||
tableSeqs = gridFieldIds;
|
tableSeqs = gridFieldIds;
|
||||||
this.setStyle("position : absolute;height: 460px; width:585px; margin: none; border: none;");
|
this.setStyle("position : absolute;height: 460px; width:600px; margin: none; border: none;");
|
||||||
} //
|
} //
|
||||||
|
|
||||||
/** Logger */
|
/** Logger */
|
||||||
|
@ -108,17 +112,18 @@ public class CustomizeGridViewPanel extends Panel
|
||||||
private Button bUp = new Button();
|
private Button bUp = new Button();
|
||||||
private Button bDown = new Button();
|
private Button bDown = new Button();
|
||||||
private Checkbox chkSaveWidth = new Checkbox();
|
private Checkbox chkSaveWidth = new Checkbox();
|
||||||
|
private Label lblGridMode = new Label();
|
||||||
|
private Listbox lstGridMode = new Listbox();
|
||||||
|
|
||||||
//
|
//
|
||||||
SimpleListModel noModel = new SimpleListModel();
|
SimpleListModel noModel = new SimpleListModel();
|
||||||
SimpleListModel yesModel = new SimpleListModel();
|
SimpleListModel yesModel = new SimpleListModel();
|
||||||
Listbox noList = new Listbox();
|
Listbox noList = new Listbox();
|
||||||
Listbox yesList = new Listbox();
|
Listbox yesList = new Listbox();
|
||||||
|
|
||||||
private GridTab gridTab;
|
|
||||||
private boolean uiCreated;
|
private boolean uiCreated;
|
||||||
private boolean m_saved = false;
|
private boolean m_saved = false;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Static Layout
|
* Static Layout
|
||||||
* @throws Exception
|
* @throws Exception
|
||||||
|
@ -126,15 +131,13 @@ public class CustomizeGridViewPanel extends Panel
|
||||||
private void init() throws Exception
|
private void init() throws Exception
|
||||||
{
|
{
|
||||||
Borderlayout layout = new Borderlayout();
|
Borderlayout layout = new Borderlayout();
|
||||||
layout.setStyle("position: absolute; width: 584px; height: 100%; border: none; margin: none;");
|
layout.setStyle("position: absolute; width: 600px; height: 100%; border: none; margin: none;");
|
||||||
Panel centerPanel = new Panel();
|
Panel centerPanel = new Panel();
|
||||||
centerPanel.setStyle("border: none; margin: none");
|
centerPanel.setStyle("border: none; margin: none");
|
||||||
centerPanel.setHeight("100%");
|
centerPanel.setHeight("100%");
|
||||||
Center center = new Center();
|
Center center = new Center();
|
||||||
center.setStyle("border: none; margin: none");
|
center.setStyle("border: none; margin: none");
|
||||||
|
|
||||||
noLabel.setValue("No");
|
|
||||||
yesLabel.setValue("Yes");
|
|
||||||
noLabel.setValue(Msg.getMsg(Env.getCtx(), "Available"));
|
noLabel.setValue(Msg.getMsg(Env.getCtx(), "Available"));
|
||||||
yesLabel.setValue(Msg.getMsg(Env.getCtx(), "Selected"));
|
yesLabel.setValue(Msg.getMsg(Env.getCtx(), "Selected"));
|
||||||
|
|
||||||
|
@ -211,7 +214,7 @@ public class CustomizeGridViewPanel extends Panel
|
||||||
vbox.appendChild(bRemove);
|
vbox.appendChild(bRemove);
|
||||||
span = new Span();
|
span = new Span();
|
||||||
span.setParent(centerPanel);
|
span.setParent(centerPanel);
|
||||||
span.setStyle("height: 90%; display: inline-block; width: 40px; border:none; margin: none;");
|
span.setStyle("height: 90%; display: inline-block; width: 50px; border:none; margin: none;");
|
||||||
span.appendChild(vbox);
|
span.appendChild(vbox);
|
||||||
|
|
||||||
span = new Span();
|
span = new Span();
|
||||||
|
@ -225,7 +228,7 @@ public class CustomizeGridViewPanel extends Panel
|
||||||
vbox.setStyle("border: none; margin: none");
|
vbox.setStyle("border: none; margin: none");
|
||||||
span = new Span();
|
span = new Span();
|
||||||
span.setParent(centerPanel);
|
span.setParent(centerPanel);
|
||||||
span.setStyle("height: 90%; display: inline-block; width: 40px; border:none; margin: none;");
|
span.setStyle("height: 90%; display: inline-block; width: 50px; border:none; margin: none;");
|
||||||
span.appendChild(vbox);
|
span.appendChild(vbox);
|
||||||
|
|
||||||
Div div = new Div();
|
Div div = new Div();
|
||||||
|
@ -234,6 +237,15 @@ public class CustomizeGridViewPanel extends Panel
|
||||||
chkSaveWidth.setLabel(Msg.getMsg(Env.getCtx(), "SaveColumnWidth"));
|
chkSaveWidth.setLabel(Msg.getMsg(Env.getCtx(), "SaveColumnWidth"));
|
||||||
centerPanel.appendChild(div);
|
centerPanel.appendChild(div);
|
||||||
|
|
||||||
|
Separator sep = new Separator("vertical");
|
||||||
|
sep.setSpacing("200px");
|
||||||
|
div.appendChild(sep);
|
||||||
|
lblGridMode.setValue(Msg.getMsg(Env.getCtx(), "OpenInGridMode"));
|
||||||
|
div.appendChild(lblGridMode);
|
||||||
|
lstGridMode.setMold("select");
|
||||||
|
div.appendChild(lstGridMode);
|
||||||
|
centerPanel.appendChild(div);
|
||||||
|
|
||||||
center.appendChild(centerPanel);
|
center.appendChild(centerPanel);
|
||||||
centerPanel.setVflex("1");
|
centerPanel.setVflex("1");
|
||||||
centerPanel.setHflex("1");
|
centerPanel.setHflex("1");
|
||||||
|
@ -245,8 +257,6 @@ public class CustomizeGridViewPanel extends Panel
|
||||||
south.setHeight("35px");
|
south.setHeight("35px");
|
||||||
south.setStyle("text-align: right;");
|
south.setStyle("text-align: right;");
|
||||||
southPanel.setStyle("margin-top: 2px; margin-right: 4px");
|
southPanel.setStyle("margin-top: 2px; margin-right: 4px");
|
||||||
@SuppressWarnings("unused")
|
|
||||||
String label = Msg.getMsg(Env.getCtx(), "save");
|
|
||||||
Button bOK = ButtonFactory.createNamedButton(ConfirmPanel.A_OK);
|
Button bOK = ButtonFactory.createNamedButton(ConfirmPanel.A_OK);
|
||||||
bOK.setId("Ok");
|
bOK.setId("Ok");
|
||||||
EventListener<Event> onClickListener = new EventListener<Event>()
|
EventListener<Event> onClickListener = new EventListener<Event>()
|
||||||
|
@ -263,7 +273,6 @@ public class CustomizeGridViewPanel extends Panel
|
||||||
};
|
};
|
||||||
bOK.addActionListener(onClickListener);
|
bOK.addActionListener(onClickListener);
|
||||||
southPanel.appendChild(bOK);
|
southPanel.appendChild(bOK);
|
||||||
label = Msg.getMsg(Env.getCtx(), "Cancel");
|
|
||||||
Button btn = ButtonFactory.createNamedButton(ConfirmPanel.A_CANCEL);
|
Button btn = ButtonFactory.createNamedButton(ConfirmPanel.A_CANCEL);
|
||||||
btn.setId("Cancel");
|
btn.setId("Cancel");
|
||||||
EventListener<Event> onClickCancelListener = new EventListener<Event>()
|
EventListener<Event> onClickCancelListener = new EventListener<Event>()
|
||||||
|
@ -286,23 +295,21 @@ public class CustomizeGridViewPanel extends Panel
|
||||||
|
|
||||||
this.appendChild(layout);
|
this.appendChild(layout);
|
||||||
|
|
||||||
} // Init
|
} // init
|
||||||
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.compiere.grid.APanelTab#loadData()
|
|
||||||
*/
|
|
||||||
public void loadData()
|
public void loadData()
|
||||||
{
|
{
|
||||||
|
m_tabcust = MTabCustomization.get(Env.getCtx(), m_AD_User_ID, m_AD_Tab_ID, null);
|
||||||
|
|
||||||
yesModel.removeAllElements();
|
yesModel.removeAllElements();
|
||||||
noModel.removeAllElements();
|
noModel.removeAllElements();
|
||||||
boolean baseLanguage = Env.isBaseLanguage(Env.getCtx(), "AD_Field");
|
boolean baseLanguage = Env.isBaseLanguage(Env.getCtx(), "AD_Field");
|
||||||
String sql;
|
String sql;
|
||||||
if (baseLanguage)
|
if (baseLanguage)
|
||||||
sql = "SELECT t.AD_Field_ID,t.Name,t.SeqNoGrid,AD_Client_ID, AD_Org_ID FROM AD_Field t WHERE t.AD_Tab_ID=? AND t.IsDisplayedGrid ='Y' AND t.IsActive='Y' ORDER BY 3,2";
|
sql = "SELECT f.AD_Field_ID,f.Name FROM AD_Field f WHERE f.AD_Tab_ID=? AND (f.IsDisplayed='Y' OR f.IsDisplayedGrid='Y') AND f.IsActive='Y' ORDER BY f.SeqNoGrid,f.Name,f.SeqNo";
|
||||||
else
|
else
|
||||||
sql = "SELECT t.AD_Field_ID,trl.Name,t.SeqNoGrid,t.AD_Client_ID, t.AD_Org_ID FROM AD_Field t JOIN AD_Field_Trl trl ON (t.AD_Field_ID = trl.AD_Field_ID)"
|
sql = "SELECT f.AD_Field_ID,trl.Name FROM AD_Field f JOIN AD_Field_Trl trl ON (f.AD_Field_ID = trl.AD_Field_ID)"
|
||||||
+ " WHERE t.AD_Tab_ID=? AND t.IsDisplayedGrid ='Y' AND t.IsActive='Y' AND trl.AD_Language=? ORDER BY 3,2";
|
+ " WHERE f.AD_Tab_ID=? AND (f.IsDisplayed='Y' OR f.IsDisplayedGrid='Y') AND f.IsActive='Y' AND trl.AD_Language=? ORDER BY f.SeqNoGrid,f.Name,f.SeqNo";
|
||||||
PreparedStatement pstmt = null;
|
PreparedStatement pstmt = null;
|
||||||
ResultSet rs = null;
|
ResultSet rs = null;
|
||||||
try
|
try
|
||||||
|
@ -318,9 +325,7 @@ public class CustomizeGridViewPanel extends Panel
|
||||||
{
|
{
|
||||||
int key = rs.getInt(1);
|
int key = rs.getInt(1);
|
||||||
String name = rs.getString(2);
|
String name = rs.getString(2);
|
||||||
int AD_Client_ID = rs.getInt(4);
|
ListElement pp = new ListElement(key, name);
|
||||||
int AD_Org_ID = rs.getInt(5);
|
|
||||||
ListElement pp = new ListElement(key, name, AD_Client_ID, AD_Org_ID);
|
|
||||||
if (tableSeqs != null && tableSeqs.size() > 0 ) {
|
if (tableSeqs != null && tableSeqs.size() > 0 ) {
|
||||||
if (tableSeqs.contains(key)) {
|
if (tableSeqs.contains(key)) {
|
||||||
curTabSel.put(key, pp);
|
curTabSel.put(key, pp);
|
||||||
|
@ -361,6 +366,18 @@ public class CustomizeGridViewPanel extends Panel
|
||||||
yesList.setModel(yesModel);
|
yesList.setModel(yesModel);
|
||||||
noList.setItemRenderer(noModel);
|
noList.setItemRenderer(noModel);
|
||||||
noList.setModel(noModel);
|
noList.setModel(noModel);
|
||||||
|
|
||||||
|
ValueNamePair pp = new ValueNamePair(null, null);
|
||||||
|
lstGridMode.addItem(pp);
|
||||||
|
ValueNamePair[] list = MRefList.getList(Env.getCtx(), MTabCustomization.ISDISPLAYEDGRID_AD_Reference_ID, false);
|
||||||
|
for (int i = 0;i < list.length; i++ ) {
|
||||||
|
lstGridMode.addItem(list[i]);
|
||||||
|
if (m_tabcust != null && list[i].getValue().equals(m_tabcust.getIsDisplayedGrid()))
|
||||||
|
lstGridMode.setSelectedValueNamePair(list[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (m_tabcust != null && m_tabcust.getCustom().indexOf("px") > 0)
|
||||||
|
chkSaveWidth.setChecked(true);
|
||||||
} // loadData
|
} // loadData
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -425,6 +442,7 @@ public class CustomizeGridViewPanel extends Panel
|
||||||
yesModel.add(endIndex, selObject);
|
yesModel.add(endIndex, selObject);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Move within Yes List
|
* Move within Yes List
|
||||||
* @param event event
|
* @param event event
|
||||||
|
@ -491,12 +509,6 @@ public class CustomizeGridViewPanel extends Panel
|
||||||
}
|
}
|
||||||
} // migrateValueWithinYesList
|
} // migrateValueWithinYesList
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/** (non-Javadoc)
|
|
||||||
* @see org.compiere.grid.APanelTab#saveData()
|
|
||||||
*/
|
|
||||||
public void saveData()
|
public void saveData()
|
||||||
{
|
{
|
||||||
log.fine("");
|
log.fine("");
|
||||||
|
@ -509,10 +521,10 @@ public class CustomizeGridViewPanel extends Panel
|
||||||
ListElement pp = (ListElement)yesModel.getElementAt(i);
|
ListElement pp = (ListElement)yesModel.getElementAt(i);
|
||||||
if (!pp.isUpdateable())
|
if (!pp.isUpdateable())
|
||||||
continue;
|
continue;
|
||||||
//index += 10;
|
|
||||||
|
|
||||||
|
if (i > 0)
|
||||||
|
custom.append(",");
|
||||||
custom.append(pp.getKey());
|
custom.append(pp.getKey());
|
||||||
custom.append(",");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (chkSaveWidth.isSelected() && m_columnsWidth != null && !m_columnsWidth.isEmpty())
|
if (chkSaveWidth.isSelected() && m_columnsWidth != null && !m_columnsWidth.isEmpty())
|
||||||
|
@ -532,18 +544,22 @@ public class CustomizeGridViewPanel extends Panel
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
MTabCustomization uc = MTabCustomization.get(Env.getCtx(), m_AD_User_ID, m_AD_Tab_ID, null);
|
String gridview = null;
|
||||||
if (uc != null && uc.getAD_Tab_Customization_ID() > 0) {
|
if (lstGridMode.getSelectedItem() != null && lstGridMode.getSelectedItem().toString().length() > 0)
|
||||||
uc.setCustom(custom.toString());
|
gridview = lstGridMode.getSelectedItem().toString();
|
||||||
} else{
|
if (m_tabcust != null && m_tabcust.getAD_Tab_Customization_ID() > 0) {
|
||||||
uc = new MTabCustomization(Env.getCtx(), 0, null);
|
m_tabcust.setCustom(custom.toString());
|
||||||
uc.setAD_Tab_ID(m_AD_Tab_ID);
|
m_tabcust.setIsDisplayedGrid(gridview);
|
||||||
uc.set_ValueOfColumn("AD_User_ID", m_AD_User_ID);
|
} else {
|
||||||
uc.setCustom(custom.toString());
|
m_tabcust = new MTabCustomization(Env.getCtx(), 0, null);
|
||||||
|
m_tabcust.setAD_Tab_ID(m_AD_Tab_ID);
|
||||||
|
m_tabcust.set_ValueOfColumn("AD_User_ID", m_AD_User_ID);
|
||||||
|
m_tabcust.setCustom(custom.toString());
|
||||||
|
m_tabcust.setIsDisplayedGrid(gridview);
|
||||||
}
|
}
|
||||||
if (uc.getCustom() == null || uc.getCustom().trim().length() == 0)
|
if (m_tabcust.getCustom() == null || m_tabcust.getCustom().trim().length() == 0)
|
||||||
{
|
{
|
||||||
if (uc.is_new())
|
if (m_tabcust.is_new())
|
||||||
{
|
{
|
||||||
//no action needed
|
//no action needed
|
||||||
getParent().detach();
|
getParent().detach();
|
||||||
|
@ -551,12 +567,12 @@ public class CustomizeGridViewPanel extends Panel
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
ok = uc.delete(true);
|
ok = m_tabcust.delete(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
ok = uc.save();
|
ok = m_tabcust.save();
|
||||||
}
|
}
|
||||||
//
|
//
|
||||||
if(ok) {
|
if(ok) {
|
||||||
|
@ -579,19 +595,15 @@ public class CustomizeGridViewPanel extends Panel
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
private static final long serialVersionUID = -5645910649588308798L;
|
private static final long serialVersionUID = -1717531470895073281L;
|
||||||
|
|
||||||
private int m_key;
|
private int m_key;
|
||||||
private int m_AD_Client_ID;
|
|
||||||
private int m_AD_Org_ID;
|
|
||||||
/** Initial selection flag */
|
|
||||||
|
|
||||||
private boolean m_updateable;
|
private boolean m_updateable;
|
||||||
|
|
||||||
public ListElement(int key, String name, int AD_Client_ID, int AD_Org_ID) {
|
public ListElement(int key, String name) {
|
||||||
super(name);
|
super(name);
|
||||||
this.m_key = key;
|
this.m_key = key;
|
||||||
this.m_AD_Client_ID = AD_Client_ID;
|
|
||||||
this.m_AD_Org_ID = AD_Org_ID;
|
|
||||||
this.m_updateable = true;
|
this.m_updateable = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -599,14 +611,6 @@ public class CustomizeGridViewPanel extends Panel
|
||||||
return m_key;
|
return m_key;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getAD_Client_ID() {
|
|
||||||
return m_AD_Client_ID;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getAD_Org_ID() {
|
|
||||||
return m_AD_Org_ID;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isUpdateable() {
|
public boolean isUpdateable() {
|
||||||
return m_updateable;
|
return m_updateable;
|
||||||
}
|
}
|
||||||
|
@ -630,9 +634,7 @@ public class CustomizeGridViewPanel extends Panel
|
||||||
return
|
return
|
||||||
li.getKey() == m_key
|
li.getKey() == m_key
|
||||||
&& li.getName() != null
|
&& li.getName() != null
|
||||||
&& li.getName().equals(getName())
|
&& li.getName().equals(getName());
|
||||||
&& li.getAD_Client_ID() == m_AD_Client_ID
|
|
||||||
&& li.getAD_Org_ID() == m_AD_Org_ID;
|
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
} // equals
|
} // equals
|
||||||
|
@ -713,63 +715,16 @@ public class CustomizeGridViewPanel extends Panel
|
||||||
uiCreated = true;
|
uiCreated = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void dynamicDisplay(int i) {
|
|
||||||
}
|
|
||||||
|
|
||||||
public void editRecord(boolean b) {
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getDisplayLogic() {
|
|
||||||
return gridTab.getDisplayLogic();
|
|
||||||
}
|
|
||||||
|
|
||||||
public GridTab getGridTab() {
|
|
||||||
return gridTab;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getTabLevel() {
|
|
||||||
return gridTab.getTabLevel();
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getTitle() {
|
|
||||||
return gridTab.getName();
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isCurrent() {
|
|
||||||
return gridTab != null ? gridTab.isCurrent() : false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void query() {
|
public void query() {
|
||||||
loadData();
|
loadData();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void query(boolean currentRows, int currentDays, int i) {
|
|
||||||
loadData();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void refresh() {
|
|
||||||
loadData();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void switchRowPresentation() {
|
|
||||||
}
|
|
||||||
|
|
||||||
public String get_ValueAsString(String variableName) {
|
|
||||||
return Env.getContext(Env.getCtx(), m_WindowNo, variableName);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void afterSave(boolean onSaveEvent) {
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean onEnterKey() {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isSaved() {
|
public boolean isSaved() {
|
||||||
return m_saved;
|
return m_saved;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setGridPanel(GridView gridPanel){
|
public void setGridPanel(GridView gridPanel){
|
||||||
this.gridPanel = gridPanel;
|
this.gridPanel = gridPanel;
|
||||||
}
|
}
|
||||||
} //ADSortTab
|
|
||||||
|
|
||||||
|
} //CustomizeGridViewPanel
|
||||||
|
|
Loading…
Reference in New Issue