Production Application Based On Pivot

classic Classic list List threaded Threaded
22 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Production Application Based On Pivot

Scott Lanham
Hi All,

This is a small summary of the application I have released into the wild.

I work for a company called "Calvino Coffee" in Australia that both owns and
franchises small coffee outlets that mostly reside in high volume service
stations around Australia. I am the sole programmer and have written all the
application software they use to run the stores from the Point Of Sale system
to the middle tier to the back end SQL server.

The Pivot based app I have developed gives the franchisees the ability to
update their store data and see their store performance. It is a "live"
program in that it constantly checks the server for data changes and
automatically refreshes the screen to reflect those changes. It does not store
any data locally.

All data aware components hook into a custom Business Object framework I
developed so that I could easily change data sources. The data sources can be
anything. The client side doesn't need to know any SQL and no SQL crosses the
wire. Standard Pivot components get their data from either a custom List or
Dictionary with both of these talking to the underlying business object
framework. Other than that everything is kept as simple (vanilla) as possible.

Working with Pivot has been a pleasure. The support has been fantastic.

If anyone has any questions I am more than happy to answer them as long as I
can do so without giving away company data.

Screen shots attached :-)

Cheers,

Scott.

calvinoFranchiseeApp_20100506_3.png (67K) Download Attachment
calvinoFranchiseeApp_20100506_4.png (54K) Download Attachment
calvinoFranchiseeApp_20100506_1.png (77K) Download Attachment
calvinoFranchiseeApp_20100506_2.png (58K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Production Application Based On Pivot

Noel Grandin-2

Very nice!

-- Noel

Scott Lanham wrote:

> Hi All,
>
> This is a small summary of the application I have released into the wild.
>
> I work for a company called "Calvino Coffee" in Australia that both owns and
> franchises small coffee outlets that mostly reside in high volume service
> stations around Australia. I am the sole programmer and have written all the
> application software they use to run the stores from the Point Of Sale system
> to the middle tier to the back end SQL server.
>
> The Pivot based app I have developed gives the franchisees the ability to
> update their store data and see their store performance. It is a "live"
> program in that it constantly checks the server for data changes and
> automatically refreshes the screen to reflect those changes. It does not store
> any data locally.
>
> All data aware components hook into a custom Business Object framework I
> developed so that I could easily change data sources. The data sources can be
> anything. The client side doesn't need to know any SQL and no SQL crosses the
> wire. Standard Pivot components get their data from either a custom List or
> Dictionary with both of these talking to the underlying business object
> framework. Other than that everything is kept as simple (vanilla) as possible.
>
> Working with Pivot has been a pleasure. The support has been fantastic.
>
> If anyone has any questions I am more than happy to answer them as long as I
> can do so without giving away company data.
>
> Screen shots attached :-)
>
> Cheers,
>
> Scott.
>  

Reply | Threaded
Open this post in threaded view
|

Re: Production Application Based On Pivot

Christophe Charles
Very good job !
I'm fan ;-)
Chris

2010/5/6 Noel Grandin <[hidden email]>

Very nice!

-- Noel

Scott Lanham wrote:
> Hi All,
>
> This is a small summary of the application I have released into the wild.
>
> I work for a company called "Calvino Coffee" in Australia that both owns and
> franchises small coffee outlets that mostly reside in high volume service
> stations around Australia. I am the sole programmer and have written all the
> application software they use to run the stores from the Point Of Sale system
> to the middle tier to the back end SQL server.
>
> The Pivot based app I have developed gives the franchisees the ability to
> update their store data and see their store performance. It is a "live"
> program in that it constantly checks the server for data changes and
> automatically refreshes the screen to reflect those changes. It does not store
> any data locally.
>
> All data aware components hook into a custom Business Object framework I
> developed so that I could easily change data sources. The data sources can be
> anything. The client side doesn't need to know any SQL and no SQL crosses the
> wire. Standard Pivot components get their data from either a custom List or
> Dictionary with both of these talking to the underlying business object
> framework. Other than that everything is kept as simple (vanilla) as possible.
>
> Working with Pivot has been a pleasure. The support has been fantastic.
>
> If anyone has any questions I am more than happy to answer them as long as I
> can do so without giving away company data.
>
> Screen shots attached :-)
>
> Cheers,
>
> Scott.
>


Reply | Threaded
Open this post in threaded view
|

RE: Production Application Based On Pivot

Jérôme Serré
In reply to this post by Scott Lanham
Good Job, very pro.

-----Message d'origine-----
De : Scott Lanham [mailto:[hidden email]]
Envoyé : jeudi 6 mai 2010 04:10
À : [hidden email]
Objet : Production Application Based On Pivot

Hi All,

This is a small summary of the application I have released into the wild.

I work for a company called "Calvino Coffee" in Australia that both owns and
franchises small coffee outlets that mostly reside in high volume service
stations around Australia. I am the sole programmer and have written all the
application software they use to run the stores from the Point Of Sale
system to the middle tier to the back end SQL server.

The Pivot based app I have developed gives the franchisees the ability to
update their store data and see their store performance. It is a "live"
program in that it constantly checks the server for data changes and
automatically refreshes the screen to reflect those changes. It does not
store any data locally.

All data aware components hook into a custom Business Object framework I
developed so that I could easily change data sources. The data sources can
be anything. The client side doesn't need to know any SQL and no SQL crosses
the wire. Standard Pivot components get their data from either a custom List
or Dictionary with both of these talking to the underlying business object
framework. Other than that everything is kept as simple (vanilla) as
possible.

Working with Pivot has been a pleasure. The support has been fantastic.

If anyone has any questions I am more than happy to answer them as long as I
can do so without giving away company data.

Screen shots attached :-)

Cheers,

Scott.

Reply | Threaded
Open this post in threaded view
|

Re: Production Application Based On Pivot

Luiz_Gustavo
In reply to this post by Scott Lanham
Hi Scott!

First of all, very good job!
Now I have some questions. =)
I tried to used Pivot to build an app for a client, but the main fear among the guys in my company is about performance, so:

1) What about performance in your app?
2) What the requirements of client machines and lan?
3) How many users?

I'll try to use Pivot in some of our tools, that we use inside the company, before use it in client app.

Cheers,



2010/5/5 Scott Lanham <[hidden email]>
Hi All,

This is a small summary of the application I have released into the wild.

I work for a company called "Calvino Coffee" in Australia that both owns and
franchises small coffee outlets that mostly reside in high volume service
stations around Australia. I am the sole programmer and have written all the
application software they use to run the stores from the Point Of Sale system
to the middle tier to the back end SQL server.

The Pivot based app I have developed gives the franchisees the ability to
update their store data and see their store performance. It is a "live"
program in that it constantly checks the server for data changes and
automatically refreshes the screen to reflect those changes. It does not store
any data locally.

All data aware components hook into a custom Business Object framework I
developed so that I could easily change data sources. The data sources can be
anything. The client side doesn't need to know any SQL and no SQL crosses the
wire. Standard Pivot components get their data from either a custom List or
Dictionary with both of these talking to the underlying business object
framework. Other than that everything is kept as simple (vanilla) as possible.

Working with Pivot has been a pleasure. The support has been fantastic.

If anyone has any questions I am more than happy to answer them as long as I
can do so without giving away company data.

Screen shots attached :-)

Cheers,

Scott.



--
Att,

Luiz Gustavo S. de Souza
Analista de Sistemas - Desenvolvedor Java

http://luizgustavoss.wordpress.com
http://luizgustavoss.blogspot.com
http://twitter.com/lugustso
Reply | Threaded
Open this post in threaded view
|

Re: Production Application Based On Pivot

Scott Lanham
On Thu, 6 May 2010 08:13:04 pm Luiz Gustavo wrote:
> Hi Scott!
>
> First of all, very good job!

Thank you :-)

> Now I have some questions. =)
> I tried to used Pivot to build an app for a client, but the main fear among
> the guys in my company is about performance, so:
>
> 1) What about performance in your app?

The limiting factor with performance is the time it takes to fetch data from
the server. The Pivot components are very responsive except for very large
data sets in TableView ( but throwing huge globs of data at it is a data
control issue not a UI issue ). By making sure I didn't load data using the UI
thread the app is nice to use even when under allot of stress.

> 2) What the requirements of client machines and lan?

I haven't set any requirements for the machines and the network speed can be
quite slow and the application is still useable as only the barest minimum of
data is pulled from the server.

> 3) How many users?

At this stage there will only be about 15 installations. The app does hook
into the same server the stores use which sees about 50000 transactions per
day. I wouldn't hesitate to use Pivot for the Point Of Sale system as I think
it would take the load perfectly well. Unfortunately I can't justify a re-
write. The present system (that I wrote) uses C# and I much prefer the Java
solution.

Reply | Threaded
Open this post in threaded view
|

Re: Production Application Based On Pivot

Noel Grandin-2
Scott Lanham wrote:
> data sets in TableView ( but throwing huge globs of data at it is a data
> control issue not a UI issue ). By making sure I didn't load data using the UI
> thread the app is nice to use even when under allot of stress.
>
>  
Hmmm, The Eclipse JFace/SWT project has a nice solution here, one that
may be worth copying - their table has an SWT.Virtual mode where it
treats the row-set-data like a virtual memory resource, only loading in
the bits it needs when they are needed for display.

It is different from the normal Table mode in that it has some
limitations that come from not being able to iterate over the whole
row-set, but the bonus is that is can cope with very large amounts of rows.

-- Noel Grandin
Reply | Threaded
Open this post in threaded view
|

Re: Production Application Based On Pivot

Greg Brown
Administrator
In reply to this post by Luiz_Gustavo
Luiz,
Would you be willing to share some of your co-workers specific concerns?
Greg

On May 6, 2010, at 6:13 AM, Luiz Gustavo wrote:

Hi Scott!

First of all, very good job!
Now I have some questions. =)
I tried to used Pivot to build an app for a client, but the main fear among the guys in my company is about performance, so:

1) What about performance in your app?
2) What the requirements of client machines and lan?
3) How many users?

I'll try to use Pivot in some of our tools, that we use inside the company, before use it in client app.

Cheers,



2010/5/5 Scott Lanham <[hidden email]>
Hi All,

This is a small summary of the application I have released into the wild.

I work for a company called "Calvino Coffee" in Australia that both owns and
franchises small coffee outlets that mostly reside in high volume service
stations around Australia. I am the sole programmer and have written all the
application software they use to run the stores from the Point Of Sale system
to the middle tier to the back end SQL server.

The Pivot based app I have developed gives the franchisees the ability to
update their store data and see their store performance. It is a "live"
program in that it constantly checks the server for data changes and
automatically refreshes the screen to reflect those changes. It does not store
any data locally.

All data aware components hook into a custom Business Object framework I
developed so that I could easily change data sources. The data sources can be
anything. The client side doesn't need to know any SQL and no SQL crosses the
wire. Standard Pivot components get their data from either a custom List or
Dictionary with both of these talking to the underlying business object
framework. Other than that everything is kept as simple (vanilla) as possible.

Working with Pivot has been a pleasure. The support has been fantastic.

If anyone has any questions I am more than happy to answer them as long as I
can do so without giving away company data.

Screen shots attached :-)

Cheers,

Scott.



--
Att,

Luiz Gustavo S. de Souza
Analista de Sistemas - Desenvolvedor Java

http://luizgustavoss.wordpress.com
http://luizgustavoss.blogspot.com
http://twitter.com/lugustso

Reply | Threaded
Open this post in threaded view
|

Re: Production Application Based On Pivot

Greg Brown
Administrator
In reply to this post by Noel Grandin-2
>> data sets in TableView ( but throwing huge globs of data at it is a data
>> control issue not a UI issue ). By making sure I didn't load data using the UI
>> thread the app is nice to use even when under allot of stress.
>>
>>
> The Eclipse JFace/SWT project has a nice solution here, one that
> may be worth copying - their table has an SWT.Virtual mode where it
> treats the row-set-data like a virtual memory resource, only loading in
> the bits it needs when they are needed for display.

You could also write a table model (i.e. List implementation) that behaves this way (fetches pages only as needed).

However, overall TableView performance should be pretty good even with large data sets. See this demo app:

  http://svn.apache.org/repos/asf/pivot/trunk/demos/src/org/apache/pivot/demos/million/

You can get sample data files here:

  http://svn.apache.org/repos/asf/pivot/site/trunk/www/assets/

Copy them to a local directory and pass the base path to the app; e.g.:

  --basePath=/Users/greg/assets

On my machine, it loads a million rows in less than 10 seconds, and scrolls smoothly. Make sure you allocate enough heap space, though - I needed 1.5GB to load the largest data file:

  -Xms128m -Xmx1536m

Reply | Threaded
Open this post in threaded view
|

Re: Production Application Based On Pivot

Greg Brown
Administrator
In reply to this post by Scott Lanham
I will echo other similar sentiments already posted - nice work.  :-)  Thank you for sharing the results of your efforts.

On May 5, 2010, at 10:09 PM, Scott Lanham wrote:

> Hi All,
>
> This is a small summary of the application I have released into the wild.
>
> I work for a company called "Calvino Coffee" in Australia that both owns and
> franchises small coffee outlets that mostly reside in high volume service
> stations around Australia. I am the sole programmer and have written all the
> application software they use to run the stores from the Point Of Sale system
> to the middle tier to the back end SQL server.
>
> The Pivot based app I have developed gives the franchisees the ability to
> update their store data and see their store performance. It is a "live"
> program in that it constantly checks the server for data changes and
> automatically refreshes the screen to reflect those changes. It does not store
> any data locally.
>
> All data aware components hook into a custom Business Object framework I
> developed so that I could easily change data sources. The data sources can be
> anything. The client side doesn't need to know any SQL and no SQL crosses the
> wire. Standard Pivot components get their data from either a custom List or
> Dictionary with both of these talking to the underlying business object
> framework. Other than that everything is kept as simple (vanilla) as possible.
>
> Working with Pivot has been a pleasure. The support has been fantastic.
>
> If anyone has any questions I am more than happy to answer them as long as I
> can do so without giving away company data.
>
> Screen shots attached :-)
>
> Cheers,
>
> Scott.
> <calvinoFranchiseeApp_20100506_3.png><calvinoFranchiseeApp_20100506_4.png><calvinoFranchiseeApp_20100506_1.png><calvinoFranchiseeApp_20100506_2.png>

Reply | Threaded
Open this post in threaded view
|

Re: Production Application Based On Pivot

Noel Grandin-2
In reply to this post by Greg Brown

Yeah, it's more the improved memory usage that SWT.Virtual provides,
mostly by doing more work so that it's memory usage is roughly
  O(no rows displayed)
instead of
  O (no rows in model)

We could do that, but it has both a code complexity cost, and a feature
cost - some features become impossible to support because they would
require scanning through the entire model.

-- Noel


Greg Brown wrote:

>>> data sets in TableView ( but throwing huge globs of data at it is a data
>>> control issue not a UI issue ). By making sure I didn't load data using the UI
>>> thread the app is nice to use even when under allot of stress.
>>>
>>>
>>>      
>> The Eclipse JFace/SWT project has a nice solution here, one that
>> may be worth copying - their table has an SWT.Virtual mode where it
>> treats the row-set-data like a virtual memory resource, only loading in
>> the bits it needs when they are needed for display.
>>    
> You could also write a table model (i.e. List implementation) that behaves this way (fetches pages only as needed).
>
> However, overall TableView performance should be pretty good even with large data sets. See this demo app:
>
>   http://svn.apache.org/repos/asf/pivot/trunk/demos/src/org/apache/pivot/demos/million/
>
> You can get sample data files here:
>
>   http://svn.apache.org/repos/asf/pivot/site/trunk/www/assets/
>
> Copy them to a local directory and pass the base path to the app; e.g.:
>
>   --basePath=/Users/greg/assets
>
> On my machine, it loads a million rows in less than 10 seconds, and scrolls smoothly. Make sure you allocate enough heap space, though - I needed 1.5GB to load the largest data file:
>
>   -Xms128m -Xmx1536m
>
>  

Reply | Threaded
Open this post in threaded view
|

Re: Production Application Based On Pivot

Greg Brown
Administrator
Ah, OK.

On May 6, 2010, at 8:21 AM, Noel Grandin wrote:

>
> Yeah, it's more the improved memory usage that SWT.Virtual provides,
> mostly by doing more work so that it's memory usage is roughly
>  O(no rows displayed)
> instead of
>  O (no rows in model)
>
> We could do that, but it has both a code complexity cost, and a feature
> cost - some features become impossible to support because they would
> require scanning through the entire model.
>
> -- Noel
>
>
> Greg Brown wrote:
>>>> data sets in TableView ( but throwing huge globs of data at it is a data
>>>> control issue not a UI issue ). By making sure I didn't load data using the UI
>>>> thread the app is nice to use even when under allot of stress.
>>>>
>>>>
>>>>
>>> The Eclipse JFace/SWT project has a nice solution here, one that
>>> may be worth copying - their table has an SWT.Virtual mode where it
>>> treats the row-set-data like a virtual memory resource, only loading in
>>> the bits it needs when they are needed for display.
>>>
>> You could also write a table model (i.e. List implementation) that behaves this way (fetches pages only as needed).
>>
>> However, overall TableView performance should be pretty good even with large data sets. See this demo app:
>>
>>  http://svn.apache.org/repos/asf/pivot/trunk/demos/src/org/apache/pivot/demos/million/
>>
>> You can get sample data files here:
>>
>>  http://svn.apache.org/repos/asf/pivot/site/trunk/www/assets/
>>
>> Copy them to a local directory and pass the base path to the app; e.g.:
>>
>>  --basePath=/Users/greg/assets
>>
>> On my machine, it loads a million rows in less than 10 seconds, and scrolls smoothly. Make sure you allocate enough heap space, though - I needed 1.5GB to load the largest data file:
>>
>>  -Xms128m -Xmx1536m
>>
>>
>

Reply | Threaded
Open this post in threaded view
|

Re: Production Application Based On Pivot

Luiz_Gustavo
In reply to this post by Greg Brown
Hi Greg,

so... at this moment I'm involved in choosing the technologies for a new application of a client we have. We almost aways use JSF for presentation, but this time I thought about using Pivot, because of its RIA benefits, mainly those involving multi frames in the same windows, and very good event support.
My co-workers tried the examples in the project page, and some of then took some time to open in the browser, and they were afraid about performance issues, since we can't control the client infrastructure (network quality, memory, etc).
Another point it's the fear of using new things in critical projects. No one here knows how to write applications in Pivot yet.
My intention now is to use Pivot for internal projects first, to make people believe it.

Cheers,

Luiz Gustavo



2010/5/6 Greg Brown <[hidden email]>
Luiz,
Would you be willing to share some of your co-workers specific concerns?
Greg

On May 6, 2010, at 6:13 AM, Luiz Gustavo wrote:

Hi Scott!

First of all, very good job!
Now I have some questions. =)
I tried to used Pivot to build an app for a client, but the main fear among the guys in my company is about performance, so:

1) What about performance in your app?
2) What the requirements of client machines and lan?
3) How many users?

I'll try to use Pivot in some of our tools, that we use inside the company, before use it in client app.

Cheers,



2010/5/5 Scott Lanham <[hidden email]>
Hi All,

This is a small summary of the application I have released into the wild.

I work for a company called "Calvino Coffee" in Australia that both owns and
franchises small coffee outlets that mostly reside in high volume service
stations around Australia. I am the sole programmer and have written all the
application software they use to run the stores from the Point Of Sale system
to the middle tier to the back end SQL server.

The Pivot based app I have developed gives the franchisees the ability to
update their store data and see their store performance. It is a "live"
program in that it constantly checks the server for data changes and
automatically refreshes the screen to reflect those changes. It does not store
any data locally.

All data aware components hook into a custom Business Object framework I
developed so that I could easily change data sources. The data sources can be
anything. The client side doesn't need to know any SQL and no SQL crosses the
wire. Standard Pivot components get their data from either a custom List or
Dictionary with both of these talking to the underlying business object
framework. Other than that everything is kept as simple (vanilla) as possible.

Working with Pivot has been a pleasure. The support has been fantastic.

If anyone has any questions I am more than happy to answer them as long as I
can do so without giving away company data.

Screen shots attached :-)

Cheers,

Scott.



--
Att,

Luiz Gustavo S. de Souza
Analista de Sistemas - Desenvolvedor Java

http://luizgustavoss.wordpress.com
http://luizgustavoss.blogspot.com
http://twitter.com/lugustso




--
Att,

Luiz Gustavo S. de Souza
Analista de Sistemas - Desenvolvedor Java

http://luizgustavoss.wordpress.com
http://luizgustavoss.blogspot.com
http://twitter.com/lugustso
Reply | Threaded
Open this post in threaded view
|

Re: Production Application Based On Pivot

Greg Brown
Administrator
Thanks for the background. JVM cold start time has definitely improved, but it still isn't anywhere near instantaneous. Fortunately, warm start time is much faster. Depending on your client's needs, this may or may not be an issue. You might also consider deploying your app via Web Start, or via a local installer.

Let us know if there is anything we can do to help you promote Pivot within your organization.  :-)

G

On May 6, 2010, at 11:57 AM, Luiz Gustavo wrote:

Hi Greg,

so... at this moment I'm involved in choosing the technologies for a new application of a client we have. We almost aways use JSF for presentation, but this time I thought about using Pivot, because of its RIA benefits, mainly those involving multi frames in the same windows, and very good event support.
My co-workers tried the examples in the project page, and some of then took some time to open in the browser, and they were afraid about performance issues, since we can't control the client infrastructure (network quality, memory, etc).
Another point it's the fear of using new things in critical projects. No one here knows how to write applications in Pivot yet.
My intention now is to use Pivot for internal projects first, to make people believe it.

Cheers,

Luiz Gustavo



2010/5/6 Greg Brown <[hidden email]>
Luiz,
Would you be willing to share some of your co-workers specific concerns?
Greg

On May 6, 2010, at 6:13 AM, Luiz Gustavo wrote:

Hi Scott!

First of all, very good job!
Now I have some questions. =)
I tried to used Pivot to build an app for a client, but the main fear among the guys in my company is about performance, so:

1) What about performance in your app?
2) What the requirements of client machines and lan?
3) How many users?

I'll try to use Pivot in some of our tools, that we use inside the company, before use it in client app.

Cheers,



2010/5/5 Scott Lanham <[hidden email]>
Hi All,

This is a small summary of the application I have released into the wild.

I work for a company called "Calvino Coffee" in Australia that both owns and
franchises small coffee outlets that mostly reside in high volume service
stations around Australia. I am the sole programmer and have written all the
application software they use to run the stores from the Point Of Sale system
to the middle tier to the back end SQL server.

The Pivot based app I have developed gives the franchisees the ability to
update their store data and see their store performance. It is a "live"
program in that it constantly checks the server for data changes and
automatically refreshes the screen to reflect those changes. It does not store
any data locally.

All data aware components hook into a custom Business Object framework I
developed so that I could easily change data sources. The data sources can be
anything. The client side doesn't need to know any SQL and no SQL crosses the
wire. Standard Pivot components get their data from either a custom List or
Dictionary with both of these talking to the underlying business object
framework. Other than that everything is kept as simple (vanilla) as possible.

Working with Pivot has been a pleasure. The support has been fantastic.

If anyone has any questions I am more than happy to answer them as long as I
can do so without giving away company data.

Screen shots attached :-)

Cheers,

Scott.



--
Att,

Luiz Gustavo S. de Souza
Analista de Sistemas - Desenvolvedor Java

http://luizgustavoss.wordpress.com
http://luizgustavoss.blogspot.com
http://twitter.com/lugustso




--
Att,

Luiz Gustavo S. de Souza
Analista de Sistemas - Desenvolvedor Java

http://luizgustavoss.wordpress.com
http://luizgustavoss.blogspot.com
http://twitter.com/lugustso

Reply | Threaded
Open this post in threaded view
|

basic questions about common table renderers

Dominique de Vito
In reply to this post by Scott Lanham
Hi,
 
I am fed up of Twitter web interface, then I currently look at Pivot in order to develop my own Twitter RIA client.
 
My first idea was about to include tweets into a table.
 
I wanted to include a PushButton into a cell, and then, I was looking around to know how to render such a button (into a cell) like a button !
 
I expected to discover a renderer into Pivot distribution in order to render common components like PushButton, or Label. AFAIK, there is none.
And I have not discovered a (simple) way to render such a button as a cell's content.
 
I hope not to ask dumb questions here...
Is there already defined renderers for common components, like button, into tables ?
If yes or no, it could be worth to add few notes into http://pivot.apache.org/tutorials/ page in order to talk about cell renderers too, existing ones, or to include a link to a page detailling how to define custom renderer (like the case I mentionned above).
 
Thanks.
 
Regards,
Dominique
http://jroller.com/dmdevito/




Reply | Threaded
Open this post in threaded view
|

Re: basic questions about common table renderers

Greg Brown
Administrator
I assume that the button needs to be interactive (i.e. pushing it will trigger an action)? If so, you probably want to use TablePane rather than TableView. Cell renderers don't support any kind of user interaction - they are simply used to "rubber stamp" content into a table view. In other words, they are used for presentation, not interaction. TablePane is for laying out components, such as buttons, and functions more like an HTML table.

On May 16, 2010, at 4:55 AM, Dominique de Vito wrote:

> Hi,
>  
> I am fed up of Twitter web interface, then I currently look at Pivot in order to develop my own Twitter RIA client.
>  
> My first idea was about to include tweets into a table.
>  
> I wanted to include a PushButton into a cell, and then, I was looking around to know how to render such a button (into a cell) like a button !
>  
> I expected to discover a renderer into Pivot distribution in order to render common components like PushButton, or Label. AFAIK, there is none.
> And I have not discovered a (simple) way to render such a button as a cell's content.
>  
> I hope not to ask dumb questions here...
> Is there already defined renderers for common components, like button, into tables ?
> If yes or no, it could be worth to add few notes into http://pivot.apache.org/tutorials/ page in order to talk about cell renderers too, existing ones, or to include a link to a page detailling how to define custom renderer (like the case I mentionned above).
>  
> Thanks.
>  
> Regards,
> Dominique
> http://jroller.com/dmdevito/
>
>
>
>

Reply | Threaded
Open this post in threaded view
|

about label multiline wrapping - Re : basic questions about common table renderers

Dominique de Vito
Hi,

First, thanks Greg about the hint to replace "TableView" with "TablePane".

One more question.
It's said into the doc: "Flow panes arrange components in a horizontal line, wrapping when the contents don't fit on a single line."
But, when I put, first, buttons into my flow pane, and next, a long label, this label is NOT wrapped into multilines (as I need), and then, only the first characters of this label appear (the characters that fit the width of my flow pane).
Note that I want to add, after this label, a few more buttons. So, in a perfect world, this label ends into the 2nd line, I expect following buttons to be added just after into the 2nd line too.

Is there a way to wrap a label content (into a flow pane) within multilines ?

Thanks.

Dominique




----- Message d'origine ----
De : Greg Brown <[hidden email]>
À : [hidden email]
Envoyé le : Dim 16 mai 2010, 14h 27min 38s
Objet : Re: basic questions about common table renderers

I assume that the button needs to be interactive (i.e. pushing it will trigger an action)? If so, you probably want to use TablePane rather than TableView. Cell renderers don't support any kind of user interaction - they are simply used to "rubber stamp" content into a table view. In other words, they are used for presentation, not interaction. TablePane is for laying out components, such as buttons, and functions more like an HTML table.

On May 16, 2010, at 4:55 AM, Dominique de Vito wrote:

> Hi,
>  
> I am fed up of Twitter web interface, then I currently look at Pivot in order to develop my own Twitter RIA client.
>  
> My first idea was about to include tweets into a table.
>  
> I wanted to include a PushButton into a cell, and then, I was looking around to know how to render such a button (into a cell) like a button !
>  
> I expected to discover a renderer into Pivot distribution in order to render common components like PushButton, or Label. AFAIK, there is none.
> And I have not discovered a (simple) way to render such a button as a cell's content.
>  
> I hope not to ask dumb questions here...
> Is there already defined renderers for common components, like button, into tables ?
> If yes or no, it could be worth to add few notes into http://pivot.apache.org/tutorials/ page in order to talk about cell renderers too, existing ones, or to include a link to a page detailling how to define custom renderer (like the case I mentionned above).
>  
> Thanks.
>  
> Regards,
> Dominique
> http://jroller.com/dmdevito/
>
>
>
>




Reply | Threaded
Open this post in threaded view
|

Re: about label multiline wrapping - Re : basic questions about common table renderers

Greg Brown
Administrator
Good question. No, labels within flow panes don't wrap. FlowPane wouldn't know where or how to break the label's text - it lays out components based on their unconstrained preferred sizes. For a Label, this is the size of the unwrapped text.

However, you could accomplish this by setting an explicit preferred width on your Label. That will force the label to break at that width:

<Label text="blah" preferredWidth="200"/>

On May 17, 2010, at 5:37 AM, Dominique de Vito wrote:

> Hi,
>
> First, thanks Greg about the hint to replace "TableView" with "TablePane".
>
> One more question.
> It's said into the doc: "Flow panes arrange components in a horizontal line, wrapping when the contents don't fit on a single line."
> But, when I put, first, buttons into my flow pane, and next, a long label, this label is NOT wrapped into multilines (as I need), and then, only the first characters of this label appear (the characters that fit the width of my flow pane).
> Note that I want to add, after this label, a few more buttons. So, in a perfect world, this label ends into the 2nd line, I expect following buttons to be added just after into the 2nd line too.
>
> Is there a way to wrap a label content (into a flow pane) within multilines ?
>
> Thanks.
>
> Dominique
>
>
>
>
> ----- Message d'origine ----
> De : Greg Brown <[hidden email]>
> À : [hidden email]
> Envoyé le : Dim 16 mai 2010, 14h 27min 38s
> Objet : Re: basic questions about common table renderers
>
> I assume that the button needs to be interactive (i.e. pushing it will trigger an action)? If so, you probably want to use TablePane rather than TableView. Cell renderers don't support any kind of user interaction - they are simply used to "rubber stamp" content into a table view. In other words, they are used for presentation, not interaction. TablePane is for laying out components, such as buttons, and functions more like an HTML table.
>
> On May 16, 2010, at 4:55 AM, Dominique de Vito wrote:
>
>> Hi,
>>
>> I am fed up of Twitter web interface, then I currently look at Pivot in order to develop my own Twitter RIA client.
>>
>> My first idea was about to include tweets into a table.
>>
>> I wanted to include a PushButton into a cell, and then, I was looking around to know how to render such a button (into a cell) like a button !
>>
>> I expected to discover a renderer into Pivot distribution in order to render common components like PushButton, or Label. AFAIK, there is none.
>> And I have not discovered a (simple) way to render such a button as a cell's content.
>>
>> I hope not to ask dumb questions here...
>> Is there already defined renderers for common components, like button, into tables ?
>> If yes or no, it could be worth to add few notes into http://pivot.apache.org/tutorials/ page in order to talk about cell renderers too, existing ones, or to include a link to a page detailling how to define custom renderer (like the case I mentionned above).
>>
>> Thanks.
>>
>> Regards,
>> Dominique
>> http://jroller.com/dmdevito/
>>
>>
>>
>>
>
>
>
>

Reply | Threaded
Open this post in threaded view
|

Re : about label multiline wrapping - Re : basic questions about common table renderers

Dominique de Vito
Is there a way in Pivot to mimic the HTML wrapping style ?
Is there a way to do it through a given XXXPane ?

Or is it possible to imagine:
<Label text="blah blah blah" wrappingSeparator=" "/>
or with good default settings
<Label text="blah blah blah"/>
?

Thanks



----- Message d'origine ----
De : Greg Brown <[hidden email]>
À : [hidden email]
Envoyé le : Lun 17 mai 2010, 15h 07min 44s
Objet : Re: about label multiline wrapping - Re : basic questions about common table renderers

Good question. No, labels within flow panes don't wrap. FlowPane wouldn't know where or how to break the label's text - it lays out components based on their unconstrained preferred sizes. For a Label, this is the size of the unwrapped text.

However, you could accomplish this by setting an explicit preferred width on your Label. That will force the label to break at that width:

<Label text="blah" preferredWidth="200"/>

On May 17, 2010, at 5:37 AM, Dominique de Vito wrote:

> Hi,
>
> First, thanks Greg about the hint to replace "TableView" with "TablePane".
>
> One more question.
> It's said into the doc: "Flow panes arrange components in a horizontal line, wrapping when the contents don't fit on a single line."
> But, when I put, first, buttons into my flow pane, and next, a long label, this label is NOT wrapped into multilines (as I need), and then, only the first characters of this label appear (the characters that fit the width of my flow pane).
> Note that I want to add, after this label, a few more buttons. So, in a perfect world, this label ends into the 2nd line, I expect following buttons to be added just after into the 2nd line too.
>
> Is there a way to wrap a label content (into a flow pane) within multilines ?
>
> Thanks.
>
> Dominique
>
>
>
>
> ----- Message d'origine ----
> De : Greg Brown <[hidden email]>
> À : [hidden email]
> Envoyé le : Dim 16 mai 2010, 14h 27min 38s
> Objet : Re: basic questions about common table renderers
>
> I assume that the button needs to be interactive (i.e. pushing it will trigger an action)? If so, you probably want to use TablePane rather than TableView. Cell renderers don't support any kind of user interaction - they are simply used to "rubber stamp" content into a table view. In other words, they are used for presentation, not interaction. TablePane is for laying out components, such as buttons, and functions more like an HTML table.
>
> On May 16, 2010, at 4:55 AM, Dominique de Vito wrote:
>
>> Hi,
>>
>> I am fed up of Twitter web interface, then I currently look at Pivot in order to develop my own Twitter RIA client.
>>
>> My first idea was about to include tweets into a table.
>>
>> I wanted to include a PushButton into a cell, and then, I was looking around to know how to render such a button (into a cell) like a button !
>>
>> I expected to discover a renderer into Pivot distribution in order to render common components like PushButton, or Label. AFAIK, there is none.
>> And I have not discovered a (simple) way to render such a button as a cell's content.
>>
>> I hope not to ask dumb questions here...
>> Is there already defined renderers for common components, like button, into tables ?
>> If yes or no, it could be worth to add few notes into http://pivot.apache.org/tutorials/ page in order to talk about cell renderers too, existing ones, or to include a link to a page detailling how to define custom renderer (like the case I mentionned above).
>>
>> Thanks.
>>
>> Regards,
>> Dominique
>> http://jroller.com/dmdevito/
>>
>>
>>
>>
>
>
>
>




Reply | Threaded
Open this post in threaded view
|

Re: Re : about label multiline wrapping - Re : basic questions about common table renderers

Greg Brown
Administrator
There is currently no way to emulate this type of layout in Pivot. It would require a component capable of laying out both text and sub-components (like an HTML browser), which is a pretty significant undertaking. It may be possible to accomplish this via the HTML provider API we have been discussing recently, but I haven't looked closely enough at Flying Saucer, etc. to know for sure yet.
Greg

On May 17, 2010, at 9:25 AM, Dominique de Vito wrote:

> Is there a way in Pivot to mimic the HTML wrapping style ?
> Is there a way to do it through a given XXXPane ?
>
> Or is it possible to imagine:
> <Label text="blah blah blah" wrappingSeparator=" "/>
> or with good default settings
> <Label text="blah blah blah"/>
> ?
>
> Thanks
>
>
>
> ----- Message d'origine ----
> De : Greg Brown <[hidden email]>
> À : [hidden email]
> Envoyé le : Lun 17 mai 2010, 15h 07min 44s
> Objet : Re: about label multiline wrapping - Re : basic questions about common table renderers
>
> Good question. No, labels within flow panes don't wrap. FlowPane wouldn't know where or how to break the label's text - it lays out components based on their unconstrained preferred sizes. For a Label, this is the size of the unwrapped text.
>
> However, you could accomplish this by setting an explicit preferred width on your Label. That will force the label to break at that width:
>
> <Label text="blah" preferredWidth="200"/>
>
> On May 17, 2010, at 5:37 AM, Dominique de Vito wrote:
>
>> Hi,
>>
>> First, thanks Greg about the hint to replace "TableView" with "TablePane".
>>
>> One more question.
>> It's said into the doc: "Flow panes arrange components in a horizontal line, wrapping when the contents don't fit on a single line."
>> But, when I put, first, buttons into my flow pane, and next, a long label, this label is NOT wrapped into multilines (as I need), and then, only the first characters of this label appear (the characters that fit the width of my flow pane).
>> Note that I want to add, after this label, a few more buttons. So, in a perfect world, this label ends into the 2nd line, I expect following buttons to be added just after into the 2nd line too.
>>
>> Is there a way to wrap a label content (into a flow pane) within multilines ?
>>
>> Thanks.
>>
>> Dominique
>>
>>
>>
>>
>> ----- Message d'origine ----
>> De : Greg Brown <[hidden email]>
>> À : [hidden email]
>> Envoyé le : Dim 16 mai 2010, 14h 27min 38s
>> Objet : Re: basic questions about common table renderers
>>
>> I assume that the button needs to be interactive (i.e. pushing it will trigger an action)? If so, you probably want to use TablePane rather than TableView. Cell renderers don't support any kind of user interaction - they are simply used to "rubber stamp" content into a table view. In other words, they are used for presentation, not interaction. TablePane is for laying out components, such as buttons, and functions more like an HTML table.
>>
>> On May 16, 2010, at 4:55 AM, Dominique de Vito wrote:
>>
>>> Hi,
>>>
>>> I am fed up of Twitter web interface, then I currently look at Pivot in order to develop my own Twitter RIA client.
>>>
>>> My first idea was about to include tweets into a table.
>>>
>>> I wanted to include a PushButton into a cell, and then, I was looking around to know how to render such a button (into a cell) like a button !
>>>
>>> I expected to discover a renderer into Pivot distribution in order to render common components like PushButton, or Label. AFAIK, there is none.
>>> And I have not discovered a (simple) way to render such a button as a cell's content.
>>>
>>> I hope not to ask dumb questions here...
>>> Is there already defined renderers for common components, like button, into tables ?
>>> If yes or no, it could be worth to add few notes into http://pivot.apache.org/tutorials/ page in order to talk about cell renderers too, existing ones, or to include a link to a page detailling how to define custom renderer (like the case I mentionned above).
>>>
>>> Thanks.
>>>
>>> Regards,
>>> Dominique
>>> http://jroller.com/dmdevito/
>>>
>>>
>>>
>>>
>>
>>
>>
>>
>
>
>
>

12