From: <sh...@us...> - 2007-10-23 11:23:57
|
Revision: 10946 http://jedit.svn.sourceforge.net/jedit/?rev=10946&view=rev Author: shlomy Date: 2007-10-23 04:23:55 -0700 (Tue, 23 Oct 2007) Log Message: ----------- Handle the case when {tag} or {project} cannot be replaced in dynamic actions Modified Paths: -------------- plugins/CtagsInterface/trunk/src/ctags/QueryAction.java Modified: plugins/CtagsInterface/trunk/src/ctags/QueryAction.java =================================================================== --- plugins/CtagsInterface/trunk/src/ctags/QueryAction.java 2007-10-23 08:48:35 UTC (rev 10945) +++ plugins/CtagsInterface/trunk/src/ctags/QueryAction.java 2007-10-23 11:23:55 UTC (rev 10946) @@ -3,6 +3,8 @@ import java.sql.ResultSet; import java.sql.SQLException; +import javax.swing.JOptionPane; + import options.ActionsOptionPane; import org.gjt.sp.jedit.EditAction; @@ -33,11 +35,22 @@ @Override public void invoke(View view) { - String s = query.replace(TAG, - CtagsInterfacePlugin.getDestinationTag(view)); + String tag = CtagsInterfacePlugin.getDestinationTag(view); + if (tag == null && query.contains(TAG)) { + JOptionPane.showMessageDialog(view, + "No tag selected nor identified at caret"); + return; + } + String s = (tag == null) ? query : query.replace(TAG, tag); projects.ProjectWatcher pvi = CtagsInterfacePlugin.getProjectWatcher(); - String project = (pvi == null) ? "" : pvi.getActiveProject(view); - s = s.replace(PROJECT, project); + String project = (pvi == null) ? null : pvi.getActiveProject(view); + if (project == null && s.contains(PROJECT)) { + JOptionPane.showMessageDialog(view, + "No active project exists"); + return; + } + if (project != null) + s = s.replace(PROJECT, project); ResultSet rs; try { rs = CtagsInterfacePlugin.getDB().query(s); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |