Make CatalogsComponent::findByName return only exact matches
In KStars, we use SkyComponent::findByName in many places to get
objects (e.g. SkyComponent::findByName(i18n("Venus")) is a typical
pattern). In particular, some use-cases do the same with deep-sky
objects, but desire exact matches. For example, WUTDialog (What's up
tonight) and ObservingList (Observation Planner) both call
CatalogsComponent::findByName(...) to test if objects exist (otherwise
they should throw an error).
The present behavior tries to return prefix-matches instead of only
exact matches. This is desirable in FindDialog. It is not desirable in
these places that need exact matching and may silently alias one
object for another (eg: NGC 317 does not exist in OpenNGC because only
NGC 317A and NGC 317B are valid objects. Therefore, NGC 317 gets
silently aliased to NGC 3170).
However, CatalogsComponent::findByName is not used in FindDialog. This
patch proposes that CatalogsComponent::findByName ignore multiple
matches.
[Needs Checking] Add documentation on the Batch Add feature
I've not been able to see the docs on my build of KStars. Going to
Help > KStars Handbook actually opens a Web URL in a browser. Is this
expected behavior? If it is, would someone be kind enough to review
this change and make sure it follows `doxygen` syntax?
"Batch add" option in the Observing List: add multiple objects (e.g. from a text file list) easily
Note: Requires CatalogComponent::findByName implementation from Merge
Request !87 (or alternatively !93) to work correctly. Might conflict
with !93, needing some changes to become compatible.