From 56b4436587f7e85c7ec1a8edb44b1d37506fbf38 Mon Sep 17 00:00:00 2001 From: xue <> Date: Sun, 5 Feb 2006 16:24:28 +0000 Subject: Added Upgrading tutorial page. --- .../protected/pages/Controls/NewControl.page | 15 +++++++ .../protected/pages/Fundamentals/HelloWorld.page | 8 +++- .../pages/GettingStarted/Introduction.page | 12 ++++- .../protected/pages/GettingStarted/Upgrading.page | 52 ++++++++++++++++++++++ 4 files changed, 85 insertions(+), 2 deletions(-) create mode 100644 demos/quickstart/protected/pages/Controls/NewControl.page create mode 100644 demos/quickstart/protected/pages/GettingStarted/Upgrading.page (limited to 'demos/quickstart/protected/pages') diff --git a/demos/quickstart/protected/pages/Controls/NewControl.page b/demos/quickstart/protected/pages/Controls/NewControl.page new file mode 100644 index 00000000..f4ded5a4 --- /dev/null +++ b/demos/quickstart/protected/pages/Controls/NewControl.page @@ -0,0 +1,15 @@ + + +

Writing New Controls

+ +

Composition of Existing Controls

+ +

+ +

Extending Existing Controls

+ +

Extending TControl

+ +

Extending TWebControl

+ +
\ No newline at end of file diff --git a/demos/quickstart/protected/pages/Fundamentals/HelloWorld.page b/demos/quickstart/protected/pages/Fundamentals/HelloWorld.page index d6d497c1..572c6766 100644 --- a/demos/quickstart/protected/pages/Fundamentals/HelloWorld.page +++ b/demos/quickstart/protected/pages/Fundamentals/HelloWorld.page @@ -18,8 +18,14 @@ public function buttonClicked($sender,$param) $sender->Text = "Hello World"; } +

+

+The following line in the page template attaches the buttonClicked() method to the OnClick event of the button, +

+ +<com:TButton Text="Click Me" OnClick="buttonClicked" /> + -

\ No newline at end of file diff --git a/demos/quickstart/protected/pages/GettingStarted/Introduction.page b/demos/quickstart/protected/pages/GettingStarted/Introduction.page index dc7a0497..3f3ea168 100644 --- a/demos/quickstart/protected/pages/GettingStarted/Introduction.page +++ b/demos/quickstart/protected/pages/GettingStarted/Introduction.page @@ -1,6 +1,16 @@

Welcome to the PRADO QuickStart Tutorial

-This QuickStart tutorial is meant to get you quickly started to build your own Web applications based on PRADO. +This QuickStart tutorial is provided to help you quickly start building your own Web applications based on PRADO version 3.0.

+

+You may refer to the following resources if you find this tutorial does not fulfill all your needs. +

+ +
\ No newline at end of file diff --git a/demos/quickstart/protected/pages/GettingStarted/Upgrading.page b/demos/quickstart/protected/pages/GettingStarted/Upgrading.page new file mode 100644 index 00000000..cb89cb10 --- /dev/null +++ b/demos/quickstart/protected/pages/GettingStarted/Upgrading.page @@ -0,0 +1,52 @@ + + +

Upgrading from Earlier Versions

+ +

Upgrading from v2.x and v1.x

+

+PRADO v3.0 is NOT backward compatible with earlier versions of PRADO. +

+

+A good news is, properties and events of most controls remain intact, and the syntax of control templates remains largely unchanged. Therefore, developers' knowledge of earlier versions of PRADO are still applicable in v3.0. +

+

+We summarize in the following the most significant changes in v3.0 to help developers upgrade their v2.x and v1.x PRADO applications more easily. +

+ +

Component Definition

+

+Version 3.0 has completely discarded the need of component specification files. It relies more on conventions for defining component properties and events. In particular, a property is defined by the existence of a getter method and/or a setter method, while an event is defined by the existence of an on-method. Property and event names in v3.0 are both case-insensitive. +

+ +

Application Controller

+

+Application controller now implements a modular architecture. Modules can be plugged in and configured in application specifications. Each module assumes a particular functionality, and they are coordinated together by the application lifecycle. The concept of v2.x modules is replaced in v3.0 by page directories. As a result, the format of v3.0 application specification is also different from earlier versions. +

+ +

Pages

+

+Pages in v3.0 are organized in directories which may be compared to the module concept in v2.x. Pages are requested using the path to them. For example, a URL index.php?page=Controls.Samples.Sample1 would request for a page named Sample1 stored under the [BasePath]/Controls/Samples directory, where [BasePath] refers to the root page path. The file name of a page template must be ended with .page, mainly to differentiate from templates of non-page controls whose file names must be ended with .tpl. +

+ +

Control Relationship

+

+Version 3.0 redefines the relationships between controls. In particular, the parent-child relationship now refers to the enclosure relationship between controls' presentation. And a new naming-container relationship is introduced to help better manage control IDs. For more details, see the controls section. +

+ +

Template Syntax

+

+The syntax of control templates in v3.0 remains similar to those in earlier versions, with many enhancements. A major change is about the databinding expression. In v3.0, this is done by the following, +

+ +<com:MyComponent PropertyName=<%# PHP expression %> .../> + +

+Expression and statement tags are also changed similarly. For more details, see the template definition section. +

+ +

Theme Syntax

+

+Themes in v3.0 are defined like control templates with a few restrictions. +

+ +
\ No newline at end of file -- cgit v1.2.3