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

Commit

Permalink
Work in progress: Moved 'Options' menu to right side panel
Browse files Browse the repository at this point in the history
  • Loading branch information
Alex Eng committed Dec 15, 2011
1 parent fc087b0 commit 2f79eca
Show file tree
Hide file tree
Showing 24 changed files with 300 additions and 354 deletions.
Expand Up @@ -32,7 +32,7 @@
import org.zanata.webtrans.client.events.RunValidationEvent;
import org.zanata.webtrans.client.events.UpdateValidationErrorEvent;
import org.zanata.webtrans.client.resources.NavigationMessages;
import org.zanata.webtrans.client.ui.UserConfigConstants;
import org.zanata.webtrans.client.ui.EditorConfigConstants;
import org.zanata.webtrans.client.ui.ValidationMessagePanel;
import org.zanata.webtrans.shared.model.TransUnit;

Expand Down Expand Up @@ -176,6 +176,19 @@ public InlineTargetCellEditor(final NavigationMessages messages, CancelCallback<
final CheckKey checkKey = new CheckKeyImpl(CheckKeyImpl.Context.Edit);
// Wrap contents in a table

final int REFRESH_INTERVAL = 1000; // ms
final Timer runValidationTimer = new Timer()
{
@Override
public void run()
{
if (isEditing() && isOpened())
{
eventBus.fireEvent(new RunValidationEvent(cellValue.getId(), cellValue.getSource(), textArea.getText(), false));
}
}
};

verticalPanel = new VerticalPanel();
verticalPanel.setWidth("100%");
verticalPanel.setHeight("100%");
Expand All @@ -194,6 +207,7 @@ public InlineTargetCellEditor(final NavigationMessages messages, CancelCallback<
public void onValueChange(ValueChangeEvent<String> event)
{
autoSize();
runValidationTimer.schedule(REFRESH_INTERVAL);
}

});
Expand All @@ -214,18 +228,7 @@ public void onFocus(FocusEvent event)
}
});

final int DELAY_INTERVAL = 1000; // ms
final Timer runValidationTimer = new Timer()
{
@Override
public void run()
{
if (isEditing() && isOpened() && isFocused())
{
eventBus.fireEvent(new RunValidationEvent(cellValue.getId(), cellValue.getSource(), textArea.getText(), false));
}
}
};


textArea.addKeyUpHandler(new KeyUpHandler()
{
Expand All @@ -235,7 +238,7 @@ public void onKeyUp(KeyUpEvent event)
checkKey.init(event.getNativeEvent());
if (checkKey.isUserTyping())
{
runValidationTimer.schedule(DELAY_INTERVAL);
runValidationTimer.schedule(REFRESH_INTERVAL);
}
}
});
Expand Down Expand Up @@ -679,15 +682,15 @@ public void setShowOperationButtons(boolean showButtons)

public void updateKeyBehaviour(Map<String, Boolean> configMap)
{
if (configMap.containsKey(UserConfigConstants.BUTTON_FUZZY) && configMap.containsKey(UserConfigConstants.BUTTON_UNTRANSLATED))
if (configMap.containsKey(EditorConfigConstants.BUTTON_FUZZY) && configMap.containsKey(EditorConfigConstants.BUTTON_UNTRANSLATED))
{
untranslatedMode = configMap.get(UserConfigConstants.BUTTON_UNTRANSLATED);
fuzzyMode = configMap.get(UserConfigConstants.BUTTON_FUZZY);
untranslatedMode = configMap.get(EditorConfigConstants.BUTTON_UNTRANSLATED);
fuzzyMode = configMap.get(EditorConfigConstants.BUTTON_FUZZY);
}

if (configMap.containsKey(UserConfigConstants.BUTTON_ENTER))
if (configMap.containsKey(EditorConfigConstants.BUTTON_ENTER))
{
isEnterKeySavesEnabled = configMap.get(UserConfigConstants.BUTTON_ENTER);
isEnterKeySavesEnabled = configMap.get(EditorConfigConstants.BUTTON_ENTER);
if (isEnterKeySavesEnabled)
{
saveButton.setTitle(saveButtonwithEnterShortcuts);
Expand All @@ -698,9 +701,9 @@ public void updateKeyBehaviour(Map<String, Boolean> configMap)
}
}

if (configMap.containsKey(UserConfigConstants.BUTTON_ESC))
if (configMap.containsKey(EditorConfigConstants.BUTTON_ESC))
{
isEscKeyCloseEditor = configMap.get(UserConfigConstants.BUTTON_ESC);
isEscKeyCloseEditor = configMap.get(EditorConfigConstants.BUTTON_ESC);
}

}
Expand Down
Expand Up @@ -45,7 +45,6 @@
import com.google.gwt.gen2.table.client.DefaultTableDefinition;
import com.google.gwt.gen2.table.client.RowRenderer;
import com.google.gwt.user.client.Event;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.HasVerticalAlignment;
import com.google.gwt.user.client.ui.Image;
import com.google.gwt.user.client.ui.Label;
Expand Down
Expand Up @@ -45,7 +45,7 @@
import org.zanata.webtrans.client.presenter.TranslationEditorPresenter;
import org.zanata.webtrans.client.presenter.TranslationPresenter;
import org.zanata.webtrans.client.presenter.UndoRedoPresenter;
import org.zanata.webtrans.client.presenter.ValidationDetailsPresenter;
import org.zanata.webtrans.client.presenter.ValidationOptionsPresenter;
import org.zanata.webtrans.client.presenter.WorkspaceUsersPresenter;
import org.zanata.webtrans.client.resources.Resources;
import org.zanata.webtrans.client.resources.WebTransMessages;
Expand All @@ -62,7 +62,7 @@
import org.zanata.webtrans.client.view.TranslationEditorView;
import org.zanata.webtrans.client.view.TranslationView;
import org.zanata.webtrans.client.view.UndoRedoView;
import org.zanata.webtrans.client.view.ValidationDetailsView;
import org.zanata.webtrans.client.view.ValidationOptionsView;
import org.zanata.webtrans.client.view.WorkspaceUsersView;
import org.zanata.webtrans.shared.auth.Identity;
import org.zanata.webtrans.shared.model.WorkspaceContext;
Expand Down Expand Up @@ -97,7 +97,7 @@ protected void configure()
bindPresenter(TransUnitNavigationPresenter.class, TransUnitNavigationPresenter.Display.class, TransUnitNavigationView.class);
bindPresenter(SidePanelPresenter.class, SidePanelPresenter.Display.class, SidePanel.class);
bindPresenter(TranslationEditorPresenter.class, TranslationEditorPresenter.Display.class, TranslationEditorView.class);
bindPresenter(ValidationDetailsPresenter.class, ValidationDetailsPresenter.Display.class, ValidationDetailsView.class);
bindPresenter(ValidationOptionsPresenter.class, ValidationOptionsPresenter.Display.class, ValidationOptionsView.class);
bindPresenter(UndoRedoPresenter.class, UndoRedoPresenter.Display.class, UndoRedoView.class);

bind(HasPageNavigation.class).to(TableEditorView.class).in(Singleton.class);
Expand Down
Expand Up @@ -28,7 +28,6 @@
import org.zanata.common.TransUnitWords;
import org.zanata.common.TranslationStats;
import org.zanata.webtrans.client.Application;
import org.zanata.webtrans.client.events.ButtonDisplayChangeEvent;
import org.zanata.webtrans.client.events.DocumentSelectionEvent;
import org.zanata.webtrans.client.events.DocumentSelectionHandler;
import org.zanata.webtrans.client.events.NotificationEvent;
Expand All @@ -42,8 +41,6 @@
import org.zanata.webtrans.client.presenter.AppPresenter.Display.StatsType;
import org.zanata.webtrans.client.resources.WebTransMessages;
import org.zanata.webtrans.client.rpc.CachingDispatchAsync;
import org.zanata.webtrans.client.ui.ShortcutConfigPanel;
import org.zanata.webtrans.client.ui.UserOptionsPanel;
import org.zanata.webtrans.shared.auth.Identity;
import org.zanata.webtrans.shared.model.DocumentId;
import org.zanata.webtrans.shared.model.DocumentInfo;
Expand All @@ -61,7 +58,6 @@
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.google.gwt.user.client.ui.Anchor;
import com.google.gwt.user.client.ui.CheckBox;
import com.google.gwt.user.client.ui.Widget;
import com.google.inject.Inject;

Expand Down Expand Up @@ -97,10 +93,6 @@ enum StatsType

HasClickHandlers getDocumentsLink();

HasClickHandlers getOptionsLink();

Widget getOptionsLinkObject();

void setUserLabel(String userLabel);

void setWorkspaceNameLabel(String workspaceNameLabel, String workspaceTitle);
Expand Down Expand Up @@ -149,8 +141,6 @@ enum StatsType

private static final String WORKSPACE_TITLE_QUERY_PARAMETER_KEY = "title";

private final UserOptionsPanel userOptionsPanel = new UserOptionsPanel(true, eventBus);

@Inject
public AppPresenter(Display display, EventBus eventBus, CachingDispatchAsync dispatcher, final TranslationPresenter translationPresenter, final DocumentListPresenter documentListPresenter, final Identity identity, final WorkspaceContext workspaceContext, final WebTransMessages messages)
{
Expand Down Expand Up @@ -249,15 +239,6 @@ public void onClick(ClickEvent event)
}
}));

registerHandler(display.getOptionsLink().addClickHandler(new ClickHandler()
{
@Override
public void onClick(ClickEvent event)
{
userOptionsPanel.toggleDisplay(display.getOptionsLinkObject());
}
}));

display.setUserLabel(identity.getPerson().getName());

String workspaceTitle = Window.Location.getParameter(WORKSPACE_TITLE_QUERY_PARAMETER_KEY);
Expand Down
Expand Up @@ -27,6 +27,7 @@

import org.zanata.webtrans.client.editor.filter.TransFilterPresenter;
import org.zanata.webtrans.client.rpc.CachingDispatchAsync;
import org.zanata.webtrans.client.ui.EditorOptionsPanel;

import com.google.gwt.user.client.ui.Widget;
import com.google.inject.Inject;
Expand All @@ -35,25 +36,31 @@ public class SidePanelPresenter extends WidgetPresenter<SidePanelPresenter.Displ
{
public interface Display extends WidgetDisplay
{
void setValidationDetailView(Widget widget);
void setValidationOptionsView(Widget widget);

void setEditorOptionsPanel(Widget widget);
}

private final DispatchAsync dispatcher;
private final ValidationDetailsPresenter validationDetailsPresenter;
private final ValidationOptionsPresenter validationOptionsPresenter;
private final EditorOptionsPanel editorOptionsPanel;

@Inject
public SidePanelPresenter(final Display display, final EventBus eventBus, CachingDispatchAsync dispatcher, final ValidationDetailsPresenter validationDetailsPresenter, final TransFilterPresenter transFilterPresenter)
public SidePanelPresenter(final Display display, final EventBus eventBus, CachingDispatchAsync dispatcher, final ValidationOptionsPresenter validationDetailsPresenter, final TransFilterPresenter transFilterPresenter)
{
super(display, eventBus);
this.validationDetailsPresenter = validationDetailsPresenter;
this.editorOptionsPanel = new EditorOptionsPanel(eventBus);
this.validationOptionsPresenter = validationDetailsPresenter;
this.dispatcher = dispatcher;
}

@Override
protected void onBind()
{
validationDetailsPresenter.bind();
display.setValidationDetailView(validationDetailsPresenter.getDisplay().asWidget());
validationOptionsPresenter.bind();
display.setValidationOptionsView(validationOptionsPresenter.getDisplay().asWidget());

display.setEditorOptionsPanel(editorOptionsPanel);
}


Expand Down
Expand Up @@ -31,6 +31,7 @@
import org.zanata.webtrans.client.events.EnterWorkspaceEventHandler;
import org.zanata.webtrans.client.events.ExitWorkspaceEvent;
import org.zanata.webtrans.client.events.ExitWorkspaceEventHandler;
import org.zanata.webtrans.client.resources.WebTransMessages;
import org.zanata.webtrans.client.rpc.CachingDispatchAsync;
import org.zanata.webtrans.shared.model.TransUnit;
import org.zanata.webtrans.shared.rpc.GetTranslatorList;
Expand All @@ -44,6 +45,7 @@
import com.google.gwt.user.client.Event.NativePreviewEvent;
import com.google.gwt.user.client.Event.NativePreviewHandler;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.google.gwt.user.client.ui.ToggleButton;
import com.google.gwt.user.client.ui.Widget;
import com.google.inject.Inject;

Expand Down Expand Up @@ -71,13 +73,9 @@ public interface Display extends WidgetDisplay

void setSidePanelViewVisible(boolean visible);

HasClickHandlers getHideSidePanelViewButton();

HasClickHandlers getShowSidePanelViewButton();

void setShowSidePanelViewButtonVisible(boolean visible);

void updateWorkspaceUsersTitle(String title);

ToggleButton getToogleOptionsButton();
}

private final DispatchAsync dispatcher;
Expand All @@ -88,10 +86,13 @@ public interface Display extends WidgetDisplay
private final GlossaryPresenter glossaryPresenter;
private final WorkspaceUsersPresenter workspaceUsersPresenter;

private final WebTransMessages messages;

@Inject
public TranslationPresenter(Display display, EventBus eventBus, CachingDispatchAsync dispatcher, final WorkspaceUsersPresenter workspaceUsersPresenter, final TranslationEditorPresenter translationEditorPresenter, final SidePanelPresenter sidePanelPresenter, final TransMemoryPresenter transMemoryPresenter, final GlossaryPresenter glossaryPresenter)
public TranslationPresenter(Display display, EventBus eventBus, CachingDispatchAsync dispatcher, final WorkspaceUsersPresenter workspaceUsersPresenter, final TranslationEditorPresenter translationEditorPresenter, final SidePanelPresenter sidePanelPresenter, final TransMemoryPresenter transMemoryPresenter, final GlossaryPresenter glossaryPresenter, final WebTransMessages messages)
{
super(display, eventBus);
this.messages = messages;
this.translationEditorPresenter = translationEditorPresenter;
this.workspaceUsersPresenter = workspaceUsersPresenter;
this.transMemoryPresenter = transMemoryPresenter;
Expand Down Expand Up @@ -167,31 +168,24 @@ public void onEnterWorkspace(EnterWorkspaceEvent event)
// Thus we load the translator list here.
loadTranslatorList();

registerHandler(display.getHideSidePanelViewButton().addClickHandler(new ClickHandler()
registerHandler(display.getToogleOptionsButton().addClickHandler(new ClickHandler()
{
@Override
public void onClick(ClickEvent event)
{
display.setSidePanelViewVisible(false);
// sidePanelPresenter.unbind();
// translationEditorPresenter.unbind();
display.setShowSidePanelViewButtonVisible(true);
if (display.getToogleOptionsButton().isDown())
{
display.setSidePanelViewVisible(true);
display.getToogleOptionsButton().setTitle(messages.showEditorOptions());
}
else
{
display.setSidePanelViewVisible(false);
display.getToogleOptionsButton().setTitle(messages.hideEditorOptions());
}
}
}));

display.setShowSidePanelViewButtonVisible(false);
display.getShowSidePanelViewButton().addClickHandler(new ClickHandler()
{
@Override
public void onClick(ClickEvent event)
{
// sidePanelPresenter.bind();
// translationEditorPresenter.bind();
display.setSidePanelViewVisible(true);
display.setShowSidePanelViewButtonVisible(false);
}
});

registerHandler(display.getHideSouthPanelButton().addClickHandler(new ClickHandler()
{
@Override
Expand Down
Expand Up @@ -39,7 +39,7 @@
* @author Alex Eng <a href="mailto:aeng@redhat.com">aeng@redhat.com</a>
*
**/
public class ValidationDetailsPresenter extends WidgetPresenter<ValidationDetailsPresenter.Display>
public class ValidationOptionsPresenter extends WidgetPresenter<ValidationOptionsPresenter.Display>
{
public interface Display extends WidgetDisplay
{
Expand All @@ -49,7 +49,7 @@ public interface Display extends WidgetDisplay
}

@Inject
public ValidationDetailsPresenter(Display display, EventBus eventBus)
public ValidationOptionsPresenter(Display display, EventBus eventBus)
{
super(display, eventBus);
}
Expand Down
Expand Up @@ -39,9 +39,6 @@ public interface Resources extends ClientBundle
@Source("org/zanata/webtrans/images/crystal_project/_16x16/actions/downArrow.png")
ImageResource downArrowButton();

@Source("org/zanata/webtrans/images/crystal_project/_16x16/actions/leftArrow.png")
ImageResource leftArrowButton();

@Source("org/zanata/webtrans/images/crystal_project/_16x16/actions/rightArrow.png")
ImageResource rightArrowButton();

Expand Down
Expand Up @@ -59,8 +59,11 @@ public interface WebTransMessages extends Messages
@DefaultMessage("Show Translation Suggestions")
String showTranslationMemoryPanel();

@DefaultMessage("Show Translation Details")
String showTranslationDetailsPanel();
@DefaultMessage("Show Editor Options")
String showEditorOptions();

@DefaultMessage("Hide Editor Options")
String hideEditorOptions();

@DefaultMessage("Find")
String findButton();
Expand Down
Expand Up @@ -25,7 +25,7 @@
* @author Alex Eng <a href="mailto:aeng@redhat.com">aeng@redhat.com</a>
*
**/
public class UserConfigConstants
public class EditorConfigConstants
{
public static final String BUTTON_FUZZY = "Fuzzy";
public static final String BUTTON_UNTRANSLATED = "Untranslated";
Expand All @@ -36,8 +36,7 @@ public class UserConfigConstants
public static final String LABEL_ESC_KEY_CLOSE = "'Esc' key closes editor";
public static final String LABEL_NAV_OPTION = "Navigation key/button options:";
public static final String LABEL_EDITOR_BUTTONS = "Editor Buttons";
public static final String LABEL_USER_OPTIONS = "User Options";
public static final String LABEL_LIVE_VALIDATION = "Live Validation";
public static final String LABEL_EDITOR_OPTIONS = "Editor Options";

public static final String OPTION_FUZZY_UNTRANSLATED = "Next Fuzzy/Untranslated";
public static final String OPTION_FUZZY = "Next Fuzzy";
Expand Down

0 comments on commit 2f79eca

Please sign in to comment.