New widget set : Web Application mode
lazarus / 6-IDE-CodeTools
----------------------------------------------------------------------
Anonymous · 2006-06-16 15:51
Hello.
I think it will be very interesting to have a new mode in Lazarus-Free
Pascal. The Web Application Mode (like Intraweb controls in Delphi).
Compiling in this mode, the resultant application must be a mini-web
server, showing the application in estandar HTML and Javascript pages.
Sorry for my english.
Congratulations for a great work.
Marc Guillot.
----------------------------------------------------------------------
Phil · 2006-06-18 15:31
Marc,
That's a very interesting idea: a Web widgetset. I don't have enough
experience developing either a Laz widgetset or Web-based apps to know
if this is practical or not. If you have experience with developing
Web-based apps, perhaps you could expand a bit on your idea and get a
discussion going.
----------------------------------------------------------------------
Lord_ZealoN · 2006-06-19 15:39
Would be great. And something like PHP but in pascal.
Yes, exists Pascal Server Pages, but is discontinuated.
----------------------------------------------------------------------
Anonymous · 2006-06-19 19:07
Quote from: "Phil"Marc,
That's a very interesting idea: a Web widgetset. I don't have enough
experience developing either a Laz widgetset or Web-based apps to know
if this is practical or not. If you have experience with developing
Web-based apps, perhaps you could expand a bit on your idea and get a
discussion going.
I have no idea to develop a new Laz widgetset too.
(Really I'am not sure if we must better talk about a new platform to
support).
Is very easy to write a Web application using it (Intraweb in Delphi).
You code it exactly the same way for a host application (no need of
html and javascript knowledge).
http://www.delphizine.com/productreviews/2002/06/di200206ps_p/di200206
ps_p.asp
----------------------------------------------------------------------
felipemdc · 2006-06-19 22:19
Quote from: "Anonymous"I have no idea to develop a new Laz widgetset
too.
Fortunately there is a tutorial about this =)
http://wiki.lazarus.freepascal.org/index.php/LCL_Internals#How_to_crea
te_a_new_Widgetset
But I don´t know how this would work for a web application. It would
be necessary to understand exactly what IntraWeb does.
Two options that come to my mind are:
1 - Transform the lazarus software into a CGI program
2 - Create another compiler that will read Lazarus code and transform
it into html+javascript
Which of these (and other options I don´t see) IntraWeb does?
----------------------------------------------------------------------
CCRDude · 2006-06-20 07:40
I have no idea about IntraWeb, but since this was mentioned as a web
widget, I would imagine
* Pascal application listens on defined port (80 or custom)
* App is invisible or has only status window, and serves forms as HTML
to client
* The server could be in two parts: a simple web server for basic
files, and a webservice for more (disadvantage: I don't know if a web
service class exists and if so, if it would co-exist with a parallel
file server on the same port).
* Clicks would still be easy if the whole "window" is a form
* Most things would be AJAX:
* using javascript events to report minor things like keypresses to
the server
* changes the server does on those events would be the most
complicated thing I guess; there would be need for a communication
structure between the Pascal server app and the JS client app for
visual changes.
Well, actually I need a Lazarus web server app in the near future, and
with that tutorial page in mind, I can try to implement a few things
as a start.
My concerns would be:
* HTML is a standard defined to create pages that are independent on
screen resolutions, even if many web programmers don't care about that
- forms are usually very strict in size. So either this takes good
coding (using Align a lot, making it more difficult for the widget),
or ignores the standards.
* HTML even with AJAX is still kind of unidirectional. The client can
fire events like clicks, keypresses etc. that will not reload the
whole form (making it quite unusable) and gets feedback. We could
define some kind of message transport structure so that the handler
called by the page could change things on the page. But the widget
would not to store copies of nearly everything, because the widget
can't just "ask" the client on its own, it's dependend on those
events.
Hmmm. I guess I will try something "simple": code that transforms a
form into HTML, which I could need for myself anyway, and see from
there how it goes.
----------------------------------------------------------------------
Marc · 2006-06-20 08:50
I've been thinking about this as well (just in theory)
You can have to solutions:
1) write your own server and let it be your application.
2) write the application as a cgi, and store the app data as session
info.
the 1st form has the advantage that you kan keep all the application
data together a bit like a traditional app. The disadvantage is that
you need to implement all server logic as well. Not all ppl who want
to deploy a websote like this are able to choose their server.
the 2nd form has the advantager that you don't have to take care of
your server. You can place your app on almost any existing server
supporting cgi. The disadvantage is that you neet to keep the app data
and logic stored in a session, in order to process each request.
Personally I think that a widgetset based on cgi would be preferred.
----------------------------------------------------------------------
CCRDude · 2006-06-20 13:21
Hmmm... not sure about that:
"Public" applications: you're right, not everyone has root access to a
server so he could place his app there; access to upload cgi etc. is
given way more often.
"Private" applications: not everyone has a server capable of running
the cgi scripts needed for #2, but they can run #1 on every Windows or
Linux machine they have.
So... I don't want to use Lazarus for developing "software" for public
websites - perl, php, whatever are much more useful for that! A
standard "web application" I would write would be targeted at an
Intranet only, and small local networks may have a Windows server or
Windows machine running through, but not so often a LAMPP box.
Of course you could tell people to install a webserver etc... but then
it's like .NET - you've got to download dozens of MBs for the
"framework" of a small application And then this widget would only be
used for huge applications (thinking about commercial software, you've
probably got to explain to your customer why you need to install half
a dozen of freeware applications to run his custom software).
I understand the hesitation to have the server inside the widget
though - I've got some experiences with Indy an many clients accessing
it that are far from good (will soon test with Synapse and hope that's
better).
----------------------------------------------------------------------
felipemdc · 2006-06-20 14:21
Quote from: "CCRDude"So... I don't want to use Lazarus for developing
"software" for public websites - perl, php, whatever are much more
useful for that! A standard "web application" I would write would be
targeted at an Intranet only, and small local networks may have a
Windows server or Windows machine running through, but not so often a
LAMPP box.
We surely can have both approaches on 2 separate widgetsets.
On open source world the developer is king. So, what will decide which
approach get´s more code and become more standard is people writing
code for it =)
----------------------------------------------------------------------
Marc · 2006-06-20 14:22
Maybe we can find a way to have both. Run in server mode or as cgi.
----------------------------------------------------------------------
Anonymous · 2006-06-20 17:27
In Delphi, Intraweb offers various possibilities.
You can make and stand-alone executable, that acts like a mini-web
server, offering your application. Or you can compile in a Apache or
IIS shared module.
Some more information : http://www.drbob42.com/examines/examin48.htm
It seems the most hardarous work are not this deployment options but
the engine of rendering forms and events in standar HTML and
Javascript.
Marc Guillot.
----------------------------------------------------------------------
RudieD · 2006-06-20 18:38
Have any one tried the Fast CGI yet ? It should give you the power of
normal CGI, but instead of loading the bin each time, you can have a
full multi threaded socket server running full time and just sync the
access to the common (session) block. You can then also easily extend
the server to another PC to help with the load.
----------------------------------------------------------------------
Anonymous · 2006-06-21 00:25
Quote from: "CCRDude"Hmmm... not sure about that:
So... I don't want to use Lazarus for developing "software" for public
websites - perl, php, whatever are much more useful for that! A
standard "web application" I would write would be targeted at an
Intranet only, and small local networks may have a Windows server or
Windows machine running through, but not so often a LAMPP box.
I completely sencond that. Lazarus Developers should not concentrate
on this. Web stuff is "main stream" stutff. Your provider will have
PHP and/or ASP.NET installed. Even "en vogue" systems like Ruby on
Rails have a hard time to get installed on most providers.
Quote from: "CCRDude"
I understand the hesitation to have the server inside the widget
though - I've got some experiences with Indy an many clients accessing
it that are far from good (will soon test with Synapse and hope that's
better).
Synapse is way better than Indy, and it fully supports most FPC
targets now.
Once you know your way through Synapse, you'll have the great feeling
of "knowing what happens" which you'll never have using Indy.
Synapse may not seem as "handy" as Indy at first sight, but its much
better written at lower level and has less bugs.
----------------------------------------------------------------------
Anonymous · 2006-06-21 00:57
Oh, and don't get confused about the relatively simple implementation
of the "higher level" classes like THTTPSend in Synapse.
They have only demo character for me. But because the system is
transparent, you can easily add your requirements to it.
Maybe my example http://www.theo.ch/kylix/httpthread.zip which was
written for Delphi / Kylix can give you some ideas.
It shows how to use THTTPSend in a Thread for preventing the GUI from
blocking, sending status messages to the GUI (this is using
Sendmessage API and will not work on Lazarus (at least not
crossplatform)), and how to handle redirects.
----------------------------------------------------------------------
Almindor · 2006-06-21 13:17
For "CGI" handling you can use PSP ( http://www.google.sk/search?hl=sk
&q=pascal+server+pages&btnG=H%C4%BEada%C5%A5+v+Google&meta= )
For web server, lNet will have a 100% functional HTTP 1.1 server with
fastCGI support in 0.4.0 (will go out with fpc 2.0.4). It can be
integrated with lazarus rather simply.
----------------------------------------------------------------------
felipemdc · 2006-06-27 11:06
Also, I am finishing converting Apache 2 headers to Free Pascal, so in
the near future we should also be able to write apache modules.
With this a internet widgetset can generate Apache 2 modules, just
like IntraWeb does. Another option for developers ^^
----------------------------------------------------------------------
SergKam · 2006-07-05 19:29
Web Server On FPC alrady done.
http://www.freepascal.ru/forum/viewtopic.php?t=935
source
http://zero.kanet.ru/files/?page=/nYume_Server
----------------------------------------------------------------------
CCRDude · 2006-07-05 19:38
I can't understand russian, but a webserver example is also part of
Synapse already - the difficult point here is to convert a GUI to
interactive websites
----------------------------------------------------------------------
Anonymous · 2006-07-06 06:30
That server has help and description in English. It's very simple, but
crossplatform and can be used as example.
----------------------------------------------------------------------
Anonymous · 2006-07-06 12:19
Quote from: "CCRDude"I can't understand russian, but a webserver
example is also part of Synapse already - the difficult point here is
to convert a GUI to interactive websites
Not so difficult. for example.
Code: [Select]
object Form3: TForm3
Caption = 'TEST'
Left = 425^
Height = 269^
Top = 175^
Width = 255^
...
object BitBtn1: TBitBtn
Caption = 'Tst'
Default = True
Kind = bkOK
ModalResult = 1
TabOrder = 0
Left = 16
Height = 30
Top = 232
Width = 96
end
...
end
------------------------------------------------
//set simple ajax structure
//set ajax calbacks
'
document.getElementById(AJAX).innerHTML='get';
}
//set form
I can help with javascript, AJAX and HTML
I think it can`t be done as Lazarus Widget but as components set
----------------------------------------------------------------------
SergKam · 2006-07-06 13:05
It was my post.
smoll corections
Code: [Select]
'
document.getElementById(AJAX).innerHTML='query';
AjaxStart();
}
on server
Code: [Select]
function Form3.onClickBitBtn1()
begin
BitBtn1.Capton:='hello';
end;
----------
http.respons:=''
----------------------------------------------------------------------
CCRDude · 2006-07-06 14:00
Ok... so any suggestions why this server component would be better
than the Synapse one?
Also: why shouldn't it be able to do that as a widget set? It's just a
lot of work AJAX is the right way, I agree with that. Firefox for
example even has its own integrated AJAX JS client now.
----------------------------------------------------------------------
felipemdc · 2006-07-26 16:01
Good news for this idea is that you can now develop apache modules
with Free Pascal.
----------------------------------------------------------------------
L505 · 2006-10-11 18:22
QuoteWould be great. And something like PHP but in pascal.
Yes, exists Pascal Server Pages, but is discontinuated.
PSP has not been discontinued! :-)
Sometimes we leave the PasForum sitting for a few days without any
response. We have a mailing list which you pretty much can get an
email response right away - but the forum is less often checked and
harder to keep track of. I suppose we should implement a Mailer()
function in the web forum so that I get emailed each time someone
posts a new response or a new post. You have to understand that I am a
busy guy and I have a hard time keeping up with web forums - email is
easier to keep up with.
We hammered away lots of code in January 2006-April 2006 to get psp-
core 1.6 ready. THere's no sense in working on 1.6.1 until people
start using 1.5.0.2 and reporting issues with it. If we develop 1.6.1
without waiting for more people to use 1.5.0.2, it will mean more bugs
will be left in the code. There were a few important bugs Almindor
found and I'm greatful at least he is using PSP so it can be tested. I
use PSP myself for my personal and business websites but I don't use
all the features of PSP - Almindor just happened to hit on some
features I was not using, such as embedded CSS within a template file.
I'm working on some HTML widgetry which let's you go like this:
box.color:= hGray;
box.align:= auto;
box.render;
form.begin;
edit1.maxlength:= 10;
edit1.bgcolor:= hWhite;
edit1.render;
form.end;
I've already written a few web programs without doing any HTML by
hand.
An example is here:
http://www.psp.furtopia.org/cgi-bin/psp/examples/PasHiliterDemo.psp
There is criticism from people that templates are a better solution
than the above HTML pascal widgetry. It's true that templates do offer
more power, because they are not limited by Pascal, they are only
limited by the current HTML standard. We decided that both templates
and pascal widgets would be a good solution. Some people prefer pascal
widgets while others prefer HTML templates.
By html templates I mean this:
Code: [Select]
This is the {$PageName} in section one.
PSP has to be used as is too! Html widgets are cool, and OO stuff is
cool - but PSP is powerful the way it is right now.
Some of you guys say that PSP is kind of a useless idea, since there
is already PHP and ASP. But then why use Lazarus? Why not just use
Visual C++? Visual C++ is much more mature and many times more
powerful than Lazarus. It's all about the language though! I don't
like PHP syntax. I like sharing code between my Delphi and FPC
programs with my web programs! The PasForum FAQ explains this in great
detail why I use PSP and not JSP or PHP.
----------------------------------------------------------------------
sandeep_c24 · 2006-10-15 00:57
Is there any plan to implement a widget set that can be used do what
Intraweb dows for Delphi?
Regards
Sandeep
----------------------------------------------------------------------
felipemdc · 2006-10-17 20:38
Quote from: "sandeep_c24"Is there any plan to implement a widget set
that can be used do what Intraweb dows for Delphi?
Yes, I think that Marco was doing this based on the apache headers
translated.
The resulting file would be a .so that can be used with Apache 2.0 or
2.2
----------------------------------------------------------------------
Almindor · 2006-10-22 08:36
Once someone does the AJAX part (IMHO the most difficult thing)
integrating lNet or any other networking lib with a http server
shouldn't be much of a problem.
And since you did the apache headers we can also make the module
approach perhaps "all in one compilcation" even. But I imagine it'd
take some funk to get the events right.
EG: you make an AJAX form with an AJAX button and combobox. In
combobox you put "OnClick" code for example, now you need to make sure
that the client version sends you this event and that the server
responds with proper widget changes to the client.
This is the problem.
----------------------------------------------------------------------
hinfox · 2006-11-05 15:12
QuoteOnce someone does the AJAX part (IMHO the most difficult thing)
integrating lNet or any other networking lib with a http server
shouldn't be much of a problem.
And since you did the apache headers we can also make the module
approach perhaps "all in one compilcation" even. But I imagine it'd
take some funk to get the events right.
EG: you make an AJAX form with an AJAX button and combobox. In
combobox you put "OnClick" code for example, now you need to make sure
that the client version sends you this event and that the server
responds with proper widget changes to the client.
This is the problem.
Yes, and no. The AJAX part is the most difficult because this is a
distributed system. The difficult is not the OnClick event which can
be implemented easily but for example if you would like to develop a
drawing application you should send tons of thousand mouse events (and
the response images) in a short timeframe between the client and the
server. This can eat the client bandwidth and the application becomes
very slow. (Also some routers and firewalls does not like this many
connections in a short time frame and identifies it a SYN flood.) Also
there can be a DOS situation easily if you use the HTTP protocol for
that messages because the overhead. IMO some protocol which allows
persistent connections with small overhead would be required. This
would guarantee two way communications too which is an other problem
with HTTP. The other thing which is hard to achieve is browser
compatibility especially with older browsers which does not
necessairly support all required events.
One more problem is the security because the HTTP protocol is an
insecure thing. How can you guarantee that nobody can change the data
in transit? This can be guaranteed in a normal application but not in
a HTTP environment. There should be encryption or at least some
authentic signature checking algorithm implemented and integrated with
session handling code. OK, it can be implemented using a property for
example RequireSecurity which can be set true if security is required
and HTTP is not allowed but only HTTPS.
IMO this should not tied tightly to HTML and AJAX but what the
browsers support because browsers and the web in general is changing.
There are new standards which is supported natively in modern browsers
(such as SVG in Firefox) which should be supported in modern web
widgetsets too to simplify application development using these new
standards. This can be achieved if messaging code is abstracted from
GUI code appropriately. Careful design required.
I used IntraWeb but have some strange problems such as freezing and
inappropriate display things. The form looks in one way in the
designer, another way in Firefox, and another way in IE. This is
especially a problem if you require pixel precise positioning of text
and widgets (especially if your clients use more than one sort of OS).
Also not all controls have an IW counterpart and not all properties
are the same so this is like a desktop application development but it
is far from the same.
I have been thinking on such a widgetset since January in my freetime
and I can help you with the design and implementation (possibly not
only in my free time) but this requires more than one people and
careful design. I think Apache headers would be good for this but this
interface should be abstracted so other backends can be possible too.
----------------------------------------------------------------------
german_tejero · 2007-02-15 01:51
http://webrad.sourceforge.net/ a simple dead open source project, but
very powerfull and good for start
bye bye
----------------------------------------------------------------------
bee · 2008-01-14 16:31
Did anyone here ever try Morfik? IMO, that's the best way we should
implement Lazarus web-widget, even better than IW. Morfik makes things
simpler by separate browser side event and server side event. Browser
side is handled by JavaScript code, while the server side is handled
by an application server (could be a CGI app or an Apache module).
Any browser action which requires to be proceed on server side would
request to application server through Ajax request. The reply then
will be represented on the browser side using Ajax techniques. The
biggest advantage that's offered by Morfik is that we could write the
browser side using object pascal too. Morfik would "compile" it into
browser side JavaScript (plus auto generated HTML and CSS files),
using something they called as JST (javascript synthesist technology
or whatever), similar to gwt (google web toolkit). On the server side,
Morfik compile object pascal code plainly using FPC. For client-server
communication, they're using web service (SOAP?) protocol.
I think the idea is very possible to be done. For early stage, we
could ignore about the OP to JS compiler. We could think about this on
the next stage of the development. First, let the developers code the
browser side event using JS. To ease our web widget effort more, we
don't need to build the JS widget entirely from zero. We could use JS
GUI frameworks from out there. There are some frameworks to choose
upon: extjs (dual license ala mysql), qooxdoo (MPL), jQuery, and YUI.
Personally, I prefer extjs though I'm not quite pleased by its license
scheme. It's because extjs, AFAIK, has the most complete and stable JS
GUI framework plus a comprehensive documentation. I found it the
easiest framework to be understood and used. It also has almost any
standard GUI controls as on Lazarus component palette, even better.
So, for the start, we could focus on 2 things: (1) web widget that
transforms LFM into HTML+CSS+JS using chosen JS GUI framework, and (2)
standard client-server communication protocol (using JS GUI and Ajax
request on browser side, and app server and web service on server
side). But, due web application way of works, we couldn't transform
desktop app into a web app or vice versa. Just like IW or Morfik,
developers should had known that s/he would build a web app since the
beginning.
Had anyone done this? What do you think?
----------------------------------------------------------------------
Almindor · 2008-01-14 22:41
I tried morfik, and I agree, altough their javascript side is horrible
(half of the stuff just doesn't work or is too slow). But I too think
that this hybrid approach is generally best. Too bad they're closed
tho.
----------------------------------------------------------------------
Marc · 2008-01-15 13:40
have you ever tried to browse the Morfik website with a not to recent
PC ?
Click......nothing happening......no indication of something
loading.....click......ow....something is happening.....
....D.....I clicked twice.
----------------------------------------------------------------------
bee · 2008-01-15 16:09
That's some of the risk of using Ajax. No, I meant we could "steal"
Morfik's idea to implement our own web widget. I didn't mean that we
should use Morfik.
----------------------------------------------------------------------
bee · 2008-06-17 07:40
Finally, there's somebody that start doing an action on this. Now
there's an open source project name ExtPascal. As the name implies,
it's trying to make a framework for web programming utilizing pascal
language and extjs for the UI presentation.
Author of project (wanderlan) seems to have a similar idea as mine
that I described above. Besides providing a pascal wrapper for extjs,
extpascal also offers a unit for FastCGI application. It doesn't make
its own web server as most people much prefer to use stable and proven
available web servers i.e. Apache, Lighttpd, etc instead of using
custom web server. However, extpascal doesn't prevent us to use our
custom web server as long as it supports CGI or FastCGI protocol. The
interesting part of the FCGI unit is it also works on standard CGI
hosting by using so-called CGI gateway trick.
So far, the project is going well and being actively developed. If
other people would like to join in this project and help contributing
features i.e. pascal to js compiler, gui designer, or even build a web
widget on top of it, is highly appreciated.
-Bee-
----------------------------------------------------------------------
Paul Ishenin · 2008-06-18 01:07
Nice. I thought about extjs as one of possible widgetset but cannot
imagine how to do that
----------------------------------------------------------------------
bee · 2008-06-18 04:46
I'm playing around with extpascal for the last few weeks, helping the
project a bit by reporting bugs and suggesting ideas. The nice thing
with extpascal and its FCGI unit is, the programming paradigm is like
we're developing a desktop app using Lazarus or Delphi. Well, not in
truly exact way, but not that different as we're using PHP or powtils.
Be carefull with the license, though. ExtJS is like Qt, they ask for
money if you make a commercial app using their tool. Nothing to be
worried if you make an open source freeware project.
----------------------------------------------------------------------
bee · 2009-02-14 09:16
Just to spread a good news.
ExtPascal project have been nicely going and got more interest and
attention from other pascal developers. Some of the contributors had
done an .dfm/.lfm file converter into ExtJS window and controls. You
may see the demo here: htttp://195.216.196.161:6464/
They all there are converted from plain Delphi application. Though
they're not yet all completed, they do show a very nice progress and
great possibility in the future.
I hope this good news would get more pascal developers interest to be
involved in this promising project. It's not impossible someday that
we would have a true web widgetset support in Lazarus.
This project is more than welcome to new users and contributors.
----------------------------------------------------------------------
LazaruX · 2009-02-17 11:57
Hey, what a coincidence, I was just thinking about opening a
discussion like this,...probably somebody read into my mind and was
faster...
I will try to use PSP and see...
----------------------------------------------------------------------
bee · 2009-02-20 07:13
News update... the .dfm/.lfm converter demo is moved to
http://reidspace.co.uk:6464/
> I will try to use PSP and see
What PSP do you mean? Powtils? If so, Powtils is an CGI API for
pascal. It doesn't offer something like web widget. It's good for
classic style web programming, I mean you still handle all HTML/JS/CSS
by yourself.
What I'm talking about here is ExtPascal which offer something more
advanced. It works using FCGI mechanism which somehow has better
performance compare to plain CGI. It also wraps an advanced JS
framework (ExtJS) which frees you from HTML/JS/CSS since it's handled
by the JS framework.
----------------------------------------------------------------------
Arminius · 2009-04-26 14:40
Yeah that would be great! PHP in pascal
----------------------------------------------------------------------
bee · 2009-05-05 06:20
> Yeah that would be great! PHP in pascal
No, it's never intended to create PHP code from pascal. We want to
create web application using pascal.
Just to let people know... ExtPascal project has another new tool
created by the community. Now we could create window-based web
application using ExtJS controls utilizing ExtPascal from within
Lazarus IDE. The work is still in alpha stage, there are still lots of
things need to be done first before it would be really usable.
Anyone who want to join this project is more than welcomed.
----------------------------------------------------------------------
Lord_ZealoN · 2009-05-28 22:20
Sorry for not post my last post here, but I thought this post was
abandoned.
If I do a commercial app using extPascal, I need to pay, because I'm
using extJS for a commercial application too, is this correct?
Cheers.
----------------------------------------------------------------------
Marc_G · 2009-12-29 21:04
There is a new developement on the way (and it supports Linux and
FreePascal ).
http://www.raudus.com/
It's similar (also binded to ExtJS) but different than ExtPascal. I
think this framework makes modifications to ExtJS library, and this
makes it better integrated to Delphi IDE's and robust. But at the
moment only applies to a few controls (more are coming).
Worthwhile to take a glance at their demo video.
http://www.raudus.com/custom/demos/01-sum/01-sum.html
Looks very promising.
----------------------------------------------------------------------
bee · 2010-01-08 05:41
Quote from: Marc_G on December 29, 2009, 10:04:35
pmhttp://www.raudus.com/
I'm not interested since it's not open source. It seems it will go
commercial by version 1.0, I believe. Nothing wrong with commercial as
long as it open the source code. So, I stick with ExtPascal.
----------------------------------------------------------------------
Marc_G · 2010-01-08 12:05
Quote from: Lord_ZealoN on May 29, 2009, 12:20:17 amSorry for not post
my last post here, but I thought this post was abandoned.
If I do a commercial app using extPascal, I need to pay, because I'm
using extJS for a commercial application too, is this correct?
Cheers.
Yes, it seems you have to pay a commercial license for ExtJS.
----------------------------------------------------------------------
theo · 2010-01-08 13:46
Quote from: Marc_G on January 08, 2010, 01:05:56 pmYes, it seems you
have to pay a commercial license for ExtJS.
That's why I changed to YUI for this kind of stuff. It has a BSD
license.
YUI2 is not as easy to use as ExtJS but YUI3 is coming (still not many
widgets atm.)
http://developer.yahoo.com/yui/
----------------------------------------------------------------------
bee · 2010-01-10 03:19
IMO, Qooxdoo (MPL license) is the best alternative for ExtJS. Check it
out at http://qooxdoo.org
----------------------------------------------------------------------
Phil · 2010-01-10 03:38
Quote from: bee on January 10, 2010, 04:19:35 amIMO, Qooxdoo (MPL
license) is the best alternative for ExtJS. Check it out at
http://qooxdoo.org
Anything happening there on the qxPascal front?
The big advantage now of Ext JS is that it has ExtPascal.
Have you seen what Farshad has done with Delphi and ExtPascal/Ext JS?
http://prime.fmsoft.net/out/dbdemo.dll
Thanks.
-Phil
----------------------------------------------------------------------
bee · 2010-01-10 15:25
Quote from: Phil on January 10, 2010, 04:38:33 amAnything happening
there on the qxPascal front?
Nothing yet. I'm still studying qx API and qxbuild. I work alone on
this project. There are some problems i.e. qx all-in-one JS file is
too big (about 1.3 MB, more than twice of ext-all.js), and some of my
lack-of-knowledge with JS and qooxdoo. Obviously, I have to learn to
use qx natively before I could write a proper wrapper for it. Other
than that, I'm also being busy with something else (that is more
important) until the next few months.
Quote from: Phil on January 10, 2010, 04:38:33 amThe big advantage now
of Ext JS is that it has ExtPascal.
Of course. I'm also working on a new application using ExtPascal. I
plan to open the source code and contribute it to ExtPascal once it's
done.
Quote from: Phil on January 10, 2010, 04:38:33 amHave you seen what
Farshad has done with Delphi and ExtPascal/Ext JS?
http://prime.fmsoft.net/out/dbdemo.dll
This is great! Why didn't I read about it in ExtPascal list? We should
publish this as demo for ExtPascal.