Accessor.h 885 B

123456789101112131415161718192021222324252627282930313233343536
  1. // Scintilla source code edit control
  2. /** @file Accessor.h
  3. ** Interfaces between Scintilla and lexers.
  4. **/
  5. // Copyright 1998-2010 by Neil Hodgson <neilh@scintilla.org>
  6. // The License.txt file describes the conditions under which this software may be distributed.
  7. #ifndef ACCESSOR_H
  8. #define ACCESSOR_H
  9. #ifdef SCI_NAMESPACE
  10. namespace Scintilla {
  11. #endif
  12. enum { wsSpace=1, wsTab=2, wsSpaceTab=4, wsInconsistent=8 };
  13. class Accessor;
  14. class WordList;
  15. class PropSetSimple;
  16. typedef bool (*PFNIsCommentLeader)(Accessor &styler, Sci_Position pos, Sci_Position len);
  17. class Accessor : public LexAccessor {
  18. public:
  19. PropSetSimple *pprops;
  20. Accessor(IDocument *pAccess_, PropSetSimple *pprops_);
  21. int GetPropertyInt(const char *, int defaultValue=0) const;
  22. int IndentAmount(Sci_Position line, int *flags, PFNIsCommentLeader pfnIsCommentLeader = 0);
  23. };
  24. #ifdef SCI_NAMESPACE
  25. }
  26. #endif
  27. #endif