<!--
  Copyright 2010 Google Inc.
 
  Licensed under the Apache License, Version 2.0 (the "License"); you may not
  use this file except in compliance with the License. You may obtain a copy of
  the License at
 
  http://www.apache.org/licenses/LICENSE-2.0
 
  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
  License for the specific language governing permissions and limitations under
  the License.
-->
<module type="fileset">
  <inherits name="com.google.gwt.aria.Aria"/>
  <inherits name="com.google.gwt.cell.Cell"/>
  <inherits name="com.google.gwt.editor.Editor"/>
  <inherits name="com.google.gwt.view.View"/>
  <inherits name="com.google.gwt.user.UserAgent"/>
  <source path="client"/>
  <public path="public" />

  <!-- Standard CellBasedWidgetImpl implementation. -->
  <replace-with class="com.google.gwt.user.cellview.client.CellBasedWidgetImplStandard">
    <when-type-is class="com.google.gwt.user.cellview.client.CellBasedWidgetImpl"/>
    <any>
      <when-property-is name="user.agent" value="gecko1_8"/>
    </any>
  </replace-with>

  <!-- IE-specific CellBasedWidgetImpl implementation. -->
  <replace-with class="com.google.gwt.user.cellview.client.CellBasedWidgetImplTrident">
    <when-type-is class="com.google.gwt.user.cellview.client.CellBasedWidgetImpl"/>
    <any>
      <when-property-is name="user.agent" value="ie6"/>
      <when-property-is name="user.agent" value="ie8"/>
    </any>
  </replace-with>

  <!-- StandardBase CellBasedWidgetImpl implementation. -->
  <replace-with class="com.google.gwt.user.cellview.client.CellBasedWidgetImplStandardBase">
    <when-type-is class="com.google.gwt.user.cellview.client.CellBasedWidgetImpl"/>
    <any>
      <when-property-is name="user.agent" value="safari"/>
      <when-property-is name="user.agent" value="ie9"/>
      <when-property-is name="user.agent" value="ie10"/>
    </any>
  </replace-with>

  <!-- Mozilla-specific CellTable implementation. -->
  <replace-with class="com.google.gwt.user.cellview.client.AbstractCellTable.ImplMozilla">
    <when-type-is class="com.google.gwt.user.cellview.client.AbstractCellTable.Impl"/>
    <any>
      <when-property-is name="user.agent" value="gecko1_8"/>
    </any>
  </replace-with>

  <!-- IE-specific CellTable implementation. -->
  <replace-with class="com.google.gwt.user.cellview.client.AbstractCellTable.ImplTrident">
    <when-type-is class="com.google.gwt.user.cellview.client.AbstractCellTable.Impl"/>
    <any>
      <when-property-is name="user.agent" value="ie6"/>
      <when-property-is name="user.agent" value="ie8"/>
      <when-property-is name="user.agent" value="ie9"/>
      <when-property-is name="user.agent" value="ie10"/>
    </any>
  </replace-with>
</module>
