Skip to content

Commit e8187d2

Browse files
authored
Merge pull request #52 from GwtMaterialDesign/release_2.0
Release 2.0-rc4
2 parents c18e4e8 + ed7155b commit e8187d2

34 files changed

+837
-74
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@
22
#gwt-material-demo [![Build Status](https://travis-ci.org/GwtMaterialDesign/gwt-material-demo.svg?branch=master)](https://travis-ci.org/GwtMaterialDesign/gwt-material-demo)
33
Demo application to show the features of the [gwt-material](https://github.com/GwtMaterialDesign/gwt-material) library.
44

5-
### Release 2.0-rc3 Demo
5+
### Release 2.0-rc4 Demo
66
[http://gwtmaterialdesign.github.io/gwt-material-demo](http://gwtmaterialdesign.github.io/gwt-material-demo)
77
```xml
88
<dependency>
99
<groupId>com.github.gwtmaterialdesign</groupId>
1010
<artifactId>gwt-material-demo</artifactId>
11-
<version>2.0-rc3</version>
11+
<version>2.0-rc4</version>
1212
</dependency>
1313
```
1414

pom.xml

Lines changed: 4 additions & 4 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-rc3</version>
7+
<version>2.0-rc4</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-rc3</version>
14+
<version>2.0-rc4</version>
1515
<name>Gwt Material Demo</name>
1616
<description>Showcase for gwt-material</description>
1717

@@ -34,8 +34,8 @@
3434
<gwt.version>2.8.0</gwt.version>
3535
<gwtp.version>1.5.3</gwtp.version>
3636
<gin.version>2.1.2</gin.version>
37-
<gwt-material.version>2.0-rc3</gwt-material.version>
38-
<gwt-material-table.version>1.0-rc3</gwt-material-table.version>
37+
<gwt-material.version>2.0-rc4</gwt-material.version>
38+
<gwt-material-table.version>1.0-rc4</gwt-material-table.version>
3939

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

src/main/java/gwt/material/design/demo/client/application/ApplicationView.ui.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@
8787
</m:MaterialRow>
8888

8989
<m:MaterialFooterCopyright ui:field="footerCopyRight" addStyleNames="footer-copyright">
90-
<m:MaterialLabel text="© 2016 Copyright GWT Material" />
90+
<m:MaterialLabel text="© 2017 Copyright GWT Material" />
9191
</m:MaterialFooterCopyright>
9292
</m:MaterialFooter>
9393
</g:HTMLPanel>

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

Lines changed: 26 additions & 7 deletions
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;
52+
MaterialAutoComplete acList, acListType, acListLimit, acModal, acValue;
5353

5454
@UiField
5555
MaterialModal modal;
@@ -60,18 +60,21 @@ interface Binder extends UiBinder<Widget, AutoCompleteView> {
6060
UserOracle oracle = new UserOracle();
6161
oracle.addContacts(getAllUsers());
6262
acList.setSuggestions(oracle);
63+
acValue.setSuggestions(oracle);
6364
acList.addSelectionHandler(new SelectionHandler<SuggestOracle.Suggestion>() {
6465
@Override
6566
public void onSelection(SelectionEvent<SuggestOracle.Suggestion> event) {
6667
MaterialToast.fireToast(event.getSelectedItem().getDisplayString() + " Selected");
6768
}
6869
});
69-
acList.addValueChangeHandler(new ValueChangeHandler<List<? extends SuggestOracle.Suggestion>>() {
70-
@Override
71-
public void onValueChange(ValueChangeEvent<List<? extends SuggestOracle.Suggestion>> event) {
72-
for(SuggestOracle.Suggestion user : event.getValue()){
73-
MaterialToast.fireToast("Value : " + user.getDisplayString());
74-
}
70+
acList.addValueChangeHandler(event -> {
71+
for(SuggestOracle.Suggestion user : event.getValue()){
72+
MaterialToast.fireToast("Value : " + user.getDisplayString());
73+
}
74+
});
75+
acValue.addValueChangeHandler(event -> {
76+
for(SuggestOracle.Suggestion user : event.getValue()){
77+
MaterialToast.fireToast("Value : " + user.getDisplayString());
7578
}
7679
});
7780
acListType.setSuggestions(oracle);
@@ -92,6 +95,22 @@ void onGetAll(ClickEvent e) {
9295
}
9396
}
9497

98+
@UiHandler("btnAcValue")
99+
void onAcValue(ClickEvent e) {
100+
List<String> itemValues = new ArrayList<>();
101+
itemValues.add(getAllUsers().get(0).getName());
102+
itemValues.add(getAllUsers().get(1).getName());
103+
acValue.setItemValues(itemValues);
104+
}
105+
106+
@UiHandler("btnAcValueEvent")
107+
void onAcValueEvent(ClickEvent e) {
108+
List<String> itemValues = new ArrayList<>();
109+
itemValues.add(getAllUsers().get(2).getName());
110+
itemValues.add(getAllUsers().get(3).getName());
111+
acValue.setItemValues(itemValues, true);
112+
}
113+
95114
public List<User> getSelectedUsers() {
96115
List<? extends SuggestOracle.Suggestion> values = acList.getValue();
97116
List<User> users = new ArrayList<>(values.size());

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

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,28 @@
107107
});
108108
</demo:PrettyPre>
109109
</m:MaterialRow>
110+
111+
<m:MaterialRow addStyleNames="code">
112+
<m:MaterialBadge text="FEATURE UPDATE" textColor="AMBER" shadow="1" layoutPosition="RELATIVE" float="RIGHT" backgroundColor="AMBER_LIGHTEN_5" />
113+
<m:MaterialTitle title="Autocomplete : setValue(value, fireEvents)"/>
114+
115+
<ma:autocomplete.MaterialAutoComplete ui:field="acValue" placeholder="Contacts" grid="s12"/>
116+
117+
<m:MaterialButton text="Set Value" ui:field="btnAcValue" marginRight="20" />
118+
<m:MaterialButton text="Set Value with Event" ui:field="btnAcValueEvent" />
119+
<demo:PrettyPre addStyleNames="lang-java">
120+
&emsp;// Will not fire value change event.<br/>
121+
List&lt;String> itemValues = new ArrayList&lt;>();<br/>
122+
itemValues.add(getAllUsers().get(0).getName());<br/>
123+
itemValues.add(getAllUsers().get(1).getName());<br/>
124+
acValue.setItemValues(itemValues);<br/><br/>
125+
// Will fire value change event.<br/>
126+
List&lt;String> itemValues = new ArrayList&lt;>();<br/>
127+
itemValues.add(getAllUsers().get(2).getName());<br/>
128+
itemValues.add(getAllUsers().get(3).getName());<br/>
129+
acValue.setItemValues(itemValues, true);<br/>
130+
</demo:PrettyPre>
131+
</m:MaterialRow>
110132

111133
<m:MaterialRow addStyleNames="code">
112134
<m:MaterialTitle title="Clearing Items on Autocomplete" description="You can easily clear the Autocomplete List Items by calling autocomlete.clear()"/>

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

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,9 @@ interface Binder extends UiBinder<Widget, ComboBoxView> {
5353
comboTimeZone11, comboTimeZone12, comboTimeZone12_1, comboTimeZone13, comboTimeZone14,
5454
comboTimeZone15, comboTimeZone16, comboTimeZone17, comboCloseOnSelect;
5555

56+
@UiField
57+
MaterialComboBox<State> comboValue;
58+
5659
@UiField
5760
MaterialModal modal;
5861

@@ -84,6 +87,7 @@ protected void populateTimeZones() {
8487
addStateItems(comboTimeZone14);
8588
addStateItems(comboTimeZone15);
8689
addStateItems(comboTimeZone17);
90+
addStateItems(comboValue);
8791
addItemsWithoutGroup(comboCloseOnSelect);
8892

8993
comboTimeZone8.addValueChangeHandler(valueChangeEvent -> {
@@ -191,6 +195,21 @@ void onSetValues(ClickEvent e) {
191195
comboTimeZone14.setEnabled(false);
192196
}
193197

198+
@UiHandler("comboValue")
199+
void onComboValue(ValueChangeEvent<State> e) {
200+
MaterialToast.fireToast("Value : " + e.getValue().getName());
201+
}
202+
203+
@UiHandler("btnComboValue")
204+
void onClickComboValue(ClickEvent e) {
205+
comboValue.setValue(comboValue.getValues().get(2), false);
206+
}
207+
208+
@UiHandler("btnComboValueEvent")
209+
void onComboValueEvent(ClickEvent e) {
210+
comboValue.setValue(comboValue.getValues().get(0), true);
211+
}
212+
194213
@UiHandler("btnGetValue2")
195214
void onGetValue2(ClickEvent e) {
196215
MaterialToast.fireToast(comboTimeZone13.getSelectedValue().getName());

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

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,29 @@
5555
</m:MaterialColumn>
5656
</m:MaterialRow>
5757

58+
<m:MaterialRow addStyleNames="code">
59+
<m:MaterialBadge text="FEATURE UPDATE" textColor="AMBER" shadow="1" layoutPosition="RELATIVE" float="RIGHT" backgroundColor="AMBER_LIGHTEN_5" />
60+
<m:MaterialTitle title="Placeholder : Singe Selection" description="Note that because browsers assume the first option element is selected in non-multi-value select boxes an empty first option element must be provided for the placeholder to work." />
61+
<m:MaterialColumn grid="l6 m6 s12">
62+
<combobox:MaterialComboBox placeholder="This is a placeholder" allowClear="true">
63+
<m:html.Option text="" />
64+
<m:html.Option text="Item 1" />
65+
<m:html.Option text="Item 2" />
66+
<m:html.Option text="Item 3" />
67+
</combobox:MaterialComboBox>
68+
</m:MaterialColumn>
69+
<m:MaterialColumn grid="l12 m12 s12">
70+
<demo:PrettyPre addStyleNames="lang-xml">
71+
&emsp;&lt;combobox:MaterialComboBox placeholder="This is a placeholder" allowClear="true"><br/>
72+
&emsp;&lt;m:html.Option text="" /><br/>
73+
&emsp;&lt;m:html.Option text="Item 1" /><br/>
74+
&emsp;&lt;m:html.Option text="Item 2" /><br/>
75+
&emsp;&lt;m:html.Option text="Item 3" /><br/>
76+
&lt;/combobox:MaterialComboBox><br/>
77+
</demo:PrettyPre>
78+
</m:MaterialColumn>
79+
</m:MaterialRow>
80+
5881
<m:MaterialRow addStyleNames="code">
5982
<m:MaterialColumn grid="l12 m12 s12">
6083
<m:MaterialTitle title="Java : Adding Options" description="Populating your data can be done using java. By calling combobox.addItem(String, T)" />
@@ -325,6 +348,23 @@
325348
</m:MaterialColumn>
326349
</m:MaterialRow>
327350

351+
<m:MaterialRow addStyleNames="code">
352+
<m:MaterialBadge text="FEATURE UPDATE" textColor="AMBER" shadow="1" layoutPosition="RELATIVE" float="RIGHT" backgroundColor="AMBER_LIGHTEN_5" />
353+
<m:MaterialTitle title="ComboBox : setValue(value, fireEvents)"/>
354+
355+
<combobox:MaterialComboBox placeholder="Time Zone" ui:field="comboValue" />
356+
357+
<m:MaterialButton text="Set Value" ui:field="btnComboValue" marginRight="20" />
358+
<m:MaterialButton text="Set Value with Event" ui:field="btnComboValueEvent" />
359+
<demo:PrettyPre addStyleNames="lang-java">
360+
// Will not fire an event<br/>
361+
comboValue.setValue(comboValue.getValues().get(2));<br/>
362+
comboValue.setValue(comboValue.getValues().get(2), false);<br/><br/>
363+
// Will fire an event<br/>
364+
comboValue.setValue(comboValue.getValues().get(0), true);<br/>
365+
</demo:PrettyPre>
366+
</m:MaterialRow>
367+
328368
<m:MaterialRow addStyleNames="code">
329369
<m:MaterialTitle title="Programmatic Access" description="MaterialCombobox supports methods that allow programmatic control of the component."/>
330370
<m:MaterialColumn grid="l6 m6 s12">

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

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,11 @@
2121
*/
2222

2323

24+
import com.google.gwt.event.dom.client.ClickEvent;
25+
import com.google.gwt.event.logical.shared.ValueChangeEvent;
2426
import com.google.gwt.uibinder.client.UiBinder;
2527
import com.google.gwt.uibinder.client.UiField;
28+
import com.google.gwt.uibinder.client.UiHandler;
2629
import com.google.gwt.user.client.ui.Widget;
2730
import com.gwtplatform.mvp.client.ViewImpl;
2831
import gwt.material.design.addins.client.fileuploader.MaterialFileUploader;
@@ -38,7 +41,7 @@ interface Binder extends UiBinder<Widget, FileUploaderView> {
3841
}
3942

4043
@UiField
41-
MaterialFileUploader uploader;
44+
MaterialFileUploader uploader, uploaderEnable;
4245

4346
@Inject
4447
FileUploaderView(Binder uiBinder) {
@@ -109,4 +112,9 @@ public void onMaxFilesReached(MaxFilesReachedEvent<UploadFile> event) {
109112
}
110113
});
111114
}
115+
116+
@UiHandler("switchEnable")
117+
void onSwitchEnable(ValueChangeEvent<Boolean> e) {
118+
uploaderEnable.setEnabled(e.getValue());
119+
}
112120
}

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

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,24 @@
4848
&lt;/ma:fileuploader.MaterialFileUploader><br/>
4949
</demo:PrettyPre>
5050
</m:MaterialRow>
51+
52+
<m:MaterialRow addStyleNames="code">
53+
<m:MaterialBadge text="FEATURE UPDATE" textColor="AMBER" shadow="1" layoutPosition="RELATIVE" float="RIGHT" backgroundColor="AMBER_LIGHTEN_5" />
54+
<m:MaterialTitle title="Disable Uploader" description="You can easily disable the file uploader by calling enable='false'" />
55+
<m:MaterialSwitch ui:field="switchEnable" onLabel="Enable" offLabel="Disable" />
56+
<ma:fileuploader.MaterialFileUploader ui:field="uploaderEnable" url="/fileupload" method="POST" maxFileSize="20" shadow="1" enabled="false">
57+
<ma:fileuploader.MaterialUploadLabel title="Drag Files to Upload" description="Some description here" />
58+
</ma:fileuploader.MaterialFileUploader>
59+
60+
<demo:PrettyPre addStyleNames="lang-xml">
61+
&emsp;&lt;ma:fileuploader.MaterialFileUploader ui:field="uploader" enabled="false" url="/uploadServlet" maxFileSize="20" shadow="1"><br/>
62+
&emsp;&lt;ma:fileuploader.MaterialUploadLabel title="Drag Files to Upload" description="Some description here" /><br/>
63+
&lt;/ma:fileuploader.MaterialFileUploader><br/><br/>
64+
65+
// For java<br/>
66+
uploader.setEnabled(false);
67+
</demo:PrettyPre>
68+
</m:MaterialRow>
5169

5270
<g:HTMLPanel addStyleNames="code">
5371
<m:MaterialTitle title="Properties" />

src/main/java/gwt/material/design/demo/client/application/addins/pathanimator/PathAnimatorView.java

Lines changed: 31 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,13 +38,13 @@ interface Binder extends UiBinder<Widget, PathAnimatorView> {
3838
}
3939

4040
@UiField
41-
MaterialButton btnSource1, btnSource3;
41+
MaterialButton btnOptionSource, btnSource1, btnSource3;
4242

4343
@UiField
44-
MaterialCard card, panelTarget3;
44+
MaterialCard card, panelTarget3, panelWithOptions;
4545

4646
@UiField
47-
MaterialLink btnSource2;
47+
MaterialLink btnSource2, btnCloseWithOptions;
4848

4949
@UiField
5050
MaterialIcon btnSource4;
@@ -56,9 +56,37 @@ interface Binder extends UiBinder<Widget, PathAnimatorView> {
5656
@UiField
5757
MaterialColumn col1, col2, col3, col4, col5, col6, col7;
5858

59+
@UiField
60+
MaterialDoubleBox txtDuration, txtTargetShowDuration, txtExtraTransitionDuration;
61+
62+
private MaterialPathAnimator animator = new MaterialPathAnimator();
63+
5964
@Inject
6065
PathAnimatorView(Binder uiBinder) {
6166
initWidget(uiBinder.createAndBindUi(this));
67+
txtDuration.setValue(0.3);
68+
txtDuration.setHelperText("Duration (in seconds) of animation. Default is 0.3 seconds.");
69+
70+
txtTargetShowDuration.setValue(0.0);
71+
txtTargetShowDuration.setHelperText("Duration (in seconds) of targetElement to become visible, if hidden initially. The library will automatically try to figure this out from the element's computed styles. Default is 0 seconds.");
72+
73+
txtExtraTransitionDuration.setValue(1.0);
74+
txtExtraTransitionDuration.setHelperText("Extra duration (in seconds) of targetElement to provide visual continuity between the animation and the rendering of the targetElement. Default is 1 second");
75+
}
76+
77+
@UiHandler("btnCloseWithOptions")
78+
void onCloseWithOptions(ClickEvent e) {
79+
animator.reverseAnimate();
80+
}
81+
82+
@UiHandler("btnOptionSource")
83+
void onOptionSource(ClickEvent e) {
84+
animator.setSourceElement(btnOptionSource.getElement());
85+
animator.setTargetElement(panelWithOptions.getElement());
86+
animator.setDuration(txtDuration.getValue());
87+
animator.setTargetShowDuration(txtTargetShowDuration.getValue());
88+
animator.setExtraTransitionDuration(txtExtraTransitionDuration.getValue());
89+
animator.animate();
6290
}
6391

6492
@UiHandler("btnSource1")

0 commit comments

Comments
 (0)