[futurebasic] Quartz Event Services

Message: < previous - next > : Reply : Subscribe : Cleanse
Home   : July 2007 : Group Archive : Group : All Groups

From: "H. Gluender" <h@...>
Date: Sat, 14 Jul 2007 18:16:18 +0200
Dear specialists,

only recently I've learnt about "Quartz Event Services"

<http://developer.apple.com/documentation/Carbon/Reference/QuartzEventServicesRef/Reference/reference.html>

that allow for what was known as jGNEFilters in 
Classic MacOS. Essentially, this API provides 
functions to tap and modify lowlevel events--such 
as keystrokes--before they reach their 
destination process.

There is a nice free demo-app written by Bill Cheeseman out there

	<http://PreFabSoftware.com/eventtapstestbench/>

that may give you a first impression of what can 
be done by "Quartz Event Services" that have been 
introduced with MacOS 10.4.x (Tiger). Of course 
such mechanisms appear dangerous in an otherwise 
rather hermetic and secure Unix-OS and in fact 
there have been security issues that Apple had to 
resolve after their introduction...

As some of you may remember, two of my more 
popular but now legacy FB-Apps ("UmlautXpander" 
and "ascii2html") use jGNEFilters and therefore 
don't work under MacOS_X.

Consequently, I should like to know about any 
efforts to make the "Quartz Event Services"-API 
accessible from FB. Furthermore, I should like to 
know if somebody succeeded in creating FB daemon 
apps, i.e. apps without user interface that run 
in the background such as INITs in Classic MacOS.

What I'm specifically interested in is 
substituting certain keystrokes by short strings 
of specific chars. "ascii2html" for instance, 
substitutes the ISO 8859-1 codes for common 
high-ascii characters (e.g. the copyright sign 
"©" -> "&#169;") while you are typing in BBEdit.

	<http://www.gluender.de/Miscellanea/MiscTexts/UtilitiesText.html>


Any hints and especially sample code (unable to 
find even specific C-code yet) are highly 
appreciated.

Best
--


                   Herbie

          ------------------------

          <http://www.gluender.de>