On the way to solving the initial task I bumped in another problem. I can't
find the way to display a TableView in a ScrollPane with id="mDataScrollPane"
from the Java code. Unfortunately I can't find an example that doesn't use
a BXML file.

Here is my code:
---- window.bxml ----
<dockable:ContentWindow title="%mainAppTitle"
    maximized="true"
     bxml:id="mainWindow"
     xmlns:bxml="http://pivot.apache.org/bxml";
     xmlns:content="org.apache.pivot.wtk.content"
     xmlns:dockable="si.dezo.ewn"
     xmlns:collections="org.apache.pivot.collections"
     xmlns="org.apache.pivot.wtk">
  ...
  <content>
    <Border xmlns="org.apache.pivot.wtk" styles="{padding:6}">
      <TablePane>
        <columns>
          <TablePane.Column width="1*"/>
        </columns>
        <TablePane.Row height="1*">
          <Border styles="{color:10}">
            <ScrollPane bxml:id="mDataScrollPane"
horizontalScrollBarPolicy="fill" preferredHeight="240"
verticalScrollBarPolicy="fill_to_capacity">
            </ScrollPane>
          </Border>
        </TablePane.Row>
      </TablePane>
    </Border>
  </content>
</dockable:ContentWindow>
----

---- ContentWindow.java ----
package si.dezo.ewn;

...
public class ContentWindow extends Window implements Bindable  {
  @BXML private ScrollPane mDataScrollPane;

  public ContentWindow() { return; }

  @Override
  public void initialize(Map<String, Object> namespace, URL location,
Resources resources) {
    Map<String, String> map = new HashMap<String, String>();
    map.put("nation", "SLO");
    map.put("gold", "20");

    List<Map<String, String>> tableData = new ArrayList<Map<String,
String>>();
    tableData.add(map);

    TableView tableView = new TableView(tableData);

    ColumnSequence columns = tableView.getColumns();
    columns.add(new Column("nation", "Država", 100));
    columns.add(new Column("gold", "Zlato", 100));

    TableViewHeader header = new TableViewHeader();
    header.setTableView(tableView);

    mDataScrollPane.add(tableView);

    return;
  }
}
----

What am I doing wrong?

Thanks,
 Damir
​

Reply via email to