fixed display of mime type in VideosListComposite

This commit is contained in:
fmittag committed 2015-06-06 16:47:42 +02:00
1 parent f36e050f85
commit d538598347
4 files changed
+33 -14

No files matched your search

@@ -4,6 +4,7 @@ import java.util.Collections;
import com.google.gwt.user.client.ui.Label;
import com.sap.sailing.gwt.ui.client.StringMessages;
import com.sap.sse.common.media.MimeType;
import com.sap.sse.gwt.client.media.VideoDTO;
public class VideoCreateDialog extends VideoDialog {
@@ -19,5 +20,6 @@ public class VideoCreateDialog extends VideoDialog {
copyrightTextBox.setVisibleLength(50);
lengthIntegerBox = createIntegerBox(null, 10);
tagsListEditor.setValue(Collections.<String>emptyList());
setSelectedMimeType(MimeType.unknown);
}
}
@@ -70,7 +70,6 @@ public abstract class VideoDialog extends DataEntryDialog<VideoDTO> {
mimeTypeListBox.addItem(MimeType.ogg.name());
mimeTypeListBox.addItem(MimeType.ogv.name());
mimeTypeListBox.addItem(MimeType.qt.name());
mimeTypeListBox.setSelectedIndex(0);
videoURLAndUploadComposite = new URLFieldWithFileUpload(stringMessages);
videoURLAndUploadComposite.addValueChangeHandler(new ValueChangeHandler<String>() {
@@ -100,6 +99,15 @@ public abstract class VideoDialog extends DataEntryDialog<VideoDTO> {
return result;
}
protected void setSelectedMimeType(MimeType mimeType) {
for(int i = 0; i < mimeTypeListBox.getVisibleItemCount(); i++) {
if(mimeTypeListBox.getItemText(0).equals(mimeType.name())) {
mimeTypeListBox.setSelectedIndex(i);
break;
}
}
}
private MimeType getSelectedMimeType() {
MimeType result = null;
int selectedIndex = mimeTypeListBox.getSelectedIndex();
@@ -22,5 +22,6 @@ public class VideoEditDialog extends VideoDialog {
List<String> tags = new ArrayList<String>();
tags.addAll(video.getTags());
tagsListEditor.setValue(tags);
setSelectedMimeType(video.getMimeType());
}
}
@@ -85,8 +85,8 @@ public class VideosListComposite extends Composite {
videoSelectionModel = new SingleSelectionModel<VideoDTO>();
videoListDataProvider = new ListDataProvider<VideoDTO>();
videoTable = createImagesTable();
videoTable.ensureDebugId("ImagesCellTable");
videoTable = createVideosTable();
videoTable.ensureDebugId("VideosCellTable");
videoTable.setVisible(false);
videoSelectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {
@@ -105,7 +105,7 @@ public class VideosListComposite extends Composite {
initWidget(mainPanel);
}
private CellTable<VideoDTO> createImagesTable() {
private CellTable<VideoDTO> createVideosTable() {
CellTable<VideoDTO> table = new CellTable<VideoDTO>(/* pageSize */10000, tableRes);
videoListDataProvider.addDataDisplay(table);
table.setWidth("100%");
@@ -132,19 +132,26 @@ public class VideosListComposite extends Composite {
TextColumn<VideoDTO> createdAtDateColumn = new TextColumn<VideoDTO>() {
@Override
public String getValue(VideoDTO image) {
return DateAndTimeFormatterUtil.formatDateAndTime(image.getCreatedAtDate());
public String getValue(VideoDTO video) {
return DateAndTimeFormatterUtil.formatDateAndTime(video.getCreatedAtDate());
}
};
TextColumn<VideoDTO> mimeTypeColumn = new TextColumn<VideoDTO>() {
@Override
public String getValue(VideoDTO video) {
return video.getMimeType() != null ? video.getMimeType().name() : "";
}
};
SafeHtmlCell tagsCell = new SafeHtmlCell();
Column<VideoDTO, SafeHtml> tagsColumn = new Column<VideoDTO, SafeHtml>(tagsCell) {
@Override
public SafeHtml getValue(VideoDTO image) {
public SafeHtml getValue(VideoDTO video) {
SafeHtmlBuilder builder = new SafeHtmlBuilder();
int tagsCount = image.getTags().size();
int tagsCount = video.getTags().size();
int i = 1;
for (String tag : image.getTags()) {
for (String tag : video.getTags()) {
builder.appendEscaped(tag);
if (i < tagsCount) {
builder.appendHtmlConstant(",&nbsp;");
@@ -163,12 +170,12 @@ public class VideosListComposite extends Composite {
new VideoConfigImagesBarCell(stringMessages));
videoActionColumn.setFieldUpdater(new FieldUpdater<VideoDTO, String>() {
@Override
public void update(int index, VideoDTO image, String value) {
public void update(int index, VideoDTO video, String value) {
if (ImageConfigImagesBarCell.ACTION_REMOVE.equals(value)) {
videoListDataProvider.getList().remove(image);
videoListDataProvider.getList().remove(video);
updateTableVisisbilty();
} else if (ImageConfigImagesBarCell.ACTION_EDIT.equals(value)) {
openEditVideoDialog(image);
openEditVideoDialog(video);
}
}
});
@@ -179,6 +186,7 @@ public class VideosListComposite extends Composite {
table.addColumn(shortVideoNameColumn, "Short name");
table.addColumn(titleColumn, stringMessages.title());
table.addColumn(createdAtDateColumn, "Created At");
table.addColumn(mimeTypeColumn, stringMessages.mimeType());
table.addColumn(tagsColumn, "Tags");
table.addColumn(videoActionColumn, stringMessages.actions());
table.addColumnSortHandler(getVideoTableColumnSortHandler(videoListDataProvider.getList(), titleColumn, createdAtDateColumn));
@@ -237,9 +245,9 @@ public class VideosListComposite extends Composite {
}
@Override
public void ok(VideoDTO updatedImage) {
public void ok(VideoDTO updatedVideo) {
videoListDataProvider.getList().remove(selectedVideo);
videoListDataProvider.getList().add(updatedImage);
videoListDataProvider.getList().add(updatedVideo);
updateTableVisisbilty();
}
});