ISECEditLangConfig Class

class ISECEditLangConfig: public ISubject

ISECEditLangConfig provides an interface that other objects use to access the language configuration class, SECEditLangConfig. This interface provides methods for retrieving and assigning the various settings which make up a language definition.

A language configuration constitutes the information to provide the proper syntax coloring for a given programming language (e.g., C++, J++, VBScript, etc.). This includes a list of keywords, operators, delimiters, and what colors and fonts they should be rendered with.

This interface derives from ISubject. SECEditLangConfig objects which derive from this interface are observed by the SECEdit model object (using the subject-observer design pattern) . The model is in turn observed by the viewport, which must reflect changes in the model (including language configuration changes) to the user.

Defined in: ISECEditLangConfig.h

See Also

SECEditLangConfig SECEdit SECEditViewport

Class Members

virtual BOOL GetAutoIndent() const

Queries the enablement of auto-indent.

virtual SECEditColorInfo* GetColorInfo(int nIndex)

Retrieves color group information.

virtual int GetColorInfoCount()

Retrieves the number of color groups defined.

virtual SECEditColorInfo* GetDefaultColorInfo(unsigned short nDefGroupID)

Retrieves the color info used to render normal text.

virtual unsigned short GetDefaultIndex(unsigned short nDefGroupID)

Retrieves the index for the default color used to render normal text.

virtual BOOL GetFontBold()

Queries the enablement of bold font.

virtual CString GetFontFaceName()

Retrieves the current font.

virtual BOOL GetFontItalic()

Queries the enablement of italic font.

virtual int GetFontSize()

Retrieves the current font size.

virtual CString GetLangId()

Retrieves the identifier for this language configuration.

virtual BOOL GetMatchCase()

Queries the enablement of keyword case matching.

virtual BOOL GetReplaceTabs()

Queries the enablement of tab replacment with spaces.

virtual BOOL GetShowWhitespace()

Queries whether whitespace is represented by visible characters.

virtual SECEditKeywordInfo* GetSpecialKeyword(LPCTSTR lpszStartChars, int nLength, int nTokenLength, SECEditKeywordType keytype = secKT_All)

Examines a string for keywords.

virtual void GetSpecialKeywords(SECEditKeywordInfoList& keylist, SECEditKeywordType keytype = secKT_All)

Retrieves a list of keywords.

virtual int GetTabSize() const

Retrieves the number of columns the tab key advances the cursor.

virtual BOOL GetVirtualWhitespace()

Queries the enablement of virtual whitespace.

virtual int IsKeyword(LPCTSTR lpszKeyword, int nLength, unsigned short& nOffset)

Compares a string against the list of keywords.

virtual BOOL IsKWCharacter(unsigned int nChar, SECEditKWChars kwchars)

Queries whether a character is a token keyword character.

virtual void SetAutoIndent(const BOOL bAutoIndent)

Enables auto-indent.

virtual void SetFontBold(BOOL bFontBold)

Enables bold font.

virtual void SetFontFaceName(LPCTSTR lpszFaceName)

Sets the current font.

virtual void SetFontItalic(BOOL bFontItalic)

Enables italic font.

virtual void SetFontSize(int nFontSize)

Sets the current font size.

virtual void SetKWCharacters(LPCTSTR lpszChars, SECEditKWChars kwchars, BOOL bReplaceAll = FALSE)

Sets token based keyword characters.

virtual void SetLangId(LPCTSTR lpszLangId)

Sets the identifier of this language configuraion.

virtual void SetMatchCase(BOOL bMatchCase)

Enables keyword case matching.

virtual void SetReplaceTabs(BOOL v)

Enables replacing tab keys with spaces.

virtual void SetShowWhitespace(BOOL v)

Enables the display of white space using visible characters.

virtual int SetTabSize(const int nTabSize)

Sets the number of columns the tab key advances the cursor.

virtual void SetVirtualWhitespace(BOOL v)

Enables virtual whitespace in the editor.