/******************************************************************************* * Copyright (c) 2002, 2010 Innoopract Informationssysteme GmbH. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Innoopract Informationssysteme GmbH - initial API and implementation * EclipseSource - ongoing development ******************************************************************************/ package org.eclipse.swt.internal.widgets.menuitemkit; import java.io.IOException; import org.eclipse.rwt.lifecycle.*; import org.eclipse.swt.events.SelectionEvent; import org.eclipse.swt.internal.widgets.ItemLCAUtil; import org.eclipse.swt.internal.widgets.Props; import org.eclipse.swt.widgets.MenuItem; final class CheckMenuItemLCA extends MenuItemDelegateLCA { private static final String ITEM_TYPE_CHECK = "check"; void preserveValues( final MenuItem menuItem ) { ItemLCAUtil.preserve( menuItem ); IWidgetAdapter adapter = WidgetUtil.getAdapter( menuItem ); boolean hasListener = SelectionEvent.hasListener( menuItem ); adapter.preserve( Props.SELECTION_LISTENERS, Boolean.valueOf( hasListener ) ); adapter.preserve( MenuItemLCAUtil.PROP_SELECTION, Boolean.valueOf( menuItem.getSelection() ) ); MenuItemLCAUtil.preserveEnabled( menuItem ); WidgetLCAUtil.preserveCustomVariant( menuItem ); WidgetLCAUtil.preserveHelpListener( menuItem ); } void readData( final MenuItem menuItem ) { String value = WidgetLCAUtil.readPropertyValue( menuItem, "selection" ); if( value != null ) { menuItem.setSelection( Boolean.valueOf( value ).booleanValue() ); } ControlLCAUtil.processSelection( menuItem, null, false ); WidgetLCAUtil.processHelp( menuItem ); MenuItemLCAUtil.processArmEvent( menuItem ); } void renderInitialization( final MenuItem menuItem ) throws IOException { MenuItemLCAUtil.newItem( menuItem, "org.eclipse.rwt.widgets.MenuItem", ITEM_TYPE_CHECK ); } void renderChanges( final MenuItem menuItem ) throws IOException { MenuItemLCAUtil.writeImageAndText( menuItem ); MenuItemLCAUtil.writeSelectionListener( menuItem ); MenuItemLCAUtil.writeSelection( menuItem ); MenuItemLCAUtil.writeEnabled( menuItem ); WidgetLCAUtil.writeCustomVariant( menuItem ); WidgetLCAUtil.writeHelpListener( menuItem ); } }