Search in sources :

Example 51 with ITable

use of org.eclipse.scout.rt.client.ui.basic.table.ITable in project scout.rt by eclipse.

the class OutlineMediator method mediateTreeNodesDragRequest.

public void mediateTreeNodesDragRequest(TreeEvent e, IPageWithTable<? extends ITable> pageWithTable) {
    List<ITableRow> rows = pageWithTable.getTableRowsFor(e.getNodes());
    ITable table = pageWithTable.getTable();
    table.getUIFacade().setSelectedRowsFromUI(rows);
    TransferObject t = table.getUIFacade().fireRowsDragRequestFromUI();
    if (t != null) {
        e.setDragObject(t);
    }
}
Also used : TransferObject(org.eclipse.scout.rt.client.ui.dnd.TransferObject) ITable(org.eclipse.scout.rt.client.ui.basic.table.ITable) ITableRow(org.eclipse.scout.rt.client.ui.basic.table.ITableRow)

Example 52 with ITable

use of org.eclipse.scout.rt.client.ui.basic.table.ITable in project scout.rt by eclipse.

the class AbstractPage method enhanceTableWithPageMenus.

protected void enhanceTableWithPageMenus() {
    if (isPageMenusAdded()) {
        return;
    }
    setPageMenusAdded();
    ITable table = getTable();
    if (table != null) {
        ITableContextMenu contextMenu = table.getContextMenu();
        List<IMenu> menus = contextMenu.getChildActions();
        for (IMenu menu : getOutline().getContextMenu().getChildActions()) {
            if (!OutlineMenuWrapper.containsWrappedMenu(table.getMenus(), menu)) {
                // mapping from TreeMenuType to TableMenuType
                menus.add(new OutlineMenuWrapper(menu, TREE_MENU_TYPE_MAPPER));
            }
        }
        if (!CollectionUtility.equalsCollection(menus, contextMenu.getChildActions())) {
            contextMenu.setChildActions(menus);
        }
    }
}
Also used : ITableContextMenu(org.eclipse.scout.rt.client.ui.action.menu.root.ITableContextMenu) OutlineMenuWrapper(org.eclipse.scout.rt.client.ui.desktop.outline.OutlineMenuWrapper) IMenu(org.eclipse.scout.rt.client.ui.action.menu.IMenu) ITable(org.eclipse.scout.rt.client.ui.basic.table.ITable)

Example 53 with ITable

use of org.eclipse.scout.rt.client.ui.basic.table.ITable in project scout.rt by eclipse.

the class AbstractColumn method prepareEdit.

@Override
public final IFormField prepareEdit(ITableRow row) {
    ITable table = getTable();
    if (table == null || !this.isCellEditable(row)) {
        return null;
    }
    IFormField f = interceptPrepareEdit(row);
    if (f != null) {
        f.setLabelVisible(false);
        GridData gd = f.getGridDataHints();
        gd.weightY = 1;
        f.setGridDataHints(gd);
    }
    return f;
}
Also used : IFormField(org.eclipse.scout.rt.client.ui.form.fields.IFormField) GridData(org.eclipse.scout.rt.client.ui.form.fields.GridData) ITable(org.eclipse.scout.rt.client.ui.basic.table.ITable)

Example 54 with ITable

use of org.eclipse.scout.rt.client.ui.basic.table.ITable in project scout.rt by eclipse.

the class TableContextMenu method handleOwnerEnabledChanged.

protected void handleOwnerEnabledChanged() {
    ITable container = getContainer();
    if (container != null) {
        final boolean enabled = container.isEnabled();
        acceptVisitor(new IActionVisitor() {

            @Override
            public int visit(IAction action) {
                if (action instanceof IMenu) {
                    IMenu menu = (IMenu) action;
                    if (!menu.hasChildActions() && menu.isInheritAccessibility()) {
                        menu.setEnabled(enabled);
                    }
                }
                return CONTINUE;
            }
        });
    }
}
Also used : IActionVisitor(org.eclipse.scout.rt.client.ui.action.IActionVisitor) IMenu(org.eclipse.scout.rt.client.ui.action.menu.IMenu) IAction(org.eclipse.scout.rt.client.ui.action.IAction) ITable(org.eclipse.scout.rt.client.ui.basic.table.ITable)

Example 55 with ITable

use of org.eclipse.scout.rt.client.ui.basic.table.ITable in project scout.rt by eclipse.

the class TableFieldTest method testDelegatingValueChangedTriggerEnabledPropertyExchangingTable.

@Test
public void testDelegatingValueChangedTriggerEnabledPropertyExchangingTable() {
    P_TableField tableField = createTableField(false);
    assertValueChangeTriggerEnabledFlag(tableField, true);
    // first call
    tableField.setValueChangeTriggerEnabled(false);
    assertValueChangeTriggerEnabledFlag(tableField, false);
    // second call
    tableField.setValueChangeTriggerEnabled(false);
    assertValueChangeTriggerEnabledFlag(tableField, false);
    // exchanging the table; disabling the triggers on the table once before and once after
    ITable firstTable = tableField.getTable();
    firstTable.setValueChangeTriggerEnabled(false);
    tableField.setTable(tableField.new Table(), true);
    firstTable.setValueChangeTriggerEnabled(false);
    // third call; should not affect firstField any more
    tableField.setValueChangeTriggerEnabled(false);
    assertValueChangeTriggerEnabledFlag(tableField, false);
    // assert that removed first field now works independently
    assertValueChangeTriggerEnabledFlag(tableField, false);
    assertFalse(firstTable.isValueChangeTriggerEnabled());
    firstTable.setValueChangeTriggerEnabled(true);
    assertFalse(firstTable.isValueChangeTriggerEnabled());
    firstTable.setValueChangeTriggerEnabled(true);
    // only after the second reset the trigger should be enabled
    assertTrue(firstTable.isValueChangeTriggerEnabled());
    // revert third call
    tableField.setValueChangeTriggerEnabled(true);
    assertValueChangeTriggerEnabledFlag(tableField, false);
    // revert second call
    tableField.setValueChangeTriggerEnabled(true);
    assertValueChangeTriggerEnabledFlag(tableField, false);
    // revert first call
    tableField.setValueChangeTriggerEnabled(true);
    assertValueChangeTriggerEnabledFlag(tableField, true);
    // now exchange table with one that has it's trigger already disabled
    org.eclipse.scout.rt.client.ui.form.fields.tablefield.TableFieldTest.P_TableField.Table newTable = tableField.new Table();
    newTable.setValueChangeTriggerEnabled(false);
    newTable.setValueChangeTriggerEnabled(false);
    tableField.setTable(newTable, true);
    assertTrue(tableField.isValueChangeTriggerEnabled());
    assertFalse(tableField.getTable().isValueChangeTriggerEnabled());
    newTable.setValueChangeTriggerEnabled(true);
    assertTrue(tableField.isValueChangeTriggerEnabled());
    assertFalse(tableField.getTable().isValueChangeTriggerEnabled());
    // only after the second reset the trigger should be enabled on the table
    newTable.setValueChangeTriggerEnabled(true);
    assertTrue(firstTable.isValueChangeTriggerEnabled());
}
Also used : AbstractTable(org.eclipse.scout.rt.client.ui.basic.table.AbstractTable) ITable(org.eclipse.scout.rt.client.ui.basic.table.ITable) ITable(org.eclipse.scout.rt.client.ui.basic.table.ITable) Test(org.junit.Test)

Aggregations

ITable (org.eclipse.scout.rt.client.ui.basic.table.ITable)89 Test (org.junit.Test)64 ITableRow (org.eclipse.scout.rt.client.ui.basic.table.ITableRow)45 TableWith3Cols (org.eclipse.scout.rt.ui.html.json.table.fixtures.TableWith3Cols)28 JSONObject (org.json.JSONObject)23 JsonEvent (org.eclipse.scout.rt.ui.html.json.JsonEvent)16 JSONArray (org.json.JSONArray)12 ITableRowFilter (org.eclipse.scout.rt.client.ui.basic.table.ITableRowFilter)11 Table (org.eclipse.scout.rt.ui.html.json.table.fixtures.Table)10 ArrayList (java.util.ArrayList)9 ListBoxTable (org.eclipse.scout.rt.ui.html.json.table.fixtures.ListBoxTable)8 IMenu (org.eclipse.scout.rt.client.ui.action.menu.IMenu)6 AbstractTable (org.eclipse.scout.rt.client.ui.basic.table.AbstractTable)6 ITableField (org.eclipse.scout.rt.client.ui.form.fields.tablefield.ITableField)5 TableWithLongColumn (org.eclipse.scout.rt.ui.html.json.table.fixtures.TableWithLongColumn)5 IColumn (org.eclipse.scout.rt.client.ui.basic.table.columns.IColumn)4 IOutline (org.eclipse.scout.rt.client.ui.desktop.outline.IOutline)4 IPageWithTable (org.eclipse.scout.rt.client.ui.desktop.outline.pages.IPageWithTable)4 IProposalField (org.eclipse.scout.rt.client.ui.form.fields.smartfield.IProposalField)4 OrderedCollection (org.eclipse.scout.rt.platform.util.collection.OrderedCollection)4