/* * Copyright 2016 Nokia Solutions and Networks * Licensed under the Apache License, Version 2.0, * see license.txt file for details. */ package org.robotframework.ide.eclipse.main.plugin.assist; import java.util.List; import org.eclipse.jface.resource.ImageDescriptor; import org.eclipse.jface.viewers.StyledString; import org.robotframework.ide.eclipse.main.plugin.RedImages; import com.google.common.base.Joiner; class RedLibraryProposal extends BaseAssistProposal { private final List<String> arguments; private final boolean isImported; private final String description; RedLibraryProposal(final String content, final List<String> arguments, final boolean isImported, final String description, final ProposalMatch match) { super(content, match); this.arguments = arguments; this.isImported = isImported; this.description = description; } boolean isImported() { return isImported; } @Override public List<String> getArguments() { return arguments; } @Override public ImageDescriptor getImage() { return RedImages.getLibraryImage(); } @Override public String getLabel() { return super.getLabel() + (arguments.isEmpty() ? "" : " " + Joiner.on(' ').join(arguments)); } @Override public StyledString getStyledLabel() { final StyledString label = super.getStyledLabel(); if (isImported) { label.append(" (already imported)", StyledString.DECORATIONS_STYLER); } return label; } @Override public boolean hasDescription() { return true; } @Override public String getDescription() { return description; } }