如何在GWT CompositeCell上设置间距?

时间:2012-10-16 02:58:42

标签: gwt

我不确定这是否是一个有效的问题,但我有CompositeCell作为参数来构建DefaultNodeInfo,这是TreeViewModel的一部分。

基本上,CompositeCell看起来像这样:

Tree item1[button1]
    Tree item2[button2]
    ...

现在我想在树项和按钮之间设置间距:

Tree item1  [button1]

我不知道如何实现这一目标。也许CompositeCell对我来说不合适,因为它没有setSpacing方法?

但我还是需要一个Cell来构建NodeInfo

========================================

让我更清楚地说明问题。

我唯一的WidgetCellTree。要构建CellTree我需要提供TreeViewModel

  cellTree = new CellTree(
      new SomeTreeViewModel(), null);

构建TreeViewModel我需要提供DefaultNodeInfo。换句话说,要覆盖TreeViewModel中的以下方法:

  public <T> NodeInfo<?> getNodeInfo(final T value)

构建DefaultNodeInfo

  public DefaultNodeInfo(AbstractDataProvider<T> dataProvider, Cell<T> cell)

我必须提供Cell(最后是我的问题......)

Cell不是Widget,而只是一个界面。

我需要一个CompositeCell,其中包含AbstractCell

  Tree item1

ButtonCell

  [button1]

CompositeCell将如下所示:

  Tree item1[button1]

我想在ButtonCellCompositeCell或任何Cell设置样式以添加间距:

  Tree item1   [button1]

我不认为在CellTree上应用css会有所帮助,因为它只影响树的样式而不影响树项......

实际上我找到了一种解决方法,但我认为不鼓励这样做,即覆盖ButtonCell的{​​{1}}方法:

render

还有其他想法吗?

1 个答案:

答案 0 :(得分:1)

向您的单元格或包含它的窗口小部件添加CSS类。例如:

.myCell input, .myCell div {
    margin-left: 10px;
}

然后

cellTree.setStyleName("myCell");