⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ccrenderer.h

📁 非常好用的可移植的多平台C/C++源代码编辑器
💻 H
字号:
#ifndef CCRENDERER_H
#define CCRENDERER_H

#include <wx/wx.h>
#include <wx/grid.h>
#include "parser/token.h"

class CCTable : public wxGridTableBase
{
	public:
		CCTable(TokensArray* tokens) : m_Tokens(tokens) {}
		void SetTokens(TokensArray* tokens) { m_Tokens = tokens; }
	
		int GetNumberRows() { return m_Tokens->GetCount(); }
		int GetNumberCols() { return 1; }
		wxString GetValue( int row, int col )
		{
			return m_Tokens->Item(row)->m_Name;
		}
	
		void SetValue( int, int, const wxString&) {}
		bool IsEmptyCell( int , int  ) { return false; }

	private:
		TokensArray* m_Tokens;
};

class CCRenderer : public wxGridCellStringRenderer
{
	public:
		CCRenderer(TokensArray* tokens) : m_Tokens(tokens) {}
		void SetTokens(TokensArray* tokens) { m_Tokens = tokens; }
		virtual void Draw(wxGrid& grid, wxGridCellAttr& attr, wxDC& dc, const wxRect& rect, int row, int col, bool isSelected);
		virtual wxGridCellRenderer* Clone() const {	return new CCRenderer(m_Tokens); }
	private:
		void DoDrawText(wxGrid& grid, wxDC& dc, wxRect& rect, const wxString& text, const wxColour& fore, int weight, int useThisOffset = -1);
		TokensArray* m_Tokens;
		wxFont m_Font;
};

#endif // CCRENDERER_H

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -