Re: [lazarus] Re: PDAs, Smartphones and form design

2006-05-04 Thread Christian U.
> Also, thinking some more I think that I can design various GUIs for
> the same app just using some IFDEFs on the main program unit.
>
> About form resizing. To make it easely integratable maybe we could
> have a function (or method of TForm or TApplication) that if called
> will adjust the components of the form to fit the screen so we don't
> impose this. One can call this function on the OnCreate event.

I think, only extremly small tools can have the same gui for pocket devices
and pc
in bigger apps the functionality and the gui must be rewritten for pocket
devices, so a seperate project is
the "way to go" in most cases i think.

Christian Ulrich

_
 To unsubscribe: mail [EMAIL PROTECTED] with
"unsubscribe" as the Subject
   archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Re: PDAs, Smartphones and form design

2006-05-03 Thread Felipe Monteiro de Carvalho

On 4/28/06, roozbeh gholizadeh <[EMAIL PROTECTED]> wrote:

I dont think this solution is a good one.
As we are talking to ease things not to make them harder,or create a new
interface,
we can easily achieve this becouse interfaces are each designed for
specific os,so we can say in wince this button with that x,y being drawned
to another x,y.


But the problem is: How can this x,y conversion be done? And will it
always result on something valid and easy to use?

Maybe we can have both options. Auto-ajust the GUI and alse be able to
draw many GUIs.

Take for example Skype for Windows CE:
http://www.windowsfordevices.com/news/NS4128389613.html

You can see that it's GUI is very different from the Desktop version:
http://www.skype.com/download/screenshots.html

Another example. Opera on Windows CE: http://www.theunwired.net/?itemid=2588

Opera on Desktop: http://www.opera.com/docs/screenshots/800/01/

They are extremely different and on both cases.

Also, thinking some more I think that I can design various GUIs for
the same app just using some IFDEFs on the main program unit.

About form resizing. To make it easely integratable maybe we could
have a function (or method of TForm or TApplication) that if called
will adjust the components of the form to fit the screen so we don't
impose this. One can call this function on the OnCreate event.

--
Felipe Monteiro de Carvalho

_
To unsubscribe: mail [EMAIL PROTECTED] with
   "unsubscribe" as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


Re: [lazarus] Re: PDAs, Smartphones and form design

2006-04-28 Thread darekM

roozbeh gholizadeh napisał(a):

On Fri, 28 Apr 2006 09:41:54 +0330, darekM <[EMAIL PROTECTED]> wrote:


Felipe Monteiro de Carvalho napisał(a):

Hello,

I´ve being talking to roozbeh about adding Smartphone and PDA 
support for Lazarus. Bellow I will try to summarize some problems 
and give a possible solution. Please contribute with your own 
solutions or other problems I haven´t thought of.



Just my solution
I start write GUI with TurboPower library for DOS (under TurboPascal 3)
any control on Form is added by function like this
AddStringField(label, posLabelX, posLabelY, mask, posFieldX,posFieldY 
... ect.
when I port my application from DOS to windows I used the same code, 
but I write my interface between TurboPower API and VCL.


For example, I recalculate pos of Label and Field : in Dos pos was in 
chars, in VCL and LCL is the same, its simple multiple by height of 
line. Now I hav'nt problem with different shape of controls, 
different size of fonts under different OS.
Now I don't use visual part of Delphi (nor Lazarus), all controls are 
added by command (functions), and then I can everything change in 
runtime.



I dont think this solution is a good one.
As we are talking to ease things not to make them harder,or create a 
new interface,
we can easily achieve this becouse interfaces are each designed for 
specific os,so we can say in wince this button with that x,y being 
drawned to another x,y.
I'm not force my solution, its only example, and my experience with 
porting application to different OS, code pages, fonts,  size of screen  
etc. I talk about idea and possible solution.




The problem is we have wince interface,which it also varies a lot,so 
if your solution is choosed,it means to have seperate lcl interfaces 
for pocketpc,smartphone and so on.
I have one program (one source) which work with Delphi, Turbo Pascal and 
Lazarus. And I'm not have separate LCL. It's only one more abstract 
layer above LCL and VCL


Darek

_
To unsubscribe: mail [EMAIL PROTECTED] with
   "unsubscribe" as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


[lazarus] Re: PDAs, Smartphones and form design

2006-04-28 Thread roozbeh gholizadeh


I think wince disscussion are very important for lazarus,as it can become  
the only development tool in this field which is a real rad tool.
Currently the only alternative is evc3 for 2002 oses,evc4 and visual  
studio 4 for higher versions.Or bds 2005/bds 2006 for .netcf
If not choosing .net(.net compact),in win32 or native code,you have lots  
of difficulties to program any good ui.


On Fri, 28 Apr 2006 03:04:12 +0330, Felipe Monteiro de Carvalho  
<[EMAIL PROTECTED]> wrote:


Problem 1 - We want the same application to run on everything. Like  
Skype and Opera run on desktops, run on PDAs and run on telephones. And  
in this case we will want to reuse the non-visual code.



My solution: Have a way to create various versions for the same form. We  
could have the Desktop version, the PDA version and the Phone version.  
And then I can choose which one to link to my executable.


Another option is to create a new project for each new GUI set. If  
project groups are implemented then this becomes a good solution.



Problem 2 - The Screen size varies greatly with manufacturer.

Solution: Ummm  don�t know  maybe create various versions of the  
form again???


Another possible solution is to have positions on the form as  
percentages % instead of hard numbers.




Both solutions are good.
With visual studio,for supporting different resolutions,diffrent resources  
are used within the program,and being choosed depending on what os or  
resolution it has.
I think we can have some kind of mirror forms,which is designed for  
different resolution or user interfaces(maybe even created by lazarus)and  
simply assign events to the original form.Although it can also be achieved  
by user code for now.


Percentage wont work,becouse in 240x320 you can barely fit anything,so how  
you going to fit that to 176x220 of smartphones!
I think smartphones have to always have different desings,but somehow we  
can do something to not require programmer to write event codes twice.


Problem 3 - Some things only exist on Phones, like a 2 options menu to  
be clicked and various communication things.


Solution: Create a Telephone Tab with components that only exist on  
telephones.



Yes we really need that.


Problem 4 - Various things don�t exist on a device without touchscreen  
or have no use on them. Phones and some PDAs don�t have pointing devices  
and this makes many widgets created with a mouse in mind completely  
useless. Some examples are: Huge main Menus, Notebooks, spin edit, etc.


Solution: Just don�t support those widgets for phones.


Problem 5 - The whole interface on a device without touchscreen must be  
navigatable with only the limited keys on a phone. And worse. The  
available keys varie a lot with the manufacturer!
If you use those uis stated in windows user interface desing it wont be a  
problem.


For more infos:
Developing Orientation and dpi Aware Applications:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnppcgen/html/developing_orientation_and_resolution_aware_apps.asp
Developing Screen Orientation-Aware Applications:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnppcgen/html/screen_orientation_awareness.asp
Introduction to User Interface Controls in a Windows Mobile-based  
Smartphone:

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnppcgen/html/installation_with_dpi-specific_resources.asp
--
Using Opera's revolutionary e-mail client: http://www.opera.com/mail/

_
To unsubscribe: mail [EMAIL PROTECTED] with
   "unsubscribe" as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives


[lazarus] Re: PDAs, Smartphones and form design

2006-04-28 Thread roozbeh gholizadeh

On Fri, 28 Apr 2006 09:41:54 +0330, darekM <[EMAIL PROTECTED]> wrote:


Felipe Monteiro de Carvalho napisał(a):

Hello,

I´ve being talking to roozbeh about adding Smartphone and PDA support  
for Lazarus. Bellow I will try to summarize some problems and give a  
possible solution. Please contribute with your own solutions or other  
problems I haven´t thought of.



Just my solution
I start write GUI with TurboPower library for DOS (under TurboPascal 3)
any control on Form is added by function like this
AddStringField(label, posLabelX, posLabelY, mask, posFieldX,posFieldY  
... ect.
when I port my application from DOS to windows I used the same code, but  
I write my interface between TurboPower API and VCL.


For example, I recalculate pos of Label and Field : in Dos pos was in  
chars, in VCL and LCL is the same, its simple multiple by height of  
line. Now I hav'nt problem with different shape of controls, different  
size of fonts under different OS.
Now I don't use visual part of Delphi (nor Lazarus), all controls are  
added by command (functions), and then I can everything change in  
runtime.



I dont think this solution is a good one.
As we are talking to ease things not to make them harder,or create a new  
interface,
we can easily achieve this becouse interfaces are each designed for  
specific os,so we can say in wince this button with that x,y being drawned  
to another x,y.


The problem is we have wince interface,which it also varies a lot,so if  
your solution is choosed,it means to have seperate lcl interfaces for  
pocketpc,smartphone and so on.



--
Using Opera's revolutionary e-mail client: http://www.opera.com/mail/

_
To unsubscribe: mail [EMAIL PROTECTED] with
   "unsubscribe" as the Subject
  archives at http://www.lazarus.freepascal.org/mailarchives