IDEMPIERE-17 Value Preference window showing encrypted content to user. Obscure and encrypted field shouldn't have value preference menu.

(transplanted from f3bb9e2b0eafdd35ec559162fd88d7e1f346a078)
This commit is contained in:
Heng Sin Low 2011-09-06 16:23:55 +08:00
parent 51ed00a1ec
commit 97896c1550
5 changed files with 44 additions and 17 deletions

View File

@ -23,6 +23,7 @@ import org.adempiere.webui.event.ContextMenuEvent;
import org.adempiere.webui.event.ContextMenuListener;
import org.compiere.util.Env;
import org.compiere.util.Msg;
import org.compiere.util.Util;
import org.zkoss.zk.ui.event.Event;
import org.zkoss.zk.ui.event.EventListener;
import org.zkoss.zk.ui.event.Events;
@ -94,7 +95,7 @@ public class WEditorPopupMenu extends Menupopup implements EventListener
{
zoomItem = new Menuitem();
zoomItem.setAttribute(EVENT_ATTRIBUTE, ZOOM_EVENT);
zoomItem.setLabel(Msg.getMsg(Env.getCtx(), "Zoom"));
zoomItem.setLabel(Util.cleanAmp(Msg.getMsg(Env.getCtx(), "Zoom")));
zoomItem.setImage("/images/Zoom16.png");
zoomItem.addEventListener(Events.ON_CLICK, this);
@ -105,7 +106,7 @@ public class WEditorPopupMenu extends Menupopup implements EventListener
{
requeryItem = new Menuitem();
requeryItem.setAttribute(EVENT_ATTRIBUTE, REQUERY_EVENT);
requeryItem.setLabel(Msg.getMsg(Env.getCtx(), "Refresh"));
requeryItem.setLabel(Util.cleanAmp(Msg.getMsg(Env.getCtx(), "Refresh")));
requeryItem.setImage("/images/Refresh16.png");
requeryItem.addEventListener(Events.ON_CLICK, this);
this.appendChild(requeryItem);
@ -115,7 +116,7 @@ public class WEditorPopupMenu extends Menupopup implements EventListener
{
prefItem = new Menuitem();
prefItem.setAttribute(EVENT_ATTRIBUTE, PREFERENCE_EVENT);
prefItem.setLabel(Msg.getMsg(Env.getCtx(), "ValuePreference"));
prefItem.setLabel(Util.cleanAmp(Msg.getMsg(Env.getCtx(), "ValuePreference")));
prefItem.setImage("/images/VPreference16.png");
prefItem.addEventListener(Events.ON_CLICK, this);
this.appendChild(prefItem);
@ -125,7 +126,7 @@ public class WEditorPopupMenu extends Menupopup implements EventListener
{
newItem = new Menuitem();
newItem.setAttribute(EVENT_ATTRIBUTE, NEW_EVENT);
newItem.setLabel(Msg.getMsg(Env.getCtx(), "New"));
newItem.setLabel(Util.cleanAmp(Msg.getMsg(Env.getCtx(), "New")));
newItem.setImage("/images/New16.png");
newItem.addEventListener(Events.ON_CLICK, this);
this.appendChild(newItem);
@ -136,7 +137,7 @@ public class WEditorPopupMenu extends Menupopup implements EventListener
{
updateItem = new Menuitem();
updateItem.setAttribute(EVENT_ATTRIBUTE, UPDATE_EVENT);
updateItem.setLabel(Msg.getMsg(Env.getCtx(), "Update"));
updateItem.setLabel(Util.cleanAmp(Msg.getMsg(Env.getCtx(), "Update")));
updateItem.setImage("/images/InfoBPartner16.png");
updateItem.addEventListener(Events.ON_CLICK, this);
this.appendChild(updateItem);

View File

@ -123,7 +123,12 @@ public class WNumberEditor extends WEditor implements ContextMenuListener
DecimalFormat format = DisplayType.getNumberFormat(displayType, AEnv.getLanguage(Env.getCtx()));
getComponent().getDecimalbox().setFormat(format.toPattern());
popupMenu = new WEditorPopupMenu(true, true, false);
boolean valuePreference = false;
if (gridField != null && !gridField.isEncrypted() && !gridField.isEncryptedColumn())
{
valuePreference = true;
}
popupMenu = new WEditorPopupMenu(false, false, valuePreference);
if (gridField != null && gridField.getGridTab() != null)
{
WFieldRecordInfo.addMenu(popupMenu);
@ -131,6 +136,12 @@ public class WNumberEditor extends WEditor implements ContextMenuListener
getComponent().setContext(popupMenu.getId());
}
@Override
public WEditorPopupMenu getPopupMenu() {
return popupMenu;
}
/**
* Event handler
* @param event
@ -219,7 +230,7 @@ public class WNumberEditor extends WEditor implements ContextMenuListener
{
if (WEditorPopupMenu.PREFERENCE_EVENT.equals(evt.getContextEvent()) && gridField != null)
{
if (MRole.getDefault().isShowPreference())
if (MRole.getDefault().isShowPreference() && !gridField.isEncrypted() && !gridField.isEncryptedColumn())
ValuePreference.start (this.getGridField(), getValue());
return;
}

View File

@ -147,20 +147,24 @@ public class WSearchEditor extends WEditor implements ContextMenuListener, Value
{
columnName = this.getColumnName();
boolean valuePreference = false;
if (gridField != null && !gridField.isEncrypted() && !gridField.isEncryptedColumn())
{
valuePreference = true;
}
if (columnName.equals("C_BPartner_ID"))
{
popupMenu = new WEditorPopupMenu(true, true, true, true, true);
popupMenu = new WEditorPopupMenu(true, true, valuePreference, true, true);
getComponent().setButtonImage("/images/BPartner10.png");
}
else if (columnName.equals("M_Product_ID"))
{
popupMenu = new WEditorPopupMenu(true, true, true, false, false);
popupMenu = new WEditorPopupMenu(true, true, valuePreference, false, false);
getComponent().setButtonImage("/images/Product10.png");
}
else
{
popupMenu = new WEditorPopupMenu(true, true, true, false, false);
popupMenu = new WEditorPopupMenu(true, true, valuePreference, false, false);
getComponent().setButtonImage("/images/PickOpen10.png");
}
@ -278,7 +282,7 @@ public class WSearchEditor extends WEditor implements ContextMenuListener, Value
}
else if (WEditorPopupMenu.PREFERENCE_EVENT.equals(evt.getContextEvent()))
{
if (MRole.getDefault().isShowPreference())
if (MRole.getDefault().isShowPreference() && gridField != null && !gridField.isEncrypted() && !gridField.isEncryptedColumn())
ValuePreference.start (this.getGridField(), getValue());
return;
}

View File

@ -54,7 +54,8 @@ public class WStringEditor extends WEditor implements ContextMenuListener
private WEditorPopupMenu popupMenu;
private boolean tableEditor = false;
@SuppressWarnings("unused")
private boolean tableEditor = false;
/**
* to ease porting of swing form
@ -140,7 +141,12 @@ public class WStringEditor extends WEditor implements ContextMenuListener
if (getComponent() instanceof Textbox)
((Textbox)getComponent()).setObscureType(obscureType);
popupMenu = new WEditorPopupMenu(false, false, true);
boolean valuePreference = false;
if (gridField != null && !gridField.isEncrypted() && !gridField.isEncryptedColumn())
{
valuePreference = true;
}
popupMenu = new WEditorPopupMenu(false, false, valuePreference);
Menuitem editor = new Menuitem(Msg.getMsg(Env.getCtx(), "Editor"), "images/Editor16.png");
editor.setAttribute("EVENT", EDITOR_EVENT);
editor.addEventListener(Events.ON_CLICK, popupMenu);
@ -236,7 +242,7 @@ public class WStringEditor extends WEditor implements ContextMenuListener
{
if (WEditorPopupMenu.PREFERENCE_EVENT.equals(evt.getContextEvent()))
{
if (MRole.getDefault().isShowPreference())
if (MRole.getDefault().isShowPreference() && gridField != null && !gridField.isEncrypted() && !gridField.isEncryptedColumn())
ValuePreference.start (this.getGridField(), getValue());
return;
}

View File

@ -144,7 +144,12 @@ ContextMenuListener, IZoomableEditor
if (gridField != null)
{
popupMenu = new WEditorPopupMenu(zoom, true, true);
boolean valuePreference = false;
if (!gridField.isEncrypted() && !gridField.isEncryptedColumn())
{
valuePreference = true;
}
popupMenu = new WEditorPopupMenu(zoom, true, valuePreference);
if (gridField != null && gridField.getGridTab() != null)
{
WFieldRecordInfo.addMenu(popupMenu);
@ -400,7 +405,7 @@ ContextMenuListener, IZoomableEditor
}
else if (WEditorPopupMenu.PREFERENCE_EVENT.equals(evt.getContextEvent()))
{
if (MRole.getDefault().isShowPreference())
if (MRole.getDefault().isShowPreference() && gridField != null && !gridField.isEncrypted() && !gridField.isEncryptedColumn())
ValuePreference.start (this.getGridField(), getValue());
return;
}