Skip to content
This repository has been archived by the owner on Nov 9, 2017. It is now read-only.

Commit

Permalink
Moved 'download all files' up, restore translate, untranslated column…
Browse files Browse the repository at this point in the history
… in document list view
  • Loading branch information
Alex Eng committed Feb 18, 2013
1 parent 7c6e1e8 commit c4e6962
Show file tree
Hide file tree
Showing 5 changed files with 81 additions and 63 deletions.
Expand Up @@ -77,14 +77,14 @@ public interface WebTransMessages extends Messages
@DefaultMessage("Document")
String columnHeaderDocument();

@DefaultMessage("Statistic ({0})")
String columnHeaderStatistic(String option);
@DefaultMessage("Statistic")
String columnHeaderStatistic();

@DefaultMessage("Translated ({0})")
String columnHeaderTranslated(String option);
@DefaultMessage("Translated")
String columnHeaderTranslated();

@DefaultMessage("Untranslated ({0})")
String columnHeaderUntranslated(String option);
@DefaultMessage("Untranslated")
String columnHeaderUntranslated();

@DefaultMessage("Remaining hours")
String columnHeaderRemaining();
Expand Down
Expand Up @@ -30,6 +30,8 @@
import org.zanata.webtrans.client.ui.table.column.StaticWidgetColumn;
import org.zanata.webtrans.client.ui.table.column.StatisticColumn;
import org.zanata.webtrans.client.ui.table.column.TooltipColumn;
import org.zanata.webtrans.client.ui.table.column.TranslatedColumn;
import org.zanata.webtrans.client.ui.table.column.UntranslatedColumn;
import org.zanata.webtrans.client.util.DateUtil;
import org.zanata.webtrans.client.view.DocumentListDisplay;
import org.zanata.webtrans.shared.model.UserWorkspaceContext;
Expand Down Expand Up @@ -70,50 +72,25 @@ public String getValue()
}
}

private final class StatisticHeader extends Header<String> implements HasStatsFilter
{
private final WebTransMessages messages;
private String statsOption = STATS_OPTION_WORDS;

public StatisticHeader(WebTransMessages messages)
{
super(new TextCell());
this.messages = messages;
}

@Override
public String getValue()
{
return messages.columnHeaderStatistic(statsOption);
}

@Override
public void setStatsFilter(String option)
{
statsOption = option;
}
}

private final TooltipColumn<DocumentNode, String> pathColumn;
private final TooltipColumn<DocumentNode, String> documentColumn;
private final StatisticColumn statisticColumn;
private final TranslatedColumn translatedColumn;
private final UntranslatedColumn untranslatedColumn;
private final RemainingHoursColumn remainingColumn;

private final TextColumn<DocumentNode> lastModifiedColumn;
private final TextColumn<DocumentNode> lastTranslatedColumn;
private final StaticWidgetColumn<DocumentNode, HorizontalPanel> downloadColumn;
private final Column<DocumentNode, String> uploadColumn;

private final StatisticHeader statisticColumnHeader;

public DocumentListTable(final org.zanata.webtrans.client.resources.Resources images, final WebTransMessages messages, final ListDataProvider<DocumentNode> dataProvider, final DocumentListDisplay.Listener listener, final NoSelectionModel<DocumentNode> selectionModel, final UserWorkspaceContext userWorkspaceContext)
{
super(15, (CellTableResources) GWT.create(CellTableResources.class));
setKeyboardSelectionPolicy(KeyboardSelectionPolicy.DISABLED);
setStylePrimaryName("DocumentListTable");
setSelectionModel(selectionModel);


pathColumn = new TooltipColumn<DocumentNode, String>(new TextCell())
{
@Override
Expand Down Expand Up @@ -154,6 +131,8 @@ public void update(int index, DocumentNode object, String value)
});

statisticColumn = new StatisticColumn(messages);
translatedColumn = new TranslatedColumn();
untranslatedColumn = new UntranslatedColumn();
remainingColumn = new RemainingHoursColumn(messages);

lastModifiedColumn = new TextColumn<DocumentNode>()
Expand Down Expand Up @@ -199,7 +178,7 @@ public String getValue(DocumentNode object)
{
return "Upload";
}

};
uploadColumn.setFieldUpdater(new FieldUpdater<DocumentNode, String>()
{
Expand All @@ -213,6 +192,8 @@ public void update(int index, DocumentNode object, String value)
pathColumn.setSortable(true);
documentColumn.setSortable(true);
statisticColumn.setSortable(true);
untranslatedColumn.setSortable(true);
translatedColumn.setSortable(true);
remainingColumn.setSortable(true);
lastModifiedColumn.setSortable(true);
lastTranslatedColumn.setSortable(true);
Expand All @@ -224,16 +205,21 @@ public void update(int index, DocumentNode object, String value)
documentColumn.setCellStyleNames("documentCol");
addColumn(documentColumn, documentColumnHeader);

statisticColumnHeader = new StatisticHeader(messages);
statisticColumn.setCellStyleNames("statisticCol");
addColumn(statisticColumn, statisticColumnHeader);
addColumn(statisticColumn, messages.columnHeaderStatistic());

translatedColumn.setCellStyleNames("translatedCol");
addColumn(translatedColumn, messages.columnHeaderTranslated());

untranslatedColumn.setCellStyleNames("untranslatedCol");
addColumn(untranslatedColumn, messages.columnHeaderUntranslated());

remainingColumn.setCellStyleNames("remainingCol");
addColumn(remainingColumn, messages.columnHeaderRemaining());

lastModifiedColumn.setCellStyleNames("auditCol");
addColumn(lastModifiedColumn, messages.columnHeaderLastUpload());

lastTranslatedColumn.setCellStyleNames("auditCol");
addColumn(lastTranslatedColumn, messages.columnHeaderLastTranslated());

Expand Down Expand Up @@ -268,8 +254,9 @@ private String getAuditInfo(String by, Date date)

public void setStatsFilter(String option)
{
statisticColumnHeader.setStatsFilter(option);
statisticColumn.setStatsFilter(option);
translatedColumn.setStatsFilter(option);
untranslatedColumn.setStatsFilter(option);
remainingColumn.setStatsFilter(option);
}

Expand Down Expand Up @@ -307,6 +294,20 @@ public int compare(DocumentNode o1, DocumentNode o2)
return o1.getDocInfo().getStats().getApprovedPercent(statsByWords) - o2.getDocInfo().getStats().getApprovedPercent(statsByWords);
}
});
columnSortHandler.setComparator(translatedColumn, new Comparator<DocumentNode>()
{
public int compare(DocumentNode o1, DocumentNode o2)
{
return o1.getDocInfo().getStats().getWordCount().getApproved() - o2.getDocInfo().getStats().getWordCount().getApproved();
}
});
columnSortHandler.setComparator(untranslatedColumn, new Comparator<DocumentNode>()
{
public int compare(DocumentNode o1, DocumentNode o2)
{
return o1.getDocInfo().getStats().getWordCount().getUntranslated() - o2.getDocInfo().getStats().getWordCount().getUntranslated();
}
});
columnSortHandler.setComparator(remainingColumn, new Comparator<DocumentNode>()
{
public int compare(DocumentNode o1, DocumentNode o2)
Expand Down Expand Up @@ -338,26 +339,26 @@ public int compare(DocumentNode o1, DocumentNode o2)
return o1.getDocInfo().getLastChanged().after(o2.getDocInfo().getLastChanged()) ? 1 : -1;
}
});

columnSortHandler.setComparator(lastTranslatedColumn, new Comparator<DocumentNode>()
{
public int compare(DocumentNode o1, DocumentNode o2)
{
if (o1.getDocInfo().getLastChanged() == o2.getDocInfo().getLastChanged())
{
public int compare(DocumentNode o1, DocumentNode o2)
{
if (o1.getDocInfo().getLastChanged() == o2.getDocInfo().getLastChanged())
{
return 0;
}
if (o1.getDocInfo().getLastChanged() == null)
{
return -1;
}
if (o2.getDocInfo().getLastChanged() == null)
{
return 1;
}
return o1.getDocInfo().getLastChanged().after(o2.getDocInfo().getLastChanged()) ? 1 : -1;
}
});
return 0;
}
if (o1.getDocInfo().getLastChanged() == null)
{
return -1;
}
if (o2.getDocInfo().getLastChanged() == null)
{
return 1;
}
return o1.getDocInfo().getLastChanged().after(o2.getDocInfo().getLastChanged()) ? 1 : -1;
}
});
addColumnSortHandler(columnSortHandler);
getColumnSortList().push(pathColumn);
}
Expand Down
Expand Up @@ -42,6 +42,12 @@
padding:10px;
}

.downloadAllFilesButton
{
width:132px;
display:inline-block;
margin-left:6px;
}

</ui:style>
<g:LayoutPanel>
Expand All @@ -63,14 +69,12 @@
<g:InlineLabel styleName="{style.optionStyle}"><ui:msg>Statistic: </ui:msg></g:InlineLabel>
<g:RadioButton ui:field="statsByWord" styleName="{style.optionStyle} {style.statsOption}" name="statsOption"/>
<g:RadioButton ui:field="statsByMsg" styleName="{style.optionStyle} {style.statsOption}" name="statsOption"/>
<g:PushButton ui:field="downloadAllFiles" addStyleNames="{style.downloadAllFilesButton}"/>
</g:HTMLPanel>
</g:cell>
</g:HorizontalPanel>
</g:layer>
<g:layer top="35px" height="22px" right="23px" width="142px">
<g:PushButton ui:field="downloadAllFiles"/>
</g:layer>
<g:layer top='52px' bottom="0px">
<g:layer top='28px' bottom="0px">
<g:ScrollPanel styleName="{style.listContainer}">
<g:HTMLPanel width="100%">
<g:FlowPanel ui:field="documentListContainer"/>
Expand Down
Expand Up @@ -40,7 +40,7 @@
<g:Label ui:field="advancedUserConfig" styleName="gwt-sideMenu-header"/>
<g:cell>
<g:HTMLPanel>
<g:InlineLabel><ui:msg>Theme</ui:msg></g:InlineLabel>
<g:InlineLabel><ui:msg>Layout</ui:msg></g:InlineLabel>
<g:ListBox ui:field="themesList" styleName="{style.listBox}"/>
</g:HTMLPanel>
</g:cell>
Expand Down
Expand Up @@ -376,8 +376,7 @@ td.ApprovedStateDecoration div div div
}

.DocumentListTable td.pathCol {
width: 25%;
max-width:100px;
max-width:150px;
}

.DocumentListTable td.pathCol div{
Expand All @@ -402,6 +401,20 @@ td.ApprovedStateDecoration div div div
text-align:center;
}

.DocumentListTable td.translatedCol {
font-weight:bold;
font-size:14px;
color:#006200;
text-align:center;
}

.DocumentListTable td.untranslatedCol {
font-weight:bold;
font-size:14px;
color:#818181;
text-align:center;
}

.DocumentListTable td.remainingCol {
font-weight:bold;
font-size:14px;
Expand Down

0 comments on commit c4e6962

Please sign in to comment.