Merge df7dd0313999

This commit is contained in:
Heng Sin Low 2013-03-21 14:05:15 +08:00
commit 659edb3d55
3 changed files with 42 additions and 19 deletions

View File

@ -16,11 +16,13 @@ package org.adempiere.webui.editor;
import org.adempiere.webui.component.FilenameBox;
import org.adempiere.webui.component.FolderBrowser;
import org.adempiere.webui.event.DialogEvents;
import org.adempiere.webui.event.ValueChangeEvent;
import org.adempiere.webui.theme.ThemeManager;
import org.compiere.model.GridField;
import org.compiere.util.CLogger;
import org.zkoss.zk.ui.event.Event;
import org.zkoss.zk.ui.event.EventListener;
import org.zkoss.zk.ui.event.Events;
/**
@ -41,7 +43,6 @@ public class WFileDirectoryEditor extends WEditor
{
super(new FilenameBox(), gridField);
getComponent().setButtonImage(ThemeManager.getThemeResource("images/Open16.png"));
getComponent().addEventListener(Events.ON_CLICK, this);
getComponent().getButton().setUpload("false");
}
@ -98,7 +99,6 @@ public class WFileDirectoryEditor extends WEditor
else if (Events.ON_CLICK.equals(event.getName()))
{
cmd_file();
newValue = getComponent().getText();
}
else
{
@ -108,6 +108,16 @@ public class WFileDirectoryEditor extends WEditor
if (oldValue != null && newValue != null && oldValue.equals(newValue)) {
return;
}
if (oldValue == null && newValue == null) {
return;
}
processNewValue(newValue);
}
protected void processNewValue(String newValue) {
if (oldValue != null && newValue != null && oldValue.equals(newValue)) {
return;
}
if (oldValue == null && newValue == null) {
return;
}
@ -120,10 +130,16 @@ public class WFileDirectoryEditor extends WEditor
*/
private void cmd_file()
{
FolderBrowser directoryDialog = new FolderBrowser(true);
String directory = directoryDialog.getPath();
getComponent().setText(directory);
getComponent().getTextbox().focus();
final FolderBrowser directoryDialog = new FolderBrowser(true);
directoryDialog.addEventListener(DialogEvents.ON_WINDOW_CLOSE, new EventListener<Event>() {
@Override
public void onEvent(Event event) throws Exception {
String directory = directoryDialog.getPath();
getComponent().setText(directory);
getComponent().getTextbox().focus();
processNewValue(getComponent().getText());
}
});
} // cmd_file
public String[] getEvents()

View File

@ -35,6 +35,7 @@ import org.adempiere.webui.component.Tabpanels;
import org.adempiere.webui.component.Tabs;
import org.adempiere.webui.component.ToolBarButton;
import org.adempiere.webui.component.Window;
import org.adempiere.webui.event.DialogEvents;
import org.adempiere.webui.theme.ThemeManager;
import org.adempiere.webui.util.FeedbackManager;
import org.compiere.Adempiere;
@ -68,9 +69,9 @@ import org.zkoss.zul.Vbox;
*/
public class AboutWindow extends Window implements EventListener<Event> {
/**
*
*
*/
private static final long serialVersionUID = -2600883713422452076L;
private static final long serialVersionUID = 6573804051552633150L;
private Checkbox bErrorsOnly;
private Listbox logTable;
@ -479,18 +480,23 @@ public class AboutWindow extends Window implements EventListener<Event> {
private void downloadAdempiereLogFile() {
String path = Ini.getAdempiereHome() + File.separator + "log";
FolderBrowser fileBrowser = new FolderBrowser(path, false);
String selected = fileBrowser.getPath();
if (selected != null && selected.trim().length() > 0) {
File file = new File(selected);
if (file.exists() && file.isFile() && file.canRead()) {
try {
AMedia media = new AMedia(file, "text/plain", null);
Filedownload.save(media);
} catch (FileNotFoundException e) {
final FolderBrowser fileBrowser = new FolderBrowser(path, false);
fileBrowser.addEventListener(DialogEvents.ON_WINDOW_CLOSE, new EventListener<Event>() {
@Override
public void onEvent(Event event) throws Exception {
String selected = fileBrowser.getPath();
if (selected != null && selected.trim().length() > 0) {
File file = new File(selected);
if (file.exists() && file.isFile() && file.canRead()) {
try {
AMedia media = new AMedia(file, "text/plain", null);
Filedownload.save(media);
} catch (FileNotFoundException e) {
}
}
}
}
}
});
}
private void downloadLog() {

View File

@ -136,7 +136,8 @@ public class WTextEditorDialog extends Window implements EventListener<Event>{
status.setStyle("margin-top:10px;");
textBox.addEventListener(Events.ON_CHANGE, this);
editor.addEventListener(Events.ON_CHANGE, this);
if (editor != null)
editor.addEventListener(Events.ON_CHANGE, this);
}
tabbox.addEventListener(Events.ON_SELECT, this);