AW: Omnis Weblib for Studio 5 -- Work in Progress
DATAX AG, Florian Binder
fb at datax-ag.de
Tue Aug 12 04:45:05 EDT 2014
Dear List,
thank you all for the kind words. I hope you all enjoy these new possibilities.
We are currently not planning to continue developing the open source version of this component, since the version we released is a fork of our component we use in our application.
In the future it might be possible the we release another version or contribute to a fork if we achieve something worth motioning.
Mit freundlichen Gruessen
DATAX AG Unternehmensberatung
i.A.
Florian Binder
_____________________________
DATAX AG Unternehmensberatung
Aixheimer Strasse 12
70619 Stuttgart
Deutschland
Fon: +49 711 47667-0
Fax: +49 711 47667-29
fb at datax-ag.de
www.datax-ag.de
_________________________________________________
Vorstand: Christian Hirzel (Vorstandsvorsitzender), Jakob Hirzel
Vorsitzender des Aufsichtsrats: Herbert Graef
Amtsgericht Stuttgart HRB 13 127
-----Ursprüngliche Nachricht-----
Von: omnisdev-en-bounces at lists.omnis-dev.com [mailto:omnisdev-en-bounces at lists.omnis-dev.com] Im Auftrag von David McKeone
Gesendet: Montag, 11. August 2014 19:06
An: OmnisDev List - English
Betreff: Omnis Weblib for Studio 5 -- Work in Progress
Hi Everyone,
Big thanks again to Florian Binder and DataX for getting the ball rolling on the modern HTML5-compliant browser component.
I'm extremely excited about this, and I know that others must be as well, so I thought I'd do my work to convert over to Studio 5 out in the open, and post regular Work in Progress (WIP) builds to our website so that everyone can follow along. I will definitely submit all of these changes back to the main project, but I'm not ready to do that just yet, since the main project will need to be both Studio 4 and 5 out of the box -- and some of my changes to the project have broken Studio 4 compatibility.
If you aren't excited about this, then take a look at some of these HTML5/JS graphing libraries and imagine that they could be in your apps:
- http://raphaeljs.com/
- http://nvd3.org/
It also supports WebGL (http://media.tojicode.com/q3bsp), video (e.g. YouTube), and all the usual HTML5 goodies (http://html5rocks.com). Of course to use a lot of this stuff you'll have to become more familiar with HTML, CSS, and Javascript, but that's just how it goes these days ("Any application that can be written in Javascript, will eventually be written in Javascript": http://blog.codinghorror.com/the-principle-of-least-power.
If there are any questions, it's a probably good idea to keep things open and ask them on this list so that everyone can benefit.
Link: http://www2.artsman.com/omnis/OmnisWeblib5-20140811-WIP-Windows.zip (Binary xcomps for Studio 5+ on Windows)
NOTE: awesomium.dll and some other dlls and files in the directory come from the Awesomium project (http://www.awesomium.com/), and were placed in their appropriate directories based on instructions from https://github.com/fb-datax/omnis-weblib. I'm putting them here for your convenience (and I hope it all works without the installer), but in the long run you will probably also want to download the installer for Awesomium and check the distribution requirements and costs. This preview shouldn't be misconstrued as a distribution of any kind from Artsman, it's merely an early alpha look at the work I'm doing personally, and I'm using the Artsman server to host some of my open source work because the file is too big too email directly.
Differences between this project directory and Florian's github version:
- Addition of "isunicode", "UNICODE", and "_UNICODE" pre-processor flags for building Studio 5+
- Added /Zc:wchar_t- build setting (Treat wchar_t as built-in type: No -- Studio 5 externals always need this AFAIK)
- Added /Zc:forScope- build setting (Force Conformance In For Loop Scope: No -- Studio 5 externals always need this AFAIK)
- Copied some functions from my OmnisTools helpers (https://github.com/dmckeone/NVObjTemplate) to assist with string handling
- Consolidation of some string handling to make it easier to have a single non-unicode/unicode code base.
- Change "logToTrace" to use regular C-strings instead of the Omnis str255 type, and convert C-Strings to str255 only when calling ECOaddTraceLine (easier Studio 4/5+ compatibility)
- Add 'object->shutDownWebView()' on line 475 of weblib.cpp to prevent a crash when closing the browser window on Studio 5.
- (Personal Preference) Change 'Output Directory' for Debug builds to: C:\TigerLogic\OS523\xcomp (which is where my current Omnis Studio 5 copy is installed) -- Allows me to just push the "Play" button in Visual Studio to start debugging. If you are going to do your own builds, you'll likely need to change this setting.
If you want to install this on your own machine and test it in Omnis Studio 5+ (even if you don't have Visual Studio), I've included binary xcomps in the package. To install the xcomps:
1) Download the project zip file: http://www2.artsman.com/omnis/OmnisWeblib5-20140811-WIP-Windows.zip
2) Extract the zip file toa directory. E.g. C:\omnis-weblib
3) Open "deploy" folder. E.g. C:\omnis-weblib\deploy
4) Install DLLs in your Omnis directory
a) Copy "awesomium.dll" from "next_to_omnis_exe" folder to be next to "omnis.exe" in the top-level Omnis Studio directory
b) Copy "weblib.dll" from "to_xcomp" folder to be in the Omnis Studio "xcomp" folder (one level deep from the top-level Omnis Studio directory)
5) Open (but do not move!) the library "demo5.lbs" in the "lbs" folder. E.g. C:\omnis-weblib\lbs\demo5.lbs
If you want to move the library to a different directory (or use the external in your own application) then you also need to move the 'deploy' directory, and you need to change the code in Startup_Task.$construct to point to the new location.
Good luck!
-David McKeone
_____________________________________________________________
Manage your list subscriptions at http://lists.omnis-dev.com
More information about the omnisdev-en
mailing list