Package org.geomajas.plugin.printing.client.action.toolbar

Source Code of org.geomajas.plugin.printing.client.action.toolbar.PrintingAction

/*
* This is part of Geomajas, a GIS framework, http://www.geomajas.org/.
*
* Copyright 2008-2013 Geosparc nv, http://www.geosparc.com/, Belgium.
*
* The program is available in open source according to the GNU Affero
* General Public License. All contributions in this program are covered
* by the Geomajas Contributors License Agreement. For full licensing
* details, see LICENSE.txt in the project root.
*/
package org.geomajas.plugin.printing.client.action.toolbar;

import org.geomajas.gwt.client.action.ConfigurableAction;
import org.geomajas.gwt.client.action.ToolbarAction;
import org.geomajas.gwt.client.util.WidgetLayout;
import org.geomajas.gwt.client.widget.KeepInScreenWindow;
import org.geomajas.gwt.client.widget.MapWidget;
import org.geomajas.plugin.printing.client.PrintingMessages;
import org.geomajas.plugin.printing.client.widget.PrintPreferencesCanvas;

import com.google.gwt.core.client.GWT;
import com.smartgwt.client.widgets.Window;
import com.smartgwt.client.widgets.events.ClickEvent;

/**
* Action to create a default PDF print of the map.
*
* @author Jan De Moerloose
*/
public class PrintingAction extends ToolbarAction implements ConfigurableAction {

  private static final PrintingMessages MESSAGES = GWT.create(PrintingMessages.class);

  private MapWidget mapWidget;

  /**
   * Create action for given map widget.
   *
   * @param mapWidget map widget
   */
  public PrintingAction(MapWidget mapWidget) {
    super(WidgetLayout.iconPrint, null);
    this.mapWidget = mapWidget;
    setTooltip(MESSAGES.printBtnTitle());
  }

  @Override
  public void onClick(ClickEvent event) {
    PrintPreferencesCanvas canvas = new PrintPreferencesCanvas(mapWidget);
    canvas.setMargin(WidgetLayout.marginSmall);
    Window window = new KeepInScreenWindow();
    window.setTitle(MESSAGES.printPrefsTitle());
    window.addItem(canvas);
    window.centerInPage();
    window.setAutoSize(true);
    window.show();
  }

  @Override
  public void configure(String key, String value) {
    // nothing to configure
  }

}
TOP

Related Classes of org.geomajas.plugin.printing.client.action.toolbar.PrintingAction

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.