use of org.zkoss.image.AImage in project adempiere by adempiere.
the class WImageEditor method setValue.
@Override
public void setValue(Object value) {
int newValue = 0;
if (value instanceof Integer)
newValue = ((Integer) value).intValue();
if (newValue == 0) {
m_mImage = null;
AImage img = null;
getComponent().setContent(img);
return;
}
// Get/Create Image
if (m_mImage == null || newValue != m_mImage.get_ID())
m_mImage = MImage.get(Env.getCtx(), newValue);
//
log.fine(m_mImage.toString());
AImage img = null;
byte[] data = m_mImage.getData();
if (data != null && data.length > 0) {
try {
img = new AImage(null, data);
} catch (Exception e) {
logger.log(Level.WARNING, e.getLocalizedMessage(), e);
}
}
getComponent().setContent(img);
getComponent().setWidth("100px");
getComponent().setHeight("100px");
}
use of org.zkoss.image.AImage in project adempiere by adempiere.
the class WFEditor method load.
private void load(int workflowId) {
// Get Workflow
MWorkflow wf = new MWorkflow(Env.getCtx(), workflowId, null);
WFNodeContainer nodeContainer = new WFNodeContainer();
nodeContainer.setWorkflow(wf);
// Add Nodes for Paint
MWFNode[] nodes = wf.getNodes(true, Env.getAD_Client_ID(Env.getCtx()));
for (int i = 0; i < nodes.length; i++) {
WFNode wfn = new WFNode(nodes[i]);
nodeContainer.add(wfn);
// Add Lines
MWFNodeNext[] nexts = nodes[i].getTransitions(Env.getAD_Client_ID(Env.getCtx()));
for (int j = 0; j < nexts.length; j++) nodeContainer.add(new WFLine(nexts[j]));
}
Dimension dimension = nodeContainer.getDimension();
BufferedImage bi = new BufferedImage(dimension.width + 2, dimension.height + 2, BufferedImage.TYPE_INT_ARGB);
nodeContainer.paint(bi.createGraphics());
ByteArrayOutputStream os = new ByteArrayOutputStream();
try {
ImageIO.write(bi, "png", os);
AImage imageContent = new AImage("workflow.png", os.toByteArray());
imageMap.setWidth(dimension.width + "px");
imageMap.setHeight(dimension.height + "px");
imageMap.setContent(imageContent);
} catch (Exception e) {
logger.log(Level.SEVERE, e.getLocalizedMessage(), e);
}
}
use of org.zkoss.image.AImage in project adempiere by adempiere.
the class WImageDialog method cmd_file.
/**
* Load file & display
*/
private void cmd_file() {
// Show File Open Dialog
Media imageFile = null;
imageFile = Fileupload.get();
if (imageFile == null)
return;
String fileName = imageFile.getName();
// See if we can load & display it
try {
InputStream is = imageFile.getStreamData();
AImage aImage = new AImage(fileName, is);
image.setContent(aImage);
is.close();
} catch (Exception e) {
log.log(Level.WARNING, "load image", e);
return;
}
// OK
fileButton.setLabel(imageFile.getName());
invalidate();
// Save info
if (m_mImage == null)
m_mImage = MImage.get(Env.getCtx(), 0);
m_mImage.setName(fileName);
m_mImage.setImageURL(fileName);
if (image.getContent() != null)
m_mImage.setBinaryData(image.getContent().getByteData());
else
m_mImage.setBinaryData(null);
}
Aggregations