com.google.gwt.user.datepicker.client

## Class DefaultCalendarView.CellGrid.DateCell

- java.lang.Object
- - com.google.gwt.user.client.ui.UIObject
  - - com.google.gwt.user.client.ui.Widget
    - - com.google.gwt.user.datepicker.client.CellGridImpl.Cell
      - - com.google.gwt.user.datepicker.client.DefaultCalendarView.CellGrid.DateCell

- All Implemented Interfaces:
    HasAttachHandlers, HasHandlers, EventListener, HasVisibility, IsWidget
  Enclosing class:
    DefaultCalendarView.CellGrid

       class DefaultCalendarView.CellGrid.DateCell
      extends CellGridImpl.Cell

  A cell representing a date.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.UIObject

      `UIObject.DebugIdImpl, UIObject.DebugIdImplEnabled`

  - ### Field Summary

    - ### Fields inherited from class com.google.gwt.user.client.ui.UIObject

      `DEBUG_ID_PREFIX`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `DefaultCalendarView.CellGrid.DateCell(boolean isWeekend)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addStyleName(java.lang.String styleName)` Adds a secondary or dependent style name to this object.
    `boolean` | `isFiller()`
    `void` | `onHighlighted(boolean highlighted)`
    `void` | `onSelected(boolean selected)`
    `void` | `removeStyleName(java.lang.String styleName)` Removes a style name.
    `void` | `setAriaSelected(boolean value)`
    `(package private) void` | `update(java.util.Date current)`
    `void` | `updateStyle()`

    - ### Methods inherited from class com.google.gwt.user.datepicker.client.CellGridImpl.Cell

      `getValue, isEnabled, isHighlighted, isSelected, nextItem, onEnabled, previousItem, setEnabled, verticalNavigation`

    - ### Methods inherited from class com.google.gwt.user.client.ui.Widget

      `addAttachHandler, addBitlessDomHandler, addDomHandler, addHandler, asWidget, asWidgetOrNull, createHandlerManager, delegateEvent, doAttachChildren, doDetachChildren, fireEvent, getHandlerCount, getLayoutData, getParent, isAttached, isOrWasAttached, onAttach, onBrowserEvent, onDetach, onLoad, onUnload, removeFromParent, setLayoutData, sinkEvents`

    - ### Methods inherited from class com.google.gwt.user.client.ui.UIObject

      `addStyleDependentName, ensureDebugId, ensureDebugId, ensureDebugId, getAbsoluteLeft, getAbsoluteTop, getElement, getOffsetHeight, getOffsetWidth, getStyleElement, getStyleName, getStyleName, getStylePrimaryName, getStylePrimaryName, getTitle, isVisible, isVisible, onEnsureDebugId, removeStyleDependentName, resolvePotentialElement, setElement, setElement, setHeight, setPixelSize, setSize, setStyleDependentName, setStyleName, setStyleName, setStyleName, setStyleName, setStylePrimaryName, setStylePrimaryName, setTitle, setVisible, setVisible, setWidth, sinkBitlessEvent, toString, unsinkEvents`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### DefaultCalendarView.CellGrid.DateCell

          DefaultCalendarView.CellGrid.DateCell(boolean isWeekend)

  - ### Method Detail

    - #### addStyleName

          public void addStyleName(java.lang.String styleName)

      Description copied from class: `UIObject`
      Adds a secondary or dependent style name to this object. A secondary style name is an additional style name that is, in HTML/CSS terms, included as a space-separated token in the value of the CSS `class` attribute for this object's root element.

      The most important use for this method is to add a special kind of secondary style name called a dependent style name. To add a dependent style name, use `UIObject.addStyleDependentName(String)`, which will prefix the 'style' argument with the result of `UIObject.getStylePrimaryName()` (followed by a '-'). For example, suppose the primary style name is `gwt-TextBox`. If the following method is called as `obj.setReadOnly(true)`:

           public void setReadOnly(boolean readOnly) {
             isReadOnlyMode = readOnly;

             // Create a dependent style name.
             String readOnlyStyle = "readonly";

             if (readOnly) {
               addStyleDependentName(readOnlyStyle);
             } else {
               removeStyleDependentName(readOnlyStyle);
             }
           }

      then both of the CSS style rules below will be applied:

           // This rule is based on the primary style name and is always active.
           .gwt-TextBox {
             font-size: 12pt;
           }

           // This rule is based on a dependent style name that is only active
           // when the widget has called addStyleName(getStylePrimaryName() +
           // "-readonly").
           .gwt-TextBox-readonly {
             background-color: lightgrey;
             border: none;
           }

      The code can also be simplified with `UIObject.setStyleDependentName(String, boolean)`:

           public void setReadOnly(boolean readOnly) {
             isReadOnlyMode = readOnly;
             setStyleDependentName("readonly", readOnly);
           }

      Dependent style names are powerful because they are automatically updated whenever the primary style name changes. Continuing with the example above, if the primary style name changed due to the following call:

          setStylePrimaryName("my-TextThingy");

      then the object would be re-associated with following style rules, removing those that were shown above.

           .my-TextThingy {
             font-size: 20pt;
           }

           .my-TextThingy-readonly {
             background-color: red;
             border: 2px solid yellow;
           }

      Secondary style names that are not dependent style names are not automatically updated when the primary style name changes.

      Overrides:
        `addStyleName` in class `UIObject`
      Parameters:
        `styleName` - the secondary style name to be added
      See Also:
        `UIObject`, `UIObject.removeStyleName(String)`

    - #### isFiller

          public boolean isFiller()

    - #### onHighlighted

          public void onHighlighted(boolean highlighted)

      Overrides:
        `onHighlighted` in class `CellGridImpl.Cell`

    - #### onSelected

          public void onSelected(boolean selected)

      Overrides:
        `onSelected` in class `CellGridImpl.Cell`

    - #### removeStyleName

          public void removeStyleName(java.lang.String styleName)

      Description copied from class: `UIObject`
      Removes a style name. This method is typically used to remove secondary style names, but it can be used to remove primary stylenames as well. That use is not recommended.
      Overrides:
        `removeStyleName` in class `UIObject`
      Parameters:
        `styleName` - the secondary style name to be removed
      See Also:
        `UIObject.addStyleName(String)`, `UIObject.setStyleName(String, boolean)`

    - #### setAriaSelected

          public void setAriaSelected(boolean value)

    - #### updateStyle

          public void updateStyle()

      Specified by:
        `updateStyle` in class `CellGridImpl.Cell`

    - #### update

          void update(java.util.Date current)