Search in sources :

Example 1 with SimpleCheckboxAction

use of com.evolveum.midpoint.studio.ui.SimpleCheckboxAction in project midpoint-studio by Evolveum.

the class AbstractOpTreePanel method initLayout.

private void initLayout() {
    JBSplitter splitter = new OnePixelSplitter(false);
    add(splitter, BorderLayout.CENTER);
    List<TreeTableColumnDefinition<String, ?>> columns = new ArrayList<>();
    columns.add(new TreeTableColumnDefinition<>("Item", 150, o -> null));
    columns.add(new TreeTableColumnDefinition<>("Variable", 400, o -> null, new ExpansionSensitiveTableCellRenderer()));
    this.variables = MidPointUtils.createTable2(new DefaultTreeTableModel(new DefaultMutableTreeTableNode(), Arrays.asList("Item", "Variable")), MidPointUtils.createTableColumnModel(columns), false);
    this.variables.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
    this.variables.addTreeSelectionListener(this::variablesSelectionChanged);
    this.variables.addHighlighter(new AbstractHighlighter() {

        @Override
        protected Component doHighlight(Component component, ComponentAdapter adapter) {
            int row = adapter.convertRowIndexToModel(adapter.row);
            TreePath pathForRow = variables.getPathForRow(row);
            Node node = (Node) pathForRow.getLastPathComponent();
            if (adapter.isSelected()) {
                component.setBackground(variables.getSelectionBackground());
            } else if (node.getBackgroundColor() == null) {
                component.setBackground(variables.getBackground());
            } else {
                component.setBackground(node.getBackgroundColor());
            }
            return component;
        }
    });
    TableColumn column = this.variables.getColumnModel().getColumn(1);
    column.setCellRenderer(new ExpansionSensitiveTableCellRenderer());
    JComponent mainToolbar = initMainToolbar();
    splitter.setFirstComponent(MidPointUtils.createBorderLayoutPanel(mainToolbar, new JBScrollPane(this.variables), null));
    JPanel left = new BorderLayoutPanel();
    splitter.setSecondComponent(left);
    DefaultActionGroup group = new DefaultActionGroup();
    variablesDisplayAs = new FormatComboboxAction() {

        @Override
        public void setFormat(Format format) {
            super.setFormat(format);
            variableDisplayAsChanged(format);
        }
    };
    group.add(variablesDisplayAs);
    variablesWrapText = new SimpleCheckboxAction("Wrap text") {

        @Override
        public void onStateChange() {
            variablesValue.setLineWrap(isSelected());
            variablesValue.invalidate();
        }
    };
    group.add(variablesWrapText);
    ActionToolbar toolbar = ActionManager.getInstance().createActionToolbar("TraceViewVariablesToolbar", group, true);
    toolbar.setTargetComponent(this);
    left.add(toolbar.getComponent(), BorderLayout.NORTH);
    variablesValue = new JBTextArea();
    left.add(MidPointUtils.borderlessScrollPane(variablesValue), BorderLayout.CENTER);
}
Also used : Arrays(java.util.Arrays) AllIcons(com.intellij.icons.AllIcons) DefaultTreeTableModel(org.jdesktop.swingx.treetable.DefaultTreeTableModel) MidPointProjectNotifier(com.evolveum.midpoint.studio.impl.MidPointProjectNotifier) CheckboxAction(com.intellij.openapi.actionSystem.ex.CheckboxAction) FormattingContext(com.evolveum.midpoint.studio.impl.trace.FormattingContext) ViewingState(com.evolveum.midpoint.studio.ui.trace.ViewingState) TreeSelectionEvent(javax.swing.event.TreeSelectionEvent) ArrayList(java.util.ArrayList) JBTextArea(com.intellij.ui.components.JBTextArea) DefaultMutableTreeTableNode(org.jdesktop.swingx.treetable.DefaultMutableTreeTableNode) BorderLayoutPanel(com.intellij.util.ui.components.BorderLayoutPanel) Project(com.intellij.openapi.project.Project) TreeTableNode(org.jdesktop.swingx.treetable.TreeTableNode) Format(com.evolveum.midpoint.studio.impl.trace.Format) ComboBoxAction(com.intellij.openapi.actionSystem.ex.ComboBoxAction) Logger(com.intellij.openapi.diagnostic.Logger) DumbAware(com.intellij.openapi.project.DumbAware) SimpleCheckboxAction(com.evolveum.midpoint.studio.ui.SimpleCheckboxAction) TreeTableColumnDefinition(com.evolveum.midpoint.studio.ui.TreeTableColumnDefinition) AbstractHighlighter(org.jdesktop.swingx.decorator.AbstractHighlighter) TreePath(javax.swing.tree.TreePath) JBSplitter(com.intellij.ui.JBSplitter) TableColumn(javax.swing.table.TableColumn) ComponentAdapter(org.jdesktop.swingx.decorator.ComponentAdapter) MiscUtil(com.evolveum.midpoint.util.MiscUtil) Node(com.evolveum.midpoint.studio.ui.trace.entry.Node) JXTreeTable(org.jdesktop.swingx.JXTreeTable) JBScrollPane(com.intellij.ui.components.JBScrollPane) OpNode(com.evolveum.midpoint.schema.traces.OpNode) MidPointUtils(com.evolveum.midpoint.studio.util.MidPointUtils) java.awt(java.awt) com.intellij.openapi.actionSystem(com.intellij.openapi.actionSystem) List(java.util.List) OnePixelSplitter(com.intellij.ui.OnePixelSplitter) NotNull(org.jetbrains.annotations.NotNull) MessageBus(com.intellij.util.messages.MessageBus) MidPointProjectNotifierAdapter(com.evolveum.midpoint.studio.impl.MidPointProjectNotifierAdapter) javax.swing(javax.swing) DefaultMutableTreeTableNode(org.jdesktop.swingx.treetable.DefaultMutableTreeTableNode) TreeTableNode(org.jdesktop.swingx.treetable.TreeTableNode) Node(com.evolveum.midpoint.studio.ui.trace.entry.Node) OpNode(com.evolveum.midpoint.schema.traces.OpNode) ArrayList(java.util.ArrayList) DefaultMutableTreeTableNode(org.jdesktop.swingx.treetable.DefaultMutableTreeTableNode) Format(com.evolveum.midpoint.studio.impl.trace.Format) ComponentAdapter(org.jdesktop.swingx.decorator.ComponentAdapter) TreeTableColumnDefinition(com.evolveum.midpoint.studio.ui.TreeTableColumnDefinition) DefaultTreeTableModel(org.jdesktop.swingx.treetable.DefaultTreeTableModel) OnePixelSplitter(com.intellij.ui.OnePixelSplitter) JBTextArea(com.intellij.ui.components.JBTextArea) TableColumn(javax.swing.table.TableColumn) BorderLayoutPanel(com.intellij.util.ui.components.BorderLayoutPanel) SimpleCheckboxAction(com.evolveum.midpoint.studio.ui.SimpleCheckboxAction) TreePath(javax.swing.tree.TreePath) AbstractHighlighter(org.jdesktop.swingx.decorator.AbstractHighlighter) JBSplitter(com.intellij.ui.JBSplitter) JBScrollPane(com.intellij.ui.components.JBScrollPane)

Example 2 with SimpleCheckboxAction

use of com.evolveum.midpoint.studio.ui.SimpleCheckboxAction in project midpoint-studio by Evolveum.

the class TraceLogsPanel method initLayout.

private void initLayout() {
    DefaultActionGroup group = new DefaultActionGroup();
    SimpleCheckboxAction logsWrapText = new SimpleCheckboxAction("Wrap text") {

        @Override
        public void onStateChange() {
            logs.setLineWrap(isSelected());
            updateTexts(fullyLoaded);
        }
    };
    group.add(logsWrapText);
    currentOpOnly = new SimpleCheckboxAction("Current operation only") {

        @Override
        public void onStateChange() {
            updateTexts(fullyLoaded);
        }
    };
    group.add(currentOpOnly);
    logsShowSegmentSeparators = new SimpleCheckboxAction("Show segment separators") {

        @Override
        public void onStateChange() {
            updateTexts(fullyLoaded);
        }
    };
    group.add(logsShowSegmentSeparators);
    alwaysLoadFully = new SimpleCheckboxAction("Always load fully");
    group.add(alwaysLoadFully);
    AnAction load = new AnAction("Load", "Load full log", AllIcons.Actions.Show) {

        @Override
        public void actionPerformed(@NotNull AnActionEvent e) {
            updateTexts(true);
        }

        @Override
        public void update(@NotNull AnActionEvent e) {
            e.getPresentation().setEnabled(!fullyLoaded);
        }
    };
    group.add(load);
    ActionToolbar toolbar = ActionManager.getInstance().createActionToolbar("TraceViewLogsToolbar", group, true);
    toolbar.setTargetComponent(this);
    add(toolbar.getComponent(), BorderLayout.NORTH);
    logs = new JBTextArea();
    JBScrollPane logsScrollPane = new JBScrollPane(logs);
    add(logsScrollPane);
}
Also used : SimpleCheckboxAction(com.evolveum.midpoint.studio.ui.SimpleCheckboxAction) JBTextArea(com.intellij.ui.components.JBTextArea) NotNull(org.jetbrains.annotations.NotNull) JBScrollPane(com.intellij.ui.components.JBScrollPane)

Example 3 with SimpleCheckboxAction

use of com.evolveum.midpoint.studio.ui.SimpleCheckboxAction in project midpoint-studio by Evolveum.

the class OpResultRawPanel method initLayout.

private void initLayout() {
    text = new JBTextArea();
    add(new JBScrollPane(text), BorderLayout.CENTER);
    DefaultActionGroup group = new DefaultActionGroup();
    showChildren = new SimpleCheckboxAction("Show children") {

        @Override
        public void onStateChange() {
            nodeChange(currentNode, loaded);
        }
    };
    group.add(showChildren);
    loadAutomatically = new SimpleCheckboxAction("Load automatically");
    group.add(loadAutomatically);
    AnAction load = new AnAction("Load", "Load full log", AllIcons.Actions.Show) {

        @Override
        public void actionPerformed(@NotNull AnActionEvent e) {
            nodeChange(currentNode, true);
        }

        @Override
        public void update(@NotNull AnActionEvent e) {
            e.getPresentation().setEnabled(!loaded);
        }
    };
    group.add(load);
    ActionToolbar toolbar = ActionManager.getInstance().createActionToolbar("TraceViewVariablesToolbar", group, true);
    toolbar.setTargetComponent(this);
    add(toolbar.getComponent(), BorderLayout.NORTH);
}
Also used : SimpleCheckboxAction(com.evolveum.midpoint.studio.ui.SimpleCheckboxAction) JBTextArea(com.intellij.ui.components.JBTextArea) NotNull(org.jetbrains.annotations.NotNull) JBScrollPane(com.intellij.ui.components.JBScrollPane)

Aggregations

SimpleCheckboxAction (com.evolveum.midpoint.studio.ui.SimpleCheckboxAction)3 JBScrollPane (com.intellij.ui.components.JBScrollPane)3 JBTextArea (com.intellij.ui.components.JBTextArea)3 NotNull (org.jetbrains.annotations.NotNull)3 OpNode (com.evolveum.midpoint.schema.traces.OpNode)1 MidPointProjectNotifier (com.evolveum.midpoint.studio.impl.MidPointProjectNotifier)1 MidPointProjectNotifierAdapter (com.evolveum.midpoint.studio.impl.MidPointProjectNotifierAdapter)1 Format (com.evolveum.midpoint.studio.impl.trace.Format)1 FormattingContext (com.evolveum.midpoint.studio.impl.trace.FormattingContext)1 TreeTableColumnDefinition (com.evolveum.midpoint.studio.ui.TreeTableColumnDefinition)1 ViewingState (com.evolveum.midpoint.studio.ui.trace.ViewingState)1 Node (com.evolveum.midpoint.studio.ui.trace.entry.Node)1 MidPointUtils (com.evolveum.midpoint.studio.util.MidPointUtils)1 MiscUtil (com.evolveum.midpoint.util.MiscUtil)1 AllIcons (com.intellij.icons.AllIcons)1 com.intellij.openapi.actionSystem (com.intellij.openapi.actionSystem)1 CheckboxAction (com.intellij.openapi.actionSystem.ex.CheckboxAction)1 ComboBoxAction (com.intellij.openapi.actionSystem.ex.ComboBoxAction)1 Logger (com.intellij.openapi.diagnostic.Logger)1 DumbAware (com.intellij.openapi.project.DumbAware)1