/******************************************************************************* * Copyright (C) 2007, 2013 The kune development team (see CREDITS for details) * This file is part of kune. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. *******************************************************************************/ package cc.kune.gspace.client.share; import cc.kune.common.client.ui.dialogs.BasicTopDialog; import cc.kune.common.client.ui.dialogs.BasicTopDialog.Builder; import cc.kune.common.shared.i18n.I18n; import cc.kune.gspace.client.share.ShareDialogPresenter.ShareDialogView; import cc.kune.lists.shared.ListsToolConstants; import com.google.gwt.event.dom.client.ClickEvent; import com.google.gwt.event.dom.client.ClickHandler; import com.google.gwt.user.client.ui.Label; import com.google.gwt.user.client.ui.VerticalPanel; import com.google.gwt.user.client.ui.Widget; import com.google.inject.Inject; import com.gwtplatform.mvp.client.ViewImpl; public class ShareDialogPanel extends ViewImpl implements ShareDialogView { public static final String DIALOG_ID = "sharedialog"; public static final String FIRSTBUTTON_ID = "sharedialog-close"; private final BasicTopDialog dialog; private final Label dialogIntro; private final VerticalPanel vp; @Inject public ShareDialogPanel(final ShareToListView listView, final ShareToTheNetPanel shareToTheNetPanel, final ShareToOthersPanel shareToOthersPanel) { final Builder builder = new BasicTopDialog.Builder(DIALOG_ID, false, false, I18n.getDirection()).autoscroll( true).width(420); // builder.icon(icon); builder.firstButtonTitle(I18n.t("Close")).firstButtonId(FIRSTBUTTON_ID); dialog = builder.build(); dialog.getFirstBtn().addClickHandler(new ClickHandler() { @Override public void onClick(final ClickEvent event) { dialog.hide(); } }); vp = new VerticalPanel(); dialogIntro = new Label(); dialogIntro.addStyleName("k-dialog-intro"); vp.add(dialogIntro); vp.add(listView.getView()); vp.add(shareToOthersPanel); vp.add(shareToTheNetPanel); dialog.getInnerPanel().add(vp); } /* * (non-Javadoc) * * @see com.gwtplatform.mvp.client.View#asWidget() */ @Override public Widget asWidget() { return dialog; } @Override public void hide() { dialog.hide(); } @Override public boolean isVisible() { return dialog.isVisible(); } @Override public void setTypeId(final String typeId) { String dialogTitle; String dialogIntroText; if (typeId.equals(ListsToolConstants.TYPE_LIST)) { dialogTitle = I18n.t("List settings"); dialogIntroText = I18n.t("Here you can manage the members of this list"); } else { dialogTitle = I18n.t("Share settings"); dialogIntroText = I18n.t("Here you can define how others can interact with this document"); } dialog.setText(dialogTitle, I18n.getDirection()); dialogIntro.setText(dialogIntroText); } @Override public void show() { dialog.showCentered(); } }