All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.sourceforge.squirrel_sql.client.gui.session.ToolsPopupCompletionInfo Maven / Gradle / Ivy

package net.sourceforge.squirrel_sql.client.gui.session;

import net.sourceforge.squirrel_sql.fw.completion.CompletionInfo;
import net.sourceforge.squirrel_sql.fw.util.Resources;
import net.sourceforge.squirrel_sql.client.action.SquirrelAction;

import javax.swing.*;

public class ToolsPopupCompletionInfo extends CompletionInfo
{
   private String _selectionString;
   private Action _action;
   private int _maxCandidateSelectionStringName;
   private String _description;

   public ToolsPopupCompletionInfo(String selectionString, Action action)
   {
      _selectionString = selectionString;
      _action = action;
   }

   public String getCompareString()
   {
      return _selectionString;
   }

   public String getCompletionString()
   {
      return "";
   }

   public Action getAction()
   {
      return _action;
   }

   public String toString()
   {
      return _selectionString + getDist() + getDescription();
   }

   private Object getDescription()
   {
      if(null == _description)
      {
         if(null != _action.getValue(Action.SHORT_DESCRIPTION))
         {
            _description = _action.getValue(Action.SHORT_DESCRIPTION).toString();
         }
         else
         {
            _description = "";
         }

         if(    false == _action instanceof SquirrelAction  // SquirrelAction descriptions already contain the accelerator 
             && null != _action.getValue(Resources.ACCELERATOR_STRING)
             && 0 != _action.getValue(Resources.ACCELERATOR_STRING).toString().trim().length())
         {
            _description += " (" + _action.getValue(Resources.ACCELERATOR_STRING) + ")";
         }
      }
      return _description;
   }

   private String getDist()
   {
      int len = _maxCandidateSelectionStringName - _selectionString.length() + 4;

      StringBuffer ret = new StringBuffer();

      for(int i=0; i < len; ++i)
      {
         ret.append(' ');
      }

      return ret.toString();
   }

   public void setMaxCandidateSelectionStringName(int maxCandidateSelectionStringName)
   {
      _maxCandidateSelectionStringName = maxCandidateSelectionStringName;
   }


   public String getSelectionString()
   {
      return _selectionString;
   }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy