Skip to content

Commit 4b53ed1

Browse files
authored
Merge pull request #93 from GwtMaterialDesign/release_2.0.1
Release 2.0.1
2 parents 70add06 + 3a64823 commit 4b53ed1

File tree

20 files changed

+423
-29
lines changed

20 files changed

+423
-29
lines changed

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,17 @@
66

77
Demo application to show the features of the [gwt-material](https://github.com/GwtMaterialDesign/gwt-material) library.
88

9-
### Release 2.0 Demo
9+
### Release 2.0.1 Demo
1010
[http://gwtmaterialdesign.github.io/gwt-material-demo](http://gwtmaterialdesign.github.io/gwt-material-demo)
1111
```xml
1212
<dependency>
1313
<groupId>com.github.gwtmaterialdesign</groupId>
1414
<artifactId>gwt-material-demo</artifactId>
15-
<version>2.0</version>
15+
<version>2.0.1</version>
1616
</dependency>
1717
```
1818

19-
### 2.0 Snapshot Demo
19+
### 2.1 Snapshot Demo
2020
[http://gwtmaterialdesign.github.io/gwt-material-demo/snapshot](http://gwtmaterialdesign.github.io/gwt-material-demo/snapshot)
2121
```xml
2222
<dependency>

pom.xml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,14 @@
44
<parent>
55
<artifactId>gwt-material-parent</artifactId>
66
<groupId>com.github.gwtmaterialdesign</groupId>
7-
<version>2.0</version>
7+
<version>2.0.1</version>
88
</parent>
99

1010
<modelVersion>4.0.0</modelVersion>
1111

1212
<artifactId>gwt-material-demo</artifactId>
1313
<packaging>war</packaging>
14-
<version>2.0</version>
14+
<version>2.0.1</version>
1515
<name>Gwt Material Demo</name>
1616
<description>Showcase for gwt-material</description>
1717

@@ -34,7 +34,7 @@
3434
<gwt.version>2.8.1</gwt.version>
3535
<gwtp.version>1.5.3</gwtp.version>
3636
<gin.version>2.1.2</gin.version>
37-
<gwt-material.version>2.0</gwt-material.version>
37+
<gwt-material.version>2.0.1</gwt-material.version>
3838

3939
<gwt.style>PRETTY</gwt.style>
4040

src/main/java/gwt/material/design/demo/client/application/addins/autocomplete/AutoCompleteView.java

Lines changed: 39 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ interface Binder extends UiBinder<Widget, AutoCompleteView> {
4949
}
5050

5151
@UiField
52-
MaterialAutoComplete acList, acListType, acListLimit, acModal, acValue;
52+
MaterialAutoComplete acList, acListType, acListLimit, acModal, acValue, acDynamic;
5353

5454
@UiField
5555
MaterialModal modal;
@@ -77,11 +77,26 @@ public void onSelection(SelectionEvent<SuggestOracle.Suggestion> event) {
7777
MaterialToast.fireToast("Value : " + user.getDisplayString());
7878
}
7979
});
80+
acDynamic.addValueChangeHandler(event -> {
81+
for(SuggestOracle.Suggestion user : event.getValue()){
82+
MaterialToast.fireToast("Value : " + user.getDisplayString());
83+
}
84+
});
8085
acListType.setSuggestions(oracle);
8186
acListLimit.setSuggestions(oracle);
8287
acModal.setSuggestions(oracle);
88+
89+
acListType.addValueChangeHandler(event -> {
90+
MaterialToast.fireToast("Value : " + acListType.getItemBox().getText());
91+
});
8392
}
8493

94+
@UiHandler("loadSuggestions")
95+
void loadSuggestions(ClickEvent e) {
96+
UserOracle oracle = new UserOracle();
97+
oracle.addContacts(getAllUsers());
98+
acDynamic.setSuggestions(oracle);
99+
}
85100

86101
@UiHandler("btnClear")
87102
void onClear(ClickEvent e) {
@@ -149,4 +164,27 @@ void onOpenModal(ClickEvent e) {
149164
void onClose(ClickEvent e) {
150165
modal.close();
151166
}
167+
168+
@UiHandler("getTextValue")
169+
void getTextValue(ClickEvent e) {
170+
if (acListType.getItemBox().getText().isEmpty()) {
171+
MaterialToast.fireToast("Value is empty");
172+
} else {
173+
MaterialToast.fireToast(acListType.getItemBox().getText() + "");
174+
}
175+
}
176+
177+
@UiHandler("setTextValue")
178+
void setTextValue(ClickEvent e) {
179+
List<String> itemValues = new ArrayList<>();
180+
itemValues.add(getAllUsers().get(0).getName());
181+
acListType.setItemValues(itemValues);
182+
}
183+
184+
@UiHandler("setTextValueEvent")
185+
void setTextValueEvent(ClickEvent e) {
186+
List<String> itemValues = new ArrayList<>();
187+
itemValues.add(getAllUsers().get(1).getName());
188+
acListType.setItemValues(itemValues, true);
189+
}
152190
}

src/main/java/gwt/material/design/demo/client/application/addins/autocomplete/AutoCompleteView.ui.xml

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -144,9 +144,48 @@
144144
<ma:autocomplete.MaterialAutoComplete ui:field="acListType" type="TEXT" limit="1" placeholder="Contacts" grid="s12"/>
145145
</m:MaterialColumn>
146146
</m:MaterialRow>
147+
<m:MaterialRow>
148+
<m:MaterialColumn grid="s12">
149+
<m:MaterialButton text="Get Value" marginRight="12" ui:field="getTextValue" />
150+
<m:MaterialButton text="Set Value" marginRight="12" ui:field="setTextValue" />
151+
<m:MaterialButton text="Set Value with Event" ui:field="setTextValueEvent" />
152+
</m:MaterialColumn>
153+
</m:MaterialRow>
147154
<demo:PrettyPre addStyleNames="lang-xml">
155+
&lt;!-- UiBinder Definition --> <br/>
148156
&emsp;&lt;ma:autocomplete.MaterialAutoComplete type="TEXT" limit="1" placeholder="States" />
149157
</demo:PrettyPre>
158+
<demo:PrettyPre addStyleNames="lang-java">
159+
&lt;!-- Setting Value --> <br/>
160+
List&lt;String> itemValues = new ArrayList&lt;>(); <br/>
161+
itemValues.add(getAllUsers().get(0).getName()); <br/>
162+
acListType.setItemValues(itemValues); <br/><br/>
163+
164+
&lt;!-- Getting Value --> <br/>
165+
List&lt;String> itemValues = new ArrayList&lt;>(); <br/>
166+
itemValues.add(getAllUsers().get(1).getName()); <br/>
167+
acListType.setItemValues(itemValues, true);
168+
</demo:PrettyPre>
169+
</m:MaterialRow>
170+
171+
<m:MaterialRow addStyleNames="code">
172+
<m:MaterialTitle title="Dynamic Loading" description="You can load your data dynamically by calling autocomplete.setSuggestions(suggestions)"/>
173+
<m:MaterialRow>
174+
<m:MaterialColumn grid="s12 m12 l6">
175+
<ma:autocomplete.MaterialAutoComplete ui:field="acDynamic" placeholder="Contacts" grid="s12"/>
176+
</m:MaterialColumn>
177+
<m:MaterialColumn grid="s12">
178+
<m:MaterialButton text="Load Suggestions" ui:field="loadSuggestions"/>
179+
</m:MaterialColumn>
180+
</m:MaterialRow>
181+
<demo:PrettyPre addStyleNames="lang-java">
182+
&emsp;@UiHandler("loadSuggestions") <br/>
183+
void loadSuggestions(ClickEvent e) { <br/>
184+
&emsp;UserOracle oracle = new UserOracle(); <br/>
185+
&emsp;oracle.addContacts(getAllUsers()); <br/>
186+
&emsp;autocomplete.setSuggestions(oracle); <br/>
187+
}
188+
</demo:PrettyPre>
150189
</m:MaterialRow>
151190

152191
<m:MaterialRow addStyleNames="code">

src/main/java/gwt/material/design/demo/client/application/addins/combobox/ComboBoxView.java

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121
*/
2222

2323

24+
import com.google.gwt.core.client.GWT;
25+
import com.google.gwt.core.client.Scheduler;
2426
import com.google.gwt.event.dom.client.ClickEvent;
2527
import com.google.gwt.event.logical.shared.ValueChangeEvent;
2628
import com.google.gwt.uibinder.client.UiBinder;
@@ -29,6 +31,7 @@
2931
import com.google.gwt.user.client.ui.Widget;
3032
import com.gwtplatform.mvp.client.ViewImpl;
3133
import gwt.material.design.addins.client.combobox.MaterialComboBox;
34+
import gwt.material.design.addins.client.combobox.js.LanguageOptions;
3235
import gwt.material.design.client.ui.MaterialModal;
3336
import gwt.material.design.client.ui.MaterialToast;
3437
import gwt.material.design.client.ui.html.OptGroup;
@@ -38,7 +41,6 @@
3841

3942
import javax.inject.Inject;
4043
import java.util.ArrayList;
41-
import java.util.Collections;
4244
import java.util.List;
4345

4446
public class ComboBoxView extends ViewImpl implements ComboBoxPresenter.MyView {
@@ -47,12 +49,12 @@ interface Binder extends UiBinder<Widget, ComboBoxView> {
4749

4850
@UiField
4951
MaterialComboBox<String> comboTimeZone, comboTimeZone1, comboTimeZone2, comboTimeZone3, comboTimeZone4,
50-
comboTimeZone6, comboTimeZone7, comboTags, comboTagsMultiple;
52+
comboTimeZone6, comboTimeZone7, comboTags, comboTagsMultiple, comboElements;
5153

5254
@UiField
5355
MaterialComboBox<State> comboTimeZone8, comboTimeZone8_1, comboTimeZone9, comboTimeZone9_1, comboTimeZone10,
5456
comboTimeZone11, comboTimeZone12, comboTimeZone12_1, comboTimeZone13, comboTimeZone14,
55-
comboTimeZone15, comboTimeZone16, comboTimeZone17, comboCloseOnSelect;
57+
comboTimeZone15, comboTimeZone16, comboTimeZone17, comboCloseOnSelect, comboLanguge;
5658

5759
@UiField
5860
MaterialComboBox<State> comboValue;
@@ -76,6 +78,7 @@ protected void populateTimeZones() {
7678
addStringItems(comboTimeZone4);
7779
addStringItems(comboTimeZone6);
7880
addStringItems(comboTimeZone7);
81+
addStringItemsWithoutGroup(comboElements);
7982
addStateItems(comboTimeZone8);
8083
addStateItems(comboTimeZone8_1);
8184
addItemsWithoutGroup(comboTimeZone9);
@@ -92,6 +95,7 @@ protected void populateTimeZones() {
9295
addItemsWithoutGroup(comboCloseOnSelect);
9396
addStringItems(comboTags);
9497
addStringItems(comboTagsMultiple);
98+
addStateItems(comboLanguge);
9599

96100
comboTimeZone8.addValueChangeHandler(valueChangeEvent -> {
97101
MaterialToast.fireToast("Event: ValueChange State : " + comboTimeZone8.getSingleValue().getName() + " Value: " + comboTimeZone8.getSingleValue().getValue());
@@ -128,6 +132,20 @@ protected void populateTimeZones() {
128132
comboTimeZone11.addRemoveItemHandler(event -> {
129133
MaterialToast.fireToast("Removed: " + event.getSelectedValues());
130134
});
135+
136+
comboElements.addOpenHandler(event -> {
137+
comboElements.scrollTop(0);
138+
});
139+
140+
LanguageOptions languageOptions = new LanguageOptions();
141+
languageOptions.setNoResults(param1 -> "Walang Resulta...");
142+
languageOptions.setErrorLoading(param1 -> "May problema...");
143+
languageOptions.setInputTooLong(param1 -> "Ang inyong inilagay ay sobrang haba...");
144+
languageOptions.setInputTooShort(param1 -> "Ang inyong inilagay ay sobrang liit...");
145+
languageOptions.setLoadingMore(param1 -> "Nagloload pa...");
146+
languageOptions.setMaximumSelected(param1 -> "Maximum na ang inyong iniligay...");
147+
languageOptions.setSearching(param1 -> "Kasalukyang hinahanap...");
148+
comboLanguge.setLanguage(languageOptions);
131149
}
132150

133151
protected void addStringItemsWithoutGroup(MaterialComboBox<String> box) {

src/main/java/gwt/material/design/demo/client/application/addins/combobox/ComboBoxView.ui.xml

Lines changed: 40 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939

4040
<m:MaterialRow>
4141
<m:MaterialColumn grid="l6 m6 s12">
42-
<combobox:MaterialComboBox ui:field="comboTimeZone1" placeholder="TimeZone" />
42+
<combobox:MaterialComboBox width="100%" ui:field="comboTimeZone1" placeholder="TimeZone" />
4343
</m:MaterialColumn>
4444
</m:MaterialRow>
4545
</m:MaterialRow>
@@ -459,5 +459,44 @@
459459
</m:MaterialModal>
460460
</m:MaterialRow>
461461

462+
<m:MaterialRow addStyleNames="code">
463+
<m:MaterialBadge text="FEATURE UPDATE" textColor="AMBER" shadow="1" layoutPosition="RELATIVE" float="RIGHT" backgroundColor="AMBER_LIGHTEN_5" />
464+
<m:MaterialTitle title="Scroll To Top" description="You can set easily the position of ComboBox dropdown results scroll position to top."/>
465+
<m:MaterialRow>
466+
<m:MaterialColumn grid="l6 m6 s12">
467+
<combobox:MaterialComboBox label="Time Zone" ui:field="comboElements" />
468+
</m:MaterialColumn>
469+
</m:MaterialRow>
470+
<m:MaterialRow>
471+
<demo:PrettyPre addStyleNames="lang-java">
472+
&emsp;comboElements.addOpenHandler(event -> { <br/>
473+
&emsp;comboElements.scrollTop(0); <br/>
474+
});
475+
</demo:PrettyPre>
476+
</m:MaterialRow>
477+
</m:MaterialRow>
478+
479+
<m:MaterialRow addStyleNames="code">
480+
<m:MaterialBadge text="FEATURE UPDATE" textColor="AMBER" shadow="1" layoutPosition="RELATIVE" float="RIGHT" backgroundColor="AMBER_LIGHTEN_5" />
481+
<m:MaterialTitle title="Provide your Custom Message Text" description="This is good for Language support so that you can easily control the text object in your combobox.."/>
482+
<m:MaterialRow>
483+
<m:MaterialColumn grid="l6 m6 s12">
484+
<combobox:MaterialComboBox label="Time Zone" limit="2" multiple="true" ui:field="comboLanguge" />
485+
</m:MaterialColumn>
486+
</m:MaterialRow>
487+
<m:MaterialRow>
488+
<demo:PrettyPre addStyleNames="lang-java">
489+
&emsp;LanguageOptions languageOptions = new LanguageOptions(); <br/>
490+
languageOptions.setNoResults(param1 -> "Walang Resulta..."); <br/>
491+
languageOptions.setErrorLoading(param1 -> "May problema..."); <br/>
492+
languageOptions.setInputTooLong(param1 -> "Ang inyong inilagay ay sobrang haba..."); <br/>
493+
languageOptions.setInputTooShort(param1 -> "Ang inyong inilagay ay sobrang liit..."); <br/>
494+
languageOptions.setLoadingMore(param1 -> "Nagloload pa..."); <br/>
495+
languageOptions.setMaximumSelected(param1 -> "Maximum na ang inyong iniligay...");<br/>
496+
languageOptions.setSearching(param1 -> "Kasalukyang hinahanap..."); <br/>
497+
comboLanguge.setLanguage(languageOptions);
498+
</demo:PrettyPre>
499+
</m:MaterialRow>
500+
</m:MaterialRow>
462501
</m:MaterialPanel>
463502
</ui:UiBinder>

src/main/java/gwt/material/design/demo/client/application/addins/fileuploader/FileUploaderView.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,6 @@ interface Binder extends UiBinder<Widget, FileUploaderView> {
4747
FileUploaderView(Binder uiBinder) {
4848
initWidget(uiBinder.createAndBindUi(this));
4949

50-
5150
uploader.addAddedFileHandler(new AddedFileEvent.AddedFileHandler<UploadFile>() {
5251
@Override
5352
public void onAddedFile(AddedFileEvent<UploadFile> event) {

src/main/java/gwt/material/design/demo/client/application/addins/fileuploader/FileUploaderView.ui.xml

Lines changed: 36 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@
5454
<m:MaterialBadge text="FEATURE UPDATE" textColor="AMBER" shadow="1" layoutPosition="RELATIVE" float="RIGHT" backgroundColor="AMBER_LIGHTEN_5" />
5555
<m:MaterialTitle title="Disable Uploader" description="You can easily disable the file uploader by calling enable='false'" />
5656
<m:MaterialSwitch ui:field="switchEnable" onLabel="Enable" offLabel="Disable" />
57-
<ma:fileuploader.MaterialFileUploader ui:field="uploaderEnable" url="/fileupload" method="POST" maxFileSize="20" shadow="1" enabled="false">
57+
<ma:fileuploader.MaterialFileUploader waves="DEFAULT" ui:field="uploaderEnable" url="/fileupload" method="POST" maxFileSize="20" shadow="1" enabled="false">
5858
<ma:fileuploader.MaterialUploadLabel title="Drag Files to Upload" description="Some description here" />
5959
</ma:fileuploader.MaterialFileUploader>
6060

@@ -173,5 +173,40 @@
173173
&lt;/servlet-mapping><br/>
174174
</demo:PrettyPre>
175175
</m:MaterialRow>
176+
177+
<m:MaterialRow addStyleNames="code">
178+
<m:MaterialTitle title="Language Support" description="Dropzone will let you handle the text messages being thrown by it's core api easily." />
179+
<demo:PrettyPre addStyleNames="lang-java">
180+
&emsp;// Defaults to "Drop files here to upload" <br/>
181+
uploader.setDictDefaultMessage("Mag-drop ng mga file dito upang mag-upload"); <br/><br/>
182+
183+
// Defaults to "Your browser does not support drag'n'drop file uploads." <br/>
184+
uploader.setDictFallbackMessage("Hindi sinusuportahan ng iyong browser ang drag'n'drop upload file."); <br/><br/>
185+
186+
// Defaults to "Your browser does not support drag'n'drop file uploads." <br/>
187+
uploader.setDictFallbackText("Mangyaring gamitin ang form ng fallback sa ibaba upang i-upload ang iyong mga file tulad ng sa mga lumang araw."); <br/><br/>
188+
189+
// Defaults to "File is too big ({{filesize}}MiB). Max filesize: {{maxFilesize}}MiB." <br/>
190+
uploader.setDictFileTooBig("Ang file ay masyadong malaki ({{filesize}} MiB). Max filesize: {{maxFilesize}} MiB."); <br/><br/>
191+
192+
// Defaults to "You can't upload files of this type." <br/>
193+
uploader.setDictInvalidFileType("Hindi ka maaaring mag-upload ng mga file ng ganitong uri."); <br/><br/>
194+
195+
// Defaults to "Server responded with {{statusCode}} code." <br/>
196+
uploader.setDictResponseError("Tumugon ang server sa code na {{statusCode}}."); <br/><br/>
197+
198+
// Defaults to "Cancel upload" <br/>
199+
uploader.setDictCancelUpload("Kanselahin ang pag-upload"); <br/><br/>
200+
201+
// Defaults to "Are you sure you want to cancel this upload?" <br/>
202+
uploader.setDictCancelUploadConfirmation("Sigurado ka bang gusto mong kanselahin ang pag-upload na ito?"); <br/><br/>
203+
204+
// Defaults to "Remove file" <br/>
205+
uploader.setDictRemoveFile("Alisin ang file"); <br/><br/>
206+
207+
// Defaults to "You can not upload any more files." <br/>
208+
uploader.setDictMaxFilesExceeded("Hindi ka maaaring mag-upload ng higit pang mga file."); <br/><br/>
209+
</demo:PrettyPre>
210+
</m:MaterialRow>
176211
</g:HTMLPanel>
177212
</ui:UiBinder>

src/main/java/gwt/material/design/demo/client/application/addins/overlay/OverlayView.java

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,10 +38,11 @@ interface Binder extends UiBinder<Widget, OverlayView> {
3838
}
3939

4040
@UiField
41-
MaterialOverlay overlay, overlayEvents;
41+
MaterialOverlay overlay, overlayEvents, overlayParent, overlayChild, overlayChild2;
4242

4343
@UiField
44-
MaterialButton btnOpenOverlay, btnOpenOverlayEvents, btnCloseOverlay, btnCloseOverlayEvents;
44+
MaterialButton btnOpenOverlay, btnOpenOverlayEvents, btnCloseOverlay, btnCloseOverlayEvents,
45+
btnCloseParent, btnOpenChild, btnOpenParent, btnCloseChild, btnOpenChild2, btnCloseChild2;
4546

4647
@Inject
4748
OverlayView(Binder uiBinder) {
@@ -60,5 +61,12 @@ interface Binder extends UiBinder<Widget, OverlayView> {
6061

6162
btnOpenOverlayEvents.addClickHandler(clickEvent -> overlayEvents.open(btnOpenOverlayEvents));
6263
btnCloseOverlayEvents.addClickHandler(e -> overlayEvents.close());
64+
65+
btnOpenParent.addClickHandler(clickEvent -> overlayParent.open(btnOpenParent));
66+
btnOpenChild.addClickHandler(clickEvent -> overlayChild.open(btnOpenChild));
67+
btnCloseParent.addClickHandler(clickEvent -> overlayParent.close());
68+
btnCloseChild.addClickHandler(clickEvent -> overlayChild.close());
69+
btnOpenChild2.addClickHandler(clickEvent -> overlayChild2.open(btnOpenChild2));
70+
btnCloseChild2.addClickHandler(clickEvent -> overlayChild2.close());
6371
}
6472
}

0 commit comments

Comments
 (0)