aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--cocoa/ScintillaTest/AppController.h5
-rw-r--r--cocoa/ScintillaTest/AppController.mm13
-rw-r--r--cocoa/ScintillaTest/ScintillaTest.xcodeproj/project.pbxproj78
3 files changed, 63 insertions, 33 deletions
diff --git a/cocoa/ScintillaTest/AppController.h b/cocoa/ScintillaTest/AppController.h
index 9c54dd88f..c644ebb05 100644
--- a/cocoa/ScintillaTest/AppController.h
+++ b/cocoa/ScintillaTest/AppController.h
@@ -9,8 +9,13 @@
#import <Cocoa/Cocoa.h>
+#include <dlfcn.h>
+
+#import "Scintilla/ILexer.h"
#import "Scintilla/ScintillaView.h"
#import "Scintilla/InfoBar.h"
+#include <SciLexer.h>
+#include <Lexilla.h>
@interface AppController : NSObject {
IBOutlet NSBox *mEditHost;
diff --git a/cocoa/ScintillaTest/AppController.mm b/cocoa/ScintillaTest/AppController.mm
index 7eeeea6eb..e7f96ed7d 100644
--- a/cocoa/ScintillaTest/AppController.mm
+++ b/cocoa/ScintillaTest/AppController.mm
@@ -106,9 +106,16 @@ const char user_keywords[] = // Definition of own keywords, not used by MySQL.
- (void) setupEditor
{
// Lexer type is MySQL.
- [mEditor setGeneralProperty: SCI_SETLEXER parameter: SCLEX_MYSQL value: 0];
- // alternatively: [mEditor setEditorProperty: SCI_SETLEXERLANGUAGE parameter: nil value: (sptr_t) "mysql"];
-
+ void *lexillaDL = dlopen(LEXILLA_LIB LEXILLA_EXTENSION, RTLD_LAZY);
+ if (lexillaDL) {
+ Lexilla::CreateLexerFn createLexer =
+ reinterpret_cast<Lexilla::CreateLexerFn>(dlsym(lexillaDL, LEXILLA_CREATELEXER));
+ if (createLexer) {
+ Scintilla::ILexer5 *pLexer = createLexer("mysql");
+ [mEditor setReferenceProperty: SCI_SETILEXER parameter: nil value: pLexer];
+ }
+ }
+
// Keywords to highlight. Indices are:
// 0 - Major keywords (reserved keywords)
// 1 - Normal keywords (everything not reserved but integral part of the language)
diff --git a/cocoa/ScintillaTest/ScintillaTest.xcodeproj/project.pbxproj b/cocoa/ScintillaTest/ScintillaTest.xcodeproj/project.pbxproj
index 924908490..dd1d41346 100644
--- a/cocoa/ScintillaTest/ScintillaTest.xcodeproj/project.pbxproj
+++ b/cocoa/ScintillaTest/ScintillaTest.xcodeproj/project.pbxproj
@@ -10,27 +10,29 @@
1DDD58160DA1D0A300B32029 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1DDD58140DA1D0A300B32029 /* MainMenu.xib */; };
271FA52C0F850BE20033D021 /* AppController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 271FA52B0F850BE20033D021 /* AppController.mm */; };
2791F4490FC1A8E9009DBCF9 /* TestData.sql in Resources */ = {isa = PBXBuildFile; fileRef = 2791F4480FC1A8E9009DBCF9 /* TestData.sql */; };
- 27AF7EC30FC2C351007160EF /* Scintilla.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2744E5EA0FC16BE200E85C33 /* Scintilla.framework */; };
- 27AF7ECA0FC2C388007160EF /* Scintilla.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 2744E5EA0FC16BE200E85C33 /* Scintilla.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
+ 286F8E5125F8474400EC8D60 /* Scintilla.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 286F8E4E25F845B000EC8D60 /* Scintilla.framework */; };
+ 286F8E5225F8474400EC8D60 /* Scintilla.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 286F8E4E25F845B000EC8D60 /* Scintilla.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
+ 286F8E7525F8506B00EC8D60 /* liblexilla.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 286F8E7325F8504800EC8D60 /* liblexilla.dylib */; };
+ 286F8E7625F8506B00EC8D60 /* liblexilla.dylib in CopyFiles */ = {isa = PBXBuildFile; fileRef = 286F8E7325F8504800EC8D60 /* liblexilla.dylib */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; };
8D11072D0486CEB800E47090 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; };
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
- 2744E5E90FC16BE200E85C33 /* PBXContainerItemProxy */ = {
+ 286F8E4D25F845B000EC8D60 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
- containerPortal = 2744E5E20FC16BE200E85C33 /* ScintillaFramework.xcodeproj */;
+ containerPortal = 286F8E4925F845B000EC8D60 /* Scintilla.xcodeproj */;
proxyType = 2;
- remoteGlobalIDString = 8DC2EF5B0486A6940098B216;
+ remoteGlobalIDString = 287F3C41246F8DC70040E76F;
remoteInfo = Scintilla;
};
- 27AF7EC60FC2C36A007160EF /* PBXContainerItemProxy */ = {
+ 286F8E7225F8504800EC8D60 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
- containerPortal = 2744E5E20FC16BE200E85C33 /* ScintillaFramework.xcodeproj */;
- proxyType = 1;
- remoteGlobalIDString = 8DC2EF4F0486A6940098B216;
- remoteInfo = Scintilla;
+ containerPortal = 286F8E6E25F8504800EC8D60 /* Lexilla.xcodeproj */;
+ proxyType = 2;
+ remoteGlobalIDString = 280262A5246DF655000DF3B8;
+ remoteInfo = lexilla;
};
/* End PBXContainerItemProxy section */
@@ -41,7 +43,8 @@
dstPath = "";
dstSubfolderSpec = 10;
files = (
- 27AF7ECA0FC2C388007160EF /* Scintilla.framework in CopyFiles */,
+ 286F8E7625F8506B00EC8D60 /* liblexilla.dylib in CopyFiles */,
+ 286F8E5225F8474400EC8D60 /* Scintilla.framework in CopyFiles */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -52,8 +55,9 @@
13E42FB307B3F0F600E4EEF1 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = /System/Library/Frameworks/CoreData.framework; sourceTree = "<absolute>"; };
271FA52A0F850BE20033D021 /* AppController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppController.h; sourceTree = "<group>"; };
271FA52B0F850BE20033D021 /* AppController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = AppController.mm; sourceTree = "<group>"; wrapsLines = 0; };
- 2744E5E20FC16BE200E85C33 /* ScintillaFramework.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = ScintillaFramework.xcodeproj; path = ../ScintillaFramework/ScintillaFramework.xcodeproj; sourceTree = SOURCE_ROOT; };
2791F4480FC1A8E9009DBCF9 /* TestData.sql */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = TestData.sql; sourceTree = "<group>"; };
+ 286F8E4925F845B000EC8D60 /* Scintilla.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Scintilla.xcodeproj; path = ../Scintilla/Scintilla.xcodeproj; sourceTree = "<group>"; };
+ 286F8E6E25F8504800EC8D60 /* Lexilla.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Lexilla.xcodeproj; path = ../../../lexilla/src/Lexilla/Lexilla.xcodeproj; sourceTree = "<group>"; };
28E78A40224C33FE00456881 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
28E78A41224C33FE00456881 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/MainMenu.xib; sourceTree = "<group>"; };
29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
@@ -69,7 +73,8 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
- 27AF7EC30FC2C351007160EF /* Scintilla.framework in Frameworks */,
+ 286F8E5125F8474400EC8D60 /* Scintilla.framework in Frameworks */,
+ 286F8E7525F8506B00EC8D60 /* liblexilla.dylib in Frameworks */,
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
@@ -112,10 +117,18 @@
name = Products;
sourceTree = "<group>";
};
- 2744E5E30FC16BE200E85C33 /* Products */ = {
+ 286F8E4A25F845B000EC8D60 /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ 286F8E4E25F845B000EC8D60 /* Scintilla.framework */,
+ );
+ name = Products;
+ sourceTree = "<group>";
+ };
+ 286F8E6F25F8504800EC8D60 /* Products */ = {
isa = PBXGroup;
children = (
- 2744E5EA0FC16BE200E85C33 /* Scintilla.framework */,
+ 286F8E7325F8504800EC8D60 /* liblexilla.dylib */,
);
name = Products;
sourceTree = "<group>";
@@ -123,7 +136,8 @@
29B97314FDCFA39411CA2CEA /* ScintillaTest */ = {
isa = PBXGroup;
children = (
- 2744E5E20FC16BE200E85C33 /* ScintillaFramework.xcodeproj */,
+ 286F8E6E25F8504800EC8D60 /* Lexilla.xcodeproj */,
+ 286F8E4925F845B000EC8D60 /* Scintilla.xcodeproj */,
080E96DDFE201D6D7F000001 /* Classes */,
29B97315FDCFA39411CA2CEA /* Other Sources */,
29B97317FDCFA39411CA2CEA /* Resources */,
@@ -177,7 +191,6 @@
buildRules = (
);
dependencies = (
- 27AF7EC70FC2C36A007160EF /* PBXTargetDependency */,
);
name = ScintillaTest;
productInstallPath = "$(HOME)/Applications";
@@ -191,7 +204,7 @@
29B97313FDCFA39411CA2CEA /* Project object */ = {
isa = PBXProject;
attributes = {
- LastUpgradeCheck = 0930;
+ LastUpgradeCheck = 1240;
};
buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "ScintillaTest" */;
compatibilityVersion = "Xcode 3.2";
@@ -205,8 +218,12 @@
projectDirPath = "";
projectReferences = (
{
- ProductGroup = 2744E5E30FC16BE200E85C33 /* Products */;
- ProjectRef = 2744E5E20FC16BE200E85C33 /* ScintillaFramework.xcodeproj */;
+ ProductGroup = 286F8E6F25F8504800EC8D60 /* Products */;
+ ProjectRef = 286F8E6E25F8504800EC8D60 /* Lexilla.xcodeproj */;
+ },
+ {
+ ProductGroup = 286F8E4A25F845B000EC8D60 /* Products */;
+ ProjectRef = 286F8E4925F845B000EC8D60 /* Scintilla.xcodeproj */;
},
);
projectRoot = "";
@@ -217,11 +234,18 @@
/* End PBXProject section */
/* Begin PBXReferenceProxy section */
- 2744E5EA0FC16BE200E85C33 /* Scintilla.framework */ = {
+ 286F8E4E25F845B000EC8D60 /* Scintilla.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Scintilla.framework;
- remoteRef = 2744E5E90FC16BE200E85C33 /* PBXContainerItemProxy */;
+ remoteRef = 286F8E4D25F845B000EC8D60 /* PBXContainerItemProxy */;
+ sourceTree = BUILT_PRODUCTS_DIR;
+ };
+ 286F8E7325F8504800EC8D60 /* liblexilla.dylib */ = {
+ isa = PBXReferenceProxy;
+ fileType = "compiled.mach-o.dylib";
+ path = liblexilla.dylib;
+ remoteRef = 286F8E7225F8504800EC8D60 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
/* End PBXReferenceProxy section */
@@ -251,14 +275,6 @@
};
/* End PBXSourcesBuildPhase section */
-/* Begin PBXTargetDependency section */
- 27AF7EC70FC2C36A007160EF /* PBXTargetDependency */ = {
- isa = PBXTargetDependency;
- name = Scintilla;
- targetProxy = 27AF7EC60FC2C36A007160EF /* PBXContainerItemProxy */;
- };
-/* End PBXTargetDependency section */
-
/* Begin PBXVariantGroup section */
089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = {
isa = PBXVariantGroup;
@@ -365,6 +381,7 @@
ONLY_ACTIVE_ARCH = YES;
OTHER_LDFLAGS = "";
SDKROOT = macosx;
+ SYSTEM_HEADER_SEARCH_PATHS = "../../../lexilla/**";
};
name = Debug;
};
@@ -401,6 +418,7 @@
GCC_WARN_UNUSED_VARIABLE = YES;
OTHER_LDFLAGS = "";
SDKROOT = macosx;
+ SYSTEM_HEADER_SEARCH_PATHS = "../../../lexilla/**";
};
name = Release;
};