Merge branch 'GWLP_648' of https://github.com/chcg/notepad-plus-plus into x64_build_adaptions

This commit is contained in:
Christian Grasser 2015-06-08 13:51:57 +02:00
commit 324a29a848
301 changed files with 32488 additions and 10625 deletions

6
.gitignore vendored
View File

@ -104,3 +104,9 @@ $RECYCLE.BIN/
*.DS_Store *.DS_Store
*.swp *.swp
*.out *.out
scintilla/.hgeol
scintilla/.hgtags
scintilla/cppcheck.suppress
scintilla/.hg_archival.txt
scintilla/.hgignore
scintilla/bin/__init__.py

View File

@ -55,14 +55,14 @@ void RegExtDlg::doDialog(bool isRTL)
{ {
DLGTEMPLATE *pMyDlgTemplate = NULL; DLGTEMPLATE *pMyDlgTemplate = NULL;
HGLOBAL hMyDlgTemplate = makeRTLResource(IDD_REGEXT_BOX, &pMyDlgTemplate); HGLOBAL hMyDlgTemplate = makeRTLResource(IDD_REGEXT_BOX, &pMyDlgTemplate);
::DialogBoxIndirectParam(_hInst, pMyDlgTemplate, _hParent, (DLGPROC)dlgProc, (LPARAM)this); ::DialogBoxIndirectParam(_hInst, pMyDlgTemplate, _hParent, dlgProc, (LPARAM)this);
::GlobalFree(hMyDlgTemplate); ::GlobalFree(hMyDlgTemplate);
} }
else else
::DialogBoxParam(_hInst, MAKEINTRESOURCE(IDD_REGEXT_BOX), _hParent, (DLGPROC)dlgProc, (LPARAM)this); ::DialogBoxParam(_hInst, MAKEINTRESOURCE(IDD_REGEXT_BOX), _hParent, dlgProc, (LPARAM)this);
}; };
BOOL CALLBACK RegExtDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK RegExtDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam)
{ {
switch (Message) switch (Message)
{ {

View File

@ -29,10 +29,7 @@
#ifndef REG_EXT_DLG_H #ifndef REG_EXT_DLG_H
#define REG_EXT_DLG_H #define REG_EXT_DLG_H
#ifndef REGEXTDLGRC_H
#include "regExtDlgRc.h" #include "regExtDlgRc.h"
#endif //REGEXTDLGRC_H
#include "StaticDialog.h" #include "StaticDialog.h"
const int extNameLen = 32; const int extNameLen = 32;
@ -48,7 +45,7 @@ public :
private : private :
bool _isCustomize; bool _isCustomize;
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
void getRegisteredExts(); void getRegisteredExts();
void getDefSupportedExts(); void getDefSupportedExts();

View File

@ -291,7 +291,6 @@ BEGIN
MENUITEM "Sort Lines As Decimals (Comma) Descending", IDM_EDIT_SORTLINES_DECIMALCOMMA_DESCENDING MENUITEM "Sort Lines As Decimals (Comma) Descending", IDM_EDIT_SORTLINES_DECIMALCOMMA_DESCENDING
MENUITEM "Sort Lines As Decimals (Dot) Descending", IDM_EDIT_SORTLINES_DECIMALDOT_DESCENDING MENUITEM "Sort Lines As Decimals (Dot) Descending", IDM_EDIT_SORTLINES_DECIMALDOT_DESCENDING
END END
MENUITEM SEPARATOR
POPUP "Comment/Uncomment" POPUP "Comment/Uncomment"
BEGIN BEGIN
MENUITEM "Toggle Single Line Comment", IDM_EDIT_BLOCK_COMMENT MENUITEM "Toggle Single Line Comment", IDM_EDIT_BLOCK_COMMENT

View File

@ -65,6 +65,9 @@ struct SortTaskListPred
LRESULT CALLBACK Notepad_plus_Window::Notepad_plus_Proc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam) LRESULT CALLBACK Notepad_plus_Window::Notepad_plus_Proc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam)
{ {
if (hwnd == NULL)
return FALSE;
switch(Message) switch(Message)
{ {
case WM_NCCREATE : // First message we get the ptr of instantiated object case WM_NCCREATE : // First message we get the ptr of instantiated object

View File

@ -60,7 +60,7 @@ BufferID Notepad_plus::doOpen(const TCHAR *fileName, bool isRecursive, bool isRe
} }
assert( _tcslen( longFileName ) == getFullPathNameResult ); assert( _tcslen( longFileName ) == getFullPathNameResult );
// ignore the returned value of fuction due to win64 redirection system // ignore the returned value of function due to win64 redirection system
::GetLongPathName(longFileName, longFileName, longFileNameBufferSize); ::GetLongPathName(longFileName, longFileName, longFileNameBufferSize);
bool isSnapshotMode = backupFileName != NULL && PathFileExists(backupFileName); bool isSnapshotMode = backupFileName != NULL && PathFileExists(backupFileName);
@ -380,7 +380,90 @@ bool Notepad_plus::doSave(BufferID id, const TCHAR * filename, bool isCopy)
if (!res) if (!res)
{ {
if(error_msg.empty()) // try to open Notepad++ in admin mode
if (!_isAdministrator)
{
bool isSnapshotMode = NppParameters::getInstance()->getNppGUI().isSnapshotMode();
if (isSnapshotMode) // if both rememberSession && backup mode are enabled
{ // Open the 2nd Notepad++ instance in Admin mode, then close the 1st instance.
int openInAdminModeRes = _nativeLangSpeaker.messageBox("OpenInAdminMode",
_pPublicInterface->getHSelf(),
TEXT("The file cannot be saved and it may be protected.\rDo you want to launch Notepad++ in Administrator mode?"),
TEXT("Save failed"),
MB_YESNO);
if (openInAdminModeRes == IDYES)
{
TCHAR nppFullPath[MAX_PATH];
::GetModuleFileName(NULL, nppFullPath, MAX_PATH);
generic_string args = TEXT("-multiInst");
size_t res = (size_t)::ShellExecute(_pPublicInterface->getHSelf(), TEXT("runas"), nppFullPath, args.c_str(), TEXT("."), SW_SHOW);
// If the function succeeds, it returns a value greater than 32. If the function fails,
// it returns an error value that indicates the cause of the failure.
// https://msdn.microsoft.com/en-us/library/windows/desktop/bb762153%28v=vs.85%29.aspx
if (res < 32)
{
_nativeLangSpeaker.messageBox("OpenInAdminModeFailed",
_pPublicInterface->getHSelf(),
TEXT("Notepad++ cannot be opened in Administrator mode."),
TEXT("Open in Administrator mode failed"),
MB_OK);
}
else
{
::SendMessage(_pPublicInterface->getHSelf(), WM_CLOSE, 0, 0);
}
}
}
else // rememberSession && backup mode are not both enabled
{ // open only the file to save in Notepad++ of Administrator mode by keeping the current instance.
int openInAdminModeRes = _nativeLangSpeaker.messageBox("OpenInAdminModeWithoutCloseCurrent",
_pPublicInterface->getHSelf(),
TEXT("The file cannot be saved and it may be protected.\rDo you want to launch Notepad++ in Administrator mode?"),
TEXT("Save failed"),
MB_YESNO);
if (openInAdminModeRes == IDYES)
{
TCHAR nppFullPath[MAX_PATH];
::GetModuleFileName(NULL, nppFullPath, MAX_PATH);
BufferID bufferID = bufferID = _pEditView->getCurrentBufferID();
Buffer * buf = MainFileManager->getBufferByID(bufferID);
//process the fileNamePath into LRF
generic_string fileNamePath = buf->getFullPathName();
generic_string args = TEXT("-multiInst -nosession ");
args += TEXT("\"");
args += fileNamePath;
args += TEXT("\"");
size_t res = (size_t)::ShellExecute(_pPublicInterface->getHSelf(), TEXT("runas"), nppFullPath, args.c_str(), TEXT("."), SW_SHOW);
// If the function succeeds, it returns a value greater than 32. If the function fails,
// it returns an error value that indicates the cause of the failure.
// https://msdn.microsoft.com/en-us/library/windows/desktop/bb762153%28v=vs.85%29.aspx
if (res < 32)
{
_nativeLangSpeaker.messageBox("OpenInAdminModeFailed",
_pPublicInterface->getHSelf(),
TEXT("Notepad++ cannot be opened in Administrator mode."),
TEXT("Open in Administrator mode failed"),
MB_OK);
}
}
}
}
else
{
if (error_msg.empty())
{ {
_nativeLangSpeaker.messageBox("FileLockedWarning", _nativeLangSpeaker.messageBox("FileLockedWarning",
_pPublicInterface->getHSelf(), _pPublicInterface->getHSelf(),
@ -393,8 +476,9 @@ bool Notepad_plus::doSave(BufferID id, const TCHAR * filename, bool isCopy)
::MessageBox(_pPublicInterface->getHSelf(), error_msg.c_str(), TEXT("Save failed"), MB_OK); ::MessageBox(_pPublicInterface->getHSelf(), error_msg.c_str(), TEXT("Save failed"), MB_OK);
} }
} }
}
if (_pFuncList && (!_pFuncList->isClosed()) && _pFuncList->isVisible()) if (res && _pFuncList && (!_pFuncList->isClosed()) && _pFuncList->isVisible())
{ {
_pFuncList->reload(); _pFuncList->reload();
} }

View File

@ -167,12 +167,7 @@ BOOL Notepad_plus::notify(SCNotification *notification)
(hWin == _pNonEditView->getHSelf())) // In the another view group (hWin == _pNonEditView->getHSelf())) // In the another view group
{ {
docGotoAnotherEditView(isInCtrlStat?TransferClone:TransferMove); docGotoAnotherEditView(isInCtrlStat?TransferClone:TransferMove);
}/* }
else if ((hWin == _pProjectPanel_1->getTreeHandle()))
{
//printStr(TEXT("IN!!!"));
}*/
else else
{ {
RECT nppZone; RECT nppZone;
@ -325,6 +320,26 @@ BOOL Notepad_plus::notify(SCNotification *notification)
{ {
command(IDM_VIEW_SUMMARY); command(IDM_VIEW_SUMMARY);
} }
else if (lpnm->dwItemSpec == DWORD(STATUSBAR_DOC_TYPE))
{
POINT p;
::GetCursorPos(&p);
HMENU hLangMenu = ::GetSubMenu(_mainMenuHandle, MENUINDEX_LANGUAGE);
TrackPopupMenu(hLangMenu, 0, p.x, p.y, 0, _pPublicInterface->getHSelf(), NULL);
}
else if (lpnm->dwItemSpec == DWORD(STATUSBAR_EOF_FORMAT))
{
POINT p;
::GetCursorPos(&p);
MenuPosition & menuPos = getMenuPosition("edit-eolConversion");
HMENU hEditMenu = ::GetSubMenu(_mainMenuHandle, menuPos._x);
if (!hEditMenu)
return TRUE;
HMENU hEolFormatMenu = ::GetSubMenu(hEditMenu, menuPos._y);
if (!hEolFormatMenu)
return TRUE;
TrackPopupMenu(hEolFormatMenu, 0, p.x, p.y, 0, _pPublicInterface->getHSelf(), NULL);
}
} }
break; break;
} }
@ -341,6 +356,31 @@ BOOL Notepad_plus::notify(SCNotification *notification)
else if (notification->nmhdr.hwndFrom == _subDocTab.getHSelf()) else if (notification->nmhdr.hwndFrom == _subDocTab.getHSelf())
{ {
switchEditViewTo(SUB_VIEW); switchEditViewTo(SUB_VIEW);
}
else if (notification->nmhdr.hwndFrom == _statusBar.getHSelf()) // From Status Bar
{
LPNMMOUSE lpnm = (LPNMMOUSE)notification;
if (lpnm->dwItemSpec == DWORD(STATUSBAR_DOC_TYPE))
{
POINT p;
::GetCursorPos(&p);
HMENU hLangMenu = ::GetSubMenu(_mainMenuHandle, MENUINDEX_LANGUAGE);
TrackPopupMenu(hLangMenu, 0, p.x, p.y, 0, _pPublicInterface->getHSelf(), NULL);
}
else if (lpnm->dwItemSpec == DWORD(STATUSBAR_EOF_FORMAT))
{
POINT p;
::GetCursorPos(&p);
MenuPosition & menuPos = getMenuPosition("edit-eolConversion");
HMENU hEditMenu = ::GetSubMenu(_mainMenuHandle, menuPos._x);
if (!hEditMenu)
return TRUE;
HMENU hEolFormatMenu = ::GetSubMenu(hEditMenu, menuPos._y);
if (!hEolFormatMenu)
return TRUE;
TrackPopupMenu(hEolFormatMenu, 0, p.x, p.y, 0, _pPublicInterface->getHSelf(), NULL);
}
return TRUE;
} }
else if (_pFileSwitcherPanel && notification->nmhdr.hwndFrom == _pFileSwitcherPanel->getHSelf()) else if (_pFileSwitcherPanel && notification->nmhdr.hwndFrom == _pFileSwitcherPanel->getHSelf())
{ {
@ -361,7 +401,7 @@ BOOL Notepad_plus::notify(SCNotification *notification)
return TRUE; return TRUE;
} }
} }
else // From tool bar or Status Bar else // From tool bar
return TRUE; return TRUE;
//break; //break;

View File

@ -1628,10 +1628,7 @@ void NppParameters::setFontList(HWND hWnd)
lf.lfPitchAndFamily = 0; lf.lfPitchAndFamily = 0;
HDC hDC = ::GetDC(hWnd); HDC hDC = ::GetDC(hWnd);
::EnumFontFamiliesEx(hDC, ::EnumFontFamiliesEx(hDC, &lf, EnumFontFamExProc, (LPARAM)&_fontlist, 0);
&lf,
(FONTENUMPROC) EnumFontFamExProc,
(LPARAM) &_fontlist, 0);
} }
void NppParameters::getLangKeywordsFromXmlTree() void NppParameters::getLangKeywordsFromXmlTree()

View File

@ -1618,19 +1618,20 @@ private:
COLORREF _currentDefaultBgColor; COLORREF _currentDefaultBgColor;
COLORREF _currentDefaultFgColor; COLORREF _currentDefaultFgColor;
static int CALLBACK EnumFontFamExProc(ENUMLOGFONTEX *lpelfe, NEWTEXTMETRICEX *, int, LPARAM lParam) { static int CALLBACK EnumFontFamExProc(const LOGFONT* lpelfe, const TEXTMETRIC *, DWORD, LPARAM lParam) {
std::vector<generic_string> *pStrVect = (std::vector<generic_string> *)lParam; std::vector<generic_string>& strVect = *(std::vector<generic_string> *)lParam;
size_t vectSize = pStrVect->size(); const size_t vectSize = strVect.size();
const TCHAR* lfFaceName = ((ENUMLOGFONTEX*)lpelfe)->elfLogFont.lfFaceName;
//Search through all the fonts, EnumFontFamiliesEx never states anything about order //Search through all the fonts, EnumFontFamiliesEx never states anything about order
//Start at the end though, that's the most likely place to find a duplicate //Start at the end though, that's the most likely place to find a duplicate
for(int i = vectSize - 1 ; i >= 0 ; i--) { for(int i = vectSize - 1 ; i >= 0 ; i--) {
if ( !lstrcmp((*pStrVect)[i].c_str(), (const TCHAR *)lpelfe->elfLogFont.lfFaceName) ) if ( !lstrcmp(strVect[i].c_str(), lfFaceName) )
return 1; //we already have seen this typeface, ignore it return 1; //we already have seen this typeface, ignore it
} }
//We can add the font //We can add the font
//Add the face name and not the full name, we do not care about any styles //Add the face name and not the full name, we do not care about any styles
pStrVect->push_back((TCHAR *)lpelfe->elfLogFont.lfFaceName); strVect.push_back(lfFaceName);
return 1; // I want to get all fonts return 1; // I want to get all fonts
}; };

View File

@ -40,18 +40,10 @@
FileManager * FileManager::_pSelf = new FileManager(); FileManager * FileManager::_pSelf = new FileManager();
static const int blockSize = 128 * 1024 + 4; static const int blockSize = 128 * 1024 + 4;
// Ordre important!! Ne le changes pas!
//SC_EOL_CRLF (0), SC_EOL_CR (1), or SC_EOL_LF (2).
static const int CR = 0x0D; static const int CR = 0x0D;
static const int LF = 0x0A; static const int LF = 0x0A;
Buffer::Buffer(FileManager * pManager, BufferID id, Document doc, DocFileStatus type, const TCHAR *fileName) //type must be either DOC_REGULAR or DOC_UNNAMED Buffer::Buffer(FileManager * pManager, BufferID id, Document doc, DocFileStatus type, const TCHAR *fileName) //type must be either DOC_REGULAR or DOC_UNNAMED
: _pManager(pManager), _id(id), _isDirty(false), _doc(doc), _isFileReadOnly(false), _isUserReadOnly(false), _recentTag(-1), _references(0), : _pManager(pManager), _id(id), _isDirty(false), _doc(doc), _isFileReadOnly(false), _isUserReadOnly(false), _recentTag(-1), _references(0),
_canNotify(false), _timeStamp(0), _needReloading(false), _encoding(-1), _backupFileName(TEXT("")), _isModified(false), _isLoadedDirty(false), _lang(L_TEXT) _canNotify(false), _timeStamp(0), _needReloading(false), _encoding(-1), _backupFileName(TEXT("")), _isModified(false), _isLoadedDirty(false), _lang(L_TEXT)

View File

@ -29,9 +29,7 @@
#ifndef BUFFER_H #ifndef BUFFER_H
#define BUFFER_H #define BUFFER_H
#ifndef UTF8_16_H
#include "Utf8_16.h" #include "Utf8_16.h"
#endif// UTF8_16_H
class Buffer; class Buffer;
typedef Buffer * BufferID; //each buffer has unique ID by which it can be retrieved typedef Buffer * BufferID; //each buffer has unique ID by which it can be retrieved

View File

@ -564,7 +564,7 @@ void Finder::gotoNextFoundResult(int direction)
} }
} }
BOOL CALLBACK FindReplaceDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK FindReplaceDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam)
{ {
switch (message) switch (message)
{ {
@ -2664,7 +2664,7 @@ void Finder::setFinderStyle()
_scintView.execute(SCI_COLOURISE, 0, -1); _scintView.execute(SCI_COLOURISE, 0, -1);
} }
BOOL CALLBACK Finder::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK Finder::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam)
{ {
switch (message) switch (message)
{ {
@ -2795,7 +2795,7 @@ void FindIncrementDlg::display(bool toShow) const
_pRebar->setIDVisible(_rbBand.wID, toShow); _pRebar->setIDVisible(_rbBand.wID, toShow);
} }
BOOL CALLBACK FindIncrementDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK FindIncrementDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam)
{ {
switch (message) switch (message)
{ {

View File

@ -152,7 +152,7 @@ public:
void DeleteResult(); void DeleteResult();
protected : protected :
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
bool notify(SCNotification *notification); bool notify(SCNotification *notification);
private: private:
@ -305,7 +305,7 @@ public :
protected : protected :
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
void addText2Combo(const TCHAR * txt2add, HWND comboID, bool isUTF8 = false); void addText2Combo(const TCHAR * txt2add, HWND comboID, bool isUTF8 = false);
generic_string getTextFromCombo(HWND hCombo, bool isUnicode = false) const; generic_string getTextFromCombo(HWND hCombo, bool isUnicode = false) const;
static LONG_PTR originalFinderProc; static LONG_PTR originalFinderProc;
@ -403,7 +403,7 @@ private :
ReBar * _pRebar; ReBar * _pRebar;
REBARBANDINFO _rbBand; REBARBANDINFO _rbBand;
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
void markSelectedTextInc(bool enable, FindOption *opt = NULL); void markSelectedTextInc(bool enable, FindOption *opt = NULL);
}; };

View File

@ -29,7 +29,7 @@
#include "GoToLineDlg.h" #include "GoToLineDlg.h"
BOOL CALLBACK GoToLineDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM) INT_PTR CALLBACK GoToLineDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM)
{ {
switch (message) switch (message)
{ {

View File

@ -68,7 +68,7 @@ public :
protected : protected :
enum mode {go2line, go2offsset}; enum mode {go2line, go2offsset};
mode _mode; mode _mode;
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
private : private :

View File

@ -669,8 +669,8 @@ protected:
bool _lineNumbersShown; bool _lineNumbersShown;
bool _wrapRestoreNeeded; bool _wrapRestoreNeeded;
typedef std::map<int, Style> StyleMap; typedef std::unordered_map<int, Style> StyleMap;
typedef std::map<BufferID, StyleMap*> BufferStyleMap; typedef std::unordered_map<BufferID, StyleMap*> BufferStyleMap;
BufferStyleMap _hotspotStyles; BufferStyleMap _hotspotStyles;
int _beginSelectPosition; int _beginSelectPosition;

View File

@ -58,7 +58,7 @@ bool SharedParametersDialog::setPropertyByCheck(HWND hwnd, WPARAM id, bool & boo
return TRUE; return TRUE;
} }
BOOL CALLBACK SharedParametersDialog::run_dlgProc(UINT Message, WPARAM wParam, LPARAM /*lParam*/) INT_PTR CALLBACK SharedParametersDialog::run_dlgProc(UINT Message, WPARAM wParam, LPARAM /*lParam*/)
{ {
switch (Message) switch (Message)
{ {
@ -85,7 +85,7 @@ BOOL CALLBACK SharedParametersDialog::run_dlgProc(UINT Message, WPARAM wParam, L
return FALSE; return FALSE;
} }
BOOL CALLBACK FolderStyleDialog::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK FolderStyleDialog::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam)
{ {
switch (Message) switch (Message)
{ {
@ -250,7 +250,7 @@ void FolderStyleDialog::retrieve(TCHAR *dest, const TCHAR *toRetrieve, TCHAR *pr
dest[j++] = '\0'; dest[j++] = '\0';
} }
BOOL CALLBACK KeyWordsStyleDialog::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK KeyWordsStyleDialog::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam)
{ {
switch (Message) switch (Message)
{ {
@ -391,7 +391,7 @@ void KeyWordsStyleDialog::updateDlg()
::SendDlgItemMessage(_hSelf, IDC_KEYWORD8_PREFIX_CHECK, BM_SETCHECK, _pUserLang->_isPrefix[7], 0); ::SendDlgItemMessage(_hSelf, IDC_KEYWORD8_PREFIX_CHECK, BM_SETCHECK, _pUserLang->_isPrefix[7], 0);
} }
BOOL CALLBACK CommentStyleDialog::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK CommentStyleDialog::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam)
{ {
switch (Message) switch (Message)
{ {
@ -696,7 +696,7 @@ void SymbolsStyleDialog::updateDlg()
::SendDlgItemMessage(_hSelf, IDC_OPERATOR2_EDIT, WM_SETTEXT, 0, (LPARAM)(_pUserLang->_keywordLists[SCE_USER_KWLIST_OPERATORS2])); ::SendDlgItemMessage(_hSelf, IDC_OPERATOR2_EDIT, WM_SETTEXT, 0, (LPARAM)(_pUserLang->_keywordLists[SCE_USER_KWLIST_OPERATORS2]));
} }
BOOL CALLBACK SymbolsStyleDialog::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK SymbolsStyleDialog::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam)
{ {
switch (Message) switch (Message)
{ {
@ -1037,7 +1037,7 @@ void UserDefineDialog::updateDlg()
_symbolsStyleDlg.updateDlg(); _symbolsStyleDlg.updateDlg();
} }
BOOL CALLBACK UserDefineDialog::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK UserDefineDialog::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam)
{ {
NppParameters *pNppParam = NppParameters::getInstance(); NppParameters *pNppParam = NppParameters::getInstance();
switch (message) switch (message)
@ -1505,7 +1505,7 @@ BOOL CALLBACK UserDefineDialog::run_dlgProc(UINT message, WPARAM wParam, LPARAM
return FALSE; return FALSE;
} }
BOOL CALLBACK StringDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM) INT_PTR CALLBACK StringDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM)
{ {
switch (Message) switch (Message)
{ {
@ -1547,7 +1547,7 @@ BOOL CALLBACK StringDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM)
} }
} }
BOOL CALLBACK StylerDlg::dlgProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK StylerDlg::dlgProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{ {
StylerDlg * dlg = (StylerDlg *)::GetProp(hwnd, TEXT("Styler dialog prop")); StylerDlg * dlg = (StylerDlg *)::GetProp(hwnd, TEXT("Styler dialog prop"));
NppParameters *pNppParam = NppParameters::getInstance(); NppParameters *pNppParam = NppParameters::getInstance();
@ -1641,7 +1641,7 @@ BOOL CALLBACK StylerDlg::dlgProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM
dlg->_pFgColour->display(); dlg->_pFgColour->display();
dlg->_pBgColour->display(); dlg->_pBgColour->display();
map<int, int>::iterator iter = globalMappper().nestingMapper.begin(); unordered_map<int, int>::iterator iter = globalMappper().nestingMapper.begin();
for (; iter != globalMappper().nestingMapper.end(); ++iter) for (; iter != globalMappper().nestingMapper.end(); ++iter)
{ {
::SendDlgItemMessage(hwnd, iter->first, BM_SETCHECK, style._nesting & iter->second, 0); ::SendDlgItemMessage(hwnd, iter->first, BM_SETCHECK, style._nesting & iter->second, 0);
@ -1730,7 +1730,7 @@ BOOL CALLBACK StylerDlg::dlgProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM
style._fontStyle |= FONTSTYLE_UNDERLINE; style._fontStyle |= FONTSTYLE_UNDERLINE;
style._nesting = SCE_USER_MASK_NESTING_NONE; style._nesting = SCE_USER_MASK_NESTING_NONE;
map<int, int>::iterator iter = globalMappper().nestingMapper.begin(); unordered_map<int, int>::iterator iter = globalMappper().nestingMapper.begin();
for (; iter != globalMappper().nestingMapper.end(); ++iter) for (; iter != globalMappper().nestingMapper.end(); ++iter)
{ {
if (BST_CHECKED == ::SendMessage(::GetDlgItem(hwnd, iter->first), BM_GETCHECK, 0, 0)) if (BST_CHECKED == ::SendMessage(::GetDlgItem(hwnd, iter->first), BM_GETCHECK, 0, 0))

View File

@ -51,7 +51,7 @@ static int max(int a, int b) {
#endif //__GNUC__ #endif //__GNUC__
#include "tchar.h" #include "tchar.h"
#include "scilexer.h" #include "scilexer.h"
#include <map> #include <unordered_map>
class ScintillaEditView; class ScintillaEditView;
class UserLangContainer; class UserLangContainer;
@ -66,18 +66,18 @@ class GlobalMappers
{ {
public: public:
std::map<generic_string, int> keywordIdMapper; std::unordered_map<generic_string, int> keywordIdMapper;
std::map<int, generic_string> keywordNameMapper; std::unordered_map<int, generic_string> keywordNameMapper;
std::map<generic_string, int> styleIdMapper; std::unordered_map<generic_string, int> styleIdMapper;
std::map<int, generic_string> styleNameMapper; std::unordered_map<int, generic_string> styleNameMapper;
std::map<generic_string, int> temp; std::unordered_map<generic_string, int> temp;
std::map<generic_string, int>::iterator iter; std::unordered_map<generic_string, int>::iterator iter;
std::map<int, int> nestingMapper; std::unordered_map<int, int> nestingMapper;
std::map<int, int> dialogMapper; std::unordered_map<int, int> dialogMapper;
std::map<int, std::string> setLexerMapper; std::unordered_map<int, std::string> setLexerMapper;
// only default constructor is needed // only default constructor is needed
GlobalMappers() GlobalMappers()
@ -275,7 +275,7 @@ protected :
//Shared data //Shared data
static UserLangContainer *_pUserLang; static UserLangContainer *_pUserLang;
static ScintillaEditView *_pScintilla; static ScintillaEditView *_pScintilla;
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
bool setPropertyByCheck(HWND hwnd, WPARAM id, bool & bool2set); bool setPropertyByCheck(HWND hwnd, WPARAM id, bool & bool2set);
virtual void setKeywords2List(int ctrlID) = 0; virtual void setKeywords2List(int ctrlID) = 0;
}; };
@ -286,7 +286,7 @@ public:
FolderStyleDialog(): SharedParametersDialog() {}; FolderStyleDialog(): SharedParametersDialog() {};
void updateDlg(); void updateDlg();
protected : protected :
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
void setKeywords2List(int ctrlID); void setKeywords2List(int ctrlID);
private : private :
void convertTo(TCHAR *dest, const TCHAR *toConvert, TCHAR *prefix) const; void convertTo(TCHAR *dest, const TCHAR *toConvert, TCHAR *prefix) const;
@ -300,7 +300,7 @@ public:
KeyWordsStyleDialog(): SharedParametersDialog() {}; KeyWordsStyleDialog(): SharedParametersDialog() {};
void updateDlg(); void updateDlg();
protected : protected :
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
void setKeywords2List(int id); void setKeywords2List(int id);
}; };
@ -310,7 +310,7 @@ public :
CommentStyleDialog(): SharedParametersDialog() {}; CommentStyleDialog(): SharedParametersDialog() {};
void updateDlg(); void updateDlg();
protected : protected :
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
void setKeywords2List(int id); void setKeywords2List(int id);
private : private :
void convertTo(TCHAR *dest, const TCHAR *toConvert, TCHAR *prefix) const; void convertTo(TCHAR *dest, const TCHAR *toConvert, TCHAR *prefix) const;
@ -323,7 +323,7 @@ public :
SymbolsStyleDialog(): SharedParametersDialog() {}; SymbolsStyleDialog(): SharedParametersDialog() {};
void updateDlg(); void updateDlg();
protected : protected :
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
void setKeywords2List(int id); void setKeywords2List(int id);
private : private :
void convertTo(TCHAR *dest, const TCHAR *toConvert, TCHAR *prefix) const; void convertTo(TCHAR *dest, const TCHAR *toConvert, TCHAR *prefix) const;
@ -390,7 +390,7 @@ public :
_ctrlTab.renameTab(index, name2set); _ctrlTab.renameTab(index, name2set);
}; };
protected : protected :
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
private : private :
ControlsTab _ctrlTab; ControlsTab _ctrlTab;
WindowVector _wVector; WindowVector _wVector;
@ -429,11 +429,11 @@ public :
_txtLen = txtLen; _txtLen = txtLen;
}; };
long doDialog() { long doDialog() {
return long(::DialogBoxParam(_hInst, MAKEINTRESOURCE(IDD_STRING_DLG), _hParent, (DLGPROC)dlgProc, (LPARAM)this)); return long(::DialogBoxParam(_hInst, MAKEINTRESOURCE(IDD_STRING_DLG), _hParent, dlgProc, (LPARAM)this));
}; };
virtual void destroy() {}; virtual void destroy() {};
protected : protected :
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM);
private : private :
generic_string _title; generic_string _title;
generic_string _textValue; generic_string _textValue;
@ -459,10 +459,10 @@ public:
}; };
long doDialog() { long doDialog() {
return long (::DialogBoxParam(_hInst, MAKEINTRESOURCE(IDD_STYLER_POPUP_DLG), _parent, (DLGPROC)dlgProc, (LPARAM)this)); return long (::DialogBoxParam(_hInst, MAKEINTRESOURCE(IDD_STYLER_POPUP_DLG), _parent, dlgProc, (LPARAM)this));
}; };
static BOOL CALLBACK dlgProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam); static INT_PTR CALLBACK dlgProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam);
public: public:
HINSTANCE _hInst; HINSTANCE _hInst;
HWND _parent; HWND _parent;

View File

@ -49,7 +49,7 @@ void ColumnEditorDlg::display(bool toShow) const
::SetFocus(::GetDlgItem(_hSelf, ID_GOLINE_EDIT)); ::SetFocus(::GetDlgItem(_hSelf, ID_GOLINE_EDIT));
} }
BOOL CALLBACK ColumnEditorDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM) INT_PTR CALLBACK ColumnEditorDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM)
{ {
switch (message) switch (message)
{ {

View File

@ -66,7 +66,7 @@ public :
UCHAR getFormat(); UCHAR getFormat();
protected : protected :
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
private : private :

View File

@ -69,7 +69,7 @@ public :
}; };
protected : protected :
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
private : private :
URLCtrl _emailLink; URLCtrl _emailLink;

View File

@ -35,7 +35,7 @@ void AnsiCharPanel::switchEncoding()
_listView.resetValues(codepage); _listView.resetValues(codepage);
} }
BOOL CALLBACK AnsiCharPanel::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK AnsiCharPanel::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam)
{ {
switch (message) switch (message)
{ {

View File

@ -74,7 +74,7 @@ public:
}; };
protected: protected:
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
private: private:
ScintillaEditView **_ppEditView; ScintillaEditView **_ppEditView;

View File

@ -196,7 +196,7 @@ void ClipboardHistoryPanel::drawItem(LPDRAWITEMSTRUCT lpDrawItemStruct)
::DrawText(lpDrawItemStruct->hDC, ptStr, lstrlen(ptStr), &(lpDrawItemStruct->rcItem), DT_SINGLELINE | DT_VCENTER | DT_LEFT); ::DrawText(lpDrawItemStruct->hDC, ptStr, lstrlen(ptStr), &(lpDrawItemStruct->rcItem), DT_SINGLELINE | DT_VCENTER | DT_LEFT);
} }
BOOL CALLBACK ClipboardHistoryPanel::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK ClipboardHistoryPanel::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam)
{ {
switch (message) switch (message)
{ {

View File

@ -99,7 +99,7 @@ public:
void drawItem(LPDRAWITEMSTRUCT lpDrawItemStruct); void drawItem(LPDRAWITEMSTRUCT lpDrawItemStruct);
protected: protected:
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
private: private:
ScintillaEditView **_ppEditView; ScintillaEditView **_ppEditView;

View File

@ -42,7 +42,7 @@ DWORD colourItems[] = {
void ColourPopup::create(int dialogID) void ColourPopup::create(int dialogID)
{ {
_hSelf = ::CreateDialogParam(_hInst, MAKEINTRESOURCE(dialogID), _hParent, (DLGPROC)dlgProc, (LPARAM)this); _hSelf = ::CreateDialogParam(_hInst, MAKEINTRESOURCE(dialogID), _hParent, dlgProc, (LPARAM)this);
if (!_hSelf) if (!_hSelf)
{ {
@ -52,7 +52,7 @@ void ColourPopup::create(int dialogID)
display(); display();
} }
BOOL CALLBACK ColourPopup::dlgProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK ColourPopup::dlgProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{ {
switch (message) switch (message)
{ {

View File

@ -76,8 +76,8 @@ private :
COLORREF _colour; COLORREF _colour;
//bool isColourChooserLaunched; //bool isColourChooserLaunched;
static BOOL CALLBACK dlgProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam); static INT_PTR CALLBACK dlgProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam);
BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
}; };
#endif //COLOUR_POPUP_H #endif //COLOUR_POPUP_H

View File

@ -34,7 +34,7 @@
using namespace std; using namespace std;
BOOL CALLBACK ColourStaticTextHooker::colourStaticProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam) LRESULT CALLBACK ColourStaticTextHooker::colourStaticProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam)
{ {
switch(Message) switch(Message)
{ {
@ -79,7 +79,7 @@ void WordStyleDlg::updateGlobalOverrideCtrls()
::SendDlgItemMessage(_hSelf, IDC_GLOBAL_UNDERLINE_CHECK, BM_SETCHECK, nppGUI._globalOverride.enableUnderLine, 0); ::SendDlgItemMessage(_hSelf, IDC_GLOBAL_UNDERLINE_CHECK, BM_SETCHECK, nppGUI._globalOverride.enableUnderLine, 0);
} }
BOOL CALLBACK WordStyleDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK WordStyleDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam)
{ {
switch (Message) switch (Message)
{ {

View File

@ -59,11 +59,11 @@ private :
COLORREF _colour; COLORREF _colour;
WNDPROC _oldProc; WNDPROC _oldProc;
static BOOL CALLBACK staticProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam){ static LRESULT CALLBACK staticProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam){
ColourStaticTextHooker *pColourStaticTextHooker = reinterpret_cast<ColourStaticTextHooker *>(::GetWindowLongPtr(hwnd, GWLP_USERDATA)); ColourStaticTextHooker *pColourStaticTextHooker = reinterpret_cast<ColourStaticTextHooker *>(::GetWindowLongPtr(hwnd, GWLP_USERDATA));
return pColourStaticTextHooker->colourStaticProc(hwnd, message, wParam, lParam); return pColourStaticTextHooker->colourStaticProc(hwnd, message, wParam, lParam);
}; };
BOOL CALLBACK colourStaticProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam); LRESULT CALLBACK colourStaticProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam);
}; };
class WordStyleDlg : public StaticDialog class WordStyleDlg : public StaticDialog
@ -157,7 +157,7 @@ private :
//bool _isSync; //bool _isSync;
bool _isShownGOCtrls; bool _isShownGOCtrls;
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
Style & getCurrentStyler() { Style & getCurrentStyler() {

View File

@ -900,7 +900,7 @@ void DockingCont::drawTabItem(DRAWITEMSTRUCT *pDrawItemStruct)
//---------------------------------------------- //----------------------------------------------
// Process function of dialog // Process function of dialog
// //
BOOL CALLBACK DockingCont::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK DockingCont::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam)
{ {
switch (Message) switch (Message)
{ {

View File

@ -163,7 +163,7 @@ protected :
return (((DockingCont *)(::GetWindowLongPtr(hwnd, GWLP_USERDATA)))->runProcTab(hwnd, Message, wParam, lParam)); return (((DockingCont *)(::GetWindowLongPtr(hwnd, GWLP_USERDATA)))->runProcTab(hwnd, Message, wParam, lParam));
}; };
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
// drawing functions // drawing functions
void drawCaptionItem(DRAWITEMSTRUCT *pDrawItemStruct); void drawCaptionItem(DRAWITEMSTRUCT *pDrawItemStruct);

View File

@ -103,7 +103,7 @@ public:
}; };
protected : protected :
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM, LPARAM lParam) virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM, LPARAM lParam)
{ {
switch (message) switch (message)
{ {

View File

@ -265,7 +265,7 @@ void DocumentMap::redraw(bool) const
_pScintillaEditView->execute(SCI_COLOURISE, 0, -1); _pScintillaEditView->execute(SCI_COLOURISE, 0, -1);
} }
BOOL CALLBACK DocumentMap::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK DocumentMap::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam)
{ {
switch (message) switch (message)
{ {
@ -432,7 +432,7 @@ void ViewZoneDlg::doDialog()
display(); display();
}; };
BOOL CALLBACK ViewZoneDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK ViewZoneDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam)
{ {
switch (message) switch (message)
{ {
@ -493,7 +493,7 @@ BOOL CALLBACK ViewZoneDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM lPara
return FALSE; return FALSE;
} }
BOOL CALLBACK ViewZoneDlg::canvasStaticProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) LRESULT CALLBACK ViewZoneDlg::canvasStaticProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{ {
ViewZoneDlg *pViewZoneDlg = reinterpret_cast<ViewZoneDlg *>(::GetWindowLongPtr(hwnd, GWLP_USERDATA)); ViewZoneDlg *pViewZoneDlg = reinterpret_cast<ViewZoneDlg *>(::GetWindowLongPtr(hwnd, GWLP_USERDATA));
if (!pViewZoneDlg) if (!pViewZoneDlg)
@ -501,7 +501,7 @@ BOOL CALLBACK ViewZoneDlg::canvasStaticProc(HWND hwnd, UINT message, WPARAM wPar
return pViewZoneDlg->canvas_runProc(hwnd, message, wParam, lParam); return pViewZoneDlg->canvas_runProc(hwnd, message, wParam, lParam);
} }
BOOL CALLBACK ViewZoneDlg::canvas_runProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) LRESULT CALLBACK ViewZoneDlg::canvas_runProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{ {
switch (message) switch (message)
{ {

View File

@ -76,10 +76,10 @@ public :
}; };
protected : protected :
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
static BOOL CALLBACK canvasStaticProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam); static LRESULT CALLBACK canvasStaticProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam);
BOOL CALLBACK canvas_runProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam); LRESULT CALLBACK canvas_runProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam);
void drawPreviewZone(DRAWITEMSTRUCT *pdis); void drawPreviewZone(DRAWITEMSTRUCT *pdis);
@ -135,7 +135,7 @@ public:
void changeTextDirection(bool isRTL); void changeTextDirection(bool isRTL);
protected: protected:
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
bool needToRecomputeWith(); bool needToRecomputeWith();
int getEditorTextZoneWidth(); int getEditorTextZoneWidth();

View File

@ -29,7 +29,7 @@
#include "FindCharsInRange.h" #include "FindCharsInRange.h"
#include "FindCharsInRange_rc.h" #include "FindCharsInRange_rc.h"
BOOL CALLBACK FindCharsInRangeDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM) INT_PTR CALLBACK FindCharsInRangeDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM)
{ {
switch (message) switch (message)
{ {

View File

@ -64,7 +64,7 @@ public :
}; };
protected : protected :
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
private : private :
ScintillaEditView **_ppEditView; ScintillaEditView **_ppEditView;

View File

@ -501,7 +501,7 @@ void FunctionListPanel::searchFuncAndSwitchView()
} }
static WNDPROC oldFunclstToolbarProc = NULL; static WNDPROC oldFunclstToolbarProc = NULL;
static BOOL CALLBACK funclstToolbarProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) static LRESULT CALLBACK funclstToolbarProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{ {
switch (message) switch (message)
{ {
@ -533,7 +533,7 @@ void FunctionListPanel::setSort(bool isEnabled)
::SendMessage(_hToolbarMenu, TB_SETBUTTONINFO, IDC_SORTBUTTON_FUNCLIST, (LPARAM)&tbbuttonInfo); ::SendMessage(_hToolbarMenu, TB_SETBUTTONINFO, IDC_SORTBUTTON_FUNCLIST, (LPARAM)&tbbuttonInfo);
} }
BOOL CALLBACK FunctionListPanel::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK FunctionListPanel::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam)
{ {
switch (message) switch (message)
{ {

View File

@ -123,7 +123,7 @@ public:
void searchFuncAndSwitchView(); void searchFuncAndSwitchView();
protected: protected:
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
private: private:
HWND _hToolbarMenu; HWND _hToolbarMenu;

View File

@ -169,7 +169,7 @@ void ShortcutMapper::fillOutBabyGrid()
} }
} }
BOOL CALLBACK ShortcutMapper::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK ShortcutMapper::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam)
{ {
switch (message) switch (message)
{ {

View File

@ -69,17 +69,17 @@ public:
{ {
DLGTEMPLATE *pMyDlgTemplate = NULL; DLGTEMPLATE *pMyDlgTemplate = NULL;
HGLOBAL hMyDlgTemplate = makeRTLResource(IDD_SHORTCUTMAPPER_DLG, &pMyDlgTemplate); HGLOBAL hMyDlgTemplate = makeRTLResource(IDD_SHORTCUTMAPPER_DLG, &pMyDlgTemplate);
::DialogBoxIndirectParam(_hInst, pMyDlgTemplate, _hParent, (DLGPROC)dlgProc, (LPARAM)this); ::DialogBoxIndirectParam(_hInst, pMyDlgTemplate, _hParent, dlgProc, (LPARAM)this);
::GlobalFree(hMyDlgTemplate); ::GlobalFree(hMyDlgTemplate);
} }
else else
::DialogBoxParam(_hInst, MAKEINTRESOURCE(IDD_SHORTCUTMAPPER_DLG), _hParent, (DLGPROC)dlgProc, (LPARAM)this); ::DialogBoxParam(_hInst, MAKEINTRESOURCE(IDD_SHORTCUTMAPPER_DLG), _hParent, dlgProc, (LPARAM)this);
}; };
void getClientRect(RECT & rc) const; void getClientRect(RECT & rc) const;
void translateTab(int index, const TCHAR * newname); void translateTab(int index, const TCHAR * newname);
protected : protected :
BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
private: private:
static const int maxTabName = 64; static const int maxTabName = 64;

View File

@ -276,7 +276,7 @@ static WNDPROC oldProc = NULL;
static generic_string currentExt = TEXT(""); static generic_string currentExt = TEXT("");
static BOOL CALLBACK fileDlgProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) static LRESULT CALLBACK fileDlgProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{ {
switch (message) switch (message)
{ {

View File

@ -93,7 +93,7 @@ int encodings[] = {
20866 20866
}; };
BOOL CALLBACK PreferenceDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK PreferenceDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam)
{ {
switch (Message) switch (Message)
{ {
@ -305,7 +305,7 @@ void PreferenceDlg::destroy()
_delimiterSettingsDlg.destroy(); _delimiterSettingsDlg.destroy();
} }
BOOL CALLBACK BarsDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM) INT_PTR CALLBACK BarsDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM)
{ {
NppParameters *pNppParam = NppParameters::getInstance(); NppParameters *pNppParam = NppParameters::getInstance();
@ -585,7 +585,7 @@ void MarginsDlg::initScintParam()
} }
BOOL CALLBACK MarginsDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK MarginsDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam)
{ {
NppParameters *pNppParam = NppParameters::getInstance(); NppParameters *pNppParam = NppParameters::getInstance();
NppGUI & nppGUI = (NppGUI &)pNppParam->getNppGUI(); NppGUI & nppGUI = (NppGUI &)pNppParam->getNppGUI();
@ -802,7 +802,7 @@ BOOL CALLBACK MarginsDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam
return FALSE; return FALSE;
} }
BOOL CALLBACK SettingsDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM) INT_PTR CALLBACK SettingsDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM)
{ {
NppParameters *pNppParam = NppParameters::getInstance(); NppParameters *pNppParam = NppParameters::getInstance();
NppGUI & nppGUI = (NppGUI &)pNppParam->getNppGUI(); NppGUI & nppGUI = (NppGUI &)pNppParam->getNppGUI();
@ -1090,7 +1090,7 @@ void RecentFilesHistoryDlg::setCustomLen(int val)
::ShowWindow(::GetDlgItem(_hSelf, IDC_CUSTOMIZELENGTHVAL_STATIC), val > 0?SW_SHOW:SW_HIDE); ::ShowWindow(::GetDlgItem(_hSelf, IDC_CUSTOMIZELENGTHVAL_STATIC), val > 0?SW_SHOW:SW_HIDE);
} }
BOOL CALLBACK DefaultNewDocDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM) INT_PTR CALLBACK DefaultNewDocDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM)
{ {
NppParameters *pNppParam = NppParameters::getInstance(); NppParameters *pNppParam = NppParameters::getInstance();
NppGUI & nppGUI = (NppGUI & )pNppParam->getNppGUI(); NppGUI & nppGUI = (NppGUI & )pNppParam->getNppGUI();
@ -1279,7 +1279,7 @@ BOOL CALLBACK DefaultNewDocDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM)
return FALSE; return FALSE;
} }
BOOL CALLBACK DefaultDirectoryDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM) INT_PTR CALLBACK DefaultDirectoryDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM)
{ {
NppParameters *pNppParam = NppParameters::getInstance(); NppParameters *pNppParam = NppParameters::getInstance();
NppGUI & nppGUI = (NppGUI & )pNppParam->getNppGUI(); NppGUI & nppGUI = (NppGUI & )pNppParam->getNppGUI();
@ -1366,7 +1366,7 @@ BOOL CALLBACK DefaultDirectoryDlg::run_dlgProc(UINT Message, WPARAM wParam, LPAR
return FALSE; return FALSE;
} }
BOOL CALLBACK RecentFilesHistoryDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM) INT_PTR CALLBACK RecentFilesHistoryDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM)
{ {
NppParameters *pNppParam = NppParameters::getInstance(); NppParameters *pNppParam = NppParameters::getInstance();
NppGUI & nppGUI = (NppGUI & )pNppParam->getNppGUI(); NppGUI & nppGUI = (NppGUI & )pNppParam->getNppGUI();
@ -1501,7 +1501,7 @@ BOOL CALLBACK RecentFilesHistoryDlg::run_dlgProc(UINT Message, WPARAM wParam, LP
return FALSE; return FALSE;
} }
BOOL CALLBACK LangMenuDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK LangMenuDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam)
{ {
NppParameters *pNppParam = NppParameters::getInstance(); NppParameters *pNppParam = NppParameters::getInstance();
NppGUI & nppGUI = (NppGUI & )pNppParam->getNppGUI(); NppGUI & nppGUI = (NppGUI & )pNppParam->getNppGUI();
@ -1689,7 +1689,7 @@ BOOL CALLBACK LangMenuDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lPara
return FALSE; return FALSE;
} }
BOOL CALLBACK TabSettings::run_dlgProc(UINT Message, WPARAM wParam, LPARAM/* lParam*/) INT_PTR CALLBACK TabSettings::run_dlgProc(UINT Message, WPARAM wParam, LPARAM/* lParam*/)
{ {
NppParameters *pNppParam = NppParameters::getInstance(); NppParameters *pNppParam = NppParameters::getInstance();
NppGUI & nppGUI = (NppGUI & )pNppParam->getNppGUI(); NppGUI & nppGUI = (NppGUI & )pNppParam->getNppGUI();
@ -1883,7 +1883,7 @@ void trim(generic_string & str)
else str.erase(str.begin(), str.end()); else str.erase(str.begin(), str.end());
}; };
BOOL CALLBACK PrintSettingsDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM) INT_PTR CALLBACK PrintSettingsDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM)
{ {
NppParameters *pNppParam = NppParameters::getInstance(); NppParameters *pNppParam = NppParameters::getInstance();
NppGUI & nppGUI = (NppGUI & )pNppParam->getNppGUI(); NppGUI & nppGUI = (NppGUI & )pNppParam->getNppGUI();
@ -2186,7 +2186,7 @@ BOOL CALLBACK PrintSettingsDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM)
} }
BOOL CALLBACK BackupDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM) INT_PTR CALLBACK BackupDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM)
{ {
NppParameters *pNppParam = NppParameters::getInstance(); NppParameters *pNppParam = NppParameters::getInstance();
NppGUI & nppGUI = (NppGUI &)pNppParam->getNppGUI(); NppGUI & nppGUI = (NppGUI &)pNppParam->getNppGUI();
@ -2380,7 +2380,7 @@ void BackupDlg::updateBackupGUI()
} }
BOOL CALLBACK AutoCompletionDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM) INT_PTR CALLBACK AutoCompletionDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM)
{ {
NppParameters *pNppParam = NppParameters::getInstance(); NppParameters *pNppParam = NppParameters::getInstance();
NppGUI & nppGUI = (NppGUI &)pNppParam->getNppGUI(); NppGUI & nppGUI = (NppGUI &)pNppParam->getNppGUI();
@ -2648,7 +2648,7 @@ BOOL CALLBACK AutoCompletionDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM
} }
BOOL CALLBACK MultiInstDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM) INT_PTR CALLBACK MultiInstDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM)
{ {
NppGUI & nppGUI = (NppGUI &)((NppParameters::getInstance())->getNppGUI()); NppGUI & nppGUI = (NppGUI &)((NppParameters::getInstance())->getNppGUI());
switch (Message) switch (Message)
@ -2694,7 +2694,7 @@ BOOL CALLBACK MultiInstDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM)
return FALSE; return FALSE;
} }
BOOL CALLBACK DelimiterSettingsDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK DelimiterSettingsDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam)
{ {
NppGUI & nppGUI = (NppGUI &)((NppParameters::getInstance())->getNppGUI()); NppGUI & nppGUI = (NppGUI &)((NppParameters::getInstance())->getNppGUI());
switch (Message) switch (Message)
@ -2807,7 +2807,7 @@ BOOL CALLBACK DelimiterSettingsDlg::run_dlgProc(UINT Message, WPARAM wParam, LPA
return FALSE; return FALSE;
} }
BOOL CALLBACK SettingsOnCloudDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM) INT_PTR CALLBACK SettingsOnCloudDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM)
{ {
NppGUI & nppGUI = (NppGUI &)((NppParameters::getInstance())->getNppGUI()); NppGUI & nppGUI = (NppGUI &)((NppParameters::getInstance())->getNppGUI());
switch (Message) switch (Message)

View File

@ -59,7 +59,7 @@ public :
SettingsDlg() {}; SettingsDlg() {};
private : private :
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
}; };
class BarsDlg : public StaticDialog class BarsDlg : public StaticDialog
@ -67,7 +67,7 @@ class BarsDlg : public StaticDialog
public : public :
BarsDlg() {}; BarsDlg() {};
private : private :
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
}; };
class MarginsDlg : public StaticDialog class MarginsDlg : public StaticDialog
@ -80,7 +80,7 @@ public :
private : private :
URLCtrl _verticalEdgeLineNbColVal; URLCtrl _verticalEdgeLineNbColVal;
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
void initScintParam(); void initScintParam();
}; };
@ -103,7 +103,7 @@ private :
::SendDlgItemMessage(_hSelf, IDC_CHECK_OPENANSIASUTF8, BM_SETCHECK, BST_UNCHECKED, 0); ::SendDlgItemMessage(_hSelf, IDC_CHECK_OPENANSIASUTF8, BM_SETCHECK, BST_UNCHECKED, 0);
::EnableWindow(::GetDlgItem(_hSelf, IDC_CHECK_OPENANSIASUTF8), doIt); ::EnableWindow(::GetDlgItem(_hSelf, IDC_CHECK_OPENANSIASUTF8), doIt);
}; };
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
}; };
class DefaultDirectoryDlg : public StaticDialog class DefaultDirectoryDlg : public StaticDialog
@ -112,7 +112,7 @@ public :
DefaultDirectoryDlg() {}; DefaultDirectoryDlg() {};
private : private :
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
}; };
class RecentFilesHistoryDlg : public StaticDialog class RecentFilesHistoryDlg : public StaticDialog
@ -128,7 +128,7 @@ private :
URLCtrl _customLenVal; URLCtrl _customLenVal;
std::vector<LangID_Name> _langList; std::vector<LangID_Name> _langList;
void setCustomLen(int val); void setCustomLen(int val);
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
}; };
class LangMenuDlg : public StaticDialog class LangMenuDlg : public StaticDialog
@ -138,7 +138,7 @@ public :
private : private :
LexerStylerArray _lsArray; LexerStylerArray _lsArray;
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
std::vector<LangMenuItem> _langList; std::vector<LangMenuItem> _langList;
}; };
@ -152,7 +152,7 @@ public :
private : private :
URLCtrl _tabSizeVal; URLCtrl _tabSizeVal;
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
}; };
@ -167,7 +167,7 @@ class PrintSettingsDlg : public StaticDialog
public : public :
PrintSettingsDlg():_focusedEditCtrl(0), _selStart(0), _selEnd(0){}; PrintSettingsDlg():_focusedEditCtrl(0), _selStart(0), _selEnd(0){};
private : private :
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
std::vector<strCouple> varList; std::vector<strCouple> varList;
int _focusedEditCtrl; int _focusedEditCtrl;
DWORD _selStart; DWORD _selStart;
@ -180,7 +180,7 @@ public :
BackupDlg() {}; BackupDlg() {};
private : private :
void updateBackupGUI(); void updateBackupGUI();
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
}; };
@ -190,7 +190,7 @@ public :
AutoCompletionDlg() {}; AutoCompletionDlg() {};
private : private :
URLCtrl _nbCharVal; URLCtrl _nbCharVal;
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
}; };
class MultiInstDlg : public StaticDialog class MultiInstDlg : public StaticDialog
@ -199,7 +199,7 @@ public :
MultiInstDlg() {}; MultiInstDlg() {};
private : private :
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
}; };
class DelimiterSettingsDlg : public StaticDialog class DelimiterSettingsDlg : public StaticDialog
@ -208,7 +208,7 @@ public :
DelimiterSettingsDlg() {}; DelimiterSettingsDlg() {};
private : private :
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
POINT _singleLineModePoint, _multiLineModePoint; POINT _singleLineModePoint, _multiLineModePoint;
RECT _closerRect, _closerLabelRect; RECT _closerRect, _closerLabelRect;
}; };
@ -221,7 +221,7 @@ public :
private : private :
CloudChoice _initialCloudChoice; CloudChoice _initialCloudChoice;
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
void setCloudChoice(const char *choice); void setCloudChoice(const char *choice);
void removeCloudChoice(); void removeCloudChoice();
}; };
@ -255,7 +255,7 @@ public :
virtual void destroy(); virtual void destroy();
private : private :
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
void makeCategoryList(); void makeCategoryList();
void showDialogByIndex(int index); void showDialogByIndex(int index);
//ControlsTab _ctrlTab; //ControlsTab _ctrlTab;

View File

@ -47,7 +47,7 @@
#define GET_X_LPARAM(lp) ((int)(short)LOWORD(lp)) #define GET_X_LPARAM(lp) ((int)(short)LOWORD(lp))
#define GET_Y_LPARAM(lp) ((int)(short)HIWORD(lp)) #define GET_Y_LPARAM(lp) ((int)(short)HIWORD(lp))
BOOL CALLBACK ProjectPanel::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK ProjectPanel::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam)
{ {
switch (message) switch (message)
{ {
@ -1164,7 +1164,7 @@ void ProjectPanel::addFilesFromDirectory(HTREEITEM hTreeItem)
} }
} }
BOOL CALLBACK FileRelocalizerDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM) INT_PTR CALLBACK FileRelocalizerDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM)
{ {
switch (Message) switch (Message)
{ {
@ -1208,10 +1208,10 @@ int FileRelocalizerDlg::doDialog(const TCHAR *fn, bool isRTL)
{ {
DLGTEMPLATE *pMyDlgTemplate = NULL; DLGTEMPLATE *pMyDlgTemplate = NULL;
HGLOBAL hMyDlgTemplate = makeRTLResource(IDD_FILERELOCALIZER_DIALOG, &pMyDlgTemplate); HGLOBAL hMyDlgTemplate = makeRTLResource(IDD_FILERELOCALIZER_DIALOG, &pMyDlgTemplate);
int result = ::DialogBoxIndirectParam(_hInst, pMyDlgTemplate, _hParent, (DLGPROC)dlgProc, (LPARAM)this); int result = ::DialogBoxIndirectParam(_hInst, pMyDlgTemplate, _hParent, dlgProc, (LPARAM)this);
::GlobalFree(hMyDlgTemplate); ::GlobalFree(hMyDlgTemplate);
return result; return result;
} }
return ::DialogBoxParam(_hInst, MAKEINTRESOURCE(IDD_FILERELOCALIZER_DIALOG), _hParent, (DLGPROC)dlgProc, (LPARAM)this); return ::DialogBoxParam(_hInst, MAKEINTRESOURCE(IDD_FILERELOCALIZER_DIALOG), _hParent, dlgProc, (LPARAM)this);
} }

View File

@ -134,7 +134,7 @@ protected:
void setWorkSpaceDirty(bool isDirty); void setWorkSpaceDirty(bool isDirty);
void popupMenuCmd(int cmdID); void popupMenuCmd(int cmdID);
POINT getMenuDisplyPoint(int iButton); POINT getMenuDisplyPoint(int iButton);
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
bool buildTreeFrom(TiXmlNode *projectRoot, HTREEITEM hParentItem); bool buildTreeFrom(TiXmlNode *projectRoot, HTREEITEM hParentItem);
void notified(LPNMHDR notification); void notified(LPNMHDR notification);
void showContextMenu(int x, int y); void showContextMenu(int x, int y);
@ -160,7 +160,7 @@ public :
}; };
protected : protected :
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
private : private :
generic_string _fullFilePath; generic_string _fullFilePath;

View File

@ -196,7 +196,7 @@ HINSTANCE Command::run(HWND hWnd)
return res; return res;
} }
BOOL CALLBACK RunDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM) INT_PTR CALLBACK RunDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM)
{ {
switch (message) switch (message)
{ {

View File

@ -65,7 +65,7 @@ public :
}; };
protected : protected :
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
private : private :
void addTextToCombo(const TCHAR *txt2Add) const; void addTextToCombo(const TCHAR *txt2Add) const;

View File

@ -112,11 +112,11 @@ void StaticDialog::create(int dialogID, bool isRTL, bool msgDestParent)
{ {
DLGTEMPLATE *pMyDlgTemplate = NULL; DLGTEMPLATE *pMyDlgTemplate = NULL;
HGLOBAL hMyDlgTemplate = makeRTLResource(dialogID, &pMyDlgTemplate); HGLOBAL hMyDlgTemplate = makeRTLResource(dialogID, &pMyDlgTemplate);
_hSelf = ::CreateDialogIndirectParam(_hInst, pMyDlgTemplate, _hParent, (DLGPROC)dlgProc, (LPARAM)this); _hSelf = ::CreateDialogIndirectParam(_hInst, pMyDlgTemplate, _hParent, dlgProc, (LPARAM)this);
::GlobalFree(hMyDlgTemplate); ::GlobalFree(hMyDlgTemplate);
} }
else else
_hSelf = ::CreateDialogParam(_hInst, MAKEINTRESOURCE(dialogID), _hParent, (DLGPROC)dlgProc, (LPARAM)this); _hSelf = ::CreateDialogParam(_hInst, MAKEINTRESOURCE(dialogID), _hParent, dlgProc, (LPARAM)this);
if (!_hSelf) if (!_hSelf)
{ {
@ -131,7 +131,7 @@ void StaticDialog::create(int dialogID, bool isRTL, bool msgDestParent)
::SendMessage(msgDestParent?_hParent:(::GetParent(_hParent)), NPPM_MODELESSDIALOG, MODELESSDIALOGADD, (WPARAM)_hSelf); ::SendMessage(msgDestParent?_hParent:(::GetParent(_hParent)), NPPM_MODELESSDIALOG, MODELESSDIALOGADD, (WPARAM)_hSelf);
} }
BOOL CALLBACK StaticDialog::dlgProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK StaticDialog::dlgProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{ {
switch (message) switch (message)
{ {

View File

@ -94,8 +94,8 @@ public :
protected : protected :
RECT _rc; RECT _rc;
static BOOL CALLBACK dlgProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam); static INT_PTR CALLBACK dlgProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam);
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam) = 0; virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam) = 0;
void alignWith(HWND handle, HWND handle2Align, PosAlign pos, POINT & point); void alignWith(HWND handle, HWND handle2Align, PosAlign pos, POINT & point);
HGLOBAL makeRTLResource(int dialogID, DLGTEMPLATE **ppMyDlgTemplate); HGLOBAL makeRTLResource(int dialogID, DLGTEMPLATE **ppMyDlgTemplate);

View File

@ -47,14 +47,14 @@ LRESULT CALLBACK hookProc(UINT nCode, WPARAM wParam, LPARAM lParam)
{ {
DLGTEMPLATE *pMyDlgTemplate = NULL; DLGTEMPLATE *pMyDlgTemplate = NULL;
HGLOBAL hMyDlgTemplate = makeRTLResource(IDD_VALUE_DLG, &pMyDlgTemplate); HGLOBAL hMyDlgTemplate = makeRTLResource(IDD_VALUE_DLG, &pMyDlgTemplate);
int result = ::DialogBoxIndirectParam(_hInst, pMyDlgTemplate, _hParent, (DLGPROC)dlgProc, (LPARAM)this); int result = ::DialogBoxIndirectParam(_hInst, pMyDlgTemplate, _hParent, dlgProc, (LPARAM)this);
::GlobalFree(hMyDlgTemplate); ::GlobalFree(hMyDlgTemplate);
return result; return result;
} }
return ::DialogBoxParam(_hInst, MAKEINTRESOURCE(IDD_TASKLIST_DLG), _hParent, (DLGPROC)dlgProc, (LPARAM)this); return ::DialogBoxParam(_hInst, MAKEINTRESOURCE(IDD_TASKLIST_DLG), _hParent, dlgProc, (LPARAM)this);
} }
BOOL CALLBACK TaskListDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK TaskListDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam)
{ {
switch (Message) switch (Message)
{ {

View File

@ -85,7 +85,7 @@ public :
virtual void destroy() {}; virtual void destroy() {};
protected : protected :
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
private : private :
TaskList _taskList; TaskList _taskList;

View File

@ -29,7 +29,7 @@
#include <iostream> #include <iostream>
#include "ToolTip.h" #include "ToolTip.h"
LRESULT CALLBACK dlgProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK dlgProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);
void ToolTip::init(HINSTANCE hInst, HWND hParent) void ToolTip::init(HINSTANCE hInst, HWND hParent)
{ {

View File

@ -54,7 +54,7 @@ int CALLBACK ListViewCompareProc(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSo
return (0 - result); return (0 - result);
}; };
BOOL CALLBACK VerticalFileSwitcher::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK VerticalFileSwitcher::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam)
{ {
switch (message) switch (message)
{ {

View File

@ -100,7 +100,7 @@ public:
}; };
protected: protected:
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
private: private:
VerticalFileSwitcherListView _fileListView; VerticalFileSwitcherListView _fileListView;

View File

@ -59,7 +59,7 @@ LRESULT SizeableDlg::onWinMgr(WPARAM, LPARAM)
return 0; return 0;
} }
BOOL CALLBACK SizeableDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK SizeableDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam)
{ {
switch (message) switch (message)
{ {

View File

@ -47,7 +47,7 @@ public:
protected: protected:
CWinMgr _winMgr; // window manager CWinMgr _winMgr; // window manager
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
virtual BOOL onInitDialog(); virtual BOOL onInitDialog();
virtual void onSize(UINT nType, int cx, int cy); virtual void onSize(UINT nType, int cx, int cy);
virtual void onGetMinMaxInfo(MINMAXINFO* lpMMI); virtual void onGetMinMaxInfo(MINMAXINFO* lpMMI);

View File

@ -218,7 +218,7 @@ void WindowsDlg::init(HINSTANCE hInst, HWND parent)
_pTab = NULL; _pTab = NULL;
} }
BOOL CALLBACK WindowsDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam) INT_PTR CALLBACK WindowsDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam)
{ {
switch (message) switch (message)
{ {
@ -418,7 +418,7 @@ void WindowsDlg::updateButtonState()
int WindowsDlg::doDialog(TiXmlNodeA *dlgNode) int WindowsDlg::doDialog(TiXmlNodeA *dlgNode)
{ {
_dlgNode = dlgNode; _dlgNode = dlgNode;
return ::DialogBoxParam(_hInst, MAKEINTRESOURCE(IDD_WINDOWS), _hParent, (DLGPROC)dlgProc, (LPARAM)this); return ::DialogBoxParam(_hInst, MAKEINTRESOURCE(IDD_WINDOWS), _hParent, dlgProc, (LPARAM)this);
}; };
bool WindowsDlg::changeDlgLang() bool WindowsDlg::changeDlgLang()

View File

@ -77,7 +77,7 @@ public :
bool changeDlgLang(); bool changeDlgLang();
protected : protected :
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
virtual BOOL onInitDialog(); virtual BOOL onInitDialog();
virtual void onSize(UINT nType, int cx, int cy); virtual void onSize(UINT nType, int cx, int cy);
virtual void onGetMinMaxInfo(MINMAXINFO* lpMMI); virtual void onGetMinMaxInfo(MINMAXINFO* lpMMI);

View File

@ -51,7 +51,7 @@ void RunMacroDlg::initMacroList()
m_macroIndex = 0; m_macroIndex = 0;
} }
BOOL CALLBACK RunMacroDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM) INT_PTR CALLBACK RunMacroDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM)
{ {
switch (message) switch (message)
{ {

View File

@ -65,7 +65,7 @@ public :
int getMacro2Exec() const; int getMacro2Exec() const;
private : private :
virtual BOOL CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam); virtual INT_PTR CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
void check(int); void check(int);
int m_Mode; int m_Mode;

View File

@ -354,7 +354,7 @@ void getNameStrFromCmd(DWORD cmd, generic_string & str)
return; return;
} }
BOOL CALLBACK Shortcut::run_dlgProc(UINT Message, WPARAM wParam, LPARAM) INT_PTR CALLBACK Shortcut::run_dlgProc(UINT Message, WPARAM wParam, LPARAM)
{ {
switch (Message) switch (Message)
{ {
@ -769,7 +769,7 @@ void ScintillaKeyMap::updateListItem(int index) {
::SendDlgItemMessage(_hSelf, IDC_LIST_KEYS, LB_DELETESTRING, index+1, 0); ::SendDlgItemMessage(_hSelf, IDC_LIST_KEYS, LB_DELETESTRING, index+1, 0);
} }
BOOL CALLBACK ScintillaKeyMap::run_dlgProc(UINT Message, WPARAM wParam, LPARAM) INT_PTR CALLBACK ScintillaKeyMap::run_dlgProc(UINT Message, WPARAM wParam, LPARAM)
{ {
switch (Message) switch (Message)

View File

@ -138,7 +138,7 @@ public:
}; };
virtual int doDialog() { virtual int doDialog() {
return ::DialogBoxParam(_hInst, MAKEINTRESOURCE(IDD_SHORTCUT_DLG), _hParent, (DLGPROC)dlgProc, (LPARAM)this); return ::DialogBoxParam(_hInst, MAKEINTRESOURCE(IDD_SHORTCUT_DLG), _hParent, dlgProc, (LPARAM)this);
}; };
virtual bool isValid() const { //valid should only be used in cases where the shortcut isEnabled(). virtual bool isValid() const { //valid should only be used in cases where the shortcut isEnabled().
@ -182,7 +182,7 @@ public:
protected : protected :
KeyCombo _keyCombo; KeyCombo _keyCombo;
virtual BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); virtual INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
bool _canModifyName; bool _canModifyName;
TCHAR _name[nameLenMax]; //normal name is plain text (for display purposes) TCHAR _name[nameLenMax]; //normal name is plain text (for display purposes)
TCHAR _menuName[nameLenMax]; //menu name has ampersands for quick keys TCHAR _menuName[nameLenMax]; //menu name has ampersands for quick keys
@ -231,7 +231,7 @@ public:
generic_string toString(int index) const; generic_string toString(int index) const;
int doDialog() { int doDialog() {
return ::DialogBoxParam(_hInst, MAKEINTRESOURCE(IDD_SHORTCUTSCINT_DLG), _hParent, (DLGPROC)dlgProc, (LPARAM)this); return ::DialogBoxParam(_hInst, MAKEINTRESOURCE(IDD_SHORTCUTSCINT_DLG), _hParent, dlgProc, (LPARAM)this);
}; };
//only compares the internal KeyCombos, nothing else //only compares the internal KeyCombos, nothing else
@ -265,7 +265,7 @@ private:
void showCurrentSettings(); void showCurrentSettings();
void updateListItem(int index); void updateListItem(int index);
protected : protected :
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);
}; };

View File

@ -111,7 +111,7 @@
<Keywords name="type1">package transient strictfp void char short int long double float const static volatile byte boolean class interface native private protected public final abstract synchronized enum</Keywords> <Keywords name="type1">package transient strictfp void char short int long double float const static volatile byte boolean class interface native private protected public final abstract synchronized enum</Keywords>
</Language> </Language>
<Language name="javascript" ext="js jsm" commentLine="//" commentStart="/*" commentEnd="*/"> <Language name="javascript" ext="js jsm" commentLine="//" commentStart="/*" commentEnd="*/">
<Keywords name="instre1">abstract boolean break byte case catch char class const continue debugger default delete do double else enum export extends final finally float for function goto if implements import in instanceof int interface long native new package private protected public return short static super switch synchronized this throw throws transient try typeof var void volatile while with true false prototype</Keywords> <Keywords name="instre1">abstract boolean break byte case catch char class const continue debugger default delete do double else enum export extends final finally float for from function goto if implements import in instanceof int interface let long native new of package private protected public return short static super switch synchronized this throw throws transient try typeof var void volatile while with true false prototype</Keywords>
</Language> </Language>
<Language name="jsp" ext="jsp" commentLine="//" commentStart="/*" commentEnd="*/"/> <Language name="jsp" ext="jsp" commentLine="//" commentStart="/*" commentEnd="*/"/>
<Language name="kix" ext="kix" commentLine=";" commentStart="" commentEnd=""> <Language name="kix" ext="kix" commentLine=";" commentStart="" commentEnd="">

View File

@ -45,11 +45,11 @@ int ValueDlg::doDialog(POINT p, bool isRTL)
{ {
DLGTEMPLATE *pMyDlgTemplate = NULL; DLGTEMPLATE *pMyDlgTemplate = NULL;
HGLOBAL hMyDlgTemplate = makeRTLResource(IDD_VALUE_DLG, &pMyDlgTemplate); HGLOBAL hMyDlgTemplate = makeRTLResource(IDD_VALUE_DLG, &pMyDlgTemplate);
int result = ::DialogBoxIndirectParam(_hInst, pMyDlgTemplate, _hParent, (DLGPROC)dlgProc, (LPARAM)this); int result = ::DialogBoxIndirectParam(_hInst, pMyDlgTemplate, _hParent, dlgProc, (LPARAM)this);
::GlobalFree(hMyDlgTemplate); ::GlobalFree(hMyDlgTemplate);
return result; return result;
} }
return ::DialogBoxParam(_hInst, MAKEINTRESOURCE(IDD_VALUE_DLG), _hParent, (DLGPROC)dlgProc, (LPARAM)this); return ::DialogBoxParam(_hInst, MAKEINTRESOURCE(IDD_VALUE_DLG), _hParent, dlgProc, (LPARAM)this);
} }
@ -79,7 +79,7 @@ int ValueDlg::reSizeValueBox()
return extraSize; return extraSize;
} }
BOOL CALLBACK ValueDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM) INT_PTR CALLBACK ValueDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM)
{ {
switch (Message) switch (Message)
{ {
@ -122,7 +122,7 @@ BOOL CALLBACK ValueDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM)
BOOL CALLBACK ButtonDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM) INT_PTR CALLBACK ButtonDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM)
{ {
switch (Message) switch (Message)
{ {

View File

@ -47,7 +47,7 @@ public :
void destroy() {}; void destroy() {};
protected : protected :
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM);
private : private :
int _nbNumber; int _nbNumber;
@ -90,7 +90,7 @@ public :
}; };
protected : protected :
BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM); INT_PTR CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM);
int _buttonStatus; int _buttonStatus;
}; };

View File

@ -33,6 +33,72 @@
using namespace std; using namespace std;
MenuPosition menuPos[] = {
//==============================================
// {L0, L1, L2, id},
//==============================================
{ 0, -1, -1, "file" },
{ 1, -1, -1, "edit" },
{ 2, -1, -1, "search" },
{ 3, -1, -1, "view" },
{ 4, -1, -1, "encoding" },
{ 5, -1, -1, "language" },
{ 6, -1, -1, "settings" },
{ 7, -1, -1, "macro" },
{ 8, -1, -1, "run" },
{ 0, 2, -1, "file-openFolder" },
{ 0, 11, -1, "file-closeMore" },
{ 0, 20, -1, "file-recentFiles" },
{ 1, 10, -1, "edit-copyToClipboard" },
{ 1, 11, -1, "edit-indent" },
{ 1, 12, -1, "edit-convertCaseTo" },
{ 1, 13, -1, "edit-lineOperations" },
{ 1, 14, -1, "edit-comment" },
{ 1, 15, -1, "edit-autoCompletion" },
{ 1, 16, -1, "edit-eolConversion" },
{ 1, 17, -1, "edit-blankOperations" },
{ 1, 18, -1, "edit-pasteSpecial" },
{ 2, 18, -1, "search-markAll" },
{ 2, 19, -1, "search-unmarkAll" },
{ 2, 20, -1, "search-jumpUp" },
{ 2, 21, -1, "search-jumpDown" },
{ 2, 23, -1, "search-bookmark" },
{ 3, 4, -1, "view-showSymbol" },
{ 3, 5, -1, "view-zoom" },
{ 3, 6, -1, "view-moveCloneDocument" },
{ 3, 7, -1, "view-tab" },
{ 3, 16, -1, "view-collapseLevel" },
{ 3, 17, -1, "view-uncollapseLevel" },
{ 3, 21, -1, "view-project" },
{ 4, 5, -1, "encoding-characterSets" },
{ 4, 5, 0, "encoding-arabic" },
{ 4, 5, 1, "encoding-baltic" },
{ 4, 5, 2, "encoding-celtic" },
{ 4, 5, 3, "encoding-cyrillic" },
{ 4, 5, 4, "encoding-centralEuropean" },
{ 4, 5, 5, "encoding-chinese" },
{ 4, 5, 6, "encoding-easternEuropean" },
{ 4, 5, 7, "encoding-greek" },
{ 4, 5, 8, "encoding-hebrew" },
{ 4, 5, 9, "encoding-japanese" },
{ 4, 5, 10, "encoding-korean" },
{ 4, 5, 11, "encoding-northEuropean" },
{ 4, 5, 12, "encoding-thai" },
{ 4, 5, 13, "encoding-turkish" },
{ 4, 5, 14, "encoding-westernEuropean" },
{ 4, 5, 15, "encoding-vietnamese" },
{ 6, 4, -1, "settings-import" },
{ -1, -1, -1, "" } // End of array
};
void NativeLangSpeaker::init(TiXmlDocumentA *nativeLangDocRootA, bool loadIfEnglish) void NativeLangSpeaker::init(TiXmlDocumentA *nativeLangDocRootA, bool loadIfEnglish)
{ {
if (nativeLangDocRootA) if (nativeLangDocRootA)
@ -137,78 +203,9 @@ generic_string NativeLangSpeaker::getNativeLangMenuString(int itemID)
return TEXT(""); return TEXT("");
} }
struct MenuPosition {
int _x;
int _y;
int _z;
char _id[64];
};
MenuPosition menuPos[] = { MenuPosition & getMenuPosition(const char *id)
//============================================== {
// {L0, L1, L2, id},
//==============================================
{ 0, -1, -1, "file"},
{ 1, -1, -1, "edit"},
{ 2, -1, -1, "search"},
{ 3, -1, -1, "view"},
{ 4, -1, -1, "encoding"},
{ 5, -1, -1, "language"},
{ 6, -1, -1, "settings"},
{ 7, -1, -1, "macro"},
{ 8, -1, -1, "run"},
{ 0, 2, -1, "file-openFolder"},
{ 0, 11, -1, "file-closeMore"},
{ 0, 20, -1, "file-recentFiles"},
{ 1, 10, -1, "edit-copyToClipboard"},
{ 1, 11, -1, "edit-indent"},
{ 1, 12, -1, "edit-convertCaseTo"},
{ 1, 13, -1, "edit-lineOperations"},
{ 1, 14, -1, "edit-comment"},
{ 1, 15, -1, "edit-autoCompletion"},
{ 1, 16, -1, "edit-eolConversion"},
{ 1, 17, -1, "edit-blankOperations"},
{ 1, 18, -1, "edit-pasteSpecial"},
{ 2, 18, -1, "search-markAll"},
{ 2, 19, -1, "search-unmarkAll"},
{ 2, 20, -1, "search-jumpUp"},
{ 2, 21, -1, "search-jumpDown"},
{ 2, 23, -1, "search-bookmark"},
{ 3, 4, -1, "view-showSymbol"},
{ 3, 5, -1, "view-zoom"},
{ 3, 6, -1, "view-moveCloneDocument"},
{ 3, 7, -1, "view-tab"},
{ 3, 16, -1, "view-collapseLevel"},
{ 3, 17, -1, "view-uncollapseLevel"},
{ 3, 21, -1, "view-project"},
{ 4, 5, -1, "encoding-characterSets"},
{ 4, 5, 0, "encoding-arabic"},
{ 4, 5, 1, "encoding-baltic"},
{ 4, 5, 2, "encoding-celtic"},
{ 4, 5, 3, "encoding-cyrillic"},
{ 4, 5, 4, "encoding-centralEuropean"},
{ 4, 5, 5, "encoding-chinese"},
{ 4, 5, 6, "encoding-easternEuropean"},
{ 4, 5, 7, "encoding-greek"},
{ 4, 5, 8, "encoding-hebrew"},
{ 4, 5, 9, "encoding-japanese"},
{ 4, 5, 10, "encoding-korean"},
{ 4, 5, 11, "encoding-northEuropean"},
{ 4, 5, 12, "encoding-thai"},
{ 4, 5, 13, "encoding-turkish"},
{ 4, 5, 14, "encoding-westernEuropean"},
{ 4, 5, 15, "encoding-vietnamese"},
{ 6, 4, -1, "settings-import"},
{-1, -1, -1, ""} // End of array
};
MenuPosition & getMenuPosition(const char *id) {
int nbSubMenuPos = sizeof(menuPos)/sizeof(MenuPosition); int nbSubMenuPos = sizeof(menuPos)/sizeof(MenuPosition);
@ -218,7 +215,7 @@ MenuPosition & getMenuPosition(const char *id) {
return menuPos[i]; return menuPos[i];
} }
return menuPos[nbSubMenuPos-1]; return menuPos[nbSubMenuPos-1];
}; }
void NativeLangSpeaker::changeMenuLang(HMENU menuHandle, generic_string & pluginsTrans, generic_string & windowTrans) void NativeLangSpeaker::changeMenuLang(HMENU menuHandle, generic_string & pluginsTrans, generic_string & windowTrans)
{ {

View File

@ -38,6 +38,15 @@ class PreferenceDlg;
class ShortcutMapper; class ShortcutMapper;
class UserDefineDialog; class UserDefineDialog;
class MenuPosition {
public:
int _x;
int _y;
int _z;
char _id[64];
};
class NativeLangSpeaker { class NativeLangSpeaker {
public: public:
NativeLangSpeaker():_nativeLangA(NULL), _nativeLangEncoding(CP_ACP), _isRTL(false), _fileName(NULL){}; NativeLangSpeaker():_nativeLangA(NULL), _nativeLangEncoding(CP_ACP), _isRTL(false), _fileName(NULL){};
@ -84,4 +93,7 @@ private:
const char *_fileName; const char *_fileName;
}; };
MenuPosition & getMenuPosition(const char *id);
#endif // LOCALIZATION_H #endif // LOCALIZATION_H

View File

@ -58,7 +58,7 @@
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<FavorSizeOrSpeed>Neither</FavorSizeOrSpeed> <FavorSizeOrSpeed>Neither</FavorSizeOrSpeed>
<AdditionalIncludeDirectories>..\src\WinControls\AboutDlg;..\..\scintilla\include;..\include;..\src\WinControls;..\src\WinControls\ImageListSet;..\src\WinControls\OpenSaveFileDialog;..\src\WinControls\SplitterContainer;..\src\WinControls\StaticDialog;..\src\WinControls\TabBar;..\src\WinControls\ToolBar;..\src\MISC\Process;..\src\ScitillaComponent;..\src\MISC;..\src\MISC\SysMsg;..\src\WinControls\StatusBar;..\src;..\src\WinControls\StaticDialog\RunDlg;..\src\tinyxml;..\src\WinControls\ColourPicker;..\src\Win32Explr;..\src\MISC\RegExt;..\src\WinControls\TrayIcon;..\src\WinControls\shortcut;..\src\WinControls\Grid;..\src\WinControls\ContextMenu;..\src\MISC\PluginsManager;..\src\WinControls\Preference;..\src\WinControls\WindowsDlg;..\src\WinControls\TaskList;..\src\WinControls\DockingWnd;..\src\WinControls\ToolTip;..\src\MISC\Exception;..\src\MISC\Common;..\src\tinyxml\tinyXmlA;..\src\WinControls\AnsiCharPanel;..\src\WinControls\ClipboardHistory;..\src\WinControls\FindCharsInRange;..\src\WinControls\VerticalFileSwitcher;..\src\WinControls\ProjectPanel;..\src\WinControls\DocumentMap;..\src\WinControls\FunctionList;..\src\uchardet;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\src\WinControls\AboutDlg;..\..\scintilla\include;..\include;..\src\WinControls;..\src\WinControls\ImageListSet;..\src\WinControls\OpenSaveFileDialog;..\src\WinControls\SplitterContainer;..\src\WinControls\StaticDialog;..\src\WinControls\TabBar;..\src\WinControls\ToolBar;..\src\MISC\Process;..\src\ScitillaComponent;..\src\MISC;..\src\MISC\SysMsg;..\src\WinControls\StatusBar;..\src;..\src\WinControls\StaticDialog\RunDlg;..\src\tinyxml;..\src\WinControls\ColourPicker;..\src\Win32Explr;..\src\MISC\RegExt;..\src\WinControls\TrayIcon;..\src\WinControls\shortcut;..\src\WinControls\Grid;..\src\WinControls\ContextMenu;..\src\MISC\PluginsManager;..\src\WinControls\Preference;..\src\WinControls\WindowsDlg;..\src\WinControls\TaskList;..\src\WinControls\DockingWnd;..\src\WinControls\ToolTip;..\src\MISC\Exception;..\src\MISC\Common;..\src\tinyxml\tinyXmlA;..\src\WinControls\AnsiCharPanel;..\src\WinControls\ClipboardHistory;..\src\WinControls\FindCharsInRange;..\src\WinControls\VerticalFileSwitcher;..\src\WinControls\ProjectPanel;..\src\WinControls\DocumentMap;..\src\WinControls\FunctionList;..\src\uchardet;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_WINDOWS;_USE_64BIT_TIME_T;TIXML_USE_STL;TIXMLA_USE_STL;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;_CRT_NON_CONFORMING_SWPRINTFS=1;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>WIN32;_WIN32_WINNT=0x0501;_WINDOWS;_USE_64BIT_TIME_T;TIXML_USE_STL;TIXMLA_USE_STL;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;_CRT_NON_CONFORMING_SWPRINTFS=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ExceptionHandling>Async</ExceptionHandling> <ExceptionHandling>Async</ExceptionHandling>
<BasicRuntimeChecks>Default</BasicRuntimeChecks> <BasicRuntimeChecks>Default</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
@ -66,7 +66,6 @@
<TreatWarningAsError>true</TreatWarningAsError> <TreatWarningAsError>true</TreatWarningAsError>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat> <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<MultiProcessorCompilation>true</MultiProcessorCompilation> <MultiProcessorCompilation>true</MultiProcessorCompilation>
<AdditionalOptions>/D_WIN32_WINNT=0x0501 %(AdditionalOptions)</AdditionalOptions>
</ClCompile> </ClCompile>
<Link> <Link>
<AdditionalOptions>/fixed:no %(AdditionalOptions)</AdditionalOptions> <AdditionalOptions>/fixed:no %(AdditionalOptions)</AdditionalOptions>
@ -96,7 +95,7 @@
<OmitFramePointers>false</OmitFramePointers> <OmitFramePointers>false</OmitFramePointers>
<WholeProgramOptimization>false</WholeProgramOptimization> <WholeProgramOptimization>false</WholeProgramOptimization>
<AdditionalIncludeDirectories>..\src\WinControls\AboutDlg;..\..\scintilla\include;..\include;..\src\WinControls;..\src\WinControls\ImageListSet;..\src\WinControls\OpenSaveFileDialog;..\src\WinControls\SplitterContainer;..\src\WinControls\StaticDialog;..\src\WinControls\TabBar;..\src\WinControls\ToolBar;..\src\MISC\Process;..\src\ScitillaComponent;..\src\MISC;..\src\MISC\SysMsg;..\src\WinControls\StatusBar;..\src;..\src\WinControls\StaticDialog\RunDlg;..\src\tinyxml;..\src\WinControls\ColourPicker;..\src\Win32Explr;..\src\MISC\RegExt;..\src\WinControls\TrayIcon;..\src\WinControls\shortcut;..\src\WinControls\Grid;..\src\WinControls\ContextMenu;..\src\MISC\PluginsManager;..\src\WinControls\Preference;..\src\WinControls\WindowsDlg;..\src\WinControls\TaskList;..\src\WinControls\DockingWnd;..\src\WinControls\ToolTip;..\src\MISC\Exception;..\src\MISC\Common;..\src\tinyxml\tinyXmlA;..\src\WinControls\AnsiCharPanel;..\src\WinControls\ClipboardHistory;..\src\WinControls\FindCharsInRange;..\src\WinControls\VerticalFileSwitcher;..\src\WinControls\ProjectPanel;..\src\WinControls\DocumentMap;..\src\WinControls\FunctionList;..\src\uchardet;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\src\WinControls\AboutDlg;..\..\scintilla\include;..\include;..\src\WinControls;..\src\WinControls\ImageListSet;..\src\WinControls\OpenSaveFileDialog;..\src\WinControls\SplitterContainer;..\src\WinControls\StaticDialog;..\src\WinControls\TabBar;..\src\WinControls\ToolBar;..\src\MISC\Process;..\src\ScitillaComponent;..\src\MISC;..\src\MISC\SysMsg;..\src\WinControls\StatusBar;..\src;..\src\WinControls\StaticDialog\RunDlg;..\src\tinyxml;..\src\WinControls\ColourPicker;..\src\Win32Explr;..\src\MISC\RegExt;..\src\WinControls\TrayIcon;..\src\WinControls\shortcut;..\src\WinControls\Grid;..\src\WinControls\ContextMenu;..\src\MISC\PluginsManager;..\src\WinControls\Preference;..\src\WinControls\WindowsDlg;..\src\WinControls\TaskList;..\src\WinControls\DockingWnd;..\src\WinControls\ToolTip;..\src\MISC\Exception;..\src\MISC\Common;..\src\tinyxml\tinyXmlA;..\src\WinControls\AnsiCharPanel;..\src\WinControls\ClipboardHistory;..\src\WinControls\FindCharsInRange;..\src\WinControls\VerticalFileSwitcher;..\src\WinControls\ProjectPanel;..\src\WinControls\DocumentMap;..\src\WinControls\FunctionList;..\src\uchardet;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USE_64BIT_TIME_T;TIXML_USE_STL;TIXMLA_USE_STL;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;_CRT_NON_CONFORMING_SWPRINTFS=1;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>WIN32;_WIN32_WINNT=0x0501;NDEBUG;_WINDOWS;_USE_64BIT_TIME_T;TIXML_USE_STL;TIXMLA_USE_STL;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;_CRT_NON_CONFORMING_SWPRINTFS=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessToFile>false</PreprocessToFile> <PreprocessToFile>false</PreprocessToFile>
<PreprocessSuppressLineNumbers>false</PreprocessSuppressLineNumbers> <PreprocessSuppressLineNumbers>false</PreprocessSuppressLineNumbers>
<StringPooling>true</StringPooling> <StringPooling>true</StringPooling>
@ -108,7 +107,6 @@
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat> <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<EnableEnhancedInstructionSet>NoExtensions</EnableEnhancedInstructionSet> <EnableEnhancedInstructionSet>NoExtensions</EnableEnhancedInstructionSet>
<MultiProcessorCompilation>true</MultiProcessorCompilation> <MultiProcessorCompilation>true</MultiProcessorCompilation>
<AdditionalOptions>/D_WIN32_WINNT=0x0501 %(AdditionalOptions)</AdditionalOptions>
</ClCompile> </ClCompile>
<Link> <Link>
<AdditionalDependencies>comctl32.lib;shlwapi.lib;shell32.lib;Oleacc.lib;%(AdditionalDependencies)</AdditionalDependencies> <AdditionalDependencies>comctl32.lib;shlwapi.lib;shell32.lib;Oleacc.lib;%(AdditionalDependencies)</AdditionalDependencies>
@ -410,6 +408,7 @@ copy ..\src\contextMenu.xml ..\bin\contextMenu.xml
<None Include="..\src\cursors\up.cur" /> <None Include="..\src\cursors\up.cur" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ClInclude Include="..\src\MISC\Common\LongRunningOperation.h" />
<ClInclude Include="..\src\ScitillaComponent\resource.h" /> <ClInclude Include="..\src\ScitillaComponent\resource.h" />
<ClInclude Include="..\src\WinControls\AboutDlg\AboutDlg.h" /> <ClInclude Include="..\src\WinControls\AboutDlg\AboutDlg.h" />
<ClInclude Include="..\src\WinControls\AnsiCharPanel\ansiCharPanel.h" /> <ClInclude Include="..\src\WinControls\AnsiCharPanel\ansiCharPanel.h" />

View File

@ -58,7 +58,7 @@
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<FavorSizeOrSpeed>Neither</FavorSizeOrSpeed> <FavorSizeOrSpeed>Neither</FavorSizeOrSpeed>
<AdditionalIncludeDirectories>..\src\WinControls\AboutDlg;..\..\scintilla\include;..\include;..\src\WinControls;..\src\WinControls\ImageListSet;..\src\WinControls\OpenSaveFileDialog;..\src\WinControls\SplitterContainer;..\src\WinControls\StaticDialog;..\src\WinControls\TabBar;..\src\WinControls\ToolBar;..\src\MISC\Process;..\src\ScitillaComponent;..\src\MISC;..\src\MISC\SysMsg;..\src\WinControls\StatusBar;..\src;..\src\WinControls\StaticDialog\RunDlg;..\src\tinyxml;..\src\WinControls\ColourPicker;..\src\Win32Explr;..\src\MISC\RegExt;..\src\WinControls\TrayIcon;..\src\WinControls\shortcut;..\src\WinControls\Grid;..\src\WinControls\ContextMenu;..\src\MISC\PluginsManager;..\src\WinControls\Preference;..\src\WinControls\WindowsDlg;..\src\WinControls\TaskList;..\src\WinControls\DockingWnd;..\src\WinControls\ToolTip;..\src\MISC\Exception;..\src\MISC\Common;..\src\tinyxml\tinyXmlA;..\src\WinControls\AnsiCharPanel;..\src\WinControls\ClipboardHistory;..\src\WinControls\FindCharsInRange;..\src\WinControls\VerticalFileSwitcher;..\src\WinControls\ProjectPanel;..\src\WinControls\DocumentMap;..\src\WinControls\FunctionList;..\src\uchardet;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\src\WinControls\AboutDlg;..\..\scintilla\include;..\include;..\src\WinControls;..\src\WinControls\ImageListSet;..\src\WinControls\OpenSaveFileDialog;..\src\WinControls\SplitterContainer;..\src\WinControls\StaticDialog;..\src\WinControls\TabBar;..\src\WinControls\ToolBar;..\src\MISC\Process;..\src\ScitillaComponent;..\src\MISC;..\src\MISC\SysMsg;..\src\WinControls\StatusBar;..\src;..\src\WinControls\StaticDialog\RunDlg;..\src\tinyxml;..\src\WinControls\ColourPicker;..\src\Win32Explr;..\src\MISC\RegExt;..\src\WinControls\TrayIcon;..\src\WinControls\shortcut;..\src\WinControls\Grid;..\src\WinControls\ContextMenu;..\src\MISC\PluginsManager;..\src\WinControls\Preference;..\src\WinControls\WindowsDlg;..\src\WinControls\TaskList;..\src\WinControls\DockingWnd;..\src\WinControls\ToolTip;..\src\MISC\Exception;..\src\MISC\Common;..\src\tinyxml\tinyXmlA;..\src\WinControls\AnsiCharPanel;..\src\WinControls\ClipboardHistory;..\src\WinControls\FindCharsInRange;..\src\WinControls\VerticalFileSwitcher;..\src\WinControls\ProjectPanel;..\src\WinControls\DocumentMap;..\src\WinControls\FunctionList;..\src\uchardet;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_WINDOWS;_USE_64BIT_TIME_T;TIXML_USE_STL;TIXMLA_USE_STL;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;_CRT_NON_CONFORMING_SWPRINTFS=1;_CRT_NON_CONFORMING_WCSTOK;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>WIN32;_WIN32_WINNT=0x0501;_WINDOWS;_USE_64BIT_TIME_T;TIXML_USE_STL;TIXMLA_USE_STL;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;_CRT_NON_CONFORMING_SWPRINTFS=1;_CRT_NON_CONFORMING_WCSTOK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ExceptionHandling>Async</ExceptionHandling> <ExceptionHandling>Async</ExceptionHandling>
<BasicRuntimeChecks>Default</BasicRuntimeChecks> <BasicRuntimeChecks>Default</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
@ -96,7 +96,7 @@
<OmitFramePointers>false</OmitFramePointers> <OmitFramePointers>false</OmitFramePointers>
<WholeProgramOptimization>false</WholeProgramOptimization> <WholeProgramOptimization>false</WholeProgramOptimization>
<AdditionalIncludeDirectories>..\src\WinControls\AboutDlg;..\..\scintilla\include;..\include;..\src\WinControls;..\src\WinControls\ImageListSet;..\src\WinControls\OpenSaveFileDialog;..\src\WinControls\SplitterContainer;..\src\WinControls\StaticDialog;..\src\WinControls\TabBar;..\src\WinControls\ToolBar;..\src\MISC\Process;..\src\ScitillaComponent;..\src\MISC;..\src\MISC\SysMsg;..\src\WinControls\StatusBar;..\src;..\src\WinControls\StaticDialog\RunDlg;..\src\tinyxml;..\src\WinControls\ColourPicker;..\src\Win32Explr;..\src\MISC\RegExt;..\src\WinControls\TrayIcon;..\src\WinControls\shortcut;..\src\WinControls\Grid;..\src\WinControls\ContextMenu;..\src\MISC\PluginsManager;..\src\WinControls\Preference;..\src\WinControls\WindowsDlg;..\src\WinControls\TaskList;..\src\WinControls\DockingWnd;..\src\WinControls\ToolTip;..\src\MISC\Exception;..\src\MISC\Common;..\src\tinyxml\tinyXmlA;..\src\WinControls\AnsiCharPanel;..\src\WinControls\ClipboardHistory;..\src\WinControls\FindCharsInRange;..\src\WinControls\VerticalFileSwitcher;..\src\WinControls\ProjectPanel;..\src\WinControls\DocumentMap;..\src\WinControls\FunctionList;..\src\uchardet;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>..\src\WinControls\AboutDlg;..\..\scintilla\include;..\include;..\src\WinControls;..\src\WinControls\ImageListSet;..\src\WinControls\OpenSaveFileDialog;..\src\WinControls\SplitterContainer;..\src\WinControls\StaticDialog;..\src\WinControls\TabBar;..\src\WinControls\ToolBar;..\src\MISC\Process;..\src\ScitillaComponent;..\src\MISC;..\src\MISC\SysMsg;..\src\WinControls\StatusBar;..\src;..\src\WinControls\StaticDialog\RunDlg;..\src\tinyxml;..\src\WinControls\ColourPicker;..\src\Win32Explr;..\src\MISC\RegExt;..\src\WinControls\TrayIcon;..\src\WinControls\shortcut;..\src\WinControls\Grid;..\src\WinControls\ContextMenu;..\src\MISC\PluginsManager;..\src\WinControls\Preference;..\src\WinControls\WindowsDlg;..\src\WinControls\TaskList;..\src\WinControls\DockingWnd;..\src\WinControls\ToolTip;..\src\MISC\Exception;..\src\MISC\Common;..\src\tinyxml\tinyXmlA;..\src\WinControls\AnsiCharPanel;..\src\WinControls\ClipboardHistory;..\src\WinControls\FindCharsInRange;..\src\WinControls\VerticalFileSwitcher;..\src\WinControls\ProjectPanel;..\src\WinControls\DocumentMap;..\src\WinControls\FunctionList;..\src\uchardet;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USE_64BIT_TIME_T;TIXML_USE_STL;TIXMLA_USE_STL;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;_CRT_NON_CONFORMING_SWPRINTFS=1;_CRT_NON_CONFORMING_WCSTOK;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>WIN32;_WIN32_WINNT=0x0501;NDEBUG;_WINDOWS;_USE_64BIT_TIME_T;TIXML_USE_STL;TIXMLA_USE_STL;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;_CRT_NON_CONFORMING_SWPRINTFS=1;_CRT_NON_CONFORMING_WCSTOK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessToFile>false</PreprocessToFile> <PreprocessToFile>false</PreprocessToFile>
<PreprocessSuppressLineNumbers>false</PreprocessSuppressLineNumbers> <PreprocessSuppressLineNumbers>false</PreprocessSuppressLineNumbers>
<StringPooling>true</StringPooling> <StringPooling>true</StringPooling>
@ -481,7 +481,6 @@ copy ..\src\contextMenu.xml ..\bin\contextMenu.xml
<ClInclude Include="..\src\Parameters.h" /> <ClInclude Include="..\src\Parameters.h" />
<ClInclude Include="..\src\Misc\PluginsManager\PluginInterface.h" /> <ClInclude Include="..\src\Misc\PluginsManager\PluginInterface.h" />
<ClInclude Include="..\src\Misc\PluginsManager\PluginsManager.h" /> <ClInclude Include="..\src\Misc\PluginsManager\PluginsManager.h" />
<ClInclude Include="..\src\MISC\Common\precompiledHeaders.h" />
<ClInclude Include="..\src\WinControls\Preference\preferenceDlg.h" /> <ClInclude Include="..\src\WinControls\Preference\preferenceDlg.h" />
<ClInclude Include="..\src\ScitillaComponent\Printer.h" /> <ClInclude Include="..\src\ScitillaComponent\Printer.h" />
<ClInclude Include="..\src\uchardet\prmem.h" /> <ClInclude Include="..\src\uchardet\prmem.h" />

View File

@ -40,8 +40,8 @@ The current make file only supports static linking between SciTE and Scintilla.
*** Windows version *** *** Windows version ***
A C++ compiler is required. Visual Studio .NET 2010 is the development system A C++ compiler is required. Visual Studio 2010 is the development system
used for most development although TDM Mingw32 4.4.1 is also supported. used for most development although TDM Mingw32 4.7.1 is also supported.
To build Scintilla, make in the scintilla/win32 directory To build Scintilla, make in the scintilla/win32 directory
cd scintilla\win32 cd scintilla\win32
@ -54,10 +54,7 @@ To build SciTE, use the makefiles located in the scite/win32 directory
GCC: mingw32-make GCC: mingw32-make
VS .NET: nmake -f scite.mak VS .NET: nmake -f scite.mak
An executable SciTE will now be in scite\bin. An executable SciTE will now be in scite/bin.
The Visual C++ 6.0 project (.dsp) and make files are no longer supported but are left
in the download for people that are prepared to update them.
*** GTK+/Windows version *** *** GTK+/Windows version ***

View File

@ -1,71 +0,0 @@
### start defines ###
include common.mk
INST_NAME=-install_name \
@executable_path/../Frameworks/Sci.framework/Versions/A/Sci
LD=gcc $(ARCH) -dynamiclib -framework Cocoa $(INST_NAME)
LEXOBJS:=$(addsuffix .o,$(basename $(notdir $(wildcard ../lexers/Lex*.cxx))))
SCI_LEXERS=$(LEXOBJS) \
LexerBase.o LexerModule.o LexerSimple.o Accessor.o
SCI_OBJ=AutoComplete.o CallTip.o CellBuffer.o CharClassify.o \
ContractionState.o Decoration.o Document.o Editor.o \
ExternalLexer.o Indicator.o KeyMap.o LineMarker.o PerLine.o \
PositionCache.o PropSetSimple.o RESearch.o RunStyles.o ScintillaBase.o Style.o \
StyleContext.o UniConversion.o ViewStyle.o XPM.o WordList.o \
Selection.o CharacterSet.o Catalogue.o $(SCI_LEXERS)
WAH_OBJ=DocumentAccessor.o KeyWords.o WindowAccessor.o
COC_OBJ=PlatCocoa.o ScintillaCocoa.o ScintillaView.o InfoBar.o
OBJ=$(SCI_OBJ) $(UNUSED_OBJ) $(COC_OBJ)
OBJS=$(addprefix $(FRM_BLD)/,$(OBJ))
TARG=$(APP)/Versions/A/Sci
APP=$(FRM_BLD)/Sci.framework
### end defines ###
### start targets ###
all: $(FRM_BLD) $(TARG)
cleanfrm:
-rm -rf $(FRM_BLD)
$(APP): $(FRM_BLD)
-rm -rf $(APP)
-mkdir $(APP)
-mkdir $(APP)/Versions
-mkdir $(APP)/Versions/A
-mkdir $(APP)/Versions/A/Headers
-mkdir $(APP)/Versions/A/Resources
-ln -sf `pwd`/$(APP)/Versions/A `pwd`/$(APP)/Versions/Current
-ln -sf `pwd`/$(APP)/Versions/A/Headers `pwd`/$(APP)/Headers
-ln -sf `pwd`/$(APP)/Versions/A/Resources `pwd`/$(APP)/Resources
-cp *.h $(APP)/Headers/
-cp ../src/*.h $(APP)/Headers/
-cp ../include/*.h $(APP)/Headers/
-cp -R ScintillaFramework/English.lproj $(APP)/Resources
-cp res/*.png $(APP)/Resources
-cp ScintillaFramework/Info.plist $(APP)/Resources
$(TARG) : $(OBJS) $(APP)
$(LD) $(OBJS) $(gDEFs) -o $(TARG) -lstdc++
-ln `pwd`/$(TARG) `pwd`/$(APP)/Sci
$(FRM_BLD):
-mkdir $(BLD)
-mkdir $(FRM_BLD)
### get around to filling out the real dependencies later ###
#$(FRM_BLD)/AutoComplete.o : ../src/AutoComplete.cxx ../src/AutoComplete.h \
# ../include/Platform.h
#$(FRM_BLD)/CallTip.o : ../src/CallTip.cxx ../src/CallTip.h \
# ../include/Platform.h
### end targets ###

View File

@ -32,7 +32,7 @@
NSSize textSize = [self cellSizeForBounds: theRect]; NSSize textSize = [self cellSizeForBounds: theRect];
// Center that in the proposed rect // Center that in the proposed rect
float heightDelta = newRect.size.height - textSize.height; CGFloat heightDelta = newRect.size.height - textSize.height;
if (heightDelta > 0) if (heightDelta > 0)
{ {
newRect.size.height -= heightDelta; newRect.size.height -= heightDelta;
@ -87,7 +87,7 @@
{ {
NSBundle* bundle = [NSBundle bundleForClass: [InfoBar class]]; NSBundle* bundle = [NSBundle bundleForClass: [InfoBar class]];
NSString* path = [bundle pathForResource: @"info_bar_bg" ofType: @"png" inDirectory: nil]; NSString* path = [bundle pathForResource: @"info_bar_bg" ofType: @"tiff" inDirectory: nil];
mBackground = [[NSImage alloc] initWithContentsOfFile: path]; mBackground = [[NSImage alloc] initWithContentsOfFile: path];
if (![mBackground isValid]) if (![mBackground isValid])
NSLog(@"Background image for info bar is invalid."); NSLog(@"Background image for info bar is invalid.");
@ -103,12 +103,12 @@
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
/** /**
* Called by a connected compontent (usually the info bar) if something changed there. * Called by a connected component (usually the info bar) if something changed there.
* *
* @param type The type of the notification. * @param type The type of the notification.
* @param message Carries the new status message if the type is a status message change. * @param message Carries the new status message if the type is a status message change.
* @param location Carries the new location (e.g. caret) if the type is a caret change or similar type. * @param location Carries the new location (e.g. caret) if the type is a caret change or similar type.
* @param location Carries the new zoom value if the type is a zoom change. * @param value Carries the new zoom value if the type is a zoom change.
*/ */
- (void) notify: (NotificationType) type message: (NSString*) message location: (NSPoint) location - (void) notify: (NotificationType) type message: (NSString*) message location: (NSPoint) location
value: (float) value value: (float) value
@ -143,7 +143,7 @@ static NSString *DefaultScaleMenuLabels[] = {
@"20%", @"30%", @"50%", @"75%", @"100%", @"130%", @"160%", @"200%", @"250%", @"300%" @"20%", @"30%", @"50%", @"75%", @"100%", @"130%", @"160%", @"200%", @"250%", @"300%"
}; };
static float DefaultScaleMenuFactors[] = { static float DefaultScaleMenuFactors[] = {
0.2, 0.3, 0.5, 0.75, 1.0, 1.3, 1.6, 2.0, 2.5, 3.0 0.2f, 0.3f, 0.5f, 0.75f, 1.0f, 1.3f, 1.6f, 2.0f, 2.5f, 3.0f
}; };
static unsigned DefaultScaleMenuSelectedItemIndex = 4; static unsigned DefaultScaleMenuSelectedItemIndex = 4;
static float BarFontSize = 10.0; static float BarFontSize = 10.0;
@ -251,7 +251,7 @@ static float BarFontSize = 10.0;
// Draw separator lines between items. // Draw separator lines between items.
NSRect verticalLineRect; NSRect verticalLineRect;
float component = 190.0 / 255.0; CGFloat component = 190.0 / 255.0;
NSColor* lineColor = [NSColor colorWithDeviceRed: component green: component blue: component alpha: 1]; NSColor* lineColor = [NSColor colorWithDeviceRed: component green: component blue: component alpha: 1];
if (mDisplayMask & IBShowZoom) if (mDisplayMask & IBShowZoom)
@ -301,7 +301,7 @@ static float BarFontSize = 10.0;
- (void) positionSubViews - (void) positionSubViews
{ {
NSRect currentBounds = {0, 0, 0, [self frame].size.height}; NSRect currentBounds = {{0, 0}, {0, [self frame].size.height}};
if (mDisplayMask & IBShowZoom) if (mDisplayMask & IBShowZoom)
{ {
[mZoomPopup setHidden: NO]; [mZoomPopup setHidden: NO];
@ -427,7 +427,7 @@ static float BarFontSize = 10.0;
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
/** /**
* Makes the bar resize to the smallest width that can accomodate the currently enabled items. * Makes the bar resize to the smallest width that can accommodate the currently enabled items.
*/ */
- (void) sizeToFit - (void) sizeToFit
{ {

View File

@ -8,7 +8,7 @@
* This file is dual licensed under LGPL v2.1 and the Scintilla license (http://www.scintilla.org/License.txt). * This file is dual licensed under LGPL v2.1 and the Scintilla license (http://www.scintilla.org/License.txt).
*/ */
enum IBDisplay { typedef NS_OPTIONS(NSUInteger, IBDisplay) {
IBShowZoom = 0x01, IBShowZoom = 0x01,
IBShowCaretPosition = 0x02, IBShowCaretPosition = 0x02,
IBShowStatusText = 0x04, IBShowStatusText = 0x04,
@ -21,7 +21,7 @@ enum IBDisplay {
* ScintillaView implementation. The protocol is used two-way. * ScintillaView implementation. The protocol is used two-way.
*/ */
enum NotificationType { typedef NS_ENUM(NSInteger, NotificationType) {
IBNZoomChanged, // The user selected another zoom value. IBNZoomChanged, // The user selected another zoom value.
IBNCaretChanged, // The caret in the editor changed. IBNCaretChanged, // The caret in the editor changed.
IBNStatusChanged, // The application set a new status message. IBNStatusChanged, // The application set a new status message.

View File

@ -7,14 +7,14 @@
#ifndef PLATCOCOA_H #ifndef PLATCOCOA_H
#define PLATCOCOA_H #define PLATCOCOA_H
#include <cstring>
#include <cstdio>
#include <cstdlib>
#include <assert.h> #include <assert.h>
#include <sys/time.h> #include <sys/time.h>
#include <cstdlib>
#include <cstring>
#include <cstdio>
#include <Cocoa/Cocoa.h> #include <Cocoa/Cocoa.h>
#include "QuartzTextLayout.h" #include "QuartzTextLayout.h"

View File

@ -12,22 +12,27 @@
* This file is dual licensed under LGPL v2.1 and the Scintilla license (http://www.scintilla.org/License.txt). * This file is dual licensed under LGPL v2.1 and the Scintilla license (http://www.scintilla.org/License.txt).
*/ */
#import <ScintillaView.h>
#include "PlatCocoa.h"
#include <cstring>
#include <cstdio>
#include <cstdlib>
#include <assert.h> #include <assert.h>
#include <sys/time.h> #include <sys/time.h>
#include <cstdlib>
#include <cstring>
#include <cstdio>
#include <stdexcept> #include <stdexcept>
#include <vector>
#include <map> #include <map>
#include "XPM.h"
#import <Foundation/NSGeometry.h> #import <Foundation/NSGeometry.h>
#import "Platform.h"
#import "ScintillaView.h"
#import "ScintillaCocoa.h"
#import "PlatCocoa.h"
#include "StringCopy.h"
#include "XPM.h"
using namespace Scintilla; using namespace Scintilla;
extern sptr_t scintilla_send_message(void* sci, unsigned int iMessage, uptr_t wParam, sptr_t lParam); extern sptr_t scintilla_send_message(void* sci, unsigned int iMessage, uptr_t wParam, sptr_t lParam);
@ -49,13 +54,15 @@ NSRect PRectangleToNSRect(PRectangle& rc)
*/ */
PRectangle NSRectToPRectangle(NSRect& rc) PRectangle NSRectToPRectangle(NSRect& rc)
{ {
return PRectangle(rc.origin.x, rc.origin.y, rc.size.width + rc.origin.x, rc.size.height + rc.origin.y); return PRectangle(static_cast<XYPOSITION>(rc.origin.x), static_cast<XYPOSITION>(rc.origin.y),
static_cast<XYPOSITION>(NSMaxX(rc)),
static_cast<XYPOSITION>(NSMaxY(rc)));
} }
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
/** /**
* Converts a PRctangle as used by Scintilla to a Quartz-style rectangle. * Converts a PRectangle as used by Scintilla to a Quartz-style rectangle.
*/ */
inline CGRect PRectangleToCGRect(PRectangle& rc) inline CGRect PRectangleToCGRect(PRectangle& rc)
{ {
@ -196,10 +203,10 @@ bool SurfaceImpl::Initialised()
void SurfaceImpl::Init(WindowID) void SurfaceImpl::Init(WindowID)
{ {
// To be able to draw, the surface must get a CGContext handle. We save the graphics port, // To be able to draw, the surface must get a CGContext handle. We save the graphics port,
// then aquire/release the context on an as-need basis (see above). // then acquire/release the context on an as-need basis (see above).
// XXX Docs on QDBeginCGContext are light, a better way to do this would be good. // XXX Docs on QDBeginCGContext are light, a better way to do this would be good.
// AFAIK we should not hold onto a context retrieved this way, thus the need for // AFAIK we should not hold onto a context retrieved this way, thus the need for
// aquire/release of the context. // acquire/release of the context.
Release(); Release();
} }
@ -216,7 +223,7 @@ void SurfaceImpl::Init(SurfaceID sid, WindowID)
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
void SurfaceImpl::InitPixMap(int width, int height, Surface* /* surface_ */, WindowID /* wid */) void SurfaceImpl::InitPixMap(int width, int height, Surface* surface_, WindowID /* wid */)
{ {
Release(); Release();
@ -262,6 +269,10 @@ void SurfaceImpl::InitPixMap(int width, int height, Surface* /* surface_ */, Win
CGContextSetRGBFillColor( gc, 1.0, 1.0, 1.0, 1.0 ); CGContextSetRGBFillColor( gc, 1.0, 1.0, 1.0, 1.0 );
CGContextFillRect( gc, CGRectMake( 0, 0, width, height ) ); CGContextFillRect( gc, CGRectMake( 0, 0, width, height ) );
} }
SurfaceImpl *psurfOther = static_cast<SurfaceImpl *>(surface_);
unicodeMode = psurfOther->unicodeMode;
codePage = psurfOther->codePage;
} }
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
@ -387,7 +398,7 @@ void SurfaceImpl::LineTo(int x_, int y_)
// Because Quartz is based on floating point, lines are drawn with half their colour // Because Quartz is based on floating point, lines are drawn with half their colour
// on each side of the line. Integer coordinates specify the INTERSECTION of the pixel // on each side of the line. Integer coordinates specify the INTERSECTION of the pixel
// divison lines. If you specify exact pixel values, you get a line that // division lines. If you specify exact pixel values, you get a line that
// is twice as thick but half as intense. To get pixel aligned rendering, // is twice as thick but half as intense. To get pixel aligned rendering,
// we render the "middle" of the pixels by adding 0.5 to the coordinates. // we render the "middle" of the pixels by adding 0.5 to the coordinates.
CGContextMoveToPoint( gc, x + 0.5, y + 0.5 ); CGContextMoveToPoint( gc, x + 0.5, y + 0.5 );
@ -534,8 +545,7 @@ void SurfaceImpl::RoundedRectangle(PRectangle rc, ColourDesired fore, ColourDesi
// Create a rectangle with semicircles at the corners // Create a rectangle with semicircles at the corners
const int MAX_RADIUS = 4; const int MAX_RADIUS = 4;
int radius = Platform::Minimum( MAX_RADIUS, rc.Height()/2 ); const int radius = std::min(MAX_RADIUS, static_cast<int>(std::min(rc.Height()/2, rc.Width()/2)));
radius = Platform::Minimum( radius, rc.Width()/2 );
// Points go clockwise, starting from just below the top left // Points go clockwise, starting from just below the top left
// Corners are kept together, so we can easily create arcs to connect them // Corners are kept together, so we can easily create arcs to connect them
@ -591,19 +601,101 @@ void SurfaceImpl::RoundedRectangle(PRectangle rc, ColourDesired fore, ColourDesi
CGContextDrawPath( gc, kCGPathFillStroke ); CGContextDrawPath( gc, kCGPathFillStroke );
} }
void Scintilla::SurfaceImpl::AlphaRectangle(PRectangle rc, int /*cornerSize*/, ColourDesired fill, int alphaFill, // DrawChamferedRectangle is a helper function for AlphaRectangle that either fills or strokes a
ColourDesired /*outline*/, int /*alphaOutline*/, int /*flags*/) // rectangle with its corners chamfered at 45 degrees.
static void DrawChamferedRectangle(CGContextRef gc, PRectangle rc, int cornerSize, CGPathDrawingMode mode) {
// Points go clockwise, starting from just below the top left
CGPoint corners[4][2] =
{
{
{ rc.left, rc.top + cornerSize },
{ rc.left + cornerSize, rc.top },
},
{
{ rc.right - cornerSize - 1, rc.top },
{ rc.right - 1, rc.top + cornerSize },
},
{
{ rc.right - 1, rc.bottom - cornerSize - 1 },
{ rc.right - cornerSize - 1, rc.bottom - 1 },
},
{
{ rc.left + cornerSize, rc.bottom - 1 },
{ rc.left, rc.bottom - cornerSize - 1 },
},
};
// Align the points in the middle of the pixels
for( int i = 0; i < 4; ++ i )
{
for( int j = 0; j < 2; ++ j )
{
corners[i][j].x += 0.5;
corners[i][j].y += 0.5;
}
}
// Move to the last point to begin the path
CGContextBeginPath( gc );
CGContextMoveToPoint( gc, corners[3][1].x, corners[3][1].y );
for ( int i = 0; i < 4; ++ i )
{
CGContextAddLineToPoint( gc, corners[i][0].x, corners[i][0].y );
CGContextAddLineToPoint( gc, corners[i][1].x, corners[i][1].y );
}
// Close the path to enclose it for stroking and for filling, then draw it
CGContextClosePath( gc );
CGContextDrawPath( gc, mode );
}
void Scintilla::SurfaceImpl::AlphaRectangle(PRectangle rc, int cornerSize, ColourDesired fill, int alphaFill,
ColourDesired outline, int alphaOutline, int /*flags*/)
{ {
if ( gc ) { if ( gc ) {
ColourDesired colour( fill.AsLong() );
// Snap rectangle boundaries to nearest int // Snap rectangle boundaries to nearest int
rc.left = lround(rc.left); rc.left = lround(rc.left);
rc.right = lround(rc.right); rc.right = lround(rc.right);
// Set the Fill color to match // Set the Fill color to match
CGContextSetRGBFillColor( gc, colour.GetRed() / 255.0, colour.GetGreen() / 255.0, colour.GetBlue() / 255.0, alphaFill / 255.0 ); CGContextSetRGBFillColor( gc, fill.GetRed() / 255.0, fill.GetGreen() / 255.0, fill.GetBlue() / 255.0, alphaFill / 255.0 );
CGRect rect = PRectangleToCGRect( rc ); CGContextSetRGBStrokeColor( gc, outline.GetRed() / 255.0, outline.GetGreen() / 255.0, outline.GetBlue() / 255.0, alphaOutline / 255.0 );
PRectangle rcFill = rc;
if (cornerSize == 0) {
// A simple rectangle, no rounded corners
if ((fill == outline) && (alphaFill == alphaOutline)) {
// Optimization for simple case
CGRect rect = PRectangleToCGRect( rcFill );
CGContextFillRect( gc, rect ); CGContextFillRect( gc, rect );
} else {
rcFill.left += 1.0;
rcFill.top += 1.0;
rcFill.right -= 1.0;
rcFill.bottom -= 1.0;
CGRect rect = PRectangleToCGRect( rcFill );
CGContextFillRect( gc, rect );
CGContextAddRect( gc, CGRectMake( rc.left + 0.5, rc.top + 0.5, rc.Width() - 1, rc.Height() - 1 ) );
CGContextStrokePath( gc );
}
} else {
// Approximate rounded corners with 45 degree chamfers.
// Drawing real circular arcs often leaves some over- or under-drawn pixels.
if ((fill == outline) && (alphaFill == alphaOutline)) {
// Specializing this case avoids a few stray light/dark pixels in corners.
rcFill.left -= 0.5;
rcFill.top -= 0.5;
rcFill.right += 0.5;
rcFill.bottom += 0.5;
DrawChamferedRectangle( gc, rcFill, cornerSize, kCGPathFill );
} else {
rcFill.left += 0.5;
rcFill.top += 0.5;
rcFill.right -= 0.5;
rcFill.bottom -= 0.5;
DrawChamferedRectangle( gc, rcFill, cornerSize-1, kCGPathFill );
DrawChamferedRectangle( gc, rc, cornerSize, kCGPathStroke );
}
}
} }
} }
@ -673,60 +765,12 @@ void SurfaceImpl::DrawRGBAImage(PRectangle rc, int width, int height, const unsi
} }
void SurfaceImpl::Ellipse(PRectangle rc, ColourDesired fore, ColourDesired back) { void SurfaceImpl::Ellipse(PRectangle rc, ColourDesired fore, ColourDesired back) {
// Drawing an ellipse with bezier curves. Code modified from: CGRect ellipseRect = CGRectMake(rc.left, rc.top, rc.Width(), rc.Height());
// http://www.codeguru.com/gdi/ellipse.shtml
// MAGICAL CONSTANT to map ellipse to beziers 2/3*(sqrt(2)-1)
const double EToBConst = 0.2761423749154;
CGSize offset = CGSizeMake((int)(rc.Width() * EToBConst), (int)(rc.Height() * EToBConst));
CGPoint centre = CGPointMake((rc.left + rc.right) / 2, (rc.top + rc.bottom) / 2);
// The control point array
CGPoint cCtlPt[13];
// Assign values to all the control points
cCtlPt[0].x =
cCtlPt[1].x =
cCtlPt[11].x =
cCtlPt[12].x = rc.left + 0.5;
cCtlPt[5].x =
cCtlPt[6].x =
cCtlPt[7].x = rc.right - 0.5;
cCtlPt[2].x =
cCtlPt[10].x = centre.x - offset.width + 0.5;
cCtlPt[4].x =
cCtlPt[8].x = centre.x + offset.width + 0.5;
cCtlPt[3].x =
cCtlPt[9].x = centre.x + 0.5;
cCtlPt[2].y =
cCtlPt[3].y =
cCtlPt[4].y = rc.top + 0.5;
cCtlPt[8].y =
cCtlPt[9].y =
cCtlPt[10].y = rc.bottom - 0.5;
cCtlPt[7].y =
cCtlPt[11].y = centre.y + offset.height + 0.5;
cCtlPt[1].y =
cCtlPt[5].y = centre.y - offset.height + 0.5;
cCtlPt[0].y =
cCtlPt[12].y =
cCtlPt[6].y = centre.y + 0.5;
FillColour(back); FillColour(back);
PenColour(fore); PenColour(fore);
CGContextBeginPath(gc);
CGContextBeginPath( gc ); CGContextAddEllipseInRect(gc, ellipseRect);
CGContextMoveToPoint( gc, cCtlPt[0].x, cCtlPt[0].y ); CGContextDrawPath(gc, kCGPathFillStroke);
for ( int i = 1; i < 13; i += 3 )
{
CGContextAddCurveToPoint( gc, cCtlPt[i].x, cCtlPt[i].y, cCtlPt[i+1].x, cCtlPt[i+1].y, cCtlPt[i+2].x, cCtlPt[i+2].y );
}
// Close the path to enclose it for stroking and for filling, then draw it
CGContextClosePath( gc );
CGContextDrawPath( gc, kCGPathFillStroke );
} }
void SurfaceImpl::CopyImageRectangle(Surface &surfaceSource, PRectangle srcRect, PRectangle dstRect) void SurfaceImpl::CopyImageRectangle(Surface &surfaceSource, PRectangle srcRect, PRectangle dstRect)
@ -743,10 +787,10 @@ void SurfaceImpl::CopyImageRectangle(Surface &surfaceSource, PRectangle srcRect,
CGRect drawRect = CGRectMake (0, 0, w, h); CGRect drawRect = CGRectMake (0, 0, w, h);
if (!CGRectEqualToRect (src, dst)) if (!CGRectEqualToRect (src, dst))
{ {
float sx = CGRectGetWidth(dst) / CGRectGetWidth(src); CGFloat sx = CGRectGetWidth(dst) / CGRectGetWidth(src);
float sy = CGRectGetHeight(dst) / CGRectGetHeight(src); CGFloat sy = CGRectGetHeight(dst) / CGRectGetHeight(src);
float dx = CGRectGetMinX(dst) - (CGRectGetMinX(src) * sx); CGFloat dx = CGRectGetMinX(dst) - (CGRectGetMinX(src) * sx);
float dy = CGRectGetMinY(dst) - (CGRectGetMinY(src) * sy); CGFloat dy = CGRectGetMinY(dst) - (CGRectGetMinY(src) * sy);
drawRect = CGRectMake (dx, dy, w*sx, h*sy); drawRect = CGRectMake (dx, dy, w*sx, h*sy);
} }
CGContextSaveGState (gc); CGContextSaveGState (gc);
@ -916,13 +960,13 @@ void SurfaceImpl::MeasureWidths(Font &font_, const char *s, int len, XYPOSITION
while (ui<fit) { while (ui<fit) {
size_t lenChar = utf8LengthFromLead(us[i]); size_t lenChar = utf8LengthFromLead(us[i]);
size_t codeUnits = (lenChar < 4) ? 1 : 2; size_t codeUnits = (lenChar < 4) ? 1 : 2;
CGFloat xPosition = CTLineGetOffsetForStringIndex(mLine, ui+1, NULL); CGFloat xPosition = CTLineGetOffsetForStringIndex(mLine, ui+codeUnits, NULL);
for (unsigned int bytePos=0; (bytePos<lenChar) && (i<len); bytePos++) { for (unsigned int bytePos=0; (bytePos<lenChar) && (i<len); bytePos++) {
positions[i++] = xPosition; positions[i++] = static_cast<XYPOSITION>(xPosition);
} }
ui += codeUnits; ui += codeUnits;
} }
int lastPos = 0; XYPOSITION lastPos = 0.0f;
if (i > 0) if (i > 0)
lastPos = positions[i-1]; lastPos = positions[i-1];
while (i<len) { while (i<len) {
@ -934,14 +978,14 @@ void SurfaceImpl::MeasureWidths(Font &font_, const char *s, int len, XYPOSITION
size_t lenChar = Platform::IsDBCSLeadByte(codePage, s[i]) ? 2 : 1; size_t lenChar = Platform::IsDBCSLeadByte(codePage, s[i]) ? 2 : 1;
CGFloat xPosition = CTLineGetOffsetForStringIndex(mLine, ui+1, NULL); CGFloat xPosition = CTLineGetOffsetForStringIndex(mLine, ui+1, NULL);
for (unsigned int bytePos=0; (bytePos<lenChar) && (i<len); bytePos++) { for (unsigned int bytePos=0; (bytePos<lenChar) && (i<len); bytePos++) {
positions[i++] = xPosition; positions[i++] = static_cast<XYPOSITION>(xPosition);
} }
ui++; ui++;
} }
} else { // Single byte encoding } else { // Single byte encoding
for (int i=0;i<len;i++) { for (int i=0;i<len;i++) {
CGFloat xPosition = CTLineGetOffsetForStringIndex(mLine, i+1, NULL); CGFloat xPosition = CTLineGetOffsetForStringIndex(mLine, i+1, NULL);
positions[i] = xPosition; positions[i] = static_cast<XYPOSITION>(xPosition);
} }
} }
@ -953,7 +997,7 @@ XYPOSITION SurfaceImpl::WidthText(Font &font_, const char *s, int len) {
CFStringEncoding encoding = EncodingFromCharacterSet(unicodeMode, FontCharacterSet(font_)); CFStringEncoding encoding = EncodingFromCharacterSet(unicodeMode, FontCharacterSet(font_));
textLayout->setText (reinterpret_cast<const UInt8*>(s), len, encoding, *reinterpret_cast<QuartzTextStyle*>(font_.GetID())); textLayout->setText (reinterpret_cast<const UInt8*>(s), len, encoding, *reinterpret_cast<QuartzTextStyle*>(font_.GetID()));
return textLayout->MeasureStringWidth(); return static_cast<XYPOSITION>(textLayout->MeasureStringWidth());
} }
return 1; return 1;
} }
@ -980,7 +1024,7 @@ XYPOSITION SurfaceImpl::Ascent(Font &font_) {
return 1; return 1;
float ascent = reinterpret_cast<QuartzTextStyle*>( font_.GetID() )->getAscent(); float ascent = reinterpret_cast<QuartzTextStyle*>( font_.GetID() )->getAscent();
return ascent + 0.5; return ascent + 0.5f;
} }
@ -989,7 +1033,7 @@ XYPOSITION SurfaceImpl::Descent(Font &font_) {
return 1; return 1;
float descent = reinterpret_cast<QuartzTextStyle*>( font_.GetID() )->getDescent(); float descent = reinterpret_cast<QuartzTextStyle*>( font_.GetID() )->getDescent();
return descent + 0.5; return descent + 0.5f;
} }
@ -1002,14 +1046,13 @@ XYPOSITION SurfaceImpl::ExternalLeading(Font &font_) {
return 1; return 1;
float leading = reinterpret_cast<QuartzTextStyle*>( font_.GetID() )->getLeading(); float leading = reinterpret_cast<QuartzTextStyle*>( font_.GetID() )->getLeading();
return leading + 0.5; return leading + 0.5f;
} }
XYPOSITION SurfaceImpl::Height(Font &font_) { XYPOSITION SurfaceImpl::Height(Font &font_) {
int ht = Ascent(font_) + Descent(font_); return Ascent(font_) + Descent(font_);
return ht;
} }
XYPOSITION SurfaceImpl::AverageCharWidth(Font &font_) { XYPOSITION SurfaceImpl::AverageCharWidth(Font &font_) {
@ -1017,8 +1060,8 @@ XYPOSITION SurfaceImpl::AverageCharWidth(Font &font_) {
if (!font_.GetID()) if (!font_.GetID())
return 1; return 1;
const int sizeStringLength = (sizeof( sizeString ) / sizeof( sizeString[0] ) - 1); const int sizeStringLength = ELEMENTS( sizeString );
int width = WidthText( font_, sizeString, sizeStringLength ); XYPOSITION width = WidthText( font_, sizeString, sizeStringLength );
return (int) ((width / (float) sizeStringLength) + 0.5); return (int) ((width / (float) sizeStringLength) + 0.5);
} }
@ -1055,21 +1098,7 @@ Window::~Window()
{ {
} }
//-------------------------------------------------------------------------------------------------- // Window::Destroy needs to see definition of ListBoxImpl so is located after ListBoxImpl
void Window::Destroy()
{
if (wid)
{
id idWin = reinterpret_cast<id>(wid);
if ([idWin isKindOfClass: [NSWindow class]])
{
NSWindow* win = reinterpret_cast<NSWindow*>(idWin);
[win release];
}
}
wid = 0;
}
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
@ -1081,13 +1110,13 @@ bool Window::HasFocus()
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
static int ScreenMax(NSWindow* win) static CGFloat ScreenMax(NSWindow* win)
{ {
NSScreen* screen = [win screen]; return NSMaxY([[NSScreen mainScreen] frame]);
NSRect frame = [screen frame];
return frame.origin.y + frame.size.height;
} }
//--------------------------------------------------------------------------------------------------
PRectangle Window::GetPosition() PRectangle Window::GetPosition()
{ {
if (wid) if (wid)
@ -1101,7 +1130,7 @@ PRectangle Window::GetPosition()
NSView* view = reinterpret_cast<NSView*>(idWin); NSView* view = reinterpret_cast<NSView*>(idWin);
win = [view window]; win = [view window];
rect = [view convertRect: [view bounds] toView: nil]; rect = [view convertRect: [view bounds] toView: nil];
rect.origin = [win convertBaseToScreen:rect.origin]; rect = [win convertRectToScreen:rect];
} }
else else
{ {
@ -1109,11 +1138,11 @@ PRectangle Window::GetPosition()
win = reinterpret_cast<NSWindow*>(idWin); win = reinterpret_cast<NSWindow*>(idWin);
rect = [win frame]; rect = [win frame];
} }
int screenHeight = ScreenMax(win); CGFloat screenHeight = ScreenMax(win);
// Invert screen positions to match Scintilla // Invert screen positions to match Scintilla
return PRectangle( return PRectangle(
NSMinX(rect), screenHeight - NSMaxY(rect), static_cast<XYPOSITION>(NSMinX(rect)), static_cast<XYPOSITION>(screenHeight - NSMaxY(rect)),
NSMaxX(rect), screenHeight - NSMinY(rect)); static_cast<XYPOSITION>(NSMaxX(rect)), static_cast<XYPOSITION>(screenHeight - NSMinY(rect)));
} }
else else
{ {
@ -1134,14 +1163,15 @@ void Window::SetPosition(PRectangle rc)
// Moves this view inside the parent view // Moves this view inside the parent view
NSRect nsrc = NSMakeRect(rc.left, rc.bottom, rc.Width(), rc.Height()); NSRect nsrc = NSMakeRect(rc.left, rc.bottom, rc.Width(), rc.Height());
NSView* view = reinterpret_cast<NSView*>(idWin); NSView* view = reinterpret_cast<NSView*>(idWin);
nsrc.origin = [[view window] convertScreenToBase:nsrc.origin]; nsrc = [[view window] convertRectFromScreen:nsrc];
[view setFrame: nsrc]; [view setFrame: nsrc];
} }
else else
{ {
// NSWindow // NSWindow
PLATFORM_ASSERT([idWin isKindOfClass: [NSWindow class]]);
NSWindow* win = reinterpret_cast<NSWindow*>(idWin); NSWindow* win = reinterpret_cast<NSWindow*>(idWin);
int screenHeight = ScreenMax(win); CGFloat screenHeight = ScreenMax(win);
NSRect nsrc = NSMakeRect(rc.left, screenHeight - rc.bottom, NSRect nsrc = NSMakeRect(rc.left, screenHeight - rc.bottom,
rc.Width(), rc.Height()); rc.Width(), rc.Height());
[win setFrame: nsrc display:YES]; [win setFrame: nsrc display:YES];
@ -1260,9 +1290,9 @@ void Window::SetCursor(Cursor curs)
if (wid) if (wid)
{ {
id idWin = reinterpret_cast<id>(wid); id idWin = reinterpret_cast<id>(wid);
if ([idWin isMemberOfClass: [InnerView class]]) if ([idWin isMemberOfClass: [SCIContentView class]])
{ {
InnerView* container = reinterpret_cast<InnerView*>(idWin); SCIContentView* container = reinterpret_cast<SCIContentView*>(idWin);
[container setCursor: curs]; [container setCursor: curs];
} }
} }
@ -1296,11 +1326,11 @@ PRectangle Window::GetMonitorRect(Point)
NSWindow* win = reinterpret_cast<NSWindow*>(idWin); NSWindow* win = reinterpret_cast<NSWindow*>(idWin);
NSScreen* screen = [win screen]; NSScreen* screen = [win screen];
NSRect rect = [screen frame]; NSRect rect = [screen frame];
int screenHeight = rect.origin.y + rect.size.height; CGFloat screenHeight = rect.origin.y + rect.size.height;
// Invert screen positions to match Scintilla // Invert screen positions to match Scintilla
return PRectangle( return PRectangle(
NSMinX(rect), screenHeight - NSMaxY(rect), static_cast<XYPOSITION>(NSMinX(rect)), static_cast<XYPOSITION>(screenHeight - NSMaxY(rect)),
NSMaxX(rect), screenHeight - NSMinY(rect)); static_cast<XYPOSITION>(NSMaxX(rect)), static_cast<XYPOSITION>(screenHeight - NSMinY(rect)));
} }
} }
return PRectangle(); return PRectangle();
@ -1339,6 +1369,8 @@ static NSImage* ImageFromXPM(XPM* pxpm)
//----------------- ListBox and related classes ---------------------------------------------------- //----------------- ListBox and related classes ----------------------------------------------------
//----------------- IListBox -----------------------------------------------------------------------
namespace { namespace {
// unnamed namespace hides IListBox interface // unnamed namespace hides IListBox interface
@ -1483,9 +1515,9 @@ private:
int lineHeight; int lineHeight;
bool unicodeMode; bool unicodeMode;
int desiredVisibleRows; int desiredVisibleRows;
unsigned int maxItemWidth; XYPOSITION maxItemWidth;
unsigned int aveCharWidth; unsigned int aveCharWidth;
unsigned int maxIconWidth; XYPOSITION maxIconWidth;
Font font; Font font;
int maxWidth; int maxWidth;
@ -1532,6 +1564,9 @@ public:
} }
void SetList(const char* list, char separator, char typesep); void SetList(const char* list, char separator, char typesep);
// To clean up when closed
void ReleaseViews();
// For access from AutoCompletionDataSource implement IListBox // For access from AutoCompletionDataSource implement IListBox
int Rows(); int Rows();
NSImage* ImageForRow(NSInteger row); NSImage* ImageForRow(NSInteger row);
@ -1579,6 +1614,7 @@ void ListBoxImpl::Create(Window& /*parent*/, int /*ctrlID*/, Scintilla::Point pt
[table setTarget:ds]; [table setTarget:ds];
[table setDoubleAction:@selector(doubleClick:)]; [table setDoubleAction:@selector(doubleClick:)];
table.selectionHighlightStyle = NSTableViewSelectionHighlightStyleSourceList;
wid = winLB; wid = winLB;
} }
@ -1616,19 +1652,20 @@ PRectangle ListBoxImpl::GetDesiredRect()
rcDesired = GetPosition(); rcDesired = GetPosition();
// There appears to be an extra pixel above and below the row contents // There appears to be an extra pixel above and below the row contents
int itemHeight = [table rowHeight] + 2; CGFloat itemHeight = [table rowHeight] + 2;
int rows = Length(); int rows = Length();
if ((rows == 0) || (rows > desiredVisibleRows)) if ((rows == 0) || (rows > desiredVisibleRows))
rows = desiredVisibleRows; rows = desiredVisibleRows;
rcDesired.bottom = rcDesired.top + itemHeight * rows; rcDesired.bottom = rcDesired.top + static_cast<XYPOSITION>(itemHeight * rows);
rcDesired.right = rcDesired.left + maxItemWidth + aveCharWidth; rcDesired.right = rcDesired.left + maxItemWidth + aveCharWidth;
if (Length() > rows) if (Length() > rows)
{ {
[scroller setHasVerticalScroller:YES]; [scroller setHasVerticalScroller:YES];
rcDesired.right += [NSScroller scrollerWidth]; rcDesired.right += [NSScroller scrollerWidthForControlSize:NSRegularControlSize
scrollerStyle:NSScrollerStyleLegacy];
} }
else else
{ {
@ -1645,7 +1682,21 @@ int ListBoxImpl::CaretFromEdge()
if ([colIcon isHidden]) if ([colIcon isHidden])
return 3; return 3;
else else
return 6 + [colIcon width]; return 6 + static_cast<int>([colIcon width]);
}
void ListBoxImpl::ReleaseViews()
{
[table release];
table = nil;
[scroller release];
scroller = nil;
[colIcon release];
colIcon = nil;
[colText release ];
colText = nil;
[ds release];
ds = nil;
} }
void ListBoxImpl::Clear() void ListBoxImpl::Clear()
@ -1661,7 +1712,7 @@ void ListBoxImpl::Append(char* s, int type)
ld.Add(count, type, s); ld.Add(count, type, s);
Scintilla::SurfaceImpl surface; Scintilla::SurfaceImpl surface;
unsigned int width = surface.WidthText(font, s, static_cast<int>(strlen(s))); XYPOSITION width = surface.WidthText(font, s, static_cast<int>(strlen(s)));
if (width > maxItemWidth) if (width > maxItemWidth)
{ {
maxItemWidth = width; maxItemWidth = width;
@ -1673,7 +1724,7 @@ void ListBoxImpl::Append(char* s, int type)
NSImage* img = it->second; NSImage* img = it->second;
if (img) if (img)
{ {
unsigned int widthIcon = img.size.width; XYPOSITION widthIcon = static_cast<XYPOSITION>(img.size.width);
if (widthIcon > maxIconWidth) if (widthIcon > maxIconWidth)
{ {
[colIcon setHidden: NO]; [colIcon setHidden: NO];
@ -1755,8 +1806,7 @@ void ListBoxImpl::GetValue(int n, char* value, int len)
value[0] = '\0'; value[0] = '\0';
return; return;
} }
strncpy(value, textString, len); strlcpy(value, textString, len);
value[len - 1] = '\0';
} }
void ListBoxImpl::RegisterImage(int type, const char* xpm_data) void ListBoxImpl::RegisterImage(int type, const char* xpm_data)
@ -1864,12 +1914,34 @@ ListBox* ListBox::Allocate()
return lb; return lb;
} }
//--------------------------------------------------------------------------------------------------
void Window::Destroy()
{
ListBoxImpl *listbox = dynamic_cast<ListBoxImpl *>(this);
if (listbox)
{
listbox->ReleaseViews();
}
if (wid)
{
id idWin = reinterpret_cast<id>(wid);
if ([idWin isKindOfClass: [NSWindow class]])
{
NSWindow* win = reinterpret_cast<NSWindow*>(idWin);
[win release];
}
}
wid = 0;
}
//----------------- ScintillaContextMenu ----------------------------------------------------------- //----------------- ScintillaContextMenu -----------------------------------------------------------
@implementation ScintillaContextMenu : NSMenu @implementation ScintillaContextMenu : NSMenu
// This NSMenu subclass serves also as target for menu commands and forwards them as // This NSMenu subclass serves also as target for menu commands and forwards them as
// notfication messages to the front end. // notification messages to the front end.
- (void) handleCommand: (NSMenuItem*) sender - (void) handleCommand: (NSMenuItem*) sender
{ {
@ -1984,10 +2056,10 @@ int Platform::DefaultFontSize()
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
/** /**
* Returns the time span in which two consequtive mouse clicks must occur to be considered as * Returns the time span in which two consecutive mouse clicks must occur to be considered as
* double click. * double click.
* *
* @return * @return time span in milliseconds
*/ */
unsigned int Platform::DoubleClickTime() unsigned int Platform::DoubleClickTime()
{ {
@ -2133,8 +2205,7 @@ bool Platform::ShowAssertionPopUps(bool assertionPopUps_)
void Platform::Assert(const char *c, const char *file, int line) void Platform::Assert(const char *c, const char *file, int line)
{ {
char buffer[2000]; char buffer[2000];
sprintf(buffer, "Assertion [%s] failed at %s %d", c, file, line); snprintf(buffer, sizeof(buffer), "Assertion [%s] failed at %s %d\r\n", c, file, line);
strcat(buffer, "\r\n");
Platform::DebugDisplay(buffer); Platform::DebugDisplay(buffer);
#ifdef DEBUG #ifdef DEBUG
// Jump into debugger in assert on Mac (CL269835) // Jump into debugger in assert on Mac (CL269835)
@ -2159,7 +2230,7 @@ int Platform::Clamp(int val, int minVal, int maxVal)
* Implements the platform specific part of library loading. * Implements the platform specific part of library loading.
* *
* @param modulePath The path to the module to load. * @param modulePath The path to the module to load.
* @return A library instance or NULL if the module could not be found or another problem occured. * @return A library instance or NULL if the module could not be found or another problem occurred.
*/ */
DynamicLibrary* DynamicLibrary::Load(const char* /* modulePath */) DynamicLibrary* DynamicLibrary::Load(const char* /* modulePath */)
{ {

View File

@ -20,7 +20,7 @@ class QuartzTextLayout
{ {
public: public:
/** Create a text layout for drawing on the specified context. */ /** Create a text layout for drawing on the specified context. */
QuartzTextLayout( CGContextRef context ) explicit QuartzTextLayout( CGContextRef context )
{ {
mString = NULL; mString = NULL;
mLine = NULL; mLine = NULL;
@ -85,7 +85,7 @@ public:
if (mLine == NULL) if (mLine == NULL)
return 0.0f; return 0.0f;
return ::CTLineGetTypographicBounds(mLine, NULL, NULL, NULL); return static_cast<float>(::CTLineGetTypographicBounds(mLine, NULL, NULL, NULL));
} }
CTLineRef getCTLine() { CTLineRef getCTLine() {

View File

@ -61,17 +61,17 @@ public:
float getAscent() const float getAscent() const
{ {
return ::CTFontGetAscent(fontRef); return static_cast<float>(::CTFontGetAscent(fontRef));
} }
float getDescent() const float getDescent() const
{ {
return ::CTFontGetDescent(fontRef); return static_cast<float>(::CTFontGetDescent(fontRef));
} }
float getLeading() const float getLeading() const
{ {
return ::CTFontGetLeading(fontRef); return static_cast<float>(::CTFontGetLeading(fontRef));
} }
void setFontRef(CTFontRef inRef, int characterSet_) void setFontRef(CTFontRef inRef, int characterSet_)

View File

@ -1,36 +0,0 @@
### start defines ###
include common.mk
NAME=Demo
LD=gcc $(ARCH) -framework Cocoa
TARG=$(APP)/Contents/MacOS/$(NAME)
APP=$(APP_BLD)/$(NAME).app
all: $(APP_BLD) $(TARG)
$(APP):
-rm -rf $(APP)
-mkdir $(APP)
-mkdir $(APP)/Contents/
-mkdir $(APP)/Contents/Frameworks/
-mkdir $(APP)/Contents/MacOS/
-mkdir $(APP)/Contents/Resources/
-cp ScintillaTest/Info.plist $(APP)/Contents/Info.plist.bak
-sed "s/\$${EXECUTABLE_NAME}/$(NAME)/g" < $(APP)/Contents/Info.plist.bak > $(APP)/Contents/Info.plist.bak2
-sed "s/\$${PRODUCT_NAME}/$(NAME)/g" < $(APP)/Contents/Info.plist.bak2 > $(APP)/Contents/Info.plist
-rm $(APP)/Contents/Info.plist.bak $(APP)/Contents/Info.plist.bak2
-cp -r ScintillaTest/English.lproj $(APP)/Contents/Resources/
/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text \
--compile $(APP)/Contents/Resources/English.lproj/MainMenu.nib ScintillaTest/English.lproj/MainMenu.xib
-cp ScintillaTest/TestData.sql $(APP)/Contents/Resources/
-make -f Framework.mk all
$(TARG) : $(APP_BLD)/main.o $(APP_BLD)/AppController.o $(APP)
-cp -R $(FRM_BLD)/Sci.framework $(APP)/Contents/Frameworks/
$(LD) $(APP_BLD)/main.o $(APP_BLD)/AppController.o $(APP)/Contents/Frameworks/Sci.framework/Sci -o $(TARG) -lstdc++
$(APP_BLD) :
-mkdir $(BLD)
-mkdir $(APP_BLD)

View File

@ -14,11 +14,12 @@
*/ */
#include <stdlib.h> #include <stdlib.h>
#include <string>
#include <stdio.h> #include <stdio.h>
#include <ctype.h>
#include <time.h> #include <time.h>
#include <ctype.h>
#include <stdexcept>
#include <string>
#include <vector> #include <vector>
#include <map> #include <map>
@ -40,23 +41,26 @@
#include "XPM.h" #include "XPM.h"
#include "LineMarker.h" #include "LineMarker.h"
#include "Style.h" #include "Style.h"
#include "AutoComplete.h"
#include "ViewStyle.h" #include "ViewStyle.h"
#include "CharClassify.h" #include "CharClassify.h"
#include "Decoration.h" #include "Decoration.h"
#include "CaseFolder.h" #include "CaseFolder.h"
#include "Document.h" #include "Document.h"
#include "CaseConvert.h"
#include "Selection.h" #include "Selection.h"
#include "PositionCache.h" #include "PositionCache.h"
#include "EditModel.h"
#include "MarginView.h"
#include "EditView.h"
#include "Editor.h" #include "Editor.h"
#include "AutoComplete.h"
#include "ScintillaBase.h" #include "ScintillaBase.h"
#include "CaseConvert.h"
extern "C" NSString* ScintillaRecPboardType; extern "C" NSString* ScintillaRecPboardType;
@class InnerView; @class SCIContentView;
@class MarginView; @class SCIMarginView;
@class ScintillaView; @class ScintillaView;
@class FindHighlightLayer; @class FindHighlightLayer;
@ -77,26 +81,6 @@ extern "C" NSString* ScintillaRecPboardType;
namespace Scintilla { namespace Scintilla {
/**
* On the Mac, there is no WM_COMMAND or WM_NOTIFY message that can be sent
* back to the parent. Therefore, there must be a callback handler that acts
* like a Windows WndProc, where Scintilla can send notifications to. Use
* ScintillaCocoa::RegisterNotifyHandler() to register such a handler.
* Message format is:
* <br>
* WM_COMMAND: HIWORD (wParam) = notification code, LOWORD (wParam) = 0 (no control ID), lParam = ScintillaCocoa*
* <br>
* WM_NOTIFY: wParam = 0 (no control ID), lParam = ptr to SCNotification structure, with hwndFrom set to ScintillaCocoa*
*/
typedef void(*SciNotifyFunc) (intptr_t windowid, unsigned int iMessage, uintptr_t wParam, uintptr_t lParam);
/**
* Scintilla sends these two messages to the nofity handler. Please refer
* to the Windows API doc for details about the message format.
*/
#define WM_COMMAND 1001
#define WM_NOTIFY 1002
/** /**
* Main scintilla class, implemented for OS X (Cocoa). * Main scintilla class, implemented for OS X (Cocoa).
*/ */
@ -106,6 +90,8 @@ private:
TimerTarget* timerTarget; TimerTarget* timerTarget;
NSEvent* lastMouseEvent; NSEvent* lastMouseEvent;
id<ScintillaNotificationProtocol> delegate;
SciNotifyFunc notifyProc; SciNotifyFunc notifyProc;
intptr_t notifyObj; intptr_t notifyObj;
@ -119,6 +105,8 @@ private:
bool GetPasteboardData(NSPasteboard* board, SelectionText* selectedText); bool GetPasteboardData(NSPasteboard* board, SelectionText* selectedText);
void SetPasteboardData(NSPasteboard* board, const SelectionText& selectedText); void SetPasteboardData(NSPasteboard* board, const SelectionText& selectedText);
int TargetAsUTF8(char *text);
int EncodedFromUTF8(char *utf8, char *encoded) const;
int scrollSpeed; int scrollSpeed;
int scrollTicks; int scrollTicks;
@ -129,9 +117,13 @@ private:
FindHighlightLayer *layerFindIndicator; FindHighlightLayer *layerFindIndicator;
protected: protected:
Point GetVisibleOriginInMain(); Point GetVisibleOriginInMain() const;
PRectangle GetClientRectangle(); PRectangle GetClientRectangle() const;
virtual PRectangle GetClientDrawingRectangle();
Point ConvertPoint(NSPoint point); Point ConvertPoint(NSPoint point);
virtual void RedrawRect(PRectangle rc);
virtual void DiscardOverdraw();
virtual void Redraw();
virtual void Initialise(); virtual void Initialise();
virtual void Finalise(); virtual void Finalise();
@ -140,25 +132,30 @@ protected:
virtual void CancelModes(); virtual void CancelModes();
public: public:
ScintillaCocoa(InnerView* view, MarginView* viewMargin); ScintillaCocoa(SCIContentView* view, SCIMarginView* viewMargin);
virtual ~ScintillaCocoa(); virtual ~ScintillaCocoa();
void SetDelegate(id<ScintillaNotificationProtocol> delegate_);
void RegisterNotifyCallback(intptr_t windowid, SciNotifyFunc callback); void RegisterNotifyCallback(intptr_t windowid, SciNotifyFunc callback);
sptr_t WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam); sptr_t WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam);
ScintillaView* TopContainer(); NSScrollView* ScrollContainer() const;
NSScrollView* ScrollContainer(); SCIContentView* ContentView();
InnerView* ContentView();
bool SyncPaint(void* gc, PRectangle rc); bool SyncPaint(void* gc, PRectangle rc);
bool Draw(NSRect rect, CGContextRef gc); bool Draw(NSRect rect, CGContextRef gc);
void PaintMargin(NSRect aRect); void PaintMargin(NSRect aRect);
virtual sptr_t DefWndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam); virtual sptr_t DefWndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam);
void SetTicking(bool on); void TickFor(TickReason reason);
bool FineTickerAvailable();
bool FineTickerRunning(TickReason reason);
void FineTickerStart(TickReason reason, int millis, int tolerance);
void FineTickerCancel(TickReason reason);
bool SetIdle(bool on); bool SetIdle(bool on);
void SetMouseCapture(bool on); void SetMouseCapture(bool on);
bool HaveMouseCapture(); bool HaveMouseCapture();
void WillDraw(NSRect rect);
void ScrollText(int linesToMove); void ScrollText(int linesToMove);
void SetVerticalScrollPos(); void SetVerticalScrollPos();
void SetHorizontalScrollPos(); void SetHorizontalScrollPos();
@ -189,8 +186,9 @@ public:
NSPoint GetCaretPosition(); NSPoint GetCaretPosition();
static sptr_t DirectFunction(ScintillaCocoa *sciThis, unsigned int iMessage, uptr_t wParam, sptr_t lParam); static sptr_t DirectFunction(sptr_t ptr, unsigned int iMessage, uptr_t wParam, sptr_t lParam);
NSTimer *timers[tickPlatform+1];
void TimerFired(NSTimer* timer); void TimerFired(NSTimer* timer);
void IdleTimerFired(); void IdleTimerFired();
static void UpdateObserver(CFRunLoopObserverRef observer, CFRunLoopActivity activity, void *sci); static void UpdateObserver(CFRunLoopObserverRef observer, CFRunLoopActivity activity, void *sci);
@ -199,7 +197,14 @@ public:
virtual void IdleWork(); virtual void IdleWork();
virtual void QueueIdleWork(WorkNeeded::workItems items, int upTo); virtual void QueueIdleWork(WorkNeeded::workItems items, int upTo);
int InsertText(NSString* input); int InsertText(NSString* input);
NSRange PositionsFromCharacters(NSRange range) const;
NSRange CharactersFromPositions(NSRange range) const;
void SelectOnlyMainSelection(); void SelectOnlyMainSelection();
void ConvertSelectionVirtualSpace();
bool ClearAllSelections();
void CompositionStart();
void CompositionCommit();
void CompositionUndo();
virtual void SetDocPointer(Document *document); virtual void SetDocPointer(Document *document);
bool KeyboardInput(NSEvent* event); bool KeyboardInput(NSEvent* event);

File diff suppressed because it is too large Load Diff

View File

@ -167,6 +167,7 @@
1152A77315313E58000D4E1A /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1152A77215313E58000D4E1A /* QuartzCore.framework */; }; 1152A77315313E58000D4E1A /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1152A77215313E58000D4E1A /* QuartzCore.framework */; };
11594BE9155B91DF0099E1FA /* LexOScript.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 11594BE7155B91DF0099E1FA /* LexOScript.cxx */; }; 11594BE9155B91DF0099E1FA /* LexOScript.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 11594BE7155B91DF0099E1FA /* LexOScript.cxx */; };
11594BEA155B91DF0099E1FA /* LexVisualProlog.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 11594BE8155B91DF0099E1FA /* LexVisualProlog.cxx */; }; 11594BEA155B91DF0099E1FA /* LexVisualProlog.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 11594BE8155B91DF0099E1FA /* LexVisualProlog.cxx */; };
1160E0381803651C00BCEBCB /* LexRust.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 1160E0371803651C00BCEBCB /* LexRust.cxx */; };
117ACE9114A29A1E002876F9 /* LexTCMD.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 117ACE9014A29A1E002876F9 /* LexTCMD.cxx */; }; 117ACE9114A29A1E002876F9 /* LexTCMD.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 117ACE9014A29A1E002876F9 /* LexTCMD.cxx */; };
119FF1BF13C9D1820007CE42 /* QuartzTextStyle.h in Headers */ = {isa = PBXBuildFile; fileRef = 119FF1BE13C9D1820007CE42 /* QuartzTextStyle.h */; }; 119FF1BF13C9D1820007CE42 /* QuartzTextStyle.h in Headers */ = {isa = PBXBuildFile; fileRef = 119FF1BE13C9D1820007CE42 /* QuartzTextStyle.h */; };
11A0A8A1148602DF0018D143 /* LexCoffeeScript.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 11A0A8A0148602DF0018D143 /* LexCoffeeScript.cxx */; }; 11A0A8A1148602DF0018D143 /* LexCoffeeScript.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 11A0A8A0148602DF0018D143 /* LexCoffeeScript.cxx */; };
@ -176,6 +177,8 @@
11FBA39D17817DA00048C071 /* CharacterCategory.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 11FBA39B17817DA00048C071 /* CharacterCategory.cxx */; }; 11FBA39D17817DA00048C071 /* CharacterCategory.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 11FBA39B17817DA00048C071 /* CharacterCategory.cxx */; };
11FBA39E17817DA00048C071 /* CharacterCategory.h in Headers */ = {isa = PBXBuildFile; fileRef = 11FBA39C17817DA00048C071 /* CharacterCategory.h */; }; 11FBA39E17817DA00048C071 /* CharacterCategory.h in Headers */ = {isa = PBXBuildFile; fileRef = 11FBA39C17817DA00048C071 /* CharacterCategory.h */; };
11FDAEB7174E1A9800FA161B /* LexSTTXT.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 11FDAEB6174E1A9700FA161B /* LexSTTXT.cxx */; }; 11FDAEB7174E1A9800FA161B /* LexSTTXT.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 11FDAEB6174E1A9700FA161B /* LexSTTXT.cxx */; };
11FDD0E017C480D4001541B9 /* LexKVIrc.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 11FDD0DF17C480D4001541B9 /* LexKVIrc.cxx */; };
11FF3FE21810EB3900E13F13 /* LexDMAP.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 11FF3FE11810EB3900E13F13 /* LexDMAP.cxx */; };
2744E5A40FC168A100E85C33 /* InfoBar.h in Headers */ = {isa = PBXBuildFile; fileRef = 2744E59D0FC168A100E85C33 /* InfoBar.h */; settings = {ATTRIBUTES = (Public, ); }; }; 2744E5A40FC168A100E85C33 /* InfoBar.h in Headers */ = {isa = PBXBuildFile; fileRef = 2744E59D0FC168A100E85C33 /* InfoBar.h */; settings = {ATTRIBUTES = (Public, ); }; };
2744E5AA0FC168A100E85C33 /* ScintillaView.h in Headers */ = {isa = PBXBuildFile; fileRef = 2744E5A30FC168A100E85C33 /* ScintillaView.h */; settings = {ATTRIBUTES = (Public, ); }; }; 2744E5AA0FC168A100E85C33 /* ScintillaView.h in Headers */ = {isa = PBXBuildFile; fileRef = 2744E5A30FC168A100E85C33 /* ScintillaView.h */; settings = {ATTRIBUTES = (Public, ); }; };
2744E5AC0FC168B200E85C33 /* InfoBarCommunicator.h in Headers */ = {isa = PBXBuildFile; fileRef = 2744E5AB0FC168B200E85C33 /* InfoBarCommunicator.h */; settings = {ATTRIBUTES = (Public, ); }; }; 2744E5AC0FC168B200E85C33 /* InfoBarCommunicator.h in Headers */ = {isa = PBXBuildFile; fileRef = 2744E5AB0FC168B200E85C33 /* InfoBarCommunicator.h */; settings = {ATTRIBUTES = (Public, ); }; };
@ -183,16 +186,32 @@
2744E5B30FC168C500E85C33 /* PlatCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2744E5AE0FC168C500E85C33 /* PlatCocoa.mm */; }; 2744E5B30FC168C500E85C33 /* PlatCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2744E5AE0FC168C500E85C33 /* PlatCocoa.mm */; };
2744E5B50FC168C500E85C33 /* ScintillaCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2744E5B00FC168C500E85C33 /* ScintillaCocoa.mm */; }; 2744E5B50FC168C500E85C33 /* ScintillaCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2744E5B00FC168C500E85C33 /* ScintillaCocoa.mm */; };
2744E5B60FC168C500E85C33 /* ScintillaView.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2744E5B10FC168C500E85C33 /* ScintillaView.mm */; }; 2744E5B60FC168C500E85C33 /* ScintillaView.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2744E5B10FC168C500E85C33 /* ScintillaView.mm */; };
2791F3C60FC19F71009DBCF9 /* PlatCocoa.h in Headers */ = {isa = PBXBuildFile; fileRef = 2744E59E0FC168A100E85C33 /* PlatCocoa.h */; settings = {ATTRIBUTES = (Public, ); }; }; 2791F3C60FC19F71009DBCF9 /* PlatCocoa.h in Headers */ = {isa = PBXBuildFile; fileRef = 2744E59E0FC168A100E85C33 /* PlatCocoa.h */; };
2791F3C70FC19F71009DBCF9 /* Platform.h in Headers */ = {isa = PBXBuildFile; fileRef = 2744E4850FC1678600E85C33 /* Platform.h */; settings = {ATTRIBUTES = (Public, ); }; }; 2791F3C70FC19F71009DBCF9 /* Platform.h in Headers */ = {isa = PBXBuildFile; fileRef = 2744E4850FC1678600E85C33 /* Platform.h */; };
2791F3C80FC19F71009DBCF9 /* SciLexer.h in Headers */ = {isa = PBXBuildFile; fileRef = 2744E4870FC1678600E85C33 /* SciLexer.h */; settings = {ATTRIBUTES = (Public, ); }; }; 2791F3C80FC19F71009DBCF9 /* SciLexer.h in Headers */ = {isa = PBXBuildFile; fileRef = 2744E4870FC1678600E85C33 /* SciLexer.h */; settings = {ATTRIBUTES = (Public, ); }; };
2791F3C90FC19F71009DBCF9 /* Scintilla.h in Headers */ = {isa = PBXBuildFile; fileRef = 2744E4880FC1678600E85C33 /* Scintilla.h */; settings = {ATTRIBUTES = (Public, ); }; }; 2791F3C90FC19F71009DBCF9 /* Scintilla.h in Headers */ = {isa = PBXBuildFile; fileRef = 2744E4880FC1678600E85C33 /* Scintilla.h */; settings = {ATTRIBUTES = (Public, ); }; };
2791F3E00FC1A390009DBCF9 /* ScintillaCocoa.h in Headers */ = {isa = PBXBuildFile; fileRef = 2744E5A20FC168A100E85C33 /* ScintillaCocoa.h */; settings = {ATTRIBUTES = (Public, ); }; }; 2791F3E00FC1A390009DBCF9 /* ScintillaCocoa.h in Headers */ = {isa = PBXBuildFile; fileRef = 2744E5A20FC168A100E85C33 /* ScintillaCocoa.h */; };
2791F3E30FC1A3AE009DBCF9 /* QuartzTextLayout.h in Headers */ = {isa = PBXBuildFile; fileRef = 2744E59F0FC168A100E85C33 /* QuartzTextLayout.h */; settings = {ATTRIBUTES = (Public, ); }; }; 2791F3E30FC1A3AE009DBCF9 /* QuartzTextLayout.h in Headers */ = {isa = PBXBuildFile; fileRef = 2744E59F0FC168A100E85C33 /* QuartzTextLayout.h */; };
2791F3E40FC1A3AE009DBCF9 /* QuartzTextStyleAttribute.h in Headers */ = {isa = PBXBuildFile; fileRef = 2744E5A00FC168A100E85C33 /* QuartzTextStyleAttribute.h */; settings = {ATTRIBUTES = (Public, ); }; }; 2791F3E40FC1A3AE009DBCF9 /* QuartzTextStyleAttribute.h in Headers */ = {isa = PBXBuildFile; fileRef = 2744E5A00FC168A100E85C33 /* QuartzTextStyleAttribute.h */; };
27FEF4540FC1B413005E115A /* info_bar_bg.png in Resources */ = {isa = PBXBuildFile; fileRef = 27FEF4510FC1B413005E115A /* info_bar_bg.png */; }; 27FEF4540FC1B413005E115A /* info_bar_bg.png in Resources */ = {isa = PBXBuildFile; fileRef = 27FEF4510FC1B413005E115A /* info_bar_bg.png */; };
27FEF4550FC1B413005E115A /* mac_cursor_busy.png in Resources */ = {isa = PBXBuildFile; fileRef = 27FEF4520FC1B413005E115A /* mac_cursor_busy.png */; }; 27FEF4550FC1B413005E115A /* mac_cursor_busy.png in Resources */ = {isa = PBXBuildFile; fileRef = 27FEF4520FC1B413005E115A /* mac_cursor_busy.png */; };
27FEF4560FC1B413005E115A /* mac_cursor_flipped.png in Resources */ = {isa = PBXBuildFile; fileRef = 27FEF4530FC1B413005E115A /* mac_cursor_flipped.png */; }; 27FEF4560FC1B413005E115A /* mac_cursor_flipped.png in Resources */ = {isa = PBXBuildFile; fileRef = 27FEF4530FC1B413005E115A /* mac_cursor_flipped.png */; };
280056FB188DDD2C00F200AE /* SparseState.h in Headers */ = {isa = PBXBuildFile; fileRef = 280056F8188DDD2C00F200AE /* SparseState.h */; };
280056FC188DDD2C00F200AE /* StringCopy.h in Headers */ = {isa = PBXBuildFile; fileRef = 280056F9188DDD2C00F200AE /* StringCopy.h */; };
280056FD188DDD2C00F200AE /* SubStyles.h in Headers */ = {isa = PBXBuildFile; fileRef = 280056FA188DDD2C00F200AE /* SubStyles.h */; };
28064A05190F12E100E6E47F /* LexDMIS.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 28064A04190F12E100E6E47F /* LexDMIS.cxx */; };
28A067111A36B42600B4966A /* LexHex.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 28A067101A36B42600B4966A /* LexHex.cxx */; };
28A1DD51196BE0CA006EFCDD /* EditModel.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 28A1DD4E196BE0CA006EFCDD /* EditModel.cxx */; };
28A1DD52196BE0CA006EFCDD /* EditView.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 28A1DD4F196BE0CA006EFCDD /* EditView.cxx */; };
28A1DD53196BE0CA006EFCDD /* MarginView.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 28A1DD50196BE0CA006EFCDD /* MarginView.cxx */; };
28A1DD57196BE0ED006EFCDD /* EditModel.h in Headers */ = {isa = PBXBuildFile; fileRef = 28A1DD54196BE0ED006EFCDD /* EditModel.h */; };
28A1DD58196BE0ED006EFCDD /* EditView.h in Headers */ = {isa = PBXBuildFile; fileRef = 28A1DD55196BE0ED006EFCDD /* EditView.h */; };
28A1DD59196BE0ED006EFCDD /* MarginView.h in Headers */ = {isa = PBXBuildFile; fileRef = 28A1DD56196BE0ED006EFCDD /* MarginView.h */; };
28A7D6051995E47D0062D204 /* LexRegistry.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 28A7D6041995E47D0062D204 /* LexRegistry.cxx */; };
28D516D81830FFCA0047C93D /* info_bar_bg@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 28D516D51830FFCA0047C93D /* info_bar_bg@2x.png */; };
28D516D91830FFCA0047C93D /* mac_cursor_busy@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 28D516D61830FFCA0047C93D /* mac_cursor_busy@2x.png */; };
28D516DA1830FFCA0047C93D /* mac_cursor_flipped@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 28D516D71830FFCA0047C93D /* mac_cursor_flipped@2x.png */; };
28FDA42119B6967B00BE27D7 /* LexBibTeX.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 28FDA42019B6967B00BE27D7 /* LexBibTeX.cxx */; };
8DC2EF530486A6940098B216 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C1666FE841158C02AAC07 /* InfoPlist.strings */; }; 8DC2EF530486A6940098B216 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C1666FE841158C02AAC07 /* InfoPlist.strings */; };
8DC2EF570486A6940098B216 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7B1FEA5585E11CA2CBB /* Cocoa.framework */; }; 8DC2EF570486A6940098B216 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7B1FEA5585E11CA2CBB /* Cocoa.framework */; };
/* End PBXBuildFile section */ /* End PBXBuildFile section */
@ -362,6 +381,7 @@
1152A77215313E58000D4E1A /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = ../../../../../../../../System/Library/Frameworks/QuartzCore.framework; sourceTree = "<group>"; }; 1152A77215313E58000D4E1A /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = ../../../../../../../../System/Library/Frameworks/QuartzCore.framework; sourceTree = "<group>"; };
11594BE7155B91DF0099E1FA /* LexOScript.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LexOScript.cxx; path = ../../lexers/LexOScript.cxx; sourceTree = "<group>"; }; 11594BE7155B91DF0099E1FA /* LexOScript.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LexOScript.cxx; path = ../../lexers/LexOScript.cxx; sourceTree = "<group>"; };
11594BE8155B91DF0099E1FA /* LexVisualProlog.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LexVisualProlog.cxx; path = ../../lexers/LexVisualProlog.cxx; sourceTree = "<group>"; }; 11594BE8155B91DF0099E1FA /* LexVisualProlog.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LexVisualProlog.cxx; path = ../../lexers/LexVisualProlog.cxx; sourceTree = "<group>"; };
1160E0371803651C00BCEBCB /* LexRust.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LexRust.cxx; path = ../../lexers/LexRust.cxx; sourceTree = "<group>"; };
117ACE9014A29A1E002876F9 /* LexTCMD.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LexTCMD.cxx; path = ../../lexers/LexTCMD.cxx; sourceTree = "<group>"; }; 117ACE9014A29A1E002876F9 /* LexTCMD.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LexTCMD.cxx; path = ../../lexers/LexTCMD.cxx; sourceTree = "<group>"; };
119FF1BE13C9D1820007CE42 /* QuartzTextStyle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = QuartzTextStyle.h; path = ../QuartzTextStyle.h; sourceTree = "<group>"; }; 119FF1BE13C9D1820007CE42 /* QuartzTextStyle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = QuartzTextStyle.h; path = ../QuartzTextStyle.h; sourceTree = "<group>"; };
11A0A8A0148602DF0018D143 /* LexCoffeeScript.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LexCoffeeScript.cxx; path = ../../lexers/LexCoffeeScript.cxx; sourceTree = "<group>"; }; 11A0A8A0148602DF0018D143 /* LexCoffeeScript.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LexCoffeeScript.cxx; path = ../../lexers/LexCoffeeScript.cxx; sourceTree = "<group>"; };
@ -371,6 +391,8 @@
11FBA39B17817DA00048C071 /* CharacterCategory.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CharacterCategory.cxx; path = ../../lexlib/CharacterCategory.cxx; sourceTree = "<group>"; }; 11FBA39B17817DA00048C071 /* CharacterCategory.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CharacterCategory.cxx; path = ../../lexlib/CharacterCategory.cxx; sourceTree = "<group>"; };
11FBA39C17817DA00048C071 /* CharacterCategory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CharacterCategory.h; path = ../../lexlib/CharacterCategory.h; sourceTree = "<group>"; }; 11FBA39C17817DA00048C071 /* CharacterCategory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CharacterCategory.h; path = ../../lexlib/CharacterCategory.h; sourceTree = "<group>"; };
11FDAEB6174E1A9700FA161B /* LexSTTXT.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LexSTTXT.cxx; path = ../../lexers/LexSTTXT.cxx; sourceTree = "<group>"; }; 11FDAEB6174E1A9700FA161B /* LexSTTXT.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LexSTTXT.cxx; path = ../../lexers/LexSTTXT.cxx; sourceTree = "<group>"; };
11FDD0DF17C480D4001541B9 /* LexKVIrc.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LexKVIrc.cxx; path = ../../lexers/LexKVIrc.cxx; sourceTree = "<group>"; };
11FF3FE11810EB3900E13F13 /* LexDMAP.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LexDMAP.cxx; path = ../../lexers/LexDMAP.cxx; sourceTree = "<group>"; };
2744E4850FC1678600E85C33 /* Platform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Platform.h; path = ../../include/Platform.h; sourceTree = SOURCE_ROOT; }; 2744E4850FC1678600E85C33 /* Platform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Platform.h; path = ../../include/Platform.h; sourceTree = SOURCE_ROOT; };
2744E4870FC1678600E85C33 /* SciLexer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SciLexer.h; path = ../../include/SciLexer.h; sourceTree = SOURCE_ROOT; }; 2744E4870FC1678600E85C33 /* SciLexer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SciLexer.h; path = ../../include/SciLexer.h; sourceTree = SOURCE_ROOT; };
2744E4880FC1678600E85C33 /* Scintilla.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Scintilla.h; path = ../../include/Scintilla.h; sourceTree = SOURCE_ROOT; }; 2744E4880FC1678600E85C33 /* Scintilla.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Scintilla.h; path = ../../include/Scintilla.h; sourceTree = SOURCE_ROOT; };
@ -388,6 +410,22 @@
27FEF4510FC1B413005E115A /* info_bar_bg.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = info_bar_bg.png; sourceTree = "<group>"; }; 27FEF4510FC1B413005E115A /* info_bar_bg.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = info_bar_bg.png; sourceTree = "<group>"; };
27FEF4520FC1B413005E115A /* mac_cursor_busy.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = mac_cursor_busy.png; sourceTree = "<group>"; }; 27FEF4520FC1B413005E115A /* mac_cursor_busy.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = mac_cursor_busy.png; sourceTree = "<group>"; };
27FEF4530FC1B413005E115A /* mac_cursor_flipped.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = mac_cursor_flipped.png; sourceTree = "<group>"; }; 27FEF4530FC1B413005E115A /* mac_cursor_flipped.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = mac_cursor_flipped.png; sourceTree = "<group>"; };
280056F8188DDD2C00F200AE /* SparseState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SparseState.h; path = ../../lexlib/SparseState.h; sourceTree = "<group>"; };
280056F9188DDD2C00F200AE /* StringCopy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = StringCopy.h; path = ../../lexlib/StringCopy.h; sourceTree = "<group>"; };
280056FA188DDD2C00F200AE /* SubStyles.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SubStyles.h; path = ../../lexlib/SubStyles.h; sourceTree = "<group>"; };
28064A04190F12E100E6E47F /* LexDMIS.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LexDMIS.cxx; path = ../../lexers/LexDMIS.cxx; sourceTree = "<group>"; };
28A067101A36B42600B4966A /* LexHex.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LexHex.cxx; path = ../../lexers/LexHex.cxx; sourceTree = "<group>"; };
28A1DD4E196BE0CA006EFCDD /* EditModel.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = EditModel.cxx; path = ../../src/EditModel.cxx; sourceTree = "<group>"; };
28A1DD4F196BE0CA006EFCDD /* EditView.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = EditView.cxx; path = ../../src/EditView.cxx; sourceTree = "<group>"; };
28A1DD50196BE0CA006EFCDD /* MarginView.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = MarginView.cxx; path = ../../src/MarginView.cxx; sourceTree = "<group>"; };
28A1DD54196BE0ED006EFCDD /* EditModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = EditModel.h; path = ../../src/EditModel.h; sourceTree = "<group>"; };
28A1DD55196BE0ED006EFCDD /* EditView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = EditView.h; path = ../../src/EditView.h; sourceTree = "<group>"; };
28A1DD56196BE0ED006EFCDD /* MarginView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MarginView.h; path = ../../src/MarginView.h; sourceTree = "<group>"; };
28A7D6041995E47D0062D204 /* LexRegistry.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LexRegistry.cxx; path = ../../lexers/LexRegistry.cxx; sourceTree = "<group>"; };
28D516D51830FFCA0047C93D /* info_bar_bg@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "info_bar_bg@2x.png"; sourceTree = "<group>"; };
28D516D61830FFCA0047C93D /* mac_cursor_busy@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "mac_cursor_busy@2x.png"; sourceTree = "<group>"; };
28D516D71830FFCA0047C93D /* mac_cursor_flipped@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "mac_cursor_flipped@2x.png"; sourceTree = "<group>"; };
28FDA42019B6967B00BE27D7 /* LexBibTeX.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LexBibTeX.cxx; path = ../../lexers/LexBibTeX.cxx; sourceTree = "<group>"; };
32DBCF5E0370ADEE00C91783 /* Scintilla_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Scintilla_Prefix.pch; sourceTree = "<group>"; }; 32DBCF5E0370ADEE00C91783 /* Scintilla_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Scintilla_Prefix.pch; sourceTree = "<group>"; };
8DC2EF5A0486A6940098B216 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; }; 8DC2EF5A0486A6940098B216 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
8DC2EF5B0486A6940098B216 /* Scintilla.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Scintilla.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 8DC2EF5B0486A6940098B216 /* Scintilla.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Scintilla.framework; sourceTree = BUILT_PRODUCTS_DIR; };
@ -501,6 +539,7 @@
114B6EC611FA7526004FB6AB /* LexBaan.cxx */, 114B6EC611FA7526004FB6AB /* LexBaan.cxx */,
114B6EC711FA7526004FB6AB /* LexBash.cxx */, 114B6EC711FA7526004FB6AB /* LexBash.cxx */,
114B6EC811FA7526004FB6AB /* LexBasic.cxx */, 114B6EC811FA7526004FB6AB /* LexBasic.cxx */,
28FDA42019B6967B00BE27D7 /* LexBibTeX.cxx */,
114B6EC911FA7526004FB6AB /* LexBullant.cxx */, 114B6EC911FA7526004FB6AB /* LexBullant.cxx */,
114B6ECA11FA7526004FB6AB /* LexCaml.cxx */, 114B6ECA11FA7526004FB6AB /* LexCaml.cxx */,
114B6ECB11FA7526004FB6AB /* LexCLW.cxx */, 114B6ECB11FA7526004FB6AB /* LexCLW.cxx */,
@ -513,6 +552,8 @@
114B6ED111FA7526004FB6AB /* LexCsound.cxx */, 114B6ED111FA7526004FB6AB /* LexCsound.cxx */,
114B6ED211FA7526004FB6AB /* LexCSS.cxx */, 114B6ED211FA7526004FB6AB /* LexCSS.cxx */,
114B6ED311FA7526004FB6AB /* LexD.cxx */, 114B6ED311FA7526004FB6AB /* LexD.cxx */,
11FF3FE11810EB3900E13F13 /* LexDMAP.cxx */,
28064A04190F12E100E6E47F /* LexDMIS.cxx */,
11BEB6A114EF189600BDE92A /* LexECL.cxx */, 11BEB6A114EF189600BDE92A /* LexECL.cxx */,
114B6ED411FA7526004FB6AB /* LexEiffel.cxx */, 114B6ED411FA7526004FB6AB /* LexEiffel.cxx */,
114B6ED511FA7526004FB6AB /* LexErlang.cxx */, 114B6ED511FA7526004FB6AB /* LexErlang.cxx */,
@ -523,9 +564,11 @@
114B6EDA11FA7526004FB6AB /* LexGAP.cxx */, 114B6EDA11FA7526004FB6AB /* LexGAP.cxx */,
114B6EDB11FA7526004FB6AB /* LexGui4Cli.cxx */, 114B6EDB11FA7526004FB6AB /* LexGui4Cli.cxx */,
114B6EDC11FA7526004FB6AB /* LexHaskell.cxx */, 114B6EDC11FA7526004FB6AB /* LexHaskell.cxx */,
28A067101A36B42600B4966A /* LexHex.cxx */,
114B6EDD11FA7526004FB6AB /* LexHTML.cxx */, 114B6EDD11FA7526004FB6AB /* LexHTML.cxx */,
114B6EDE11FA7526004FB6AB /* LexInno.cxx */, 114B6EDE11FA7526004FB6AB /* LexInno.cxx */,
114B6EDF11FA7526004FB6AB /* LexKix.cxx */, 114B6EDF11FA7526004FB6AB /* LexKix.cxx */,
11FDD0DF17C480D4001541B9 /* LexKVIrc.cxx */,
1102C31B169FB49300DC16AB /* LexLaTeX.cxx */, 1102C31B169FB49300DC16AB /* LexLaTeX.cxx */,
114B6EE011FA7526004FB6AB /* LexLisp.cxx */, 114B6EE011FA7526004FB6AB /* LexLisp.cxx */,
114B6EE111FA7526004FB6AB /* LexLout.cxx */, 114B6EE111FA7526004FB6AB /* LexLout.cxx */,
@ -557,7 +600,9 @@
114B6EF811FA7526004FB6AB /* LexPython.cxx */, 114B6EF811FA7526004FB6AB /* LexPython.cxx */,
114B6EF911FA7526004FB6AB /* LexR.cxx */, 114B6EF911FA7526004FB6AB /* LexR.cxx */,
114B6EFA11FA7526004FB6AB /* LexRebol.cxx */, 114B6EFA11FA7526004FB6AB /* LexRebol.cxx */,
28A7D6041995E47D0062D204 /* LexRegistry.cxx */,
114B6EFB11FA7526004FB6AB /* LexRuby.cxx */, 114B6EFB11FA7526004FB6AB /* LexRuby.cxx */,
1160E0371803651C00BCEBCB /* LexRust.cxx */,
114B6EFC11FA7526004FB6AB /* LexScriptol.cxx */, 114B6EFC11FA7526004FB6AB /* LexScriptol.cxx */,
114B6EFD11FA7526004FB6AB /* LexSmalltalk.cxx */, 114B6EFD11FA7526004FB6AB /* LexSmalltalk.cxx */,
114B6EFE11FA7526004FB6AB /* LexSML.cxx */, 114B6EFE11FA7526004FB6AB /* LexSML.cxx */,
@ -598,7 +643,9 @@
114B6FA711FA7623004FB6AB /* ContractionState.h */, 114B6FA711FA7623004FB6AB /* ContractionState.h */,
114B6FA811FA7623004FB6AB /* Decoration.h */, 114B6FA811FA7623004FB6AB /* Decoration.h */,
114B6FA911FA7623004FB6AB /* Document.h */, 114B6FA911FA7623004FB6AB /* Document.h */,
28A1DD54196BE0ED006EFCDD /* EditModel.h */,
114B6FAA11FA7623004FB6AB /* Editor.h */, 114B6FAA11FA7623004FB6AB /* Editor.h */,
28A1DD55196BE0ED006EFCDD /* EditView.h */,
114B6FAB11FA7623004FB6AB /* ExternalLexer.h */, 114B6FAB11FA7623004FB6AB /* ExternalLexer.h */,
114B6FAC11FA7623004FB6AB /* FontQuality.h */, 114B6FAC11FA7623004FB6AB /* FontQuality.h */,
114B6FA011FA75DB004FB6AB /* ILexer.h */, 114B6FA011FA75DB004FB6AB /* ILexer.h */,
@ -610,6 +657,7 @@
114B6FDD11FA7645004FB6AB /* LexerNoExceptions.h */, 114B6FDD11FA7645004FB6AB /* LexerNoExceptions.h */,
114B6FDE11FA7645004FB6AB /* LexerSimple.h */, 114B6FDE11FA7645004FB6AB /* LexerSimple.h */,
114B6FAF11FA7623004FB6AB /* LineMarker.h */, 114B6FAF11FA7623004FB6AB /* LineMarker.h */,
28A1DD56196BE0ED006EFCDD /* MarginView.h */,
114B6FDF11FA7645004FB6AB /* OptionSet.h */, 114B6FDF11FA7645004FB6AB /* OptionSet.h */,
114B6FB011FA7623004FB6AB /* Partitioning.h */, 114B6FB011FA7623004FB6AB /* Partitioning.h */,
114B6FB111FA7623004FB6AB /* PerLine.h */, 114B6FB111FA7623004FB6AB /* PerLine.h */,
@ -619,9 +667,12 @@
114B6FB411FA7623004FB6AB /* RunStyles.h */, 114B6FB411FA7623004FB6AB /* RunStyles.h */,
114B6FB511FA7623004FB6AB /* ScintillaBase.h */, 114B6FB511FA7623004FB6AB /* ScintillaBase.h */,
114B6FB611FA7623004FB6AB /* Selection.h */, 114B6FB611FA7623004FB6AB /* Selection.h */,
280056F8188DDD2C00F200AE /* SparseState.h */,
114B6FB711FA7623004FB6AB /* SplitVector.h */, 114B6FB711FA7623004FB6AB /* SplitVector.h */,
280056F9188DDD2C00F200AE /* StringCopy.h */,
114B6FB811FA7623004FB6AB /* Style.h */, 114B6FB811FA7623004FB6AB /* Style.h */,
114B6FE111FA7645004FB6AB /* StyleContext.h */, 114B6FE111FA7645004FB6AB /* StyleContext.h */,
280056FA188DDD2C00F200AE /* SubStyles.h */,
1100F1EA178E393200105727 /* UnicodeFromUTF8.h */, 1100F1EA178E393200105727 /* UnicodeFromUTF8.h */,
114B6FBA11FA7623004FB6AB /* UniConversion.h */, 114B6FBA11FA7623004FB6AB /* UniConversion.h */,
114B6FBB11FA7623004FB6AB /* ViewStyle.h */, 114B6FBB11FA7623004FB6AB /* ViewStyle.h */,
@ -647,7 +698,9 @@
114B6F6511FA7597004FB6AB /* ContractionState.cxx */, 114B6F6511FA7597004FB6AB /* ContractionState.cxx */,
114B6F6611FA7597004FB6AB /* Decoration.cxx */, 114B6F6611FA7597004FB6AB /* Decoration.cxx */,
114B6F6711FA7597004FB6AB /* Document.cxx */, 114B6F6711FA7597004FB6AB /* Document.cxx */,
28A1DD4E196BE0CA006EFCDD /* EditModel.cxx */,
114B6F6811FA7597004FB6AB /* Editor.cxx */, 114B6F6811FA7597004FB6AB /* Editor.cxx */,
28A1DD4F196BE0CA006EFCDD /* EditView.cxx */,
114B6F6911FA7598004FB6AB /* ExternalLexer.cxx */, 114B6F6911FA7598004FB6AB /* ExternalLexer.cxx */,
114B6F6A11FA7598004FB6AB /* Indicator.cxx */, 114B6F6A11FA7598004FB6AB /* Indicator.cxx */,
114B6F6B11FA7598004FB6AB /* KeyMap.cxx */, 114B6F6B11FA7598004FB6AB /* KeyMap.cxx */,
@ -656,6 +709,7 @@
114B6F9211FA75BE004FB6AB /* LexerNoExceptions.cxx */, 114B6F9211FA75BE004FB6AB /* LexerNoExceptions.cxx */,
114B6F9311FA75BE004FB6AB /* LexerSimple.cxx */, 114B6F9311FA75BE004FB6AB /* LexerSimple.cxx */,
114B6F6C11FA7598004FB6AB /* LineMarker.cxx */, 114B6F6C11FA7598004FB6AB /* LineMarker.cxx */,
28A1DD50196BE0CA006EFCDD /* MarginView.cxx */,
114B6F6D11FA7598004FB6AB /* PerLine.cxx */, 114B6F6D11FA7598004FB6AB /* PerLine.cxx */,
114B6F6E11FA7598004FB6AB /* PositionCache.cxx */, 114B6F6E11FA7598004FB6AB /* PositionCache.cxx */,
114B6F9411FA75BE004FB6AB /* PropSetSimple.cxx */, 114B6F9411FA75BE004FB6AB /* PropSetSimple.cxx */,
@ -705,6 +759,9 @@
27FEF4500FC1B413005E115A /* res */ = { 27FEF4500FC1B413005E115A /* res */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
28D516D51830FFCA0047C93D /* info_bar_bg@2x.png */,
28D516D61830FFCA0047C93D /* mac_cursor_busy@2x.png */,
28D516D71830FFCA0047C93D /* mac_cursor_flipped@2x.png */,
27FEF4510FC1B413005E115A /* info_bar_bg.png */, 27FEF4510FC1B413005E115A /* info_bar_bg.png */,
27FEF4520FC1B413005E115A /* mac_cursor_busy.png */, 27FEF4520FC1B413005E115A /* mac_cursor_busy.png */,
27FEF4530FC1B413005E115A /* mac_cursor_flipped.png */, 27FEF4530FC1B413005E115A /* mac_cursor_flipped.png */,
@ -730,13 +787,14 @@
files = ( files = (
2744E5A40FC168A100E85C33 /* InfoBar.h in Headers */, 2744E5A40FC168A100E85C33 /* InfoBar.h in Headers */,
2744E5AC0FC168B200E85C33 /* InfoBarCommunicator.h in Headers */, 2744E5AC0FC168B200E85C33 /* InfoBarCommunicator.h in Headers */,
2744E5AA0FC168A100E85C33 /* ScintillaView.h in Headers */,
280056FB188DDD2C00F200AE /* SparseState.h in Headers */,
2791F3C80FC19F71009DBCF9 /* SciLexer.h in Headers */,
2791F3C60FC19F71009DBCF9 /* PlatCocoa.h in Headers */, 2791F3C60FC19F71009DBCF9 /* PlatCocoa.h in Headers */,
2791F3E30FC1A3AE009DBCF9 /* QuartzTextLayout.h in Headers */, 2791F3E30FC1A3AE009DBCF9 /* QuartzTextLayout.h in Headers */,
2791F3E40FC1A3AE009DBCF9 /* QuartzTextStyleAttribute.h in Headers */, 2791F3E40FC1A3AE009DBCF9 /* QuartzTextStyleAttribute.h in Headers */,
2791F3E00FC1A390009DBCF9 /* ScintillaCocoa.h in Headers */, 2791F3E00FC1A390009DBCF9 /* ScintillaCocoa.h in Headers */,
2744E5AA0FC168A100E85C33 /* ScintillaView.h in Headers */,
2791F3C70FC19F71009DBCF9 /* Platform.h in Headers */, 2791F3C70FC19F71009DBCF9 /* Platform.h in Headers */,
2791F3C80FC19F71009DBCF9 /* SciLexer.h in Headers */,
2791F3C90FC19F71009DBCF9 /* Scintilla.h in Headers */, 2791F3C90FC19F71009DBCF9 /* Scintilla.h in Headers */,
114B6FA111FA75DB004FB6AB /* ILexer.h in Headers */, 114B6FA111FA75DB004FB6AB /* ILexer.h in Headers */,
114B6FBD11FA7623004FB6AB /* AutoComplete.h in Headers */, 114B6FBD11FA7623004FB6AB /* AutoComplete.h in Headers */,
@ -750,6 +808,7 @@
114B6FC511FA7623004FB6AB /* Editor.h in Headers */, 114B6FC511FA7623004FB6AB /* Editor.h in Headers */,
114B6FC611FA7623004FB6AB /* ExternalLexer.h in Headers */, 114B6FC611FA7623004FB6AB /* ExternalLexer.h in Headers */,
114B6FC711FA7623004FB6AB /* FontQuality.h in Headers */, 114B6FC711FA7623004FB6AB /* FontQuality.h in Headers */,
28A1DD57196BE0ED006EFCDD /* EditModel.h in Headers */,
114B6FC811FA7623004FB6AB /* Indicator.h in Headers */, 114B6FC811FA7623004FB6AB /* Indicator.h in Headers */,
114B6FC911FA7623004FB6AB /* KeyMap.h in Headers */, 114B6FC911FA7623004FB6AB /* KeyMap.h in Headers */,
114B6FCA11FA7623004FB6AB /* LineMarker.h in Headers */, 114B6FCA11FA7623004FB6AB /* LineMarker.h in Headers */,
@ -757,11 +816,14 @@
114B6FCC11FA7623004FB6AB /* PerLine.h in Headers */, 114B6FCC11FA7623004FB6AB /* PerLine.h in Headers */,
114B6FCD11FA7623004FB6AB /* PositionCache.h in Headers */, 114B6FCD11FA7623004FB6AB /* PositionCache.h in Headers */,
114B6FCE11FA7623004FB6AB /* RESearch.h in Headers */, 114B6FCE11FA7623004FB6AB /* RESearch.h in Headers */,
28A1DD58196BE0ED006EFCDD /* EditView.h in Headers */,
114B6FCF11FA7623004FB6AB /* RunStyles.h in Headers */, 114B6FCF11FA7623004FB6AB /* RunStyles.h in Headers */,
280056FD188DDD2C00F200AE /* SubStyles.h in Headers */,
114B6FD011FA7623004FB6AB /* ScintillaBase.h in Headers */, 114B6FD011FA7623004FB6AB /* ScintillaBase.h in Headers */,
114B6FD111FA7623004FB6AB /* Selection.h in Headers */, 114B6FD111FA7623004FB6AB /* Selection.h in Headers */,
114B6FD211FA7623004FB6AB /* SplitVector.h in Headers */, 114B6FD211FA7623004FB6AB /* SplitVector.h in Headers */,
114B6FD311FA7623004FB6AB /* Style.h in Headers */, 114B6FD311FA7623004FB6AB /* Style.h in Headers */,
280056FC188DDD2C00F200AE /* StringCopy.h in Headers */,
114B6FD511FA7623004FB6AB /* UniConversion.h in Headers */, 114B6FD511FA7623004FB6AB /* UniConversion.h in Headers */,
114B6FD611FA7623004FB6AB /* ViewStyle.h in Headers */, 114B6FD611FA7623004FB6AB /* ViewStyle.h in Headers */,
114B6FD711FA7623004FB6AB /* XPM.h in Headers */, 114B6FD711FA7623004FB6AB /* XPM.h in Headers */,
@ -773,6 +835,7 @@
114B6FE811FA7645004FB6AB /* LexerNoExceptions.h in Headers */, 114B6FE811FA7645004FB6AB /* LexerNoExceptions.h in Headers */,
114B6FE911FA7645004FB6AB /* LexerSimple.h in Headers */, 114B6FE911FA7645004FB6AB /* LexerSimple.h in Headers */,
114B6FEA11FA7645004FB6AB /* OptionSet.h in Headers */, 114B6FEA11FA7645004FB6AB /* OptionSet.h in Headers */,
28A1DD59196BE0ED006EFCDD /* MarginView.h in Headers */,
114B6FEB11FA7645004FB6AB /* PropSetSimple.h in Headers */, 114B6FEB11FA7645004FB6AB /* PropSetSimple.h in Headers */,
114B6FEC11FA7645004FB6AB /* StyleContext.h in Headers */, 114B6FEC11FA7645004FB6AB /* StyleContext.h in Headers */,
114B6FED11FA7645004FB6AB /* WordList.h in Headers */, 114B6FED11FA7645004FB6AB /* WordList.h in Headers */,
@ -812,7 +875,7 @@
0867D690FE84028FC02AAC07 /* Project object */ = { 0867D690FE84028FC02AAC07 /* Project object */ = {
isa = PBXProject; isa = PBXProject;
attributes = { attributes = {
LastUpgradeCheck = 0460; LastUpgradeCheck = 0610;
}; };
buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "ScintillaFramework" */; buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "ScintillaFramework" */;
compatibilityVersion = "Xcode 3.2"; compatibilityVersion = "Xcode 3.2";
@ -841,8 +904,11 @@
files = ( files = (
8DC2EF530486A6940098B216 /* InfoPlist.strings in Resources */, 8DC2EF530486A6940098B216 /* InfoPlist.strings in Resources */,
27FEF4540FC1B413005E115A /* info_bar_bg.png in Resources */, 27FEF4540FC1B413005E115A /* info_bar_bg.png in Resources */,
28D516D81830FFCA0047C93D /* info_bar_bg@2x.png in Resources */,
28D516D91830FFCA0047C93D /* mac_cursor_busy@2x.png in Resources */,
27FEF4550FC1B413005E115A /* mac_cursor_busy.png in Resources */, 27FEF4550FC1B413005E115A /* mac_cursor_busy.png in Resources */,
27FEF4560FC1B413005E115A /* mac_cursor_flipped.png in Resources */, 27FEF4560FC1B413005E115A /* mac_cursor_flipped.png in Resources */,
28D516DA1830FFCA0047C93D /* mac_cursor_flipped@2x.png in Resources */,
); );
runOnlyForDeploymentPostprocessing = 0; runOnlyForDeploymentPostprocessing = 0;
}; };
@ -883,19 +949,23 @@
114B6F2411FA7526004FB6AB /* LexErlang.cxx in Sources */, 114B6F2411FA7526004FB6AB /* LexErlang.cxx in Sources */,
114B6F2511FA7526004FB6AB /* LexEScript.cxx in Sources */, 114B6F2511FA7526004FB6AB /* LexEScript.cxx in Sources */,
114B6F2611FA7526004FB6AB /* LexFlagship.cxx in Sources */, 114B6F2611FA7526004FB6AB /* LexFlagship.cxx in Sources */,
28064A05190F12E100E6E47F /* LexDMIS.cxx in Sources */,
114B6F2711FA7526004FB6AB /* LexForth.cxx in Sources */, 114B6F2711FA7526004FB6AB /* LexForth.cxx in Sources */,
114B6F2811FA7526004FB6AB /* LexFortran.cxx in Sources */, 114B6F2811FA7526004FB6AB /* LexFortran.cxx in Sources */,
28FDA42119B6967B00BE27D7 /* LexBibTeX.cxx in Sources */,
114B6F2911FA7526004FB6AB /* LexGAP.cxx in Sources */, 114B6F2911FA7526004FB6AB /* LexGAP.cxx in Sources */,
114B6F2A11FA7526004FB6AB /* LexGui4Cli.cxx in Sources */, 114B6F2A11FA7526004FB6AB /* LexGui4Cli.cxx in Sources */,
114B6F2B11FA7526004FB6AB /* LexHaskell.cxx in Sources */, 114B6F2B11FA7526004FB6AB /* LexHaskell.cxx in Sources */,
114B6F2C11FA7526004FB6AB /* LexHTML.cxx in Sources */, 114B6F2C11FA7526004FB6AB /* LexHTML.cxx in Sources */,
114B6F2D11FA7526004FB6AB /* LexInno.cxx in Sources */, 114B6F2D11FA7526004FB6AB /* LexInno.cxx in Sources */,
114B6F2E11FA7526004FB6AB /* LexKix.cxx in Sources */, 114B6F2E11FA7526004FB6AB /* LexKix.cxx in Sources */,
28A067111A36B42600B4966A /* LexHex.cxx in Sources */,
114B6F2F11FA7526004FB6AB /* LexLisp.cxx in Sources */, 114B6F2F11FA7526004FB6AB /* LexLisp.cxx in Sources */,
114B6F3011FA7526004FB6AB /* LexLout.cxx in Sources */, 114B6F3011FA7526004FB6AB /* LexLout.cxx in Sources */,
114B6F3111FA7526004FB6AB /* LexLua.cxx in Sources */, 114B6F3111FA7526004FB6AB /* LexLua.cxx in Sources */,
114B6F3211FA7526004FB6AB /* LexMagik.cxx in Sources */, 114B6F3211FA7526004FB6AB /* LexMagik.cxx in Sources */,
114B6F3311FA7526004FB6AB /* LexMarkdown.cxx in Sources */, 114B6F3311FA7526004FB6AB /* LexMarkdown.cxx in Sources */,
28A1DD52196BE0CA006EFCDD /* EditView.cxx in Sources */,
114B6F3411FA7526004FB6AB /* LexMatlab.cxx in Sources */, 114B6F3411FA7526004FB6AB /* LexMatlab.cxx in Sources */,
114B6F3511FA7526004FB6AB /* LexMetapost.cxx in Sources */, 114B6F3511FA7526004FB6AB /* LexMetapost.cxx in Sources */,
114B6F3611FA7526004FB6AB /* LexMMIXAL.cxx in Sources */, 114B6F3611FA7526004FB6AB /* LexMMIXAL.cxx in Sources */,
@ -931,6 +1001,7 @@
114B6F5411FA7526004FB6AB /* LexTAL.cxx in Sources */, 114B6F5411FA7526004FB6AB /* LexTAL.cxx in Sources */,
114B6F5511FA7526004FB6AB /* LexTCL.cxx in Sources */, 114B6F5511FA7526004FB6AB /* LexTCL.cxx in Sources */,
114B6F5611FA7526004FB6AB /* LexTeX.cxx in Sources */, 114B6F5611FA7526004FB6AB /* LexTeX.cxx in Sources */,
28A1DD53196BE0CA006EFCDD /* MarginView.cxx in Sources */,
114B6F5711FA7526004FB6AB /* LexTxt2tags.cxx in Sources */, 114B6F5711FA7526004FB6AB /* LexTxt2tags.cxx in Sources */,
114B6F5811FA7526004FB6AB /* LexVB.cxx in Sources */, 114B6F5811FA7526004FB6AB /* LexVB.cxx in Sources */,
114B6F5911FA7526004FB6AB /* LexVerilog.cxx in Sources */, 114B6F5911FA7526004FB6AB /* LexVerilog.cxx in Sources */,
@ -941,6 +1012,7 @@
114B6F7911FA7598004FB6AB /* Catalogue.cxx in Sources */, 114B6F7911FA7598004FB6AB /* Catalogue.cxx in Sources */,
114B6F7A11FA7598004FB6AB /* CellBuffer.cxx in Sources */, 114B6F7A11FA7598004FB6AB /* CellBuffer.cxx in Sources */,
114B6F7B11FA7598004FB6AB /* CharClassify.cxx in Sources */, 114B6F7B11FA7598004FB6AB /* CharClassify.cxx in Sources */,
28A1DD51196BE0CA006EFCDD /* EditModel.cxx in Sources */,
114B6F7C11FA7598004FB6AB /* ContractionState.cxx in Sources */, 114B6F7C11FA7598004FB6AB /* ContractionState.cxx in Sources */,
114B6F7D11FA7598004FB6AB /* Decoration.cxx in Sources */, 114B6F7D11FA7598004FB6AB /* Decoration.cxx in Sources */,
114B6F7E11FA7598004FB6AB /* Document.cxx in Sources */, 114B6F7E11FA7598004FB6AB /* Document.cxx in Sources */,
@ -956,6 +1028,7 @@
114B6F8811FA7598004FB6AB /* ScintillaBase.cxx in Sources */, 114B6F8811FA7598004FB6AB /* ScintillaBase.cxx in Sources */,
114B6F8911FA7598004FB6AB /* Selection.cxx in Sources */, 114B6F8911FA7598004FB6AB /* Selection.cxx in Sources */,
114B6F8A11FA7598004FB6AB /* Style.cxx in Sources */, 114B6F8A11FA7598004FB6AB /* Style.cxx in Sources */,
28A7D6051995E47D0062D204 /* LexRegistry.cxx in Sources */,
114B6F8B11FA7598004FB6AB /* UniConversion.cxx in Sources */, 114B6F8B11FA7598004FB6AB /* UniConversion.cxx in Sources */,
114B6F8C11FA7598004FB6AB /* ViewStyle.cxx in Sources */, 114B6F8C11FA7598004FB6AB /* ViewStyle.cxx in Sources */,
114B6F8D11FA7598004FB6AB /* XPM.cxx in Sources */, 114B6F8D11FA7598004FB6AB /* XPM.cxx in Sources */,
@ -982,6 +1055,9 @@
11FBA39D17817DA00048C071 /* CharacterCategory.cxx in Sources */, 11FBA39D17817DA00048C071 /* CharacterCategory.cxx in Sources */,
1100F1EB178E393200105727 /* CaseConvert.cxx in Sources */, 1100F1EB178E393200105727 /* CaseConvert.cxx in Sources */,
1100F1ED178E393200105727 /* CaseFolder.cxx in Sources */, 1100F1ED178E393200105727 /* CaseFolder.cxx in Sources */,
11FDD0E017C480D4001541B9 /* LexKVIrc.cxx in Sources */,
1160E0381803651C00BCEBCB /* LexRust.cxx in Sources */,
11FF3FE21810EB3900E13F13 /* LexDMAP.cxx in Sources */,
); );
runOnlyForDeploymentPostprocessing = 0; runOnlyForDeploymentPostprocessing = 0;
}; };
@ -1003,7 +1079,8 @@
isa = XCBuildConfiguration; isa = XCBuildConfiguration;
buildSettings = { buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO; ALWAYS_SEARCH_USER_PATHS = NO;
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; CLANG_CXX_LIBRARY = "libc++";
COMBINE_HIDPI_IMAGES = YES;
COPY_PHASE_STRIP = NO; COPY_PHASE_STRIP = NO;
DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 1; DYLIB_CURRENT_VERSION = 1;
@ -1018,15 +1095,15 @@
SCI_NAMESPACE, SCI_NAMESPACE,
SCI_LEXER, SCI_LEXER,
); );
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
GCC_WARN_UNINITIALIZED_AUTOS = NO; GCC_WARN_UNINITIALIZED_AUTOS = NO;
GCC_WARN_UNKNOWN_PRAGMAS = YES; GCC_WARN_UNKNOWN_PRAGMAS = YES;
GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_LABEL = YES; GCC_WARN_UNUSED_LABEL = YES;
INFOPLIST_FILE = Info.plist; INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "@executable_path/../Frameworks"; INSTALL_PATH = "@executable_path/../Frameworks";
MACOSX_DEPLOYMENT_TARGET = 10.7;
PRODUCT_NAME = Scintilla; PRODUCT_NAME = Scintilla;
SDKROOT = macosx10.7; SKIP_INSTALL = YES;
WRAPPER_EXTENSION = framework; WRAPPER_EXTENSION = framework;
}; };
name = Debug; name = Debug;
@ -1035,7 +1112,8 @@
isa = XCBuildConfiguration; isa = XCBuildConfiguration;
buildSettings = { buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO; ALWAYS_SEARCH_USER_PATHS = NO;
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; CLANG_CXX_LIBRARY = "libc++";
COMBINE_HIDPI_IMAGES = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 1; DYLIB_CURRENT_VERSION = 1;
@ -1047,15 +1125,15 @@
SCI_NAMESPACE, SCI_NAMESPACE,
SCI_LEXER, SCI_LEXER,
); );
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
GCC_WARN_UNINITIALIZED_AUTOS = NO; GCC_WARN_UNINITIALIZED_AUTOS = NO;
GCC_WARN_UNKNOWN_PRAGMAS = YES; GCC_WARN_UNKNOWN_PRAGMAS = YES;
GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_LABEL = YES; GCC_WARN_UNUSED_LABEL = YES;
INFOPLIST_FILE = Info.plist; INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "@executable_path/../Frameworks"; INSTALL_PATH = "@executable_path/../Frameworks";
MACOSX_DEPLOYMENT_TARGET = 10.7;
PRODUCT_NAME = Scintilla; PRODUCT_NAME = Scintilla;
SDKROOT = macosx10.7; SKIP_INSTALL = YES;
WRAPPER_EXTENSION = framework; WRAPPER_EXTENSION = framework;
}; };
name = Release; name = Release;
@ -1063,7 +1141,7 @@
1DEB91B208733DA50010E9CD /* Debug */ = { 1DEB91B208733DA50010E9CD /* Debug */ = {
isa = XCBuildConfiguration; isa = XCBuildConfiguration;
buildSettings = { buildSettings = {
ARCHS = "$(ARCHS_STANDARD_32_BIT)"; CLANG_CXX_LANGUAGE_STANDARD = "c++0x";
GCC_C_LANGUAGE_STANDARD = c99; GCC_C_LANGUAGE_STANDARD = c99;
GCC_OPTIMIZATION_LEVEL = 0; GCC_OPTIMIZATION_LEVEL = 0;
GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES;
@ -1073,15 +1151,16 @@
../../src, ../../src,
../../lexlib, ../../lexlib,
); );
MACOSX_DEPLOYMENT_TARGET = 10.5;
ONLY_ACTIVE_ARCH = YES; ONLY_ACTIVE_ARCH = YES;
SDKROOT = macosx10.7; SDKROOT = macosx;
}; };
name = Debug; name = Debug;
}; };
1DEB91B308733DA50010E9CD /* Release */ = { 1DEB91B308733DA50010E9CD /* Release */ = {
isa = XCBuildConfiguration; isa = XCBuildConfiguration;
buildSettings = { buildSettings = {
ARCHS = "$(ARCHS_STANDARD_32_BIT)"; CLANG_CXX_LANGUAGE_STANDARD = "c++0x";
GCC_C_LANGUAGE_STANDARD = c99; GCC_C_LANGUAGE_STANDARD = c99;
GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES; GCC_WARN_UNUSED_VARIABLE = YES;
@ -1090,7 +1169,8 @@
../../src, ../../src,
../../lexlib, ../../lexlib,
); );
SDKROOT = macosx10.7; MACOSX_DEPLOYMENT_TARGET = 10.5;
SDKROOT = macosx;
}; };
name = Release; name = Release;
}; };

View File

@ -9,8 +9,8 @@
#import <Cocoa/Cocoa.h> #import <Cocoa/Cocoa.h>
#import "ScintillaView.h" #import "Scintilla/ScintillaView.h"
#import "InfoBar.h" #import "Scintilla/InfoBar.h"
@interface AppController : NSObject { @interface AppController : NSObject {
IBOutlet NSBox *mEditHost; IBOutlet NSBox *mEditHost;

View File

@ -191,7 +191,7 @@
29B97313FDCFA39411CA2CEA /* Project object */ = { 29B97313FDCFA39411CA2CEA /* Project object */ = {
isa = PBXProject; isa = PBXProject;
attributes = { attributes = {
LastUpgradeCheck = 0450; LastUpgradeCheck = 0510;
}; };
buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "ScintillaTest" */; buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "ScintillaTest" */;
compatibilityVersion = "Xcode 3.2"; compatibilityVersion = "Xcode 3.2";
@ -286,6 +286,7 @@
buildSettings = { buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO; ALWAYS_SEARCH_USER_PATHS = NO;
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
COMBINE_HIDPI_IMAGES = YES;
COPY_PHASE_STRIP = NO; COPY_PHASE_STRIP = NO;
FRAMEWORK_SEARCH_PATHS = "$(inherited)"; FRAMEWORK_SEARCH_PATHS = "$(inherited)";
GCC_DYNAMIC_NO_PIC = NO; GCC_DYNAMIC_NO_PIC = NO;
@ -297,13 +298,13 @@
SCI_LEXER, SCI_LEXER,
SCI_NAMESPACE, SCI_NAMESPACE,
); );
HEADER_SEARCH_PATHS = "../..//**"; HEADER_SEARCH_PATHS = "";
INFOPLIST_FILE = Info.plist; INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "$(HOME)/Applications"; INSTALL_PATH = "$(HOME)/Applications";
LIBRARY_SEARCH_PATHS = "$(inherited)"; LIBRARY_SEARCH_PATHS = "$(inherited)";
OTHER_LDFLAGS = ""; OTHER_LDFLAGS = "";
PRODUCT_NAME = ScintillaTest; PRODUCT_NAME = ScintillaTest;
SDKROOT = macosx10.7; SDKROOT = macosx;
USER_HEADER_SEARCH_PATHS = ""; USER_HEADER_SEARCH_PATHS = "";
}; };
name = Debug; name = Debug;
@ -313,6 +314,7 @@
buildSettings = { buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO; ALWAYS_SEARCH_USER_PATHS = NO;
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
COMBINE_HIDPI_IMAGES = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
FRAMEWORK_SEARCH_PATHS = "$(inherited)"; FRAMEWORK_SEARCH_PATHS = "$(inherited)";
GCC_MODEL_TUNING = G5; GCC_MODEL_TUNING = G5;
@ -322,13 +324,13 @@
SCI_LEXER, SCI_LEXER,
SCI_NAMESPACE, SCI_NAMESPACE,
); );
HEADER_SEARCH_PATHS = "../..//**"; HEADER_SEARCH_PATHS = "";
INFOPLIST_FILE = Info.plist; INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "$(HOME)/Applications"; INSTALL_PATH = "$(HOME)/Applications";
LIBRARY_SEARCH_PATHS = "$(inherited)"; LIBRARY_SEARCH_PATHS = "$(inherited)";
OTHER_LDFLAGS = ""; OTHER_LDFLAGS = "";
PRODUCT_NAME = ScintillaTest; PRODUCT_NAME = ScintillaTest;
SDKROOT = macosx10.7; SDKROOT = macosx;
USER_HEADER_SEARCH_PATHS = ""; USER_HEADER_SEARCH_PATHS = "";
}; };
name = Release; name = Release;
@ -337,14 +339,24 @@
isa = XCBuildConfiguration; isa = XCBuildConfiguration;
buildSettings = { buildSettings = {
ARCHS = "$(ARCHS_STANDARD_32_BIT)"; ARCHS = "$(ARCHS_STANDARD_32_BIT)";
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
GCC_C_LANGUAGE_STANDARD = c99; GCC_C_LANGUAGE_STANDARD = c99;
GCC_OPTIMIZATION_LEVEL = 0; GCC_OPTIMIZATION_LEVEL = 0;
GCC_VERSION = com.apple.compilers.llvm.clang.1_0; GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES; GCC_WARN_UNUSED_VARIABLE = YES;
ONLY_ACTIVE_ARCH = YES; ONLY_ACTIVE_ARCH = YES;
OTHER_LDFLAGS = ""; OTHER_LDFLAGS = "";
SDKROOT = macosx10.7; SDKROOT = macosx;
}; };
name = Debug; name = Debug;
}; };
@ -352,12 +364,22 @@
isa = XCBuildConfiguration; isa = XCBuildConfiguration;
buildSettings = { buildSettings = {
ARCHS = "$(ARCHS_STANDARD_32_BIT)"; ARCHS = "$(ARCHS_STANDARD_32_BIT)";
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
GCC_C_LANGUAGE_STANDARD = c99; GCC_C_LANGUAGE_STANDARD = c99;
GCC_VERSION = com.apple.compilers.llvm.clang.1_0; GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES; GCC_WARN_UNUSED_VARIABLE = YES;
OTHER_LDFLAGS = ""; OTHER_LDFLAGS = "";
SDKROOT = macosx10.7; SDKROOT = macosx;
}; };
name = Release; name = Release;
}; };

View File

@ -11,25 +11,47 @@
#import <Cocoa/Cocoa.h> #import <Cocoa/Cocoa.h>
#import "Platform.h"
#import "Scintilla.h" #import "Scintilla.h"
#import "SciLexer.h" #import "SciLexer.h"
#import "InfoBarCommunicator.h" #import "InfoBarCommunicator.h"
#import "ScintillaCocoa.h"
/**
* Scintilla sends these two messages to the notify handler. Please refer
* to the Windows API doc for details about the message format.
*/
#define WM_COMMAND 1001
#define WM_NOTIFY 1002
namespace Scintilla {
/**
* On the Mac, there is no WM_COMMAND or WM_NOTIFY message that can be sent
* back to the parent. Therefore, there must be a callback handler that acts
* like a Windows WndProc, where Scintilla can send notifications to. Use
* ScintillaView registerNotifyCallback() to register such a handler.
* Message format is:
* <br>
* WM_COMMAND: HIWORD (wParam) = notification code, LOWORD (wParam) = control ID, lParam = ScintillaCocoa*
* <br>
* WM_NOTIFY: wParam = control ID, lParam = ptr to SCNotification structure, with hwndFrom set to ScintillaCocoa*
*/
typedef void(*SciNotifyFunc) (intptr_t windowid, unsigned int iMessage, uintptr_t wParam, uintptr_t lParam);
class ScintillaCocoa;
}
@class ScintillaView; @class ScintillaView;
extern NSString *SCIUpdateUINotification; extern NSString *const SCIUpdateUINotification;
@protocol ScintillaNotificationProtocol @protocol ScintillaNotificationProtocol
- (void)notification: (Scintilla::SCNotification*)notification; - (void)notification: (Scintilla::SCNotification*)notification;
@end @end
/** /**
* MarginView draws line numbers and other margins next to the text view. * SCIMarginView draws line numbers and other margins next to the text view.
*/ */
@interface MarginView : NSRulerView @interface SCIMarginView : NSRulerView
{ {
@private @private
int marginWidth; int marginWidth;
@ -45,33 +67,34 @@ extern NSString *SCIUpdateUINotification;
@end @end
/** /**
* InnerView is the Cocoa interface to the Scintilla backend. It handles text input and * SCIContentView is the Cocoa interface to the Scintilla backend. It handles text input and
* provides a canvas for painting the output. * provides a canvas for painting the output.
*/ */
@interface InnerView : NSView <NSTextInputClient, NSUserInterfaceValidations> @interface SCIContentView : NSView <
NSTextInputClient,
NSUserInterfaceValidations,
NSDraggingSource,
NSDraggingDestination>
{ {
@private @private
ScintillaView* mOwner; ScintillaView* mOwner;
NSCursor* mCurrentCursor; NSCursor* mCurrentCursor;
NSTrackingRectTag mCurrentTrackingRect; NSTrackingArea *trackingArea;
// Set when we are in composition mode and partial input is displayed. // Set when we are in composition mode and partial input is displayed.
NSRange mMarkedTextRange; NSRange mMarkedTextRange;
BOOL undoCollectionWasActive;
} }
@property (nonatomic, assign) ScintillaView* owner; @property (nonatomic, assign) ScintillaView* owner;
- (void) dealloc; - (void) setCursor: (int) cursor;
- (void) removeMarkedText;
- (void) setCursor: (Scintilla::Window::Cursor) cursor;
- (BOOL) canUndo; - (BOOL) canUndo;
- (BOOL) canRedo; - (BOOL) canRedo;
@end @end
@interface ScintillaView : NSView <InfoBarCommunicator> @interface ScintillaView : NSView <InfoBarCommunicator, ScintillaNotificationProtocol>
{ {
@private @private
// The back end is kind of a controller and model in one. // The back end is kind of a controller and model in one.
@ -79,17 +102,16 @@ extern NSString *SCIUpdateUINotification;
Scintilla::ScintillaCocoa* mBackend; Scintilla::ScintillaCocoa* mBackend;
// This is the actual content to which the backend renders itself. // This is the actual content to which the backend renders itself.
InnerView* mContent; SCIContentView* mContent;
NSScrollView *scrollView; NSScrollView *scrollView;
MarginView *marginView; SCIMarginView *marginView;
CGFloat zoomDelta; CGFloat zoomDelta;
// Area to display additional controls (e.g. zoom info, caret position, status info). // Area to display additional controls (e.g. zoom info, caret position, status info).
NSView <InfoBarCommunicator>* mInfoBar; NSView <InfoBarCommunicator>* mInfoBar;
BOOL mInfoBarAtTop; BOOL mInfoBarAtTop;
int mInitialInfoBarWidth;
id<ScintillaNotificationProtocol> mDelegate; id<ScintillaNotificationProtocol> mDelegate;
} }
@ -98,31 +120,32 @@ extern NSString *SCIUpdateUINotification;
@property (nonatomic, assign) id<ScintillaNotificationProtocol> delegate; @property (nonatomic, assign) id<ScintillaNotificationProtocol> delegate;
@property (nonatomic, readonly) NSScrollView *scrollView; @property (nonatomic, readonly) NSScrollView *scrollView;
- (void) dealloc; + (Class) contentViewClass;
- (void) positionSubViews;
- (void) sendNotification: (NSString*) notificationName;
- (void) notify: (NotificationType) type message: (NSString*) message location: (NSPoint) location - (void) notify: (NotificationType) type message: (NSString*) message location: (NSPoint) location
value: (float) value; value: (float) value;
- (void) setCallback: (id <InfoBarCommunicator>) callback; - (void) setCallback: (id <InfoBarCommunicator>) callback;
- (void) suspendDrawing: (BOOL) suspend; - (void) suspendDrawing: (BOOL) suspend;
- (void) notification: (Scintilla::SCNotification*) notification;
// Scroller handling // Scroller handling
- (void) setMarginWidth: (int) width; - (void) setMarginWidth: (int) width;
- (void) scrollerAction: (id) sender; - (SCIContentView*) content;
- (InnerView*) content; - (void) updateMarginCursors;
// NSTextView compatibility layer. // NSTextView compatibility layer.
- (NSString*) string; - (NSString*) string;
- (void) setString: (NSString*) aString; - (void) setString: (NSString*) aString;
- (void) insertText: (NSString*) aString; - (void) insertText: (id) aString;
- (void) setEditable: (BOOL) editable; - (void) setEditable: (BOOL) editable;
- (BOOL) isEditable; - (BOOL) isEditable;
- (NSRange) selectedRange; - (NSRange) selectedRange;
- (NSString*) selectedString; - (NSString*) selectedString;
- (void) deleteRange: (NSRange) range;
- (void)setFontName: (NSString*) font - (void)setFontName: (NSString*) font
size: (int) size size: (int) size
bold: (BOOL) bold bold: (BOOL) bold
@ -153,7 +176,8 @@ extern NSString *SCIUpdateUINotification;
- (void) setLexerProperty: (NSString*) name value: (NSString*) value; - (void) setLexerProperty: (NSString*) name value: (NSString*) value;
- (NSString*) getLexerProperty: (NSString*) name; - (NSString*) getLexerProperty: (NSString*) name;
- (void) registerNotifyCallback: (intptr_t) windowid value: (Scintilla::SciNotifyFunc) callback; // The delegate property should be used instead of registerNotifyCallback which is deprecated.
- (void) registerNotifyCallback: (intptr_t) windowid value: (Scintilla::SciNotifyFunc) callback __attribute__((deprecated));
- (void) setInfoBar: (NSView <InfoBarCommunicator>*) aView top: (BOOL) top; - (void) setInfoBar: (NSView <InfoBarCommunicator>*) aView top: (BOOL) top;
- (void) setStatusText: (NSString*) text; - (void) setStatusText: (NSString*) text;

File diff suppressed because it is too large Load Diff

View File

@ -4,56 +4,58 @@
cd ../.. cd ../..
# ************************************************************ # ************************************************************
# Target 1: build framework and test app with Xcode targetting OS X 10.7 # Target 1: Unit tests
echo Unit tests
cd scintilla/test/unit
make clean
make test
cd ../../..
# ************************************************************
# Target 2: build framework and test app with Xcode targetting OS X 10.n with n from 9 to 5
# Only SDK versions that are installed will be built
# Clean both then build both -- if perform clean in ScintillaTest, also cleans ScintillaFramework # Clean both then build both -- if perform clean in ScintillaTest, also cleans ScintillaFramework
# which can cause double build # which can cause double build
cd scintilla/cocoa/ScintillaFramework
xcodebuild clean echo Building Cocoa-native ScintillaFramework and ScintillaTest
cd ../ScintillaTest for sdk in macosx10.9 macosx10.8 macosx10.7 macosx10.6 macosx10.5
xcodebuild clean do
cd ../ScintillaFramework xcodebuild -showsdks | grep $sdk
xcodebuild -sdk macosx10.7 if [ "$(xcodebuild -showsdks | grep $sdk)" != "" ]
cd ../ScintillaTest then
xcodebuild -sdk macosx10.7 echo Building with $sdk
cd ../../.. cd scintilla/cocoa/ScintillaFramework
xcodebuild clean
cd ../ScintillaTest
xcodebuild clean
cd ../ScintillaFramework
xcodebuild -sdk $sdk
cd ../ScintillaTest
xcodebuild -sdk $sdk
cd ../../..
else
echo Warning $sdk not available
fi
done
# ************************************************************ # ************************************************************
# Target 2: build framework and test app with Xcode targetting OS X 10.6 # Target 3: Qt builds
cd scintilla/cocoa/ScintillaFramework
xcodebuild clean
cd ../ScintillaTest
xcodebuild clean
cd ../ScintillaFramework
xcodebuild -sdk macosx10.6
cd ../ScintillaTest
xcodebuild -sdk macosx10.6
cd ../../..
# ************************************************************
# Target 3: build framework and test app with Xcode targetting OS X 10.5
cd scintilla/cocoa/ScintillaFramework
xcodebuild clean
cd ../ScintillaTest
xcodebuild clean
cd ../ScintillaFramework
xcodebuild -sdk macosx10.5
cd ../ScintillaTest
xcodebuild -sdk macosx10.5
cd ../../..
# ************************************************************
# Target 4: Qt builds
# Requires Qt development libraries and qmake to be installed # Requires Qt development libraries and qmake to be installed
echo Building Qt and PySide
cd scintilla/qt cd scintilla/qt
cd ScintillaEditBase cd ScintillaEditBase
qmake qmake -spec macx-xcode
xcodebuild clean xcodebuild clean
xcodebuild xcodebuild
cd .. cd ..
cd ScintillaEdit cd ScintillaEdit
python WidgetGen.py python WidgetGen.py
qmake qmake -spec macx-xcode
xcodebuild clean xcodebuild clean
xcodebuild xcodebuild
cd .. cd ..
@ -62,14 +64,3 @@ cd ScintillaEditPy
python sepbuild.py python sepbuild.py
cd .. cd ..
cd ../.. cd ../..
# ************************************************************
# Target 5: build framework and test app with make
cd scintilla/cocoa
make -f Framework.mk clean
make -f Framework.mk all
make -f SciTest.mk all
cd ../..

View File

@ -1,57 +0,0 @@
### shared variables and targets between Framework.mk and SciTest.mk ###
# build directories
BLD=build
APP_BLD=$(BLD)/Application
FRM_BLD=$(BLD)/Framework
ifdef DBG
CFLAGS=-g -O0
else
CFLAGS=-Os
endif
# compiler and compiler options
ARCH=-arch i386 $(CFLAGS)
CC=gcc -x c++ $(ARCH)
CO=gcc -x objective-c++ $(ARCH)
CCX=$(CC) $(gDEFs) $(INCS)
CCO=$(CO) $(gDEFs) $(INCS)
# include directories and global #define
gDEFs=-DSCI_NAMESPACE -DSCI_LEXER
# source directories
SRC_DIRS=../src ./ScintillaFramework ./ScintillaTest ./ \
../lexers ../lexlib
INC_DIRS=$(SRC_DIRS) ../include
INCS=$(addprefix -I,$(INC_DIRS))
vpath %.m $(SRC_DIRS)
vpath %.mm $(SRC_DIRS)
vpath %.cpp $(SRC_DIRS)
vpath %.cxx $(SRC_DIRS)
vpath %.c $(SRC_DIRS)
vpath %.h $(INC_DIRS)
# clean everything
clean:
-rm -rf $(BLD)
# build application objective-c++ files
$(APP_BLD)/%.o : %.mm
$(CCO) -c $< -o $@
# build application objective-c files
$(APP_BLD)/%.o : %.m
$(CCO) -c $< -o $@
# build framework c++ files
$(FRM_BLD)/%.o : %.cxx
$(CCX) -c $< -o $@
# build framework objective-c++ files
$(FRM_BLD)/%.o : %.mm
$(CCO) -c $< -o $@

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 446 B

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

View File

@ -34,7 +34,7 @@ newline terminates the initStyle state the lexer should enter its
default state (or whatever state should follow initStyle). default state (or whatever state should follow initStyle).
The keywordlists parameter specifies the keywords that the lexer must The keywordlists parameter specifies the keywords that the lexer must
recognize. A WordList class object contains methods that make simplify recognize. A WordList class object contains methods that simplify
the recognition of keywords. Present lexers use a helper function the recognition of keywords. Present lexers use a helper function
called classifyWordLLL to recognize keywords. These functions show how called classifyWordLLL to recognize keywords. These functions show how
to use the keywordlists parameter to recognize keywords. This to use the keywordlists parameter to recognize keywords. This

BIN
scintilla/doc/Markers.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

File diff suppressed because it is too large Load Diff

View File

@ -25,9 +25,9 @@
<table bgcolor="#CCCCCC" width="100%" cellspacing="0" cellpadding="8" border="0"> <table bgcolor="#CCCCCC" width="100%" cellspacing="0" cellpadding="8" border="0">
<tr> <tr>
<td> <td>
<font size="4"> <a href="http://prdownloads.sourceforge.net/scintilla/scintilla334.zip?download"> <font size="4"> <a href="http://prdownloads.sourceforge.net/scintilla/scintilla356.zip?download">
Windows</a>&nbsp;&nbsp; Windows</a>&nbsp;&nbsp;
<a href="http://prdownloads.sourceforge.net/scintilla/scintilla334.tgz?download"> <a href="http://prdownloads.sourceforge.net/scintilla/scintilla356.tgz?download">
GTK+/Linux</a>&nbsp;&nbsp; GTK+/Linux</a>&nbsp;&nbsp;
</font> </font>
</td> </td>
@ -41,7 +41,7 @@
containing very few restrictions. containing very few restrictions.
</p> </p>
<h3> <h3>
Release 3.3.4 Release 3.5.6
</h3> </h3>
<h4> <h4>
Source Code Source Code
@ -49,8 +49,8 @@
The source code package contains all of the source code for Scintilla but no binary The source code package contains all of the source code for Scintilla but no binary
executable code and is available in executable code and is available in
<ul> <ul>
<li><a href="http://prdownloads.sourceforge.net/scintilla/scintilla334.zip?download">zip format</a> (1250K) commonly used on Windows</li> <li><a href="http://prdownloads.sourceforge.net/scintilla/scintilla356.zip?download">zip format</a> (1450K) commonly used on Windows</li>
<li><a href="http://prdownloads.sourceforge.net/scintilla/scintilla334.tgz?download">tgz format</a> (1100K) commonly used on Linux and compatible operating systems</li> <li><a href="http://prdownloads.sourceforge.net/scintilla/scintilla356.tgz?download">tgz format</a> (1300K) commonly used on Linux and compatible operating systems</li>
</ul> </ul>
Instructions for building on both Windows and Linux are included in the readme file. Instructions for building on both Windows and Linux are included in the readme file.
<h4> <h4>

File diff suppressed because it is too large Load Diff

View File

@ -9,7 +9,7 @@
<meta name="keywords" content="Scintilla, SciTE, Editing Component, Text Editor" /> <meta name="keywords" content="Scintilla, SciTE, Editing Component, Text Editor" />
<meta name="Description" <meta name="Description"
content="www.scintilla.org is the home of the Scintilla editing component and SciTE text editor application." /> content="www.scintilla.org is the home of the Scintilla editing component and SciTE text editor application." />
<meta name="Date.Modified" content="20130719" /> <meta name="Date.Modified" content="20150526" />
<style type="text/css"> <style type="text/css">
#versionlist { #versionlist {
margin: 0; margin: 0;
@ -55,8 +55,8 @@
GTK+, and OS X</font> GTK+, and OS X</font>
</td> </td>
<td width="40%" align="right"> <td width="40%" align="right">
<font color="#FFCC99" size="3"> Release version 3.3.4<br /> <font color="#FFCC99" size="3"> Release version 3.5.6<br />
Site last modified July 19 2013</font> Site last modified May 26 2015</font>
</td> </td>
<td width="20%"> <td width="20%">
&nbsp; &nbsp;
@ -71,14 +71,14 @@
</tr> </tr>
</table> </table>
<ul id="versionlist"> <ul id="versionlist">
<li>Version 3.3.4 better supports Unicode use in lexers.</li> <li>Version 3.5.6 fixes a bug with undo on Cocoa that could lose data.</li>
<li>Version 3.3.3 fixes bugs on GTK+.</li> <li>Version 3.5.5 improves IME on Qt and fixes minor bugs.</li>
<li>Version 3.3.2 simplifies implementing folding.</li> <li>Version 3.5.4 improves indicators to be able to change appearance on mouse-over and to use a wide variety of colours together.</li>
<li>Version 3.3.1 fixes bugs on Cocoa.</li> <li>Version 3.5.3 removes support for Windows 95, 98, and ME.</li>
<li>Version 3.3.0 should not be used on Cocoa since it contains bugs fixed in 3.3.1. <li>Version 3.5.2 only supports 64-bit builds for OS X 10.7+ Cocoa. Provisional support of C++11 &lt;regex&gt;.</li>
It implements overlay scrollers and kinetic scrolling on Cocoa. <li>Version 3.5.1 fixes minor bugs and includes a lexer for BibTeX.</li>
Performance improved on GTK+ and Cocoa by performing more work in <li>Version 3.5.0 can share space vertically so that extreme ascenders and descenders are not cut off.
high-priority idle tasks.</li> Separate timers are used to minimize wake ups and thus power use.</li>
</ul> </ul>
<ul id="menu"> <ul id="menu">
<li id="remote1"><a href="http://www.scintilla.org/SciTEImage.html">Screenshot</a></li> <li id="remote1"><a href="http://www.scintilla.org/SciTEImage.html">Screenshot</a></li>
@ -135,7 +135,7 @@ if (!IsRemote()) { //if NOT remote...
</p> </p>
<p> <p>
The source code can be downloaded via Mercurial at the Source Forge The source code can be downloaded via Mercurial at the Source Forge
<a href="https://sourceforge.net/project/?group_id=2439">Scintilla project page</a>. <a href="http://sourceforge.net/projects/scintilla/">Scintilla project page</a>.
</p> </p>
<p> <p>
<a href="http://www.scintilla.org/ScintillaRelated.html">Related sites.</a> <a href="http://www.scintilla.org/ScintillaRelated.html">Related sites.</a>
@ -154,7 +154,7 @@ if (!IsRemote()) { //if NOT remote...
<a href="http://groups.google.com/group/scintilla-interest">scintilla-interest</a> <a href="http://groups.google.com/group/scintilla-interest">scintilla-interest</a>
mailing list, mailing list,
which is for discussion of Scintilla and related projects, their bugs and future features. which is for discussion of Scintilla and related projects, their bugs and future features.
This is a low traffic list, averaging less than 50 messages per week. This is a low traffic list, averaging less than 20 messages per week.
To avoid spam, only list members can write to the list. To avoid spam, only list members can write to the list.
New versions of Scintilla are announced on scintilla-interest and may also be received by SourceForge New versions of Scintilla are announced on scintilla-interest and may also be received by SourceForge
members by clicking on the Monitor column icon for "scintilla" on members by clicking on the Monitor column icon for "scintilla" on
@ -163,15 +163,15 @@ if (!IsRemote()) { //if NOT remote...
may receive no response. may receive no response.
<br /> <br />
</p> </p>
There is a <a href="https://sourceforge.net/project/?group_id=2439">Scintilla project page</a> There is a <a href="http://sourceforge.net/projects/scintilla/">Scintilla project page</a>
hosted on hosted on
<script type="text/javascript" language="JavaScript"> <script type="text/javascript" language="JavaScript">
<!-- <!--
if (IsRemote()) { if (IsRemote()) {
document.write('<a href="http://sourceforge.net/projects/scintilla">'); document.write('<a href="http://sourceforge.net/projects/scintilla/">');
document.write('<img src="http://sflogo.sourceforge.net/sflogo.php?group_id=2439&amp;type=8" width="80" height="15" alt="Get Scintilla at SourceForge.net. Fast, secure and Free Open Source software downloads" /></a> '); document.write('<img src="http://sflogo.sourceforge.net/sflogo.php?group_id=2439&amp;type=8" width="80" height="15" alt="Get Scintilla at SourceForge.net. Fast, secure and Free Open Source software downloads" /></a> ');
} else { } else {
document.write('<a href="http://sourceforge.net/projects/scintilla">SourceForge<\/a>'); document.write('<a href="http://sourceforge.net/projects/scintilla/">SourceForge<\/a>');
} }
//--> //-->
</script> </script>

Some files were not shown because too many files have changed in this diff Show More