Home | Gallery | Forum | Services | Webmail | Archive | Links | Contact Us | About Us
OS2 World.Com Forum
OS2 World.Com Online Discussion Forum.
Index / OS2 World.Com Bounty System / Suggested & Open Bounties
author message
    Interface InnoTek's font-engine
Post a new topic Reply to this Topic Printable Version of this Topic Forward this Topic to your Friend Topic Commands (for administrator or moderators only)
Gregg
Normal member
in user

View this member's profileSearch all posts from this memberSend an email to this member
posts: 23
since: 02 Apr, 2003
21. Re:Interface InnoTek's font-engine
Reply to this topic with quote Modify your message
I just tried feffer. It seems to work fine. I did find one problem which is related to a change Innotek made in the 2.60 beta which is the version I am using. They changed the location of the registry keys for the programs they install by default. This means that feffer can't change these programs or as in my case any other programs that were added at the new registry site. Below is the relavent portion of the 2.60 beta readme. Thanks for creating this great little program.


Gregg


From Innotek readme for the font engine 2.60 beta:
Section 5.1

All configuration data is stored in the OS/2 registry
and can be edited using the OS/2 Registry Editor
(regedit2.exe). The reason for using the registry
instead of e.g. OS2.INI is the much higher flexibility
of the registry (hierachical organization) compared to
the limited OS2.INI format. The configuration data is
stored below the key

HKEY_CURRENT_USER\Software\InnoTek\InnoTek Font Engine

or when choosing the system registry during installation
below the following key

HKEY_LOCAL_MACHINE\Software\InnoTek\InnoTek Font Engine

Note that if the application key exists below the local
machine registry tree, the configuration will always be
loaded from there and possible settings in the current
user section of the registry will be ignored.

Date: 19 Jan, 2006 on 14:43
warpcafe
Premium member
in user

View this member's profileSearch all posts from this memberSend an email to this member
posts: 350
since: 26 Nov, 2002
22. Re:Interface InnoTek's font-engine
Reply to this topic with quote Modify your message
Gregg,

okay - thanks a lot for the info. I didn't know there was a newer (beta) version out. But this change is very welcome, because - frankly - it didn't make much sense to me that they stored the stuff in the user-part of the registry.
A system-level driver like ft2lib needs to be stored in the HKLM part, not the user part.
Strange anyway: The new method on the other hand does not allow "user preferences" overriding a system default. Hm. Likely to change in the future.

Now for feffer, this means that the optimal solution would be to retrieve the ft2lib version from the dll. Unfortunately, I don't know of any rexx-callable dll to the appropriate API (in windows, it's the versioninfo() IIRC, part of the advapi pack). I'm pretty sure that os/2 has a counterpart to that, but... hmm... maybe this could be worth another bounty?

Anyway - the only thing I might do now is either make the "base registry tree" used by feffer configurable (either by config file/ini file or by an option dialog) or try to implement a "manual" way of scanning the dll file to retrieve the version.

Alternatively, I could even think of a routine that is called during a possible installation script for feffer which determines the ft2lib version ONCE and configures feffer accordingly.

Which one would you prefer?
Or do you think, a hardcoded "alternate" version of feffer is a better choice until we find a decent solution?

If instead we make this another bounty (rexx-interface to the advapi functions) all (rexx) programmers would benefit from it.

Let me know what you think please.
BTW: Is that new beta from Innotek publicly available (can it be downloaded) or is it a "closed" beta available only to certain users?
I can't remember any announcement for this...

Thanks again for the info...

Greetings
Thomas

Date: 19 Jan, 2006 on 21:17
warpcafe
Premium member
in user

View this member's profileSearch all posts from this memberSend an email to this member
posts: 350
since: 26 Nov, 2002
23. Re:Interface InnoTek's font-engine
Reply to this topic with quote Modify your message
Oh, something I forgot to mention:

The system registry tree is already existing even with my older version of ft2lib of course. I could also implement a simple "mirror" which updates BOTH parts simultaneously (user and system).
This is not quite the way it should be done because of the principles of the user/system registry, but doesn't have great impact on multiuser-environments in my mind (as far as such environments exist in os/2 by now): The only drawback would be, that a user cannot make settings that differ from the system-wide settings.

Comments?

Cheers
Thomas

Date: 19 Jan, 2006 on 21:23
Gregg
Normal member
in user

View this member's profileSearch all posts from this memberSend an email to this member
posts: 23
since: 02 Apr, 2003
24. Re:Interface InnoTek's font-engine
Reply to this topic with quote Modify your message
last updated at 20 Jan, 2006 06:25 (2 times)
Thomas

I think it might be simpler to check the default install to determine if 2.60 is installed. Unless someone has played with the registry and deleted keys a check for HKEY_LOCAL_MACHINE\Software\InnoTek\InnoTek Font Engine\applications\firefox.exe should verify that version 2.60 is being used since the earlier versions don't use the local machine key and this could then triger code to check both local machine and current user for applications and or settings with all additions or changes to duplicate entries defaulting to local machine if it is present. While this is probably not the cleanist solution it should work fine and if you are concerned it could be corrupted a check for all the defaults ie just the Local machines..."applications" key being present (which I don't believe existed prior to 2.60 (should be checked)) could verify the version level. These keys can be easily checked with sputils so they don't require anything new. I would be happy to test a version using this logic to verify that it works. Again thank you for your efforts on this project

Gregg

Date: 20 Jan, 2006 on 06:22
Cris
Premium member
in user

View this member's profileSearch all posts from this memberSend an email to this member
posts: 124
since: 20 Nov, 2003
25. Re:Interface InnoTek's font-engine
Reply to this topic with quote Modify your message
Warpcafe,
you could simply invoke "bldlevel" on ft2lib.dll and redirect it into a file or a queue for later parsing. I've verified that ft2lib contains bldlevel information (at least the 2.60 beta).

I tried feffer both on a VirtualPC image of eCS1.2 and on my main system with eCS1.1. On the 1.1 system I have a problem: when starting feffer I get a DrRexx dialog box with an error registering one of the functions... as soon as I get home I'll post a screenshot, I don't remember the details now.

I find feffer useful and quite well done, thankyou!
I have only one "complaint" - feffer doesn't save the fonts that you drop on it. Maybe you could enhance it to include this.

I see that now the bounty starts to be interesting

Thankyou!
Bye

Cris

P.S. no, the beta is not closed. you can download the new beta from Innotek's website.

Date: 20 Jan, 2006 on 12:37
warpcafe
Premium member
in user

View this member's profileSearch all posts from this memberSend an email to this member
posts: 350
since: 26 Nov, 2002
26. Re:Interface InnoTek's font-engine
Reply to this topic with quote Modify your message

Cris (20 Jan, 2006 12:37):
I have only one "complaint" - feffer doesn't save the fonts that you drop on it. Maybe you could enhance it to include this.

Cris,

thanks for the bldlevel info. At least, this helps in finding out what possible solutions can be done. For the font problem: Yes, I know. Unfortunately, DrDialog doesn't provide common methods and the DnD-support for objects "outside" of DrDialog is quite bad... which means: I will have to save font (and color) information at the end and load it at startup. But your comment ist definitely RIGHT! A useful os/2 program should provide this.

As for the DrRexx dialog box... hm.. this MIGHT be due to a missing dll that sputils requires in order to access the registry. I remember something been said about that somewhere... need to look into it again.
If you could send me the screenshot, I'll investigate what it's about.

Thanks for the support!
Greetings
Thomas

Date: 20 Jan, 2006 on 17:06
Cris
Premium member
in user

View this member's profileSearch all posts from this memberSend an email to this member
posts: 124
since: 20 Nov, 2003
27. Re:Interface InnoTek's font-engine
Reply to this topic with quote Modify your message
Warpcafe,
it is working now in both the eCS 1.2 and the eCS 1.1 boxes.
Don't know what I was doing wrong...

Thankyou!
Bye

Date: 21 Jan, 2006 on 00:39
abwillis
Premium member
in user

View this member's profileSearch all posts from this memberSend an email to this member
posts: 135
since: 21 Mar, 2003
28. Re:Interface InnoTek's font-engine
Reply to this topic with quote Modify your message

warpcafe (18 Jan, 2006 17:19):
Here it is!

I've attached the first prototype of feffer for you. It requires the sputils package from hobbes (see included readme for details).


It brings up a window here that just scrolls a bunch of errors I can't follow and then it closes out. It may be related to my using OREXX.
Andy

Date: 21 Jan, 2006 on 05:14
warpcafe
Premium member
in user

View this member's profileSearch all posts from this memberSend an email to this member
posts: 350
since: 26 Nov, 2002
29. Re:Interface InnoTek's font-engine
Reply to this topic with quote Modify your message

abwillis (21 Jan, 2006 05:14):
It brings up a window here that just scrolls a bunch of errors I can't follow and then it closes out. It may be related to my using OREXX.
Andy

Hi Andy,
the fact that it brings up "a bunch" of messages most likely means that these errors are produced by the DrDialog runtime environment. I think you're right that it might has something to do with orexx.
I only use classic rexx here. Hmm. I know there is some script that can be used to switch from classis to orexx... I must give it a try I think. And I remember that there was a fix for something with DrDialog and orexx... must look for that again.
Thanks for the information, I'll check it out.

Greetings
Thomas

Date: 21 Jan, 2006 on 10:49
Warp5
Normal member
in user

View this member's profileSearch all posts from this memberSend an email to this member
posts: 29
since: 14 Dec, 2002
30. Re:Interface InnoTek's font-engine
Reply to this topic with quote Modify your message

Kim (19 Jan, 2006 13:1:
Also to be mentioned is that OS2 User Group Sweden has sponsored this bounty with
100 USD.



warpcafe:
You should make sure that all participants who contributed will get something in return: Robert for his library (which in contrast to my rexx program can be used for WPS-extending "features"), and also that VIO-based program which suits perfectly the need for handling the ft2lib-stuff from commandline - like when booting with Alt-F1 to a command line in order to "repair" stuff.


I don't deserve money for this either! However, if you want to do something good with the money, make it available to this years organizers of Warpstock Europe, or use it to finance a trip to Warpstock Europe for your Swedish users!

Robert

Date: 21 Jan, 2006 on 13:38
warpcafe
Premium member
in user

View this member's profileSearch all posts from this memberSend an email to this member
posts: 350
since: 26 Nov, 2002
31. Re:Interface InnoTek's font-engine
Reply to this topic with quote Modify your message

Warp5 (21 Jan, 2006 13:3:
However, if you want to do something good with the money, make it available to this years organizers of Warpstock Europe, or use it to finance a trip to Warpstock Europe for your Swedish users!
Robert

Good idea(s)...

Greetings
Thomas

Date: 21 Jan, 2006 on 17:20
warpcafe
Premium member
in user

View this member's profileSearch all posts from this memberSend an email to this member
posts: 350
since: 26 Nov, 2002
32. Re:Interface InnoTek's font-engine
Reply to this topic with quote Modify your message

abwillis (21 Jan, 2006 05:14):
It brings up a window here that just scrolls a bunch of errors I can't follow and then it closes out. It may be related to my using OREXX.
Andy

Andy,
I switched my pc to orexx and gave it a try. I also managed to find out where the error was. A stupid one that didn't show up if feffer was running in classic rexx... anyway. I recompiled the fixed version and attached it here to my post. There is nothing more or less in matters of features and it's not aware the newer beta version of ft2lib either - just a quick fix for object rexx... would you mind give it a try?

Cheers
Thomas

Date: 22 Jan, 2006 on 03:08 Attachment: feffer_092o.zip
abwillis
Premium member
in user

View this member's profileSearch all posts from this memberSend an email to this member
posts: 135
since: 21 Mar, 2003
33. Re:Interface InnoTek's font-engine
Reply to this topic with quote Modify your message
It does appear to work but I do get an error box:
Syntax Error: Incorrect call to routine in:
Item = cnt_list.add(stem.i, gBmpNo)
Date: 23 Jan, 2006 on 00:24
warpcafe
Premium member
in user

View this member's profileSearch all posts from this memberSend an email to this member
posts: 350
since: 26 Nov, 2002
34. Re:Interface InnoTek's font-engine
Reply to this topic with quote Modify your message

abwillis (23 Jan, 2006 00:24):
It does appear to work but I do get an error box:
Syntax Error: Incorrect call to routine in:
Item = cnt_list.add(stem.i, gBmpNo)

Hi,
...are the two bitmaps present in the applications directory?
(This requirement will change in the near future)

Cheers
Thomas

Date: 23 Jan, 2006 on 12:07
abwillis
Premium member
in user

View this member's profileSearch all posts from this memberSend an email to this member
posts: 135
since: 21 Mar, 2003
35. Re:Interface InnoTek's font-engine
Reply to this topic with quote Modify your message
Your right, my mistake. I had had them there but then remormatted the drive and thought I had copied them back in but hadn't.
Andy
Date: 23 Jan, 2006 on 21:04
warpcafe
Premium member
in user

View this member's profileSearch all posts from this memberSend an email to this member
posts: 350
since: 26 Nov, 2002
36. Re:Interface InnoTek's font-engine
Reply to this topic with quote Modify your message
Folks,

I've attached a 0.9.3 version of feffer.
As a quick solution, I've added the possibility to supply a command-line parameter of " /HKLM" which will make that version of feffer use the HKEY_LOCAL_MACHINE part of the registry (for the "newer" ft2lib.dll).
If something else (or nothing) was supplied, nothing changes - feffer will use the HKEY_CURRENT_USER tree like before.
Note that this is NOT TESTED - please tell me if it works.
The attached ZIP only contains the new executable, which means that you'll need the two bitmaps from the previous version - sorry, I'm a bit constrained in matters of accessing my "project files" from where I am...

There's nothing new except this parameter. It's merely intended for users of the newer ft2lib so they can give a try to feffer as well. Have fun and let me know of the results (bugs, complaints, etc...)

----------------------------------------------------------
And now a quick note on the current development status of feffer:
I'm into version 0.9.4 now, starting to redo some parts from scratch. I have successfully pre-tested some routines for later incorporation. Among them there is:

- determination of the directories of libpath for searching the
ft2lib.dll and retrieving its versioninfo by "bldlevel"...
- check to see if I can get the font info, if a font was
"dropped" on the container or other parts
- a startup check for all required resources
- a splash screen at startup to make things look prettier and
to give credit to the bounty system at os/2world.com
- handmade routines to process win-style "ini" files
(those plain text files, they're quite comfortable for editing)

I'll check if I can get a "nice" idea for "prettier" dialogs and then will do the main work to get a new "GA beta" version for the public at hobbes. Might take a while, because I will need to do "paperwork" as well (the documentation stuff).

As soon as I'll have a "complete" english resource file ready, I'll post that too so people will be able to make their own localizations for feffer.

Greetings
Thomas

Date: 24 Jan, 2006 on 17:52 Attachment: FFR093.ZIP
Cris
Premium member
in user

View this member's profileSearch all posts from this memberSend an email to this member
posts: 124
since: 20 Nov, 2003
37. Re:Interface InnoTek's font-engine
Reply to this topic with quote Modify your message
Hi Warpcafe,
it would be nice if you could add a little counter of the registry keys below the list. Maybe it could be something like

t/e/d

where "t" stands for "total", "e" stands for "enabled", "d" stands for "disabled".

Thankyou!
Bye

Cris

Date: 25 Jan, 2006 on 01:56
warpcafe
Premium member
in user

View this member's profileSearch all posts from this memberSend an email to this member
posts: 350
since: 26 Nov, 2002
38. Re:Interface InnoTek's font-engine
Reply to this topic with quote Modify your message
last updated at 25 Jan, 2006 11:52 (1 times)

Cris (25 Jan, 2006 01:56):
Hi Warpcafe,
it would be nice if you could add a little counter of the registry keys below the list. Maybe it could be something like

t/e/d

where "t" stands for "total", "e" stands for "enabled", "d" stands for "disabled".

Thankyou!
Bye

Cris


Cris,

good idea!
That again shows how "limited" a developers view sometimes is: I wouldn't have thought of that. But it's definitively a useful feature. Hmm... I'm thinking of a display string that can be configured similar to XWP's folder status bars...

I'll note that!

Greetings
Thomas

Date: 25 Jan, 2006 on 11:41
warpcafe
Premium member
in user

View this member's profileSearch all posts from this memberSend an email to this member
posts: 350
since: 26 Nov, 2002
39. Re:Interface InnoTek's font-engine
Reply to this topic with quote Modify your message
...and another status update:

Today, I successfully tested a helper application that "compiles" a string resource file (plain text) into a feffer ".msg" file. Along with that, I have tested the routine which reads the strings from the .msg file.
This means, that willing "translators" can translate the original string resource file and compile it into a localized .msg file. Feffer will then load the .msg file that matches your "LANG" setting environment variable (or another .msg file if that is selected differently in a later "options" dialog).

Cheers
Thomas

Date: 25 Jan, 2006 on 18:41
Warp5
Normal member
in user

View this member's profileSearch all posts from this memberSend an email to this member
posts: 29
since: 14 Dec, 2002
40. Re:Interface InnoTek's font-engine
Reply to this topic with quote Modify your message
Some updates from me as well.
I attached to this post the first two command line utilities. One will enable the font engine, the other will disable it. If you like, you can test them. Please do not upload to any other server.
Once I have compiled all required utilities, I will refresh the feconfig1.zip file on hobbes. Thomas, you are of course free to include those utilities in your distribution and mention them in the readme!

PS: I could not attach the file to the post for whatever reason. Here is the URL:
http://warp5.dyndns.org/fecmd.zip

Date: 26 Jan, 2006 on 10:26
    Interface InnoTek's font-engine
Post a new topic Reply to this Topic Printable Version of this Topic Forward this Topic to your Friend Topic Commands (for administrator or moderators only)
All times are CET+1. < Prev. | P. 1 2 3 | Next >
Go to:
 

Powered by UltraBoard 2000 Standard Edition,
Copyright © UltraScripts.com, Inc. 1999-2000.
Home | Gallery | Forums | Services | Webmail | Archive | Links | Contact Us | About Us
© OS2 World.Com 2000-2004