You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pivot.apache.org by gb...@apache.org on 2010/02/10 14:33:54 UTC
svn commit: r908495 - in /pivot/trunk:
tutorials/src/org/apache/pivot/tutorials/filebrowsing/
tutorials/src/org/apache/pivot/tutorials/menus/
wtk-terra/src/org/apache/pivot/wtk/skin/terra/ wtk/src/org/apache/pivot/wtk/
Author: gbrown
Date: Wed Feb 10 13:33:53 2010
New Revision: 908495
URL: http://svn.apache.org/viewvc?rev=908495&view=rev
Log:
Make FileBrowserSheet WTKX-compatible.
Modified:
pivot/trunk/tutorials/src/org/apache/pivot/tutorials/filebrowsing/FileBrowsing.java
pivot/trunk/tutorials/src/org/apache/pivot/tutorials/menus/MenuBars.java
pivot/trunk/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraFileBrowserSheetSkin.java
pivot/trunk/wtk/src/org/apache/pivot/wtk/Dialog.java
pivot/trunk/wtk/src/org/apache/pivot/wtk/FileBrowserSheet.java
pivot/trunk/wtk/src/org/apache/pivot/wtk/Sheet.java
Modified: pivot/trunk/tutorials/src/org/apache/pivot/tutorials/filebrowsing/FileBrowsing.java
URL: http://svn.apache.org/viewvc/pivot/trunk/tutorials/src/org/apache/pivot/tutorials/filebrowsing/FileBrowsing.java?rev=908495&r1=908494&r2=908495&view=diff
==============================================================================
--- pivot/trunk/tutorials/src/org/apache/pivot/tutorials/filebrowsing/FileBrowsing.java (original)
+++ pivot/trunk/tutorials/src/org/apache/pivot/tutorials/filebrowsing/FileBrowsing.java Wed Feb 10 13:33:53 2010
@@ -59,13 +59,13 @@
String mode = (String)selection.getUserData().get("mode");
FileBrowserSheet.Mode fileBrowserSheetMode = FileBrowserSheet.Mode.valueOf(mode.toUpperCase());
- final FileBrowserSheet fileBrowserSheet = new FileBrowserSheet(fileBrowserSheetMode);
+ final FileBrowserSheet fileBrowserSheet = new FileBrowserSheet();
if (fileBrowserSheetMode == FileBrowserSheet.Mode.SAVE_AS) {
fileBrowserSheet.setSelectedFile(new File(fileBrowserSheet.getRootDirectory(), "New File"));
}
- fileBrowserSheet.open(window, new SheetCloseListener() {
+ fileBrowserSheet.open(window, fileBrowserSheetMode, new SheetCloseListener() {
@Override
public void sheetClosed(Sheet sheet) {
if (sheet.getResult()) {
Modified: pivot/trunk/tutorials/src/org/apache/pivot/tutorials/menus/MenuBars.java
URL: http://svn.apache.org/viewvc/pivot/trunk/tutorials/src/org/apache/pivot/tutorials/menus/MenuBars.java?rev=908495&r1=908494&r2=908495&view=diff
==============================================================================
--- pivot/trunk/tutorials/src/org/apache/pivot/tutorials/menus/MenuBars.java (original)
+++ pivot/trunk/tutorials/src/org/apache/pivot/tutorials/menus/MenuBars.java Wed Feb 10 13:33:53 2010
@@ -122,7 +122,7 @@
Action.getNamedActions().put("fileOpen", new Action() {
@Override
public void perform() {
- fileBrowserSheet.open(window);
+ fileBrowserSheet.open(window, FileBrowserSheet.Mode.OPEN);
}
});
@@ -159,7 +159,7 @@
tabPane = (TabPane)wtkxSerializer.get("tabPane");
- fileBrowserSheet = new FileBrowserSheet(FileBrowserSheet.Mode.OPEN);
+ fileBrowserSheet = new FileBrowserSheet();
window.open(display);
}
Modified: pivot/trunk/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraFileBrowserSheetSkin.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraFileBrowserSheetSkin.java?rev=908495&r1=908494&r2=908495&view=diff
==============================================================================
--- pivot/trunk/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraFileBrowserSheetSkin.java (original)
+++ pivot/trunk/wtk-terra/src/org/apache/pivot/wtk/skin/terra/TerraFileBrowserSheetSkin.java Wed Feb 10 13:33:53 2010
@@ -83,8 +83,6 @@
fileBrowserSheet.setMinimumPreferredWidth(360);
fileBrowserSheet.setMinimumPreferredHeight(180);
- final FileBrowserSheet.Mode mode = fileBrowserSheet.getMode();
-
// Load the sheet content
Resources resources;
try {
@@ -117,9 +115,6 @@
}
});
- fileBrowser.getStyles().put("keyboardFolderTraversalEnabled",
- (mode != FileBrowserSheet.Mode.SAVE_TO));
-
fileBrowser.getFileBrowserListeners().add(new FileBrowserListener.Adapter() {
@Override
public void rootDirectoryChanged(FileBrowser fileBrowser,
@@ -186,6 +181,8 @@
public boolean mouseClick(Component component, Mouse.Button button, int x, int y, int count) {
boolean consumed = super.mouseClick(component, button, x, y, count);
+ FileBrowserSheet.Mode mode = fileBrowserSheet.getMode();
+
if (count == 1) {
file = fileBrowser.getFileAt(x, y);
} else if (count == 2) {
@@ -226,36 +223,8 @@
// Add this as a file browser sheet listener
fileBrowserSheet.getFileBrowserSheetListeners().add(this);
- // Initialize layout and file browser selection state
- switch (mode) {
- case OPEN: {
- saveAsBoxPane.setVisible(false);
- fileBrowser.setMultiSelect(false);
- break;
- }
-
- case OPEN_MULTIPLE: {
- saveAsBoxPane.setVisible(false);
- fileBrowser.setMultiSelect(true);
- break;
- }
-
- case SAVE_AS: {
- saveAsBoxPane.setVisible(true);
- fileBrowser.setMultiSelect(false);
- break;
- }
-
- case SAVE_TO: {
- saveAsBoxPane.setVisible(false);
- fileBrowser.setMultiSelect(false);
- break;
- }
- }
-
rootDirectoryChanged(fileBrowserSheet, null);
selectedFilesChanged(fileBrowserSheet, null);
- disabledFileFilterChanged(fileBrowserSheet, null);
}
public boolean isHideDisabledFiles() {
@@ -271,6 +240,41 @@
super.windowOpened(window);
if (window.isOpen()) {
+ // Initialize layout and file browser selection state
+ FileBrowserSheet fileBrowserSheet = (FileBrowserSheet)window;
+ FileBrowserSheet.Mode mode = fileBrowserSheet.getMode();
+
+ fileBrowser.getStyles().put("keyboardFolderTraversalEnabled",
+ (mode != FileBrowserSheet.Mode.SAVE_TO));
+
+ switch (mode) {
+ case OPEN: {
+ saveAsBoxPane.setVisible(false);
+ fileBrowser.setMultiSelect(false);
+ break;
+ }
+
+ case OPEN_MULTIPLE: {
+ saveAsBoxPane.setVisible(false);
+ fileBrowser.setMultiSelect(true);
+ break;
+ }
+
+ case SAVE_AS: {
+ saveAsBoxPane.setVisible(true);
+ fileBrowser.setMultiSelect(false);
+ break;
+ }
+
+ case SAVE_TO: {
+ saveAsBoxPane.setVisible(false);
+ fileBrowser.setMultiSelect(false);
+ break;
+ }
+ }
+
+ disabledFileFilterChanged(fileBrowserSheet, null);
+
window.requestFocus();
}
}
@@ -361,25 +365,29 @@
FileBrowserSheet fileBrowserSheet = (FileBrowserSheet)getComponent();
FileBrowserSheet.Mode mode = fileBrowserSheet.getMode();
- Sequence<File> selectedFiles = fileBrowser.getSelectedFiles();
+ if (mode != null) {
+ Sequence<File> selectedFiles = fileBrowser.getSelectedFiles();
- switch (mode) {
- case OPEN:
- case OPEN_MULTIPLE: {
- okButton.setEnabled(selectedFiles.getLength() > 0
- && selectedDirectoryCount == 0);
- break;
- }
+ switch (mode) {
+ case OPEN:
+ case OPEN_MULTIPLE: {
+ okButton.setEnabled(selectedFiles.getLength() > 0
+ && selectedDirectoryCount == 0);
+ break;
+ }
- case SAVE_AS: {
- okButton.setEnabled(saveAsTextInput.getTextLength() > 0);
- break;
- }
+ case SAVE_AS: {
+ okButton.setEnabled(saveAsTextInput.getTextLength() > 0);
+ break;
+ }
- case SAVE_TO: {
- okButton.setEnabled(selectedDirectoryCount > 0);
- break;
+ case SAVE_TO: {
+ okButton.setEnabled(selectedDirectoryCount > 0);
+ break;
+ }
}
+ } else {
+ okButton.setEnabled(false);
}
}
}
Modified: pivot/trunk/wtk/src/org/apache/pivot/wtk/Dialog.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk/src/org/apache/pivot/wtk/Dialog.java?rev=908495&r1=908494&r2=908495&view=diff
==============================================================================
--- pivot/trunk/wtk/src/org/apache/pivot/wtk/Dialog.java (original)
+++ pivot/trunk/wtk/src/org/apache/pivot/wtk/Dialog.java Wed Feb 10 13:33:53 2010
@@ -143,13 +143,16 @@
throw new IllegalArgumentException("Modal dialogs must have an owner.");
}
- super.open(display, owner);
+ this.modal = modal;
+ this.dialogCloseListener = dialogCloseListener;
+
+ result = false;
- if (isOpen()) {
- this.modal = modal;
- this.dialogCloseListener = dialogCloseListener;
+ super.open(display, owner);
- result = false;
+ if (!isOpen()) {
+ this.modal = false;
+ this.dialogCloseListener = null;
}
}
Modified: pivot/trunk/wtk/src/org/apache/pivot/wtk/FileBrowserSheet.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk/src/org/apache/pivot/wtk/FileBrowserSheet.java?rev=908495&r1=908494&r2=908495&view=diff
==============================================================================
--- pivot/trunk/wtk/src/org/apache/pivot/wtk/FileBrowserSheet.java (original)
+++ pivot/trunk/wtk/src/org/apache/pivot/wtk/FileBrowserSheet.java Wed Feb 10 13:33:53 2010
@@ -75,13 +75,7 @@
private FileBrowserSheetListenerList fileBrowserSheetListeners = new FileBrowserSheetListenerList();
- public FileBrowserSheet(Mode mode) {
- if (mode == null) {
- throw new IllegalArgumentException("mode is null.");
- }
-
- this.mode = mode;
-
+ public FileBrowserSheet() {
String userHome = System.getProperty("user.home");
rootDirectory = new File(userHome);
@@ -213,6 +207,50 @@
}
}
+ public final void open(Window owner, Mode mode) {
+ if (owner == null) {
+ throw new IllegalArgumentException("owner is null");
+ }
+
+ open(owner.getDisplay(), owner, mode, null);
+ }
+
+ public final void open(Window owner, Mode mode, SheetCloseListener sheetCloseListener) {
+ if (owner == null) {
+ throw new IllegalArgumentException("owner is null");
+ }
+
+ open(owner.getDisplay(), owner, mode, sheetCloseListener);
+ }
+
+ @Override
+ public final void open(Display display, Window owner, SheetCloseListener sheetCloseListener) {
+ open(display, owner, Mode.OPEN, sheetCloseListener);
+ }
+
+ public void open(Display display, Window owner, Mode mode, SheetCloseListener sheetCloseListener) {
+ if (mode == null) {
+ throw new IllegalArgumentException("mode is null.");
+ }
+
+ this.mode = mode;
+
+ super.open(display, owner, sheetCloseListener);
+
+ if (!isOpen()) {
+ this.mode = null;
+ }
+ }
+
+ @Override
+ public void close(boolean result) {
+ super.close(result);
+
+ if (isClosed()) {
+ mode = null;
+ }
+ }
+
public ListenerList<FileBrowserSheetListener> getFileBrowserSheetListeners() {
return fileBrowserSheetListeners;
}
Modified: pivot/trunk/wtk/src/org/apache/pivot/wtk/Sheet.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk/src/org/apache/pivot/wtk/Sheet.java?rev=908495&r1=908494&r2=908495&view=diff
==============================================================================
--- pivot/trunk/wtk/src/org/apache/pivot/wtk/Sheet.java (original)
+++ pivot/trunk/wtk/src/org/apache/pivot/wtk/Sheet.java Wed Feb 10 13:33:53 2010
@@ -96,10 +96,12 @@
throw new IllegalArgumentException("Sheets must have an owner.");
}
+ this.sheetCloseListener = sheetCloseListener;
+
super.open(display, owner);
- if (isOpen()) {
- this.sheetCloseListener = sheetCloseListener;
+ if (!isOpen()) {
+ this.sheetCloseListener = null;
}
}