There are some odd exclusions from the Scintilla namespace. For
example, in SString.h, CompareCaseInsensitive, CompareNCaseInsensitive
and EqualCaseInsensitive are outside the Scintilla namespace. It is
unlikely these will clash but it would be easier to understand if
there was a consistent rule for whether an identifier goes in the
namespace or not. I don't expect static identfiers to be namespaced or
the LexerModule instances maintained by LexGen.py or the Scintilla_
identifiers in Scintilla.h which have to use a prefix instead (as they
are exported from the DLL and can be used from C code).

   Avoiding complexity in Platform.h is something that has consumed
quite a bit of work in the past. I'd like to see the #ifdef
PLAT_MACOSX removed from the Window class eventually even if it means
using an platform defined WindowImpl class that holds the three IDs
and then use pointers to this type as WindowIDs.

   WaitMouseMoved is really a problem on all platforms: Scintilla
shouldn't initiate a drag until the user has moved the mouse with the
button down. This should be done through extra state and code in the
mouse movement handler rather than as a synchronous call so that other
events continue to be handled.

   All of these issues should be seen as "nice to fix in the future"
rather than things that need attention now.

   Neil

_______________________________________________
Scintilla-interest mailing list
[email protected]
http://mailman.lyra.org/mailman/listinfo/scintilla-interest

Reply via email to