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

📄 coloreditdoc.cpp

📁 ColorEdit源程序代码
💻 CPP
📖 第 1 页 / 共 2 页
字号:
		} while (count == sizeof(buffer)-1);

	} catch (...) {
		m_text.EndUpdate();
		return FALSE;
	}

	m_text.EndUpdate(0, m_text.GetLength());

	bar.SetPos(80);

	CheckPoint();

	bar.SetPos(100);

	return TRUE;
}

BOOL CColorEditDoc::OnSaveDocument(LPCTSTR lpszPathName) 
{
	try {
		CStdioFile	file(lpszPathName, CFile::modeCreate | CFile::modeWrite | CFile::typeText);
		file.WriteHuge(m_text, m_text.GetLength());
	} catch (...) {
		return FALSE;
	}

	return TRUE;
}

long CColorEditDoc::GetLineCount()
{
	return m_text.GetLineCount();
}

long CColorEditDoc::GetLineOffset(long index)
{
	return m_text.GetLineOffset(index);
}

TCHAR CColorEditDoc::GetAt(long pos)
{
	return m_text.GetAt(pos);
}

COLORREF CColorEditDoc::GetColor(long pos)
{
	return m_text.GetColor(pos);
}

long CColorEditDoc::GetLength()
{
	return m_text.GetLength();
}

CString CColorEditDoc::GetLine(long index)
{
	return m_text.GetLine(index);
}

long CColorEditDoc::Offset2Line(long offset)
{
	return m_text.Offset2Line(offset);
}

CString CColorEditDoc::Range(long start, long end)
{
	return m_text.Mid(start, end-start);
}

void CColorEditDoc::KeywordsSettings()
{

	//m_text.AddComment(_T("/*"), _T("*/"));
	m_text.AddComment(_T("//"), _T("\n"),RGB(255, 0,0));
	//m_text.AddQuote(_T("\""), _T("\""), RGB(150, 200, 200));//RGB(150, 200, 200)
	m_text.AddQuote(_T("\""), _T("\""), RGB(255, 0,0));
	  /////////////////////////////////////////////////////// 
    m_text.AddKeyword(_T("static"),KeywordColor);
	m_text.AddKeyword(_T("const"),KeywordColor);
	m_text.AddKeyword(_T("char"),KeywordColor);
	m_text.AddKeyword(_T("short"),KeywordColor);
	m_text.AddKeyword(_T("unsigned"),KeywordColor);
	m_text.AddKeyword(_T("void"),KeywordColor);
	m_text.AddKeyword(_T("long"),KeywordColor);
	m_text.AddKeyword(_T("int"),KeywordColor);
	m_text.AddKeyword(_T("float"),KeywordColor);
	m_text.AddKeyword(_T("double"),KeywordColor);
	m_text.AddKeyword(_T("struct"),KeywordColor);
	m_text.AddKeyword(_T("typedef"),KeywordColor);
	m_text.AddKeyword(_T("class"),KeywordColor);
	m_text.AddKeyword(_T("public"),KeywordColor);
	m_text.AddKeyword(_T("private"),KeywordColor);
	m_text.AddKeyword(_T("protected"),KeywordColor);
	m_text.AddKeyword(_T("for"),KeywordColor);
	m_text.AddKeyword(_T("while"),KeywordColor);
	m_text.AddKeyword(_T("do"),KeywordColor);
	m_text.AddKeyword(_T("if"),KeywordColor);
	m_text.AddKeyword(_T("else"),KeywordColor);
	m_text.AddKeyword(_T("switch"),KeywordColor);
	m_text.AddKeyword(_T("case"),KeywordColor);
	m_text.AddKeyword(_T("break"),KeywordColor);
	m_text.AddKeyword(_T("continue"),KeywordColor);
	m_text.AddKeyword(_T("return"),KeywordColor);
	m_text.AddKeyword(_T("this"),KeywordColor);
	m_text.AddKeyword(_T("new"),KeywordColor);
	m_text.AddKeyword(_T("delete"),KeywordColor);
	m_text.AddKeyword(_T("sizeof"),KeywordColor);
                                          //预编译指令的颜色设置                       
	m_text.AddKeyword(_T("#define"));
	m_text.AddKeyword(_T("#include"));
	m_text.AddKeyword(_T("#ifdef"));
	m_text.AddKeyword(_T("#ifndef"));
	m_text.AddKeyword(_T("#endif"));
	m_text.AddKeyword(_T("define"));
	m_text.AddKeyword(_T("#else"));
	m_text.AddKeyword(_T("#elseif"));
	m_text.AddKeyword(_T("#undef"));
	
                            ///////////// PMAC 卡的自带关键字颜色设置
	m_text.AddKeyword(_T("ABS"),PmacKeywordColor);
	m_text.AddKeyword(_T("ADDRESS"), PmacKeywordColor);
	m_text.AddKeyword(_T("ADIS"), PmacKeywordColor);
	m_text.AddKeyword(_T("AND"), PmacKeywordColor);
	m_text.AddKeyword(_T("AROT"), PmacKeywordColor);
	m_text.AddKeyword(_T("B"), PmacKeywordColor);
	m_text.AddKeyword(_T("BLOCKSTART"), PmacKeywordColor);
	m_text.AddKeyword(_T("BLOCKSTOP"), PmacKeywordColor);
	m_text.AddKeyword(_T("C"), PmacKeywordColor);
	m_text.AddKeyword(_T("CALL"), PmacKeywordColor);
	m_text.AddKeyword(_T("CC0"), PmacKeywordColor);
	m_text.AddKeyword(_T("CC1"), PmacKeywordColor);
	m_text.AddKeyword(_T("CC2"), PmacKeywordColor);
	m_text.AddKeyword(_T("CCR"), PmacKeywordColor);
	m_text.AddKeyword(_T("CIRCLE1"), PmacKeywordColor);
	m_text.AddKeyword(_T("CIRCLE2"), PmacKeywordColor);
	m_text.AddKeyword(_T("COMMAND"), PmacKeywordColor);
	m_text.AddKeyword(_T("COMMAND^"), PmacKeywordColor);
	m_text.AddKeyword(_T("D"), PmacKeywordColor);
	m_text.AddKeyword(_T("DELAY"), PmacKeywordColor);
	m_text.AddKeyword(_T("DISABLEPLC"), PmacKeywordColor);
	m_text.AddKeyword(_T("DISABLEPLCC"), PmacKeywordColor);
	m_text.AddKeyword(_T("DISPLAY"), PmacKeywordColor);
	m_text.AddKeyword(_T("DWELL"), PmacKeywordColor);
	m_text.AddKeyword(_T("ELSE"), PmacKeywordColor);
	m_text.AddKeyword(_T("ENABLEPLC"),PmacKeywordColor);
	m_text.AddKeyword(_T("ENABLEPLCC"), PmacKeywordColor);
	m_text.AddKeyword(_T("ENDIF"),PmacKeywordColor);
	m_text.AddKeyword(_T("ENDWHILE"), PmacKeywordColor);
	m_text.AddKeyword(_T("F"), PmacKeywordColor);
	m_text.AddKeyword(_T("FRAX"), PmacKeywordColor);
	m_text.AddKeyword(_T("G"), PmacKeywordColor);
	m_text.AddKeyword(_T("GOSUB"), PmacKeywordColor);
	m_text.AddKeyword(_T("GOTO"), PmacKeywordColor);
	m_text.AddKeyword(_T("HOME"), PmacKeywordColor);
	m_text.AddKeyword(_T("HOMEZ"), PmacKeywordColor);
	m_text.AddKeyword(_T("I"), PmacKeywordColor);
	m_text.AddKeyword(_T("IDIS"), PmacKeywordColor);
	m_text.AddKeyword(_T("INC"), PmacKeywordColor);
	m_text.AddKeyword(_T("IROT"), PmacKeywordColor);
	m_text.AddKeyword(_T("J"), PmacKeywordColor);
	m_text.AddKeyword(_T("K"), PmacKeywordColor);
	m_text.AddKeyword(_T("LINEAR"), PmacKeywordColor);
	m_text.AddKeyword(_T("M"), PmacKeywordColor);
	m_text.AddKeyword(_T("MACROAUXREAD"), PmacKeywordColor);
	m_text.AddKeyword(_T("N"), PmacKeywordColor);
	m_text.AddKeyword(_T("NORMAL"), PmacKeywordColor);
	m_text.AddKeyword(_T("O"), PmacKeywordColor);
	m_text.AddKeyword(_T("OR"),PmacKeywordColor);
	m_text.AddKeyword(_T("P"), PmacKeywordColor);
	m_text.AddKeyword(_T("PRELUDE"), PmacKeywordColor);
	m_text.AddKeyword(_T("PSET"), PmacKeywordColor);
	m_text.AddKeyword(_T("PVT"), PmacKeywordColor);
	m_text.AddKeyword(_T("Q"), PmacKeywordColor);
	m_text.AddKeyword(_T("R"), PmacKeywordColor);
	m_text.AddKeyword(_T("RAPID"), PmacKeywordColor);
	m_text.AddKeyword(_T("READ"), PmacKeywordColor);
	m_text.AddKeyword(_T("RETURN"), PmacKeywordColor);
	m_text.AddKeyword(_T("S"), PmacKeywordColor);
	m_text.AddKeyword(_T("SEND"), PmacKeywordColor);
	m_text.AddKeyword(_T("SEND^"), PmacKeywordColor);
	m_text.AddKeyword(_T("SPLINE1"), PmacKeywordColor);
	m_text.AddKeyword(_T("SPLINE2"), PmacKeywordColor);
	m_text.AddKeyword(_T("STOP"), PmacKeywordColor);
	m_text.AddKeyword(_T("T"), PmacKeywordColor);
	m_text.AddKeyword(_T("TA"), PmacKeywordColor);
	m_text.AddKeyword(_T("TINIT"), PmacKeywordColor);
	m_text.AddKeyword(_T("TM"), PmacKeywordColor);
	m_text.AddKeyword(_T("TS"), PmacKeywordColor);
	m_text.AddKeyword(_T("TSELECT"), PmacKeywordColor);
	m_text.AddKeyword(_T("U"), PmacKeywordColor);
	m_text.AddKeyword(_T("V"), PmacKeywordColor);
	m_text.AddKeyword(_T("W"), PmacKeywordColor);
	m_text.AddKeyword(_T("WAIT"), PmacKeywordColor);
	m_text.AddKeyword(_T("WHILE"), PmacKeywordColor);
	m_text.AddKeyword(_T("X"), PmacKeywordColor);
	m_text.AddKeyword(_T("Y"), PmacKeywordColor);
	m_text.AddKeyword(_T("Z"), PmacKeywordColor);

          //////////////////////// P 变量颜色的设置

	CString p_variable;
    char Pvariable[10];
	for(int n=0;n<1024;n++){
		p_variable="P"+ (CString)itoa(n,Pvariable,10);		
		m_text.AddKeyword(p_variable, PVariableColor);
	}
		//////////////////////////// Q 变量颜色的设置
	CString q_variable;
	char Qvariable[10];
	for(int j=0;j<1024;j++){
		q_variable="Q"+ (CString)itoa(j,Qvariable,10);
		m_text.AddKeyword(q_variable, QVariableColor);
	}





	//////////////////////////// I 变量颜色的设置
	CString i_variable;
    char Ivariable[10];
	for(int k=0;k<1024;k++){
		i_variable="I"+ (CString)itoa(k,Ivariable,10);		
		m_text.AddKeyword(i_variable, IVariableColor);
	}


	//////////////////////////// M 变量颜色的设置

	CString m_variable;
    char Mvariable[10];
	for(int i=0;i<1024;i++){
		m_variable="M"+ (CString)itoa(i,Mvariable,10);		
		m_text.AddKeyword(m_variable, MVariableColor);
	}
		


}

⌨️ 快捷键说明

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