| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110 | 
							- // MainTableFunctions.cpp: implementation of the CMainTableFunctions class.
 
- //
 
- //////////////////////////////////////////////////////////////////////
 
- #include "stdafx.h"
 
- #include "cp_main.h"
 
- #include "MainTableFunctions.h"
 
- #include "shared/Tokenizer.h"
 
- #ifdef _DEBUG
 
- #undef THIS_FILE
 
- static char THIS_FILE[]=__FILE__;
 
- #define new DEBUG_NEW
 
- #endif
 
- //////////////////////////////////////////////////////////////////////
 
- // Construction/Destruction
 
- //////////////////////////////////////////////////////////////////////
 
- CMainTableFunctions::CMainTableFunctions()
 
- {
 
- }
 
- CMainTableFunctions::~CMainTableFunctions()
 
- {
 
- }
 
- void CMainTableFunctions::LoadAcceleratorKeys(CAccels& accels, CppSQLite3DB &db)
 
- {
 
- 	try
 
- 	{
 
- 		{
 
- 			CppSQLite3Query q = db.execQuery(_T("SELECT lID, lShortCut FROM Main WHERE lShortCut > 0"));
 
- 		
 
- 			CAccel a;
 
- 			while(q.eof() == false)
 
- 			{
 
- 				a.Cmd = q.getIntField(_T("lID"));
 
- 				a.Key = q.getIntField(_T("lShortCut"));
 
- 				a.RefId = CHotKey::PASTE_OPEN_CLIP;
 
- 			
 
- 				accels.AddAccel(a);
 
- 				q.nextRow();
 
- 			}
 
- 		}
 
- 		{
 
- 			CppSQLite3Query q2 = db.execQuery(_T("SELECT lID, MoveToGroupShortCut FROM Main WHERE MoveToGroupShortCut > 0"));
 
- 			CAccel a2;
 
- 			while(q2.eof() == false)
 
- 			{
 
- 				a2.Cmd = q2.getIntField(_T("lID"));
 
- 				a2.Key = q2.getIntField(_T("MoveToGroupShortCut"));
 
- 				a2.RefId = CHotKey::MOVE_TO_GROUP;
 
- 				accels.AddAccel(a2);
 
- 				q2.nextRow();
 
- 			}
 
- 		}
 
- 	}
 
- 	CATCH_SQLITE_EXCEPTION
 
- }
 
- CString CMainTableFunctions::GetDisplayText(int nMaxLines, const CString &OrigText)
 
- {
 
- 	CString text = OrigText;
 
- 	// assign tabs to 2 spaces (rather than the default 8)
 
- 	text.Replace(_T("\t"), _T("  "));
 
- 	if(g_Opt.m_bDescShowLeadingWhiteSpace)
 
- 		return text;
 
- 	// else, remove the leading indent from every line.
 
- 	// get the lines
 
- 	CString token;
 
- 	CStringArray tokens;
 
- 	CTokenizer tokenizer(text,"\r\n");
 
- 	for(int nLines=0; nLines < 100 && tokenizer.Next(token); nLines++)
 
- 	{
 
- 		tokens.Add(token);
 
- 	}
 
- 	// remove each line's indent
 
- 	TCHAR chFirst;
 
- 	CString line;
 
- 	INT_PTR count = tokens.GetSize();
 
- 	text = "";
 
- 	for(int i=0; i < count; i++)
 
- 	{
 
- 		line = tokens.ElementAt(i);
 
- 		chFirst = line.GetAt(0);
 
- 		if(chFirst == ' ' || chFirst == '\t')
 
- 		{
 
- 			text += "» "; // show indication that the line is modified
 
- 			line.TrimLeft();
 
- 			text += line;
 
- 		}
 
- 		else
 
- 			text += line;
 
- 		text += "\n";
 
- 	}
 
- 	return text;
 
- }
 
 
  |