Search in sources :

Example 1 with UIAction

use of org.applause.lang.applauseDsl.UIAction in project applause by applause.

the class DefaultListScreenClassExtensions method targetNavigationScreen.

public Screen targetNavigationScreen(final Screen it) {
    ScreenListItemCell _defaultCell = this.defaultCell(it);
    EList<UIAction> _actions = _defaultCell.getActions();
    final Function1<UIAction, UIActionSpecification> _function = new Function1<UIAction, UIActionSpecification>() {

        public UIActionSpecification apply(final UIAction it) {
            UIActionSpecification _action = it.getAction();
            return _action;
        }
    };
    List<UIActionSpecification> _map = ListExtensions.<UIAction, UIActionSpecification>map(_actions, _function);
    Iterable<UIActionNavigateAction> _filter = Iterables.<UIActionNavigateAction>filter(_map, UIActionNavigateAction.class);
    UIActionNavigateAction _head = IterableExtensions.<UIActionNavigateAction>head(_filter);
    Screen _targetScreen = _head.getTargetScreen();
    return _targetScreen;
}
Also used : ScreenListItemCell(org.applause.lang.applauseDsl.ScreenListItemCell) UIActionNavigateAction(org.applause.lang.applauseDsl.UIActionNavigateAction) UIAction(org.applause.lang.applauseDsl.UIAction) Screen(org.applause.lang.applauseDsl.Screen) Function1(org.eclipse.xtext.xbase.lib.Functions.Function1) UIActionSpecification(org.applause.lang.applauseDsl.UIActionSpecification)

Example 2 with UIAction

use of org.applause.lang.applauseDsl.UIAction in project applause by applause.

the class DefaultListScreenEditActionCompiler method supportsDeleteAction.

public boolean supportsDeleteAction(final Screen it) {
    ScreenListItemCell _defaultCell = this._defaultListScreenClassExtensions.defaultCell(it);
    EList<UIAction> _actions = _defaultCell.getActions();
    final Function1<UIAction, UIActionSpecification> _function = new Function1<UIAction, UIActionSpecification>() {

        public UIActionSpecification apply(final UIAction it) {
            UIActionSpecification _action = it.getAction();
            return _action;
        }
    };
    List<UIActionSpecification> _map = ListExtensions.<UIAction, UIActionSpecification>map(_actions, _function);
    Iterable<UIActionDeleteAction> _filter = Iterables.<UIActionDeleteAction>filter(_map, UIActionDeleteAction.class);
    int _size = IterableExtensions.size(_filter);
    boolean _greaterThan = (_size > 0);
    return _greaterThan;
}
Also used : ScreenListItemCell(org.applause.lang.applauseDsl.ScreenListItemCell) UIAction(org.applause.lang.applauseDsl.UIAction) Function1(org.eclipse.xtext.xbase.lib.Functions.Function1) UIActionDeleteAction(org.applause.lang.applauseDsl.UIActionDeleteAction) UIActionSpecification(org.applause.lang.applauseDsl.UIActionSpecification)

Example 3 with UIAction

use of org.applause.lang.applauseDsl.UIAction in project applause by applause.

the class DefaultListScreenEditActionCompiler method deleteAction.

public UIActionDeleteAction deleteAction(final Screen it) {
    ScreenListItemCell _defaultCell = this._defaultListScreenClassExtensions.defaultCell(it);
    EList<UIAction> _actions = _defaultCell.getActions();
    final Function1<UIAction, UIActionSpecification> _function = new Function1<UIAction, UIActionSpecification>() {

        public UIActionSpecification apply(final UIAction it) {
            UIActionSpecification _action = it.getAction();
            return _action;
        }
    };
    List<UIActionSpecification> _map = ListExtensions.<UIAction, UIActionSpecification>map(_actions, _function);
    Iterable<UIActionDeleteAction> _filter = Iterables.<UIActionDeleteAction>filter(_map, UIActionDeleteAction.class);
    UIActionDeleteAction _head = IterableExtensions.<UIActionDeleteAction>head(_filter);
    return _head;
}
Also used : ScreenListItemCell(org.applause.lang.applauseDsl.ScreenListItemCell) UIAction(org.applause.lang.applauseDsl.UIAction) Function1(org.eclipse.xtext.xbase.lib.Functions.Function1) UIActionDeleteAction(org.applause.lang.applauseDsl.UIActionDeleteAction) UIActionSpecification(org.applause.lang.applauseDsl.UIActionSpecification)

Example 4 with UIAction

use of org.applause.lang.applauseDsl.UIAction in project applause by applause.

the class DefaultListScreenActionCompiler method compileActionButtons.

public CharSequence compileActionButtons(final Screen it) {
    StringConcatenation _builder = new StringConcatenation();
    _builder.append("// register action buttons");
    _builder.newLine();
    _builder.append("self.navigationItem.rightBarButtonItems = @[");
    _builder.newLine();
    {
        EList<UIAction> _actions = it.getActions();
        for (final UIAction action : _actions) {
            _builder.append("\t");
            CharSequence _compileActionButton = this.compileActionButton(action);
            _builder.append(_compileActionButton, "	");
            _builder.newLineIfNotEmpty();
        }
    }
    _builder.append("];");
    _builder.newLine();
    return _builder;
}
Also used : EList(org.eclipse.emf.common.util.EList) UIAction(org.applause.lang.applauseDsl.UIAction) StringConcatenation(org.eclipse.xtend2.lib.StringConcatenation)

Aggregations

UIAction (org.applause.lang.applauseDsl.UIAction)4 ScreenListItemCell (org.applause.lang.applauseDsl.ScreenListItemCell)3 UIActionSpecification (org.applause.lang.applauseDsl.UIActionSpecification)3 Function1 (org.eclipse.xtext.xbase.lib.Functions.Function1)3 UIActionDeleteAction (org.applause.lang.applauseDsl.UIActionDeleteAction)2 Screen (org.applause.lang.applauseDsl.Screen)1 UIActionNavigateAction (org.applause.lang.applauseDsl.UIActionNavigateAction)1 EList (org.eclipse.emf.common.util.EList)1 StringConcatenation (org.eclipse.xtend2.lib.StringConcatenation)1