\r
/**\r
* Accepts any change and updates the file\r
+ * @return \r
*\r
*/\r
- protected abstract void accept();\r
+ protected abstract boolean accept();\r
\r
@Override\r
protected void onPreviewNativeEvent(NativePreviewEvent preview) {\r
// enter or escape is pressed.\r
switch (evt.getKeyCode()) {\r
case KeyCodes.KEY_ENTER:\r
- accept();\r
- //$FALL-THROUGH$\r
+ if (accept())\r
+ closeDialog();\r
+ break;\r
case KeyCodes.KEY_ESCAPE:\r
closeDialog();\r
break;\r
*\r
*/\r
@Override\r
- protected void accept() {\r
+ protected boolean accept() {\r
updateMetaData(app.getApiPath(), app.getUsername(), file.getUri() + "?update=", permList.getPermissions());\r
+ return true;\r
}\r
\r
protected void updateMetaData(String api, String owner, final String path, final Map<String, Boolean[]> newPermissions) {\r
final Button ok = new Button("OK", new ClickHandler() {\r
@Override\r
public void onClick(ClickEvent event) {\r
- accept();\r
- closeDialog();\r
+ if (accept())\r
+ closeDialog();\r
}\r
});\r
ok.addStyleName("button");\r
*\r
*/\r
@Override\r
- protected void accept() {\r
+ protected boolean accept() {\r
String newFilename = null;\r
\r
if (!name.getText().trim().equals(file.getName())) {\r
newFilename = name.getText().trim();\r
+ if (newFilename.length() == 0)\r
+ newFilename = null;\r
}\r
+ \r
\r
final Map<String, String> newMeta = new HashMap<String, String>();\r
for (int row = 1; row < metaTable.getRowCount(); row++) {\r
String value = ((TextBox) metaTable.getWidget(row, 1)).getText().trim();\r
if (key.length() > 0 && value.length() > 0)\r
newMeta.put(key, value);\r
+ else if ((key.length() > 0 && value.length() == 0) || (key.length() == 0 && value.length() > 0)) {\r
+ app.displayError("You have empty keys or values");\r
+ return false;\r
+ }\r
}\r
\r
if (newFilename != null) {\r
}\r
else\r
updateMetaData(app.getApiPath(), app.getUsername(), file.getUri() + "?update=", newMeta);\r
+ return true;\r
}\r
\r
protected void updateMetaData(String api, String owner, String path, Map<String, String> newMeta) {\r
}\r
/**\r
* Accepts any change and updates the file\r
+ * @return \r
*\r
*/\r
@Override\r
- protected void accept() {\r
+ protected boolean accept() {\r
Boolean published = null;\r
if (readForAll.getValue() != file.isPublished())\r
if (file.getOwner().equals(app.getUsername()))\r
published = readForAll.getValue();\r
updateMetaData(app.getApiPath(), app.getUsername(), file.getUri() + "?update=", published);\r
+ return true;\r
}\r
\r
protected void updateMetaData(String api, String owner, final String path, final Boolean published) {\r
\r
/**\r
* Accepts any change and updates the file\r
+ * @return \r
*\r
*/\r
@Override\r
- protected void accept() {\r
+ protected boolean accept() {\r
app.updateFolder(file.getParent(), true, new Command() {\r
\r
@Override\r
app.updateMySharedRoot();\r
}\r
}, true);\r
+ \r
+ return true;\r
}\r
}\r
\r
/**\r
* Accepts any change and updates the file\r
+ * @return \r
*\r
*/\r
@Override\r
- protected void accept() {\r
+ protected boolean accept() {\r
+ return true;\r
}\r
}\r