details: /erp/devel/pi/rev/a1ddca98e0a7
changeset: 10007:a1ddca98e0a7
user: Martin Taal <martin.taal <at> openbravo.com>
date: Fri Jan 21 06:52:41 2011 +0100
summary: Added empty grid messages
details: /erp/devel/pi/rev/1e7288cf4d22
changeset: 10008:1e7288cf4d22
user: Martin Taal <martin.taal <at> openbravo.com>
date: Fri Jan 21 06:53:28 2011 +0100
summary: Loading message done using plain html
details: /erp/devel/pi/rev/99a740f44c7a
changeset: 10009:99a740f44c7a
user: Martin Taal <martin.taal <at> openbravo.com>
date: Fri Jan 21 06:57:37 2011 +0100
summary: Removed fixed width for string column
details: /erp/devel/pi/rev/4736026349de
changeset: 10010:4736026349de
user: Martin Taal <martin.taal <at> openbravo.com>
date: Fri Jan 21 06:58:21 2011 +0100
summary: Show save button enabled in new mode
details: /erp/devel/pi/rev/6c29ca4d31cd
changeset: 10011:6c29ca4d31cd
user: Martin Taal <martin.taal <at> openbravo.com>
date: Fri Jan 21 06:59:07 2011 +0100
summary: Added more advanced empty messages
diffstat:
modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MESSAGE.xml
| 44 ++++
modules/org.openbravo.client.application/web/org.openbravo.client.application/index.html
|
94 ++++++---
modules/org.openbravo.client.application/web/org.openbravo.client.application/js/ob-grid.js
|
16 +-
modules/org.openbravo.client.application/web/org.openbravo.client.application/js/ob-standard-view.js
| 2 +-
modules/org.openbravo.client.application/web/org.openbravo.client.application/js/ob-view-grid.js
| 47
++++-
modules/org.openbravo.client.application/web/org.openbravo.userinterface.smartclient/openbravo/skins/3.00/org.openbravo.client.application/ob-main-content-styles.css
| 14 -
modules/org.openbravo.client.kernel/src/org/openbravo/client/kernel/reference/UIDefinition.java
| 3 +-
7 files changed, 158 insertions(+), 62 deletions(-)
diffs (truncated from 352 to 300 lines):
diff -r 8c3e4bbb68ba -r 6c29ca4d31cd
modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MESSAGE.xml
---
a/modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MESSAGE.xml
Thu Jan 20 23:42:03 2011 +0100
+++
b/modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MESSAGE.xml
Fri Jan 21 06:59:07 2011 +0100
@@ -838,4 +838,48 @@
<!--FF8081812DA37EE2012DA38E84E4000F-->
<AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
<!--FF8081812DA37EE2012DA38E84E4000F--></AD_MESSAGE>
+<!--FF8081812DA54F20012DA70AEBC9006B--><AD_MESSAGE>
+<!--FF8081812DA54F20012DA70AEBC9006B-->
<AD_MESSAGE_ID><![CDATA[FF8081812DA54F20012DA70AEBC9006B]]></AD_MESSAGE_ID>
+<!--FF8081812DA54F20012DA70AEBC9006B-->
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--FF8081812DA54F20012DA70AEBC9006B--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--FF8081812DA54F20012DA70AEBC9006B--> <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--FF8081812DA54F20012DA70AEBC9006B-->
<VALUE><![CDATA[OBUIAPP_GridFilterNoResults]]></VALUE>
+<!--FF8081812DA54F20012DA70AEBC9006B--> <MSGTEXT><![CDATA[The applied filter
resulted in 0 results.]]></MSGTEXT>
+<!--FF8081812DA54F20012DA70AEBC9006B--> <MSGTYPE><![CDATA[I]]></MSGTYPE>
+<!--FF8081812DA54F20012DA70AEBC9006B-->
<AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
+<!--FF8081812DA54F20012DA70AEBC9006B--></AD_MESSAGE>
+
+<!--FF8081812DA54F20012DA70BBB56006F--><AD_MESSAGE>
+<!--FF8081812DA54F20012DA70BBB56006F-->
<AD_MESSAGE_ID><![CDATA[FF8081812DA54F20012DA70BBB56006F]]></AD_MESSAGE_ID>
+<!--FF8081812DA54F20012DA70BBB56006F-->
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--FF8081812DA54F20012DA70BBB56006F--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--FF8081812DA54F20012DA70BBB56006F--> <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--FF8081812DA54F20012DA70BBB56006F-->
<VALUE><![CDATA[OBUIAPP_GridClearFilter]]></VALUE>
+<!--FF8081812DA54F20012DA70BBB56006F--> <MSGTEXT><![CDATA[Clear
Filter(s)]]></MSGTEXT>
+<!--FF8081812DA54F20012DA70BBB56006F--> <MSGTYPE><![CDATA[I]]></MSGTYPE>
+<!--FF8081812DA54F20012DA70BBB56006F-->
<AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
+<!--FF8081812DA54F20012DA70BBB56006F--></AD_MESSAGE>
+
+<!--FF8081812DA54F20012DA70C104A0072--><AD_MESSAGE>
+<!--FF8081812DA54F20012DA70C104A0072-->
<AD_MESSAGE_ID><![CDATA[FF8081812DA54F20012DA70C104A0072]]></AD_MESSAGE_ID>
+<!--FF8081812DA54F20012DA70C104A0072-->
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--FF8081812DA54F20012DA70C104A0072--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--FF8081812DA54F20012DA70C104A0072--> <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--FF8081812DA54F20012DA70C104A0072-->
<VALUE><![CDATA[OBUIAPP_GridNoRecords]]></VALUE>
+<!--FF8081812DA54F20012DA70C104A0072--> <MSGTEXT><![CDATA[No records
yet.]]></MSGTEXT>
+<!--FF8081812DA54F20012DA70C104A0072--> <MSGTYPE><![CDATA[I]]></MSGTYPE>
+<!--FF8081812DA54F20012DA70C104A0072-->
<AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
+<!--FF8081812DA54F20012DA70C104A0072--></AD_MESSAGE>
+
+<!--FF8081812DA54F20012DA70C468C0075--><AD_MESSAGE>
+<!--FF8081812DA54F20012DA70C468C0075-->
<AD_MESSAGE_ID><![CDATA[FF8081812DA54F20012DA70C468C0075]]></AD_MESSAGE_ID>
+<!--FF8081812DA54F20012DA70C468C0075-->
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--FF8081812DA54F20012DA70C468C0075--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--FF8081812DA54F20012DA70C468C0075--> <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--FF8081812DA54F20012DA70C468C0075-->
<VALUE><![CDATA[OBUIAPP_GridCreateOne]]></VALUE>
+<!--FF8081812DA54F20012DA70C468C0075--> <MSGTEXT><![CDATA[Create
One]]></MSGTEXT>
+<!--FF8081812DA54F20012DA70C468C0075--> <MSGTYPE><![CDATA[I]]></MSGTYPE>
+<!--FF8081812DA54F20012DA70C468C0075-->
<AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
+<!--FF8081812DA54F20012DA70C468C0075--></AD_MESSAGE>
+
</data>
diff -r 8c3e4bbb68ba -r 6c29ca4d31cd
modules/org.openbravo.client.application/web/org.openbravo.client.application/index.html
---
a/modules/org.openbravo.client.application/web/org.openbravo.client.application/index.html
Thu Jan 20 23:42:03 2011 +0100
+++
b/modules/org.openbravo.client.application/web/org.openbravo.client.application/index.html
Fri Jan 21 06:59:07 2011 +0100
@@ -15,6 +15,58 @@
<script type="text/javascript"
src="../org.openbravo.client.kernel/js/LAB.min.js"></script>
+<!-- styles used during loading -->
+<style type="text/css">
+ html, body {
+ height: 100%;
+ width: 100%;
+ }
+
+ .OBCenteredBox {
+ position: fixed;
+ z-index: 1000000;
+ top: 50%;
+ left: 50%;
+ margin: -25px 0 0 -150px;
+ width: 300px;
+ height: 50px;
+ }
+
+ .OBLoadingPromptLabel {
+ font-family: 'Arial';
+ font-size: 12px;
+ color: #ccd0d4;
+ }
+
+ .OBLoadingPromptModalMask {
+ left: 0;
+ top: 0;
+ width: 100%;
+ height: 100%;
+ background-color: #7f7f7f;
+ }
+</style>
+
+</head>
+<body>
+
+<!-- shows the loading div -->
+<div class="OBLoadingPromptModalMask" id="OBLoadingDiv">
+ <div class="OBCenteredBox">
+ <table>
+ <tr>
+ <td>
+ <span class="OBLoadingPromptLabel">LOADING...</span>
+ </td>
+ <td>
+ <img width="220" height="16"
src="../org.openbravo.userinterface.smartclient/openbravo/skins/3.00/org.openbravo.client.application/images/system/windowLoading.gif"/>
+ </td>
+ </tr>
+ </table>
+ </div>
+</div>
+
+<!-- load the rest -->
<script type="text/javascript">
$LAB.setGlobalDefaults({AppendTo: 'body'})
@@ -24,49 +76,19 @@
// starts the application is called as the last statement in the
StaticResources part
function OBStartApplication() {
OB.Layout.draw();
+
$LAB.script(document.location.protocol +
OB.Application.butlerUtilsUrl).wait();
+
OB.Layout.ViewManager.createAddStartTab();
- OB_LoadingWindow.destroy();
+
+ // get rid of the loading stuff
+ document.body.removeChild(document.getElementById('OBLoadingDiv'));
+
OB.GlobalHiddenForm = document.forms.OBGlobalHiddenForm;
}
</script>
<script type="text/javascript"
src="../org.openbravo.userinterface.smartclient/isomorphic/ISC_Combined.js"></script>
-</head>
-<body>
-
-<script type="text/javascript">
-// create the loading message
-var OB_LoadingWindow = isc.Window.create({
- width: 1,
- height: 1,
- overflow: 'visible',
- showEdges:false,
- showHeader: false,
- showFooter: false,
- showModalMask: true,
- canDragReposition: false,
- autoCenter: true,
- isModal: true,
- modalMaskOpacity: 100,
- modalMaskStyle: 'OBLoadingPromptModalMask',
- backgroundColor: null,
- bodyColor: 'transparent',
- membersMargin: 10,
- members: [isc.HLayout.create({
- width: 1,
- height: 1,
- overflow: 'visible',
- defaultLayoutAlign: 'center',
- members: [
- isc.Label.create({contents: 'LOADING... ', width: 1, height: 1,
overflow: 'visible', styleName: 'OBLoadingPromptLabel'}),
- isc.Img.create({width: 220, height: 16, src:
'../../org.openbravo.userinterface.smartclient/openbravo/skins/3.00/org.openbravo.client.application/images/system/windowLoading.gif'})
- ]
- })]
-});
-
-OB_LoadingWindow.show();
-</script>
<script type="text/javascript"
src="../org.openbravo.userinterface.smartclient/isomorphic/ISC_History.js"></script>
diff -r 8c3e4bbb68ba -r 6c29ca4d31cd
modules/org.openbravo.client.application/web/org.openbravo.client.application/js/ob-grid.js
---
a/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/ob-grid.js
Thu Jan 20 23:42:03 2011 +0100
+++
b/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/ob-grid.js
Fri Jan 21 06:59:07 2011 +0100
@@ -186,16 +186,26 @@
},
checkShowFilterFunnelIcon: function (criteria) {
+ if (this.isGridFiltered(criteria)) {
+ this.filterImage.show(true);
+ } else {
+ this.filterImage.hide();
+ }
+ },
+
+ isGridFiltered: function(criteria) {
+ if (!this.filterEditor) {
+ return false;
+ }
for (var prop in criteria) {
if (criteria.hasOwnProperty(prop)) {
var field = this.filterEditor.getField(prop);
if (this.isValidFilterField(field) && (criteria[prop] === false ||
criteria[prop])) {
- this.filterImage.show(true);
- return;
+ return true;
}
}
}
- this.filterImage.hide();
+ return false;
},
isValidFilterField: function(field){
diff -r 8c3e4bbb68ba -r 6c29ca4d31cd
modules/org.openbravo.client.application/web/org.openbravo.client.application/js/ob-standard-view.js
---
a/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/ob-standard-view.js
Thu Jan 20 23:42:03 2011 +0100
+++
b/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/ob-standard-view.js
Fri Jan 21 06:59:07 2011 +0100
@@ -1011,7 +1011,7 @@
if (this.isShowingForm) {
// note on purpose checking form readonly
toolBar.setLeftMemberDisabled(isc.OBToolbar.TYPE_NEW, form.isSaving ||
form.readOnly || this.singleRecord || !validData);
- toolBar.setLeftMemberDisabled(isc.OBToolbar.TYPE_SAVE, form.isSaving ||
form.readOnly || !validData || !form.hasChanged);
+ toolBar.setLeftMemberDisabled(isc.OBToolbar.TYPE_SAVE, !form.isNew &&
(form.isSaving || form.readOnly || !validData || !form.hasChanged));
toolBar.setLeftMemberDisabled(isc.OBToolbar.TYPE_UNDO, form.isSaving ||
form.readOnly || !validData || !form.hasChanged);
toolBar.setLeftMemberDisabled(isc.OBToolbar.TYPE_DELETE, form.isSaving
|| form.readOnly || this.singleRecord || !validData || form.isNew);
toolBar.setLeftMemberDisabled(isc.OBToolbar.TYPE_REFRESH, form.isSaving
|| form.isNew);
diff -r 8c3e4bbb68ba -r 6c29ca4d31cd
modules/org.openbravo.client.application/web/org.openbravo.client.application/js/ob-view-grid.js
---
a/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/ob-view-grid.js
Thu Jan 20 23:42:03 2011 +0100
+++
b/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/ob-view-grid.js
Fri Jan 21 06:59:07 2011 +0100
@@ -211,7 +211,11 @@
filterEditorType: 'StaticTextItem'
});
- this.Super('initWidget', arguments);
+ var ret = this.Super('initWidget', arguments);
+
+ this.noDataEmptyMessage = OB.I18N.getLabel('OBUIAPP_GridNoRecords') + '
<span onclick="window[\'' + this.ID + '\'].createNew();" class="OBLabelLink">'
+ OB.I18N.getLabel('OBUIAPP_GridCreateOne')+ '</span>';
+ this.filterNoRecordsEmptyMessage =
OB.I18N.getLabel('OBUIAPP_GridFilterNoResults') + ' <span onclick="window[\'' +
this.ID + '\'].clearFilter();" class="OBLabelLink">' +
OB.I18N.getLabel('OBUIAPP_GridClearFilter')+ '</span>';
+ return ret;
},
// overridden to support hover on the header for the checkbox field
@@ -241,6 +245,8 @@
this.view.setToolBarButtonState();
+ this.resetEmptyMessage();
+
return ret;
},
@@ -297,12 +303,12 @@
},
refreshContents: function(callback){
+ this.resetEmptyMessage();
// do not refresh if the parent is not selected and we have no data anyway
- if (this.view.parentProperty && this.data && this.data.getLength &&
this.data.getLength() === 0) {
+ if (this.view.parentProperty && (!this.data || !this.data.getLength ||
this.data.getLength() === 0)) {
selectedValues = this.view.parentView.viewGrid.getSelectedRecords();
if (selectedValues.length === 0) {
- this.emptyMessage = OB.I18N.getLabel('OBUIAPP_NoParentSelected');
if (callback) {
callback();
}
@@ -496,16 +502,16 @@
criteria._targetRecordId = this.targetRecordId;
}
+ // note pass in criteria otherwise infinite looping!
+ this.resetEmptyMessage(criteria);
+
if (this.view.parentProperty) {
selectedValues = this.view.parentView.viewGrid.getSelectedRecords();
if (selectedValues.length === 0) {
criteria[this.view.parentProperty] = '-1';
- this.emptyMessage = OB.I18N.getLabel('OBUIAPP_NoParentSelected');
} else if (selectedValues.length > 1) {
criteria[this.view.parentProperty] = '-1';
- this.emptyMessage =
OB.I18N.getLabel('OBUIAPP_MultipleParentsSelected');
} else {
- this.emptyMessage = OB.I18N.getLabel('OBUIAPP_NoDataInGrid');
criteria[this.view.parentProperty] =
selectedValues[0][OB.Constants.ID];
}
}
@@ -537,6 +543,15 @@
return criteria;
},
+ createNew: function() {
+ this.view.editRecord();
+ },
+
+ clearFilter: function() {
+ this.filterEditor.getEditForm().clearValues();
+ this.filterEditor.performAction();
+ },
+
// determine which field can be autoexpanded to use extra space
getAutoFitExpandField: function(){
for (var i = 0; i < this.fields.length; i++) {
@@ -568,6 +583,26 @@
this.view.autoSaveForm.setActionAfterAutoSave({target: target, method:
method, parameters: parameters});
},
+ resetEmptyMessage: function(criteria) {
+ criteria = criteria || this.getCriteria();
+ if (!this.view) {
+ this.emptyMessage = this.noDataEmptyMessage;
+ } else if (this.isGridFiltered(criteria)) {
------------------------------------------------------------------------------
Special Offer-- Download ArcSight Logger for FREE (a $49 USD value)!
Finally, a world-class log management solution at an even better price-free!
Download using promo code Free_Logger_4_Dev2Dev. Offer expires
February 28th, so secure your free ArcSight Logger TODAY!
http://p.sf.net/sfu/arcsight-sfd2d
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits