Re: How t compile and run gwt app in eclipse and normally
Hello Friend, I am providing a link http://www.ibm.com/developerworks/library/os-ad-gwt1/ please go through with this link, you will definitely get success. it does not matter that you are beginner...do you best.. best wishes --- On Jul 1, 10:57 pm, Shedokan shedok...@gmail.com wrote: It's all in the docs:http://code.google.com/intl/iw/webtoolkit/doc/latest/tutorial/getting... If you'll have further questions after reading that you are free to ask in these forums. On 30 יוני, 09:55, kondal rao kondalraotirum...@gmail.com wrote: please help me out in this issue i m very much fresh to this framework but i know java.. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
problem deploying with maven
I have a gwt project and in this project I used gxt as well I deployed the project with ant and it deployed and run properly. Now I want to use maven to deploy it I use GWT version 2.0.3 and in pom.xml I mentioned this version of GWT After runing command mvn clean install I get this prompts: com.google.gwt:gwt-dev:zip:windows-libs:2.0.3 Try downloading the file manually from the project website. Then, install it using the command: mvn install:install-file -DgroupId=com.google.gwt -DartifactId=gwt-dev -Dversion=2.0.3 -Dclassifier=windows-libs -Dpackaging=zip -Dfile=/path/ to/file Alternatively, if you host your own repository you can deploy the file there: mvn deploy:deploy-file -DgroupId=com.google.gwt -DartifactId=gwt-dev - Dversion=2.0.3 -Dclassifier=windows-libs -Dpackaging=zip -Dfile=/path/ to/file -Durl=[url] -DrepositoryId=[id] Path to dependency: 1) com.mypath:myApp:war:1.0-SNAPSHOT 2) com.google.gwt:gwt-dev:zip:windows-libs:2.0.3 2) com.google.gwt:gwt-dev:jar:windows:2.0.3 Try downloading the file manually from the project website. Then, install it using the command: mvn install:install-file -DgroupId=com.google.gwt -DartifactId=gwt-dev -Dversion=2.0.3 -Dclassifier=windows -Dpackaging=jar -Dfile=/path/to/ file Alternatively, if you host your own repository you can deploy the file there: mvn deploy:deploy-file -DgroupId=com.google.gwt -DartifactId=gwt-dev - Dversion=2.0.3 -Dclassifier=windows -Dpackaging=jar -Dfile=/path/to/ file -Durl=[url] -DrepositoryId=[id] Path to dependency: 1) com.mypath:myApp:war:1.0-SNAPSHOT 2) com.google.gwt:gwt-dev:jar:windows:2.0.3 In the pom.xml file, I used : http://gwt-maven.googlecode.com/svn/trunk/mavenrepo/ as maven repository but it is not up to date and I couldn't find gwt- dev-windows-libs or gwt-dev-windows.jar version 2.03 In my ant project I just have gwt-dev.jar Shall I use this jar file and install it as windows and windows-lib files artifacts? Any idea? -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
how to update database, when a row a deleted in the smartGwt ListGrid
Hello Friends... Now i need your help.. I am working on SmartGwt Expendable Grid...I am using ListGrid Class to generate grid. i want to delete the row from the grid...and changes should reflect into my database..Please provide me some idea to do that... This is my code fragment... ListGrid listGrid = new ListGrid() ; listGrid.setShowRollOverCanvas(true); listGrid.setWidth(800); listGrid.setHeight(400); listGrid.setAnimateRollOver(true); listGrid.setCanExpandRecords(true); listGrid.setAlternateRecordStyles(true); listGrid.setShowAllRecords(true); listGrid.setSelectionType(SelectionStyle.SIMPLE); listGrid.setSelectionAppearance(SelectionAppearance.CHECKBOX); listGrid.setExpansionMode(ExpansionMode.DETAIL_FIELD); listGrid.setDetailField(report); // on click the remove button i want to delete the selected row from the database... // using this method removeSelectedData(); my selected record deleted from the grid but not from the database. removeButton.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { SC.say(Inside Remove Button); listGrid.removeSelectedData(); } }); NOTE:- I am directly fetching data from the database and set that data into the DataSource. and this datasource is linked with the grid. .. Now Please tell me how can i update my database when i delete selected record from the SmartGwt List Grid . I need Help... Thanks -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Mix up of the JavaScript files in modules
Hi everyone, I have a serious problem with my GWT project. I have two modules, each with client code, shared and server parts. One is called ‘administration’ and one ‘signup’. The module inherit each other because of some shared files (server classes of appengine) I call my JavaScript files via HTTP Servlets in the different packages. I differentiate the calls via servlet mapping in my web.xml Looks like this: servlet servlet-nameadministrationHTTP/servlet-name servlet- classcom.developergarden.app.eventmanagement.administration.server.AdministrationHTTPServlet/ servlet-class /servlet servlet servlet-namesignupHTTP/servlet-name servlet- classcom.developergarden.app.eventmanagement.signup.server.SignUpHTTPServlet/ servlet-class /servlet servlet-mapping servlet-namesignupHTTP/servlet-name url-pattern/signup/url-pattern /servlet-mapping !-- Default page to serve -- welcome-file-list welcome-fileadministrationHTTP/welcome-file /welcome-file-list So when I open http://...appspot.com should be called the administrationHTTP and when I open http://...appspot.com/signup should be called the signupHTTP. Fact is when I try to open the administrationHTTP the two servlets mix up and serve both JavaScripts. I first see my UI of the administration but then the signup disables all interaction. When I call my signup it works in first step (the part of the HTTP Servlet), but when the JavaScript is loaded it tries to load a login (which is the first action of my administration module) and so it dumps. I compile my modules in different folders ‘administration’ and ‘signup’ with ‘administration.nocache.js’ and ’signup.nocache.js’ and when signup/login is called (doesn’t exist, it only exists administration/login) it all fails. Has anybody an idea or know why my different modules mix up? I’m thankful for any advice. Best regards Jochen -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: Problem with Eclipse, Google plugin and WTP
Hi, That's what we did as a fix, but it's not the way it should work. Otherwise we have to copy libs each time we add some in our business project which is not the way to go imho. On 1 juil, 15:04, Sebastian Rothbucher sebastian.rothbuc...@clarities.de wrote: Hi, can you not copy all libs to WEB-INF/lib and include them from there? Let me know if this helps... On Jun 30, 1:29 pm, SimonM simon.manqu...@gmail.com wrote: Hello, I have troubles with WTP and Google plugin for Eclipse. I have one Dynamic Web Application Project, and I use GWT in this project. It's smart-ui. I have a Java Project which contains all business logic, it's smart- business : smart-ui depends on smart-business. All is correctly exported in Java EE Module Dependencies. Now I use WTP to deploy on a local JBoss, and all is working except one thing : the libraries of project-ui are not deployed in WEB-INF/ lib. The project itself is compiled, packaged and deployed in this directory. I have found after investigating several hours I can deploy correctly if I set in the Java Build Path (in Eclipse) the Default output folder to build/classes (and not WebContent/WEB-INF/classes). All libs are present in WEB-INF/lib. I can even set the folder to build/ classes for example, it works. Meanwhile I have a new error in my project : The output directory for the project should be set to /smart-ui/ WebContent/WEB-INF/classes smart-ui-gxt Unknown Google Web App Problem If I set the Default output folder back to WebConten/WEB-INF/classes, I don't have the error anymore but the libs aren't exported to WEB-INF/ lib. I think there are some incompatibilities between WTP and Google plugin there. Am I missing something ? Is this a know issue and does a workaround exist ? Thanks for helping. Simon -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
align the widgets in DocLayoutPanel
Hello, I'm new in GWT development and need some help. I use GWT 2.0 and in my project I have a DockLayoutPanel which inculudes north, south, east and west. I have added a widget in East edge. But Its on right side of the East edge. How can I align the widget to the right side in East edge? // Sample Code DockLayoutPanel p = new DockLayoutPanel(Unit.EM); p.addNorth(new HTML(north), 5); p.addSouth(new HTML(south), 2); p.addEast(new HTML(east), 20); p.addWest(new HTML(west), 2); p.addEast(sampleWidget,20); //I have tried this // mainPanel.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_RIGHT); //But it just align the things (texts, buttons...) to right side in the widget. // The widget still right side Thanks -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
auto refresh client side when ever there are changes in the database (without timer)
Is there a way to automatically refresh the client side when ever there are changes in the database without the timer on the client side. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: auto refresh client side when ever there are changes in the database (without timer)
try server push.. http://code.google.com/p/google-web-toolkit-incubator/wiki/ServerPushFAQ On Fri, Jul 2, 2010 at 2:55 PM, Fendy Tjin fendyt...@gmail.com wrote: Is there a way to automatically refresh the client side when ever there are changes in the database without the timer on the client side. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.comgoogle-web-toolkit%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: JDBC org.gjt.mm.mysql.Driver : Classnotfound
Thanks for the replies. I've currently solved the problem by disabling Use Google App Engine. After that i got other exceptions which i managed to solve by removing certain jar files out of the Build Path manually (relating to Google App Engine). On 2 Jul., 02:59, mdwarne mike.wa...@gmail.com wrote: Are you trying to load the driver in the Server Code, or in the Client? You can not connect to a database from the Client Code (Browser javascript), only from the Server code. I am using MySql in my projects using RPC (Servlet). In my RPC servlet I have code like this that works fine public Connection getConnection() throws Exception { Class.forName(com.mysql.jdbc.Driver).newInstance(); Connection c = DriverManager.getConnection(jdbc:mysql://+host +/+db, login, passw); return c; } Mike. On Jun 30, 4:41 am, Hotkey henrik.brinkm...@googlemail.com wrote: Dear All, this is my first post in this group, hopefully i'm not doing anything wrong. I've searched for this topic but didn't found any solution. I'm quity new to GWT and are currently writing my first Client/Server example. Actually i want to read some Data from a database but i didn't get the connection to work. At the source Class.forName(org.gjt.mm.mysql.Driver).newInstance(); a ClassNotFoundException is thrown. I'm using Eclipse and have tried the following: Project Properties - Java Build Path - Libraries - Add External Jar Result: still ClassNotFoundException Manually Copied the file into the WEB-INF\lib directory. Result: ExceptionInInitializerError at the line: this.conn = DriverManager.getConnection(my connection string): Caused by: java.lang.ExceptionInInitializerError at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java: 282) at java.sql.DriverManager.getConnection(Unknown Source) at java.sql.DriverManager.getConnection(Unknown Source) at com.setlog.gwt.servicetest.server.db.DBInterface.init(DBInterface.java: 69) Hopefully someone can help me with this -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
GWTCanvas not working on IE6?
Hi all, I thought GWTCanvas supports IE6, I am sure it did, but haven't tried it on IE6 for a few months and all of a sudden it's not working on IE6 anymore. Anyone who can make it work on IE6? Thanks. Kevin -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
getting the current row count from the button
Hello, I have a simple problem. I am using GWT 2.0 and I need help. I add a row with a button in FlexTable. The button should remove the row when click. But I didnt get current current row count.. private void addItem() { // Add a button to remove this Item from the table. final int itemRowCount = testFlexTable.getRowCount(); final Button removeStockButton = new Button(x); removeStockButton.addStyleDependentName(remove); removeStockButton.setTabIndex(itemRowCount); removeStockButton.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { int removedIndex = // ** I should get the current current row count here *** testFlexTable.removeRow(removedIndex); } }); testFlexTable.setText(itemRowCount, 0, Test + itemRowCount); testFlexTable.setWidget(itemRowCount, 1, removeStockButton); } -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: BigDecimal - Can you add it to 2.1 version
The Harmony team is not involved, I'm just some random guy. From Richard. On Jul 2, 8:06 am, Carl Pritchett bogusggem...@gmail.com wrote: http://code.google.com/p/gwt-java-math/ We use this in our finance based application and it works well. It's based on the Apache Harmony BigDecimal class I think. Initially I found a few differences from the java BigDecimal but they were fixed instantly by the Harmony team and integrated into gwt-java-math overnight. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
User management in GWT
Hi everyone, *Really short version*: I'd like suggestions on possible libraries/ projects to provide/develop the user registration/login/sessions within a GWT site. Off-the-shelf solutions are ok, too. Now some more details about my project: I'm a novice GWT user currently in the preliminary tech analysis stage of a site development project, i.e. I am trying to identify the libraries and components to use along GWT to speed up the development. The core of my project is to let users register on my site, fill in some form fields with some personal data, and then use a search function to find users with matching data. I'm currently thinking about using a MySQL DB to hold all user data, and develop all site functionalities with GWT. The thing I'm missing is what to use to handle user registration/login/sessions. With some searching I found: - the Acegi security project, suggested in GWT tutorials; - the Apache Shiro project, which seems not compatible with GWT due to client code translation issues. It looks like using Acegi requires a lot of designdev time, and serious security-oriented skills, while I'm looking for something possibly more off-the-shelf, which would wrap the user management in a simple way, or even provide a basic implementation of user registration and session functionality. Also an open, simple CMS- like project which I could expand and customize with GWT is acceptable, since site design is now only at the early functional study and is hence very flexible. Any suggestion would be really appreciated. Regards, M. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
UiBinder and Event Handlers (General Performance Question)
I have a question about the use of the Uibinder with regard to the simple binding of event handlers. From the examples in the - Developer's Guide - Event Handlers - section, it’s written: “Using anonymous inner classes as in the above example can use excessive memory for a large number of widgets, since it results in the creation of many handler objects. Instead of creating separate instances of the ClickHandler object for each widget that needs to be listened to, a single handler can be shared between many widgets. Widgets declare themselves as the source of an event when they invoke a handler method, allowing a single handler to distinguish between multiple event publishers with an event object's getSource() method. This makes better use of memory but requires slightly more code, as shown in the following example:” And then ... from the examples given in the - Declarative Layout with UiBinder Simple binding of event handlers section, it’s written: “In a UiBinder owner class, you can use the @UiHandler annotation to have all of that anonymous class nonsense written for you.” Does this mean that when I use the Uibinder approach in GWT 2.0 that the excessive memory for a large number of widgets is now the result of this implementation? Or is this drawback taken care of by the code generated by the GWT compiler? Or is there another way of coding the UiBinder and @UiHandler for these cases where a user-interface has many widgets ... say like many text input boxes? Or perhaps, I'm wondering, with the speed of processors today, that this trade off for easy coding and readability offsets the slight loss in performance? Is this the idea behind using UiBinders in this manner? Jim P.S. this GWT 2.0 is really cool stuff. Thank-you for all the great work done on it. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Running a .exe file from server side code
Hi, I am trying to call a .exe file using server side code.However I keep getting this error: error===access denied (java.io.FilePermission ALL FILES execute). I even tried to change the security permissions of the file by changing the java.policy file but it still gives the same error.I have also tried to place it under /war/WEB-INF but in vain. Can someone help me with this? -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Trying to create and read xml using gwt on client side
I am creating an object which contains instances of other objects. I need to write a toXml() function for each object so that I can build a full xml document to send to the server from the client. I noticed something called DocumentFragment and was wondering first of all of this is the correct direction to be going in and also does anyone have any examples or tutorials of this type of code in GWT as I cannot find any. I hope that makes sense but if not please let me know what further information you might need from me. Kind Regards David -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
onSuccess() return value other than void?
At present, an AsyncCallback contains a 'public void onSuccess()' method. This is posing significant problems for me at the moment. I have a method myMethod() being called which has a return value type of ArrayListString. MyMethod contains this AsynCallback which is used to query a database on the server side of the code. I need to, either somehow make the method WAIT for the AsyncCallback's onSuccess() method to return which is the thing that is giving me the ArrayListString to return to the code which called myMethod, or change the return type of the AsyncCallback to ArrayListString and let this be the 'return' of myMethod. Is this possible? Am I very confused? Could someone please advise? -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: onSuccess() return value other than void?
Welcome to the async world! ;-) I had the same problem. Since the code of an async callback is not executed in the order of the statements in your myMethod() you can not directly return the results from onSuccess() in myMethod(). And myMethod() is not able to wait for onSuccess(). You could for example do the things you want to do with ArrayListString in onSuccess() instead of where you call myMethod() of if you want to keep the processing logic for ArrayListString where myMethod() is called use a method to pass ArrayListString from onSuccess(). You can think of it as separating the logic in two methods: 1) first one does initial stuff and then requests something via RPC (in your example via myMethod() but with return type void) 2) second one is called by onSuccess() passing the results of the RPC and continues with the requested data where first method ends Hope it helps, Andreas On 2 Jul., 14:50, day_trader mwmcmul...@gmail.com wrote: At present, an AsyncCallback contains a 'public void onSuccess()' method. This is posing significant problems for me at the moment. I have a method myMethod() being called which has a return value type of ArrayListString. MyMethod contains this AsynCallback which is used to query a database on the server side of the code. I need to, either somehow make the method WAIT for the AsyncCallback's onSuccess() method to return which is the thing that is giving me the ArrayListString to return to the code which called myMethod, or change the return type of the AsyncCallback to ArrayListString and let this be the 'return' of myMethod. Is this possible? Am I very confused? Could someone please advise? -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: User management in GWT
Hi M. I'm also here checking out GWT and I believe I may have tested something that may help you. I think it was while I was running some of the examples in the GWT section of What's Coming in 2.1 using the MVP Framework. In this section there's a link to Spring Roo http://www.springsource.org/roo It's a bit of work, but after setting everything up there's a Roo demo application there that has a simple login to demonstrate the security features of the Spring Roo Framework. If you are familiar with Ruby on Rails, it seems to me that Spring Roo has the same powerful funcionality ... and I love the way they use the console and simple commands to generate the framework, and also, what they call 'entities'. All this, of course, done in Java code. Perhaps you can ask for more info at their site. It's been awhile since I ran the demos ... but I'm pretty sure this is what you're looking for. Hope this helps. Jim -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: User management in GWT
Hi M. Yes ... I just checked to see if I could find that demo. Here is the one to use: vote.roo: The Voting sample script was built live on-stage during SpringOne Europe 2009, as detailed in the project history section. This is nice sample script because it's quite small and only has two entities. It also demonstrates Spring Security usage. You'll find this on Try Spring Roo (goto the bottom of the page) Roo's Samples Then goto section 1.6. Exploring the Roo Samples. I did try all three examples. The first one, the most complex, didn't compile on my machine. The two others, vote.roo and wedding.roo worked fine. Bye-the-way, once you have the updates and the right libraries, there is a simple comand to run these demos instead of building the projects. roo script --file filename.roo - Jim -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: User management in GWT
What is the problem with Shiro ? I am using it for security management with my application and we did not have encountered any problem with its integration. It was only few lines of code : public void login(String username, String password) { Subject currentUser = SecurityUtils.getSubject(); if (!currentUser.isAuthenticated()) { UserIdPasswordToken token = new UserIdPasswordToken(username, password); currentUser.login(token); } } Then, I use some annotation binded with guice on server side : @RequiresPermissions @RequiresRoles @RequiresUser @RequiresGuest @RequiresAuthentication And I've got a filter that catch all Shiro Exceptions and transforms them to a gwt client understandable exception. Then, as soon as a Security Exception is sent on the client, I redirect user on a login popup. I did not tried Acegi because I prefered to use guice on server side than spring. 2010/7/2 Jim rightscr...@gmail.com Hi M. I'm also here checking out GWT and I believe I may have tested something that may help you. I think it was while I was running some of the examples in the GWT section of What's Coming in 2.1 using the MVP Framework. In this section there's a link to Spring Roo http://www.springsource.org/roo It's a bit of work, but after setting everything up there's a Roo demo application there that has a simple login to demonstrate the security features of the Spring Roo Framework. If you are familiar with Ruby on Rails, it seems to me that Spring Roo has the same powerful funcionality ... and I love the way they use the console and simple commands to generate the framework, and also, what they call 'entities'. All this, of course, done in Java code. Perhaps you can ask for more info at their site. It's been awhile since I ran the demos ... but I'm pretty sure this is what you're looking for. Hope this helps. Jim -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.comgoogle-web-toolkit%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: Role-based security and widget visualization
Hey Kai, there is a toolkit called AcrIS (http://acris.googlecode.com/) where one of it's part is denoted to security - acris-security module (http://code.google.com/p/acris/wiki/Security). It handles client and server security. On the client it is using annotations or manually specified authorities. Server is spring-security based. Documentation is in progress these days and will be finished until the release. BR, Laco On 1. Júl, 14:07 h., KaiWeing kaiwe...@gmx.net wrote: Hello, we are evaluating GWT as a basis for different kinds of enterprise applications we have here. Some of those have controls which must only be displayed for users in a certain role, also, the decision which controls to display must be made at serverside, to avoid clientside manipulation. How can I implement such a requirement securely in GWT? Should this be solved via deferred binding (that would require that deferred binding could take the server-state into account)? Is there a pattern for this in GWT or any extension library? Thanks very much for your feedback! Kai -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: Role-based security and widget visualization
Hey Kai, there is a toolkit called AcrIS (http://acris.googlecode.com/) where one of it's part is denoted to security - acris-security module (http://code.google.com/p/acris/wiki/Security). It handles client and server security. On the client it is using annotations or manually specified authorities. Server is spring-security based. Documentation is in progress these days and will be finished until the release. BR, Laco On 1. Júl, 14:07 h., KaiWeing kaiwe...@gmx.net wrote: Hello, we are evaluating GWT as a basis for different kinds of enterprise applications we have here. Some of those have controls which must only be displayed for users in a certain role, also, the decision which controls to display must be made at serverside, to avoid clientside manipulation. How can I implement such a requirement securely in GWT? Should this be solved via deferred binding (that would require that deferred binding could take the server-state into account)? Is there a pattern for this in GWT or any extension library? Thanks very much for your feedback! Kai -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: Running a .exe file from server side code
Disable Google App Engine in eclipse, delete all GAE jar files from your classpath and then retry. GAE does not allow you to write or execute files. --Sri On 2 July 2010 07:58, Rajesh rajesh...@gmail.com wrote: Hi, I am trying to call a .exe file using server side code.However I keep getting this error: error===access denied (java.io.FilePermission ALL FILES execute). I even tried to change the security permissions of the file by changing the java.policy file but it still gives the same error.I have also tried to place it under /war/WEB-INF but in vain. Can someone help me with this? -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.comgoogle-web-toolkit%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
SuggestBox question - is it possible to react on sub sequences of the words?
Hi, I am using the suggest box in my app. Now I'm searching for the possibility to change the filter. Is it possible to change the behaviour so that not only words which start with the input will be suggested also words where the input occurs anywhere in the name. If I have a list like this Jim Tim Mike Frank Now it just reacts if you hit the first character. But I want that if you type in im you would have Jim and Tim as suggestions Thanks -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: Role-based security and widget visualization
Hey Kai, there is a toolkit called AcrIS (http://acris.googlecode.com/) where one of it's part is denoted to security - acris-security module (http://code.google.com/p/acris/wiki/Security). It handles client and server security. On the client it is using annotations or manually specified authorities. Server is spring-security based. Documentation is in progress these days and will be finished until the release. BR, Laco On 1. Júl, 14:07 h., KaiWeing kaiwe...@gmx.net wrote: Hello, we are evaluating GWT as a basis for different kinds of enterprise applications we have here. Some of those have controls which must only be displayed for users in a certain role, also, the decision which controls to display must be made at serverside, to avoid clientside manipulation. How can I implement such a requirement securely in GWT? Should this be solved via deferred binding (that would require that deferred binding could take the server-state into account)? Is there a pattern for this in GWT or any extension library? Thanks very much for your feedback! Kai -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: auto refresh client side when ever there are changes in the database (without timer)
Hi, there are some ways. The buzz words are comet, server push, long poll. These techniques are requesting values from the server, but the server only fulfills the requests when datas are available. The effect is, the client will wait until the server has data. With HTML5 is WebSockets coming. This is a regular bidirectional link between client and server. Neither of these technologies needs a timer, not even long polling Stefan Bachert http://gwtworld.de On Jul 2, 11:25 am, Fendy Tjin fendyt...@gmail.com wrote: Is there a way to automatically refresh the client side when ever there are changes in the database without the timer on the client side. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Eclipse plugin for Eclipse 3.5 and GWT 2.1.0.M1
When I create a new GWT project using Eclipse 3.5 the GWT 2.1.0 M1 and the accompanying plugin, I see that my project's libraries has GWT SDK -2.1.0M1 in the project's build path. which is what you would expect... The thing is though... I see gwt-bikeshed.jar, gwt-user.jar and gwt-dev.jar... what is gwt-bikeshed.jar doing there and how do I delete it from this library setting?. It's causing errors to show up in my console when I debug... thanks in advance.. R -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: Window.Location.getParameter() always null
Hi Mike, you code and url looks absolutely correct. I do the similar within my project and it works. I am using FF, eclipse, linux. I do not face any problems. I do not have any idea what went wrong at your site Stefan Bachert http://gwtworld.de On Jul 2, 3:10 am, mdwarne mike.wa...@gmail.com wrote: Hi Stephan, Thanks for your reply. I discovered that it works, but not in Developer Host mode (OOPHM). Maybe the developer plugin strips the params from the url? my URL is something like this:http://192.168.0.205:/MyApp.html?gwt.codesvr=192.168.0.205:9997k... I also tried:http://192.168.0.205:/MyApp.html?kc=testgwt.codesvr=192.168.0.20... My code is simple: public void onModuleLoad() { String urlKey = Window.Location.getParameter(kc); if (urlKey != null) { // do something special here. } else { // default code. } } Thanks, Mike. On Jun 30, 10:00 am, Stefan Bachert stefanbach...@yahoo.de wrote: Hi, I use it and it works. Please supply your URL and your code, probably something went wrong. Stefan Bacherthttp://gwtworld.de On Jun 29, 9:35 pm, mdwarne mike.wa...@gmail.com wrote: Hi, I need to pass a parameter to my application. However if I append a parameter to the url query string, I can not retrieve it by name using Window.Location. (Always returns null) When I retrieve the entire Query String, It contains only the gwt.codesvr parameter, but not my additional parameter. Any Ideas? Thanks, Mike. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
How to show a load screen during rpc call?
Hi, I need to load a few things from my server after a user gives input. Can somebody give an example how I can show a load screen as long as the rpc is not finished? I structured the app in mvp style ... any example would help me Best regards Thanks -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: align the widgets in DocLayoutPanel
Hi, try DockLayoutPanel p = new DockLayoutPanel(Unit.EM); p.addNorth(new HTML(north), 5); p.addSouth(new HTML(south), 2); HTML east = new HTML(east); east.getElement().getStyle().setProperty(marginRight, auto); p.addEast(east, 20); p.addWest(new HTML(west), 2); Not tested yet Stefan Bachert http://gwtworld.de On Jul 2, 10:28 am, nasionalem sakarya.me...@gmail.com wrote: Hello, I'm new in GWT development and need some help. I use GWT 2.0 and in my project I have a DockLayoutPanel which inculudes north, south, east and west. I have added a widget in East edge. But Its on right side of the East edge. How can I align the widget to the right side in East edge? // Sample Code DockLayoutPanel p = new DockLayoutPanel(Unit.EM); p.addNorth(new HTML(north), 5); p.addSouth(new HTML(south), 2); p.addEast(new HTML(east), 20); p.addWest(new HTML(west), 2); p.addEast(sampleWidget,20); //I have tried this // mainPanel.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_RIGHT); //But it just align the things (texts, buttons...) to right side in the widget. // The widget still right side Thanks -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: make fileupload widget readonly
Hi, I would try fileupload.getElement().setPropertyString(readonly, readonly); fileupload.getElement().setPropertyString(disabled, disabled); Stefan Bachert http://gwtworld.de On Jul 1, 9:54 am, abhi abhishek@gmail.com wrote: how to make fileupload textbox readonly. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: How to show a load screen during rpc call?
You could show your load screen (for example a popup panel or even just a label) right after issuing the RPC and hide it in onSuccess() and onFailure(). On 2 Jul., 18:02, crojay78 croja...@googlemail.com wrote: Hi, I need to load a few things from my server after a user gives input. Can somebody give an example how I can show a load screen as long as the rpc is not finished? I structured the app in mvp style ... any example would help me Best regards Thanks -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: Document.get().getElementById(String) and $doc.getElementById(String) returning nulls
Thank you for your reply. I did know that I had to add the element before calling those methods, but sure enough I had forgotten that the panel in line 4 hadn't been added yet, as it was part of a cascade of constructors. Your reply helped me point that one out. Thanks, G. On Jul 1, 10:55 am, Daniel Simons daniel.simo...@gmail.com wrote: i) The problem here is that you are trying to reference an element that has not yet been added to the dom. Check where you are adding the element...most likely a you have a call to RootPanel.get().add(elem). Be sure that this happens before calling getElementsById(). ii) I prefer to create my own Generic Widgets by extending ComplexPanel. This is helpful because you can pass in any tag name that you'd like: public class ContainerTag extends ComplexPanel{ public ContainerTag(String tagName) { setElement(DOM.createElement(tagName)); } } Then you can use: ContainerTag div = new ContainerTag(div); Daniel On Thu, Jul 1, 2010 at 12:13 PM, giacomo gia.ghid...@gmail.com wrote: Hi everyone! SUMMARY = I'm facing a problem with Document.get().getElementById(String) (in Java) and $doc.getElementById(String) (in JavaScript) returning nulls. My design goal is to define a div element in the Java code and add it to the document, so that I can then retrieve it in the JSNI method and use JavaScript libraries to draw stuff within it. DESCRIPTION To make problem description simpler, here is my GWT code: 1 protected void draw() { 2 String id = divId; 3 HTML divElement = new HTML(div id=\' + id + \'Hello World/ div); 4 getChartPanel().add(divElement); //getChartPanel() returns a Panel 5 Window.alert(The element ID is + id); 6 Element element = Document.get().getElementById(id); 7 Window.alert(The GWT element ID is + element.getId()); 8 drawJS(id); 9 } 10 11 public static native void drawJS(String divID) /*-{ 12 $wnd.alert(The JS element ID is + divID); 13 var chartPanel1 = $doc.getElementById(divID); 14 $wnd.alert(The chart panel is + chartPanel1); 15 var chartPanel2 = document.getElementById(divID); 16 $wnd.alert(The chart panel is + chartPanel2); 17 chartPanel.innerHTML(Hello, World!); 18 }-*/; When the draw() method is called I get the following: i) Window on line 5 pops up with The element ID is divId; ii) Window on line 7 pops up with The GWT element ID is null; iii) Window on line 12 pops up with The JS element ID is divId; iv) Window on line 14 pops up with The chart panel is null; v) Window on line 16 pops up with The chart panel is null; and vi) A JavaScriptException is raised in development mode at line 17: --- 09:50:16.235 [ERROR] [sensor_network] Uncaught exception escaped com.google.gwt.core.client.JavaScriptException: (ReferenceError): chartPanel is not defined fileName:http://127.0.0.1: lineNumber: 7 stack: (divId)@http://127.0.0.1::7 @:0 --- ANALYSIS I inspected the Web page with FireBug and the div element with id = divId DOES exist after it is added in the Java code. However, neither the Java nor the JavaScript methods are able to retrieve it. QUESTIONS == i) What am I doing wrong and how do I fix it? ii) Is there a better way to add a div element in Java and pass it to a JavaScript method, so that the latter can use it to add stuff (e.g., JavaScript-based charts) in it? Thank you. G. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.comgoogle-web-toolkit%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: Problem with Eclipse, Google plugin and WTP
Hey Simon, If you navigate to the smart-ui project properties - Google - Web Application, what is the WAR folder set to? Is the Launch and Deploy From this Directory box checked? In your case, it should not be. Rajeev On Wed, Jun 30, 2010 at 7:29 AM, SimonM simon.manqu...@gmail.com wrote: Hello, I have troubles with WTP and Google plugin for Eclipse. I have one Dynamic Web Application Project, and I use GWT in this project. It's smart-ui. I have a Java Project which contains all business logic, it's smart- business : smart-ui depends on smart-business. All is correctly exported in Java EE Module Dependencies. Now I use WTP to deploy on a local JBoss, and all is working except one thing : the libraries of project-ui are not deployed in WEB-INF/ lib. The project itself is compiled, packaged and deployed in this directory. I have found after investigating several hours I can deploy correctly if I set in the Java Build Path (in Eclipse) the Default output folder to build/classes (and not WebContent/WEB-INF/classes). All libs are present in WEB-INF/lib. I can even set the folder to build/ classes for example, it works. Meanwhile I have a new error in my project : The output directory for the project should be set to /smart-ui/ WebContent/WEB-INF/classes smart-ui-gxtUnknown Google Web App Problem If I set the Default output folder back to WebConten/WEB-INF/classes, I don't have the error anymore but the libs aren't exported to WEB-INF/ lib. I think there are some incompatibilities between WTP and Google plugin there. Am I missing something ? Is this a know issue and does a workaround exist ? Thanks for helping. Simon -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.comgoogle-web-toolkit%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: Woes of ClientBundle +IE
So it turns out it actually wasn't the image rendering in-correctly. I did more investigating and it turns out that IE was not passing the Click-event correctly. It only passes it to the top visible image when they're stacked on an Absolute Panel. With some re-engineering of the logic I was able to get it to work as intended. On Jun 29, 6:43 pm, mdwarne mike.wa...@gmail.com wrote: Or.. Your click Handler can remove the image from the panel, and replace it using a new one at the same coordinates. So you only add one image to the panel at a time.. Mike. On Jun 29, 1:58 am, Sean slough...@gmail.com wrote: I created a widget that consists of an Absolute Panel and two images. Both images are applied from a different ClientBundle. Both images are added to the Absolute Panel with one on top of the other. The base image, which is one of 32 in a Client Bundle is shown to the user. The second one starts off as blank.png which is you know...blank. If they click on the Widget, then the blank image is turned from blank.png to another image in the ImageBundle to an image that looks like a marker's circle, so it's like they're selecting them. This works perfectly in FireFox and in Chrome, and sadly but not surprisingly it doesn't work in IE. Does anyone know why or a work around? I always feel like I'm adding little catches and workarounds cause IE doesn't behave well with Images. Thinking about it I could try instead of a blank.png I could try to stack them and set the top image from Visible(false) to Visible(true). Maybe that will work? Grr. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: auto refresh client side when ever there are changes in the database (without timer)
Thank you for the reply. But server push does not seem practical when we can't flush the HTTP connection. Although they did explain how to overcome it, however I require the HTTP connection to stay alive for I will use it for a live graph presentation (similar to the stock graph in yahoo finance.) I would like to know has every browser in fact support HTML5 already? I think most of the users in the world are still using browsers with HTML4 (Internet Explorer). Thank you, Fendy Tjin On Jul 2, 10:49 pm, Stefan Bachert stefanbach...@yahoo.de wrote: Hi, there are some ways. The buzz words are comet, server push, long poll. These techniques are requesting values from the server, but the server only fulfills the requests when datas are available. The effect is, the client will wait until the server has data. With HTML5 is WebSockets coming. This is a regular bidirectional link between client and server. Neither of these technologies needs a timer, not even long polling Stefan Bacherthttp://gwtworld.de On Jul 2, 11:25 am, Fendy Tjin fendyt...@gmail.com wrote: Is there a way to automatically refresh the client side when ever there are changes in the database without the timer on the client side. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: onSuccess() return value other than void?
Yeah, it takes a while to start thinking Asynchronously. But Andreas has the right of it. You no longer think of it as call myMethod() to return the ArrayListString; you have to think of it is: 1) What do I want my user to do to request the data. (Or my program, like on start up you want the data). Here is where you will call your service with the callback object. then 2) When I get this data, what do I want to do with it? That is what you put in your onSuccess method. Once you get the mentality down, it's extremely powerful and your web pages will show it. On Jul 2, 9:45 am, andreas horst.andrea...@googlemail.com wrote: Welcome to the async world! ;-) I had the same problem. Since the code of an async callback is not executed in the order of the statements in your myMethod() you can not directly return the results from onSuccess() in myMethod(). And myMethod() is not able to wait for onSuccess(). You could for example do the things you want to do with ArrayListString in onSuccess() instead of where you call myMethod() of if you want to keep the processing logic for ArrayListString where myMethod() is called use a method to pass ArrayListString from onSuccess(). You can think of it as separating the logic in two methods: 1) first one does initial stuff and then requests something via RPC (in your example via myMethod() but with return type void) 2) second one is called by onSuccess() passing the results of the RPC and continues with the requested data where first method ends Hope it helps, Andreas On 2 Jul., 14:50, day_trader mwmcmul...@gmail.com wrote: At present, an AsyncCallback contains a 'public void onSuccess()' method. This is posing significant problems for me at the moment. I have a method myMethod() being called which has a return value type of ArrayListString. MyMethod contains this AsynCallback which is used to query a database on the server side of the code. I need to, either somehow make the method WAIT for the AsyncCallback's onSuccess() method to return which is the thing that is giving me the ArrayListString to return to the code which called myMethod, or change the return type of the AsyncCallback to ArrayListString and let this be the 'return' of myMethod. Is this possible? Am I very confused? Could someone please advise? -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: GWTCanvas not working on IE6?
i use it on ie6. it works both in development and deploy mode. remember that in IE you must use quirks mode. in strict mode nothing works :-( /Flemmng On Fri, Jul 2, 2010 at 1:22 PM, Kevin kevin...@confettistudio.com wrote: Hi all, I thought GWTCanvas supports IE6, I am sure it did, but haven't tried it on IE6 for a few months and all of a sudden it's not working on IE6 anymore. Anyone who can make it work on IE6? Thanks. Kevin -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.comgoogle-web-toolkit%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: make fileupload widget readonly
On Jul 2, 2010 12:15 PM, Stefan Bachert stefanbach...@yahoo.de wrote: Hi, I would try fileupload.getElement().setPropertyString(readonly, readonly); fileupload.getElement().setPropertyString(disabled, disabled); Stefan Bachert http://gwtworld.de On Jul 1, 9:54 am, abhi abhishek@gmail.com wrote: how to make fileupload textbox readonly -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: how to update database, when a row a deleted in the smartGwt ListGrid
You have to connect to your server (via RPC for example) and submit a DELETE query where the row is equal to what was in the listGrid. On Jul 2, 3:03 am, GWT Groups new.ankitj...@gmail.com wrote: Hello Friends... Now i need your help.. I am working on SmartGwt Expendable Grid...I am using ListGrid Class to generate grid. i want to delete the row from the grid...and changes should reflect into my database..Please provide me some idea to do that... This is my code fragment... ListGrid listGrid = new ListGrid() ; listGrid.setShowRollOverCanvas(true); listGrid.setWidth(800); listGrid.setHeight(400); listGrid.setAnimateRollOver(true); listGrid.setCanExpandRecords(true); listGrid.setAlternateRecordStyles(true); listGrid.setShowAllRecords(true); listGrid.setSelectionType(SelectionStyle.SIMPLE); listGrid.setSelectionAppearance(SelectionAppearance.CHECKBOX); listGrid.setExpansionMode(ExpansionMode.DETAIL_FIELD); listGrid.setDetailField(report); // on click the remove button i want to delete the selected row from the database... // using this method removeSelectedData(); my selected record deleted from the grid but not from the database. removeButton.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { SC.say(Inside Remove Button); listGrid.removeSelectedData(); } }); NOTE:- I am directly fetching data from the database and set that data into the DataSource. and this datasource is linked with the grid. .. Now Please tell me how can i update my database when i delete selected record from the SmartGwt List Grid . I need Help... Thanks -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Push Button remains in gwt-PushButton-up-Hovering
Push Button remains in gwt-PushButton-up-Hovering even after the cursor has come out of the pus button -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
CellTable shows only progress bar
Hi! I'm struggling with a Celltable that I'd like to use in a ui binding env. My problem is that it shows only the loading progress bar, never the actual data that I loaded into it. Here is my entry point module: ListSomeGTO dummy = new ArrayListSomeGTO(); dummy.add(new SomeGTO()); dummy.add(new SomeGTO()); RootLayoutPanel rp = RootLayoutPanel.get(); BankTervUI bui = new BankTervUI(); rp.add(bui); bui.setData(dummy); = !-- BankTervUI.ui.xml -- ui:UiBinder xmlns:ui=urn:ui:com.google.gwt.uibinder xmlns:g=urn:import:com.google.gwt.user.client.ui xmlns:c='urn:import:com.google.gwt.user.cellview.client' g:VerticalPanel ui:field='vp' g:SimplePanel c:CellTable ui:field='table' / /g:SimplePanel /g:VerticalPanel /ui:UiBinder public class BankTervUI extends Composite { interface MyUiBinder extends UiBinderWidget, BankTervUI {} private static MyUiBinder uiBinder = GWT.create(MyUiBinder.class); @UiField CellTableSomeGTO table; public BankTervUI() { table = new CellTableSomeGTO(); SingleSelectionModelSomeGTO selectionModel = new SingleSelectionModelSomeGTO(); table.setSelectionModel(selectionModel); table.setSelectionEnabled(true); table.addColumn(new ColumnSomeGTO, String(new TextCell()) { @Override public String getValue(SomeGTO object) { return demo; } }, dummy); initWidget(uiBinder.createAndBindUi(this)); } public void setData(ListSomeGTO data) { table.setData(1, data.size(), data); table.redraw(); } -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: align the widgets in DocLayoutPanel
Hi nasionalem, I haven't tried your code but it seems your problem is: p.addEast(sampleWidget,20); With this instruction, you are not adding a widget to the East, but adding a new East One way to do it is to add the East just after you have sampleWidget ready. This is possible because you can add more than one East do the DockLayoutPanel widget. Hope this helps. On 2 Jul, 09:28, nasionalem sakarya.me...@gmail.com wrote: Hello, I'm new in GWT development and need some help. I use GWT 2.0 and in my project I have a DockLayoutPanel which inculudes north, south, east and west. I have added a widget in East edge. But Its on right side of the East edge. How can I align the widget to the right side in East edge? // Sample Code DockLayoutPanel p = new DockLayoutPanel(Unit.EM); p.addNorth(new HTML(north), 5); p.addSouth(new HTML(south), 2); p.addEast(new HTML(east), 20); p.addWest(new HTML(west), 2); p.addEast(sampleWidget,20); //I have tried this // mainPanel.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_RIGHT); //But it just align the things (texts, buttons...) to right side in the widget. // The widget still right side Thanks -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
GWT-RPC on glassfish and Servlet 3.0 specifications
Hello All, My gwt app running on Glassfish 3.01 appserver. When I debugging servlet code I see that it use com.sun.enterprise.web.rpc.connector.coyote.PwcCoyoteRequest for HttpServletRequest. It compatible with old Servlet 2.0, but I need new Servlet 3.0 compatible HttpServletRequest. this PwcCoyoteRequest is in web-glue.jar at glassfish modules direcory. War of my gwt app _doesn't_ contains this jar. All of other servlet is serviced by a new Servlet 3 on glassfish except gwt apps. Where can I setting to which jar is using for gwt apps? thx a lot Zamek -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Any bulk file upload in gwt?
Is there any. like a lib that will use the flash mass uploading? -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Google Plugin for Eclipse 1.4 M2
Excited about Google Web Toolkit 2.1 M2http://googlewebtoolkit.blogspot.com/2010/07/gwt-21-milestone-2-is-now-available.html? There's also a new Google Plugin for Eclipse 1.4 M2 to go along with it. Check out the new Speed Tracerhttp://code.google.com/webtoolkit/speedtracer/integration -- a simple toolbar button will launch Chrome and Speed Tracer to help you identify and fix performance problems in your web apps. Once you find an issue, you can click on a link in Speed Tracer to jump directly to that line of code in Eclipse. There are also many bug fixes, and smaller features like the ability to double-click URLs in the Development Mode view or the ability to halt an in-progress Deploy to App Engine or GWT compile. We recommend you install this on a clean Eclipse installation. Here are the update sites: - Eclipse Helios (3.6): http://google-web-toolkit.googlecode.com/svn/2.1.0.M2/eclipse/plugin/3.6 - Eclipse Galileo (3.5): http://google-web-toolkit.googlecode.com/svn/2.1.0.M2/eclipse/plugin/3.5 - Eclipse Ganymede (3.4): http://google-web-toolkit.googlecode.com/svn/2.1.0.M2/eclipse/plugin/3.4 - Eclipse Europa (3.3): http://google-web-toolkit.googlecode.com/svn/2.1.0.M2/eclipse/plugin/3.6 Enjoy! -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: SuggestBox question - is it possible to react on sub sequences of the words?
Sure. Just write your own SuggestOracle implementation. On Fri, Jul 2, 2010 at 11:21 AM, crojay78 croja...@googlemail.com wrote: Hi, I am using the suggest box in my app. Now I'm searching for the possibility to change the filter. Is it possible to change the behaviour so that not only words which start with the input will be suggested also words where the input occurs anywhere in the name. If I have a list like this Jim Tim Mike Frank Now it just reacts if you hit the first character. But I want that if you type in im you would have Jim and Tim as suggestions Thanks -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.comgoogle-web-toolkit%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: Google Plugin for Eclipse 1.4 M2
Sounds great. :) Will (is?) it be possible to use Speed Tracer with stable channel Chrome? Last time I checked (week ago) development channel Chrome was required; unfortunately it does not seem to support profiles. (Ctrl+M did not work with --enable-udd-profiles.) Also does the clean-Eclipse-installation recommendation apply to the milestone only? It is kinda weird to d/l and re-install Eclipse because of plugin update. :( Regads J. Záruba On Fri, Jul 2, 2010 at 11:21 PM, Jason Parekh jasonpar...@gmail.com wrote: Excited about Google Web Toolkit 2.1 M2http://googlewebtoolkit.blogspot.com/2010/07/gwt-21-milestone-2-is-now-available.html? There's also a new Google Plugin for Eclipse 1.4 M2 to go along with it. Check out the new Speed Tracerhttp://code.google.com/webtoolkit/speedtracer/integration -- a simple toolbar button will launch Chrome and Speed Tracer to help you identify and fix performance problems in your web apps. Once you find an issue, you can click on a link in Speed Tracer to jump directly to that line of code in Eclipse. There are also many bug fixes, and smaller features like the ability to double-click URLs in the Development Mode view or the ability to halt an in-progress Deploy to App Engine or GWT compile. We recommend you install this on a clean Eclipse installation. Here are the update sites: - Eclipse Helios (3.6): http://google-web-toolkit.googlecode.com/svn/2.1.0.M2/eclipse/plugin/3.6 - Eclipse Galileo (3.5): http://google-web-toolkit.googlecode.com/svn/2.1.0.M2/eclipse/plugin/3.5 - Eclipse Ganymede (3.4): http://google-web-toolkit.googlecode.com/svn/2.1.0.M2/eclipse/plugin/3.4 - Eclipse Europa (3.3): http://google-web-toolkit.googlecode.com/svn/2.1.0.M2/eclipse/plugin/3.6 Enjoy! -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.comgoogle-web-toolkit%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: UiBinder and Event Handlers (General Performance Question)
On 1 juil, 21:05, Jim rightscr...@gmail.com wrote: I have a question about the use of the Uibinder with regard to the simple binding of event handlers. From the examples in the - Developer's Guide - Event Handlers - section, it’s written: “Using anonymous inner classes as in the above example can use excessive memory for a large number of widgets, since it results in the creation of many handler objects. Instead of creating separate instances of the ClickHandler object for each widget that needs to be listened to, a single handler can be shared between many widgets. Widgets declare themselves as the source of an event when they invoke a handler method, allowing a single handler to distinguish between multiple event publishers with an event object's getSource() method. This makes better use of memory but requires slightly more code, as shown in the following example:” And then ... from the examples given in the -Declarative Layout with UiBinder Simple binding of event handlers section, it’s written: “In a UiBinder owner class, you can use the @UiHandler annotation to have all of that anonymous class nonsense written for you.” Does this mean that when I use the Uibinder approach in GWT 2.0 that the excessive memory for a large number of widgets is now the result of this implementation? Or is this drawback taken care of by the code generated by the GWT compiler? UiBinder will generate a ClickHandler for each @UiHandler (at least for now, it's been said it could change in the future). Or is there another way of coding the UiBinder and @UiHandler for these cases where a user-interface has many widgets ... say like many text input boxes? You can code a single @UiHandler for your many input boxes and then use the event's getSource within your method. Or perhaps, I'm wondering, with the speed of processors today, that this trade off for easy coding and readability offsets the slight loss in performance? Is this the idea behind using UiBinders in this manner? I think the idea is that UiBinder can do whatever it thinks is necessary to make the code fast in most cases, it's just doing it for now. But the advice is more generally that you could also use event delegation, i.e. register a single event handler at the Composite/ Widget level, which will receive the events of all child elements/ widgets (by way of bubbling the DOM), instead of attaching a handler (even if it's the same handler) to each child element. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: Eclipse plugin for Eclipse 3.5 and GWT 2.1.0.M1
On 2 juil, 17:51, kawanka kawa...@nbnet.nb.ca wrote: When I create a new GWT project using Eclipse 3.5 the GWT 2.1.0 M1 and the accompanying plugin, I see that my project's libraries has GWT SDK -2.1.0M1 in the project's build path. which is what you would expect... The thing is though... I see gwt-bikeshed.jar, gwt-user.jar and gwt-dev.jar... what is gwt-bikeshed.jar doing there and how do I delete it from this library setting?. It's causing errors to show up in my console when I debug... thanks in advance.. 2.1.M1 had a little bug in module inheritance causing those error messages. gwt-bikeshed was there so you could test the new Cell widgets, RequestFactory, etc. The workaround is to inherit/ the ValueStore module. But 2.1M2 is now out, and the bug is fixed. Also, all of these new features have been moved from gwt-bikeshed to gwt-user, but really that's more a matter of packaging than anything else. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: How to show a load screen during rpc call?
On 2 juil, 18:22, andreas horst.andrea...@googlemail.com wrote: You could show your load screen (for example a popup panel or even just a label) right after issuing the RPC and hide it in onSuccess() and onFailure(). And if you want the same panel to be shown in most cases, you could bake it into a RpcRequestBuilder that you then inject inside you RemoteService/Async, and that's it, nothing special to be done at the call site of your service's method. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Application some times doesn't load in some browsers
Hi All, I have one application with GWT 2.0.3 + GXT 2.1.1 + gwt-maven-plugin 1.2. Sometimes this application run OK, but sometimes when I am runing my Application in development mode it doesn't load in some browsers... some times doesn't load in IE, sometimes doesn't load in FF but always load in Google Chrome... When it doesn't load in some browser it doesn't throws error and also doesn't show the browser tab in GWT Development Mode... Is important to say that to start my app I execute in msdos: mvn gwt:debug and after start one launch in the eclipse... Somebody already had this problem? Thanks a lot -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: xs linker does not support all GWT features?
Not sure if you meant to write just to me or reply to the list, but I'll forward this on to everyone. Shortly after I wrote that post it was discussed on the Contributors list that there was indeed a fundamental issue preventing the xs linker from working with code splitting, but that a patch was in the works. The fix landed on trunk in March http://code.google.com/p/google-web-toolkit/source/browse/trunk/dev/core/src/com/google/gwt/core/linker/XSLinker.java?spec=svn8358r=7806 but I'm not sure if that made it into 2.0.4 (or whatever) or if it will be released with 2.1. On Tue, Jun 29, 2010 at 12:58 AM, Danny Goovaerts danny.goovae...@gmail.com wrote: I have exactly the same request,i.e. use the xs linker together with code splitting (I use code splitting to chunk up a rather large application (800k), but even then it is advantageous to have caching of the js modules when using https). DId anyone try to make the changes mentioned below? Did you succeed? Thanks in advance, Danny On 12 feb, 01:30, Brendan Kenny bcke...@gmail.com wrote: On Feb 11, 3:52 pm, Jonas Huckestein jonas.huckest...@me.com wrote: Hi everybody, does anybody know why thexslinker does not supportcode-splitting? Are there any other features that are not fully supported? I am currently trying to build a framework that allows for easy wave gadget development in GWT (including side-by-side testing of gadgets in hosted mode). Given the shortcomings of the gwt-gadget linker (which produces only one huge code file instead of one for each permutation), we were trying to figure out what else we could do over at the wave dev group. (you can follow the discussion here:http://groups.google.com/group/google-wave-api/browse_thread/thread/2... ) It would be nice to get some statement on this from a googler. Since Wave is developed using GWT I would like to be able to develop extensions using GWT, as well. Cheers, Jonas -- Jonas Huckesteinhttp://thezukunft.com Hi Jonas, Yes, the iframe (std) linker was the only official primary linker set up to handlecode splitting. I only use that linker and haven't dug too deeply, so I don't know if that was done because of a fundamental problem, for performance/efficiency reasons, or if was just left as an exercise to developers since there wasn't much of a call for it. If it's one of the latter two, it shouldn't be hard to adapt code from the iframe and selectionscript linkers and incorporate it into a version of thexslinker. If you aren't already familiar with it, the key method is doEmitCompilation() in SelectionScriptLinker. CompilationResult artifacts have a String array of the js code associated with that permutation, each entry containing a code fragment. The linker prepares the primary fragment to load correctly, but subsequent fragments are just output directly to a matching subdirectory. http://www.google.com/codesearch/p?hl=en#A1edwVHBClQ/dev/core/src/com...http://www.google.com/codesearch/p?hl=en#A1edwVHBClQ/dev/core/src/com... -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: getting the current row count from the button
Below is the code for ClickHandler I have written for removing a row. The button is placed in each row in the FlexTable and removes that particular row. public class RemoveRowButtonClickHandler implements ClickHandler { @Override public void onClick(ClickEvent event) { Cell cell = flexTable.getCellForEvent(event); if(cell != null) { removeRow(cell.getRowIndex()); } } } On Jul 2, 5:52 pm, nasionalem sakarya.me...@gmail.com wrote: Hello, I have a simple problem. I am using GWT 2.0 and I need help. I add a row with a button in FlexTable. The button should remove the row when click. But I didnt get current current row count.. private void addItem() { // Add a button to remove this Item from the table. final int itemRowCount = testFlexTable.getRowCount(); final Button removeStockButton = new Button(x); removeStockButton.addStyleDependentName(remove); removeStockButton.setTabIndex(itemRowCount); removeStockButton.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { int removedIndex = // ** I should get the current current row count here *** testFlexTable.removeRow(removedIndex); }}); testFlexTable.setText(itemRowCount, 0, Test + itemRowCount); testFlexTable.setWidget(itemRowCount, 1, removeStockButton);} -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
[gwt-contrib] Re: Add WebSocket API (issue646803)
On Fri, Jul 2, 2010 at 2:37 AM, j...@google.com wrote: http://gwt-code-reviews.appspot.com/646803/show All in all, it really feels over-engineered to me. Sorry to be harsh, but let me explain: What's the purpose of RawWebSocketImpl vs. WebSocket? that you could do a new WebSocket() instead of WebSocket.newInstance() ? (I don't dispute the interface+implementation, which is more-than-useful for mockability). When you look at the WebSocketTest, it actually doesn't test anything really useful, only that a 'short' state is correctly converted into a 'State' enum value, and that the generic event-name+EventListener+event-handler-as-Object is correctly mapped to/from event-specific-method+event-specific-handler+HandlerRegistration (actually, it doesn't even test the HandlerRegistration behavior). What this dichotomy buys us? a cleaner API? why couldn't it be built at the interface level (currently named RawWebSocket)? Imagine a WebSocket implemented as the following (using Joel's proposed event API): public class NativeWebSocket extends JavaScriptObject implements WebSocket { public static native NativeWebSocket newInstance(String url, String subProtocol) /*-{ return new WebSocket(url, subProtocol); }-*/; public final State getReadyState() { return State.values()[nativeGetReadyState()]; } public final native String getUrl() /*-{ return this.url; }-*/; // we know long has a cost in GWT, so should we use it? // moreover given than Java's double exactly maps to JS's Number public final native double getBufferredAmount() /*-{ return this.bufferredAmount; }-*/; public final native boolean send(String data) /*-{ return this.send(data); }-*/; public final void addOpenListener(EventListenerOpenEvent listener) { EventTarget.as(this).addEventListener(open, listener); } public final void addCloseListener(EventListenerCloseEvent listener) { EventTarget.as(this).addEventListener(close, listener); } public final void addErrorListener(EventListenerErrorEvent listener) { EventTarget.as(this).addEventListener(error, listener); } public final void addMessageListener(EventListenerMessageEvent listener) { EventTarget.as(this).addEventListener(message, listener); } public final void removeOpenListener(EventListenerOpenEvent listener) { EventTarget.as(this).removeEventListener(open, listener); } public final void removeCloseListener(EventListenerCloseEvent listener) { EventTarget.as(this).removeEventListener(close, listener); } public final void removeErrorListener(EventListenerErrorEvent listener) { EventTarget.as(this).removeEventListener(error, listener); } public final void removeMessageListener(EventListenerMessageEvent listener) { EventTarget.as(this).removeEventListener(message, listener); } private native int nativeGetReadyState /*-{ return this.readyState; }-*/; protected NativeWebSocket() { } } It wouldn't make it impossible to use a non-native implementation of the interface (e.g. using Adobe AIR's sockets, or Flash/Java applet/Silverlight sockets in a browser) on environments/browsers where it's not supported (you'd just have to instantiate it different, either using a factory or dependency injection, and with deferred binding or a runtime supportsWebSocket check) without impacting testability either. If the goal of WebSocket vs. RawWebSocket is to provide a higher-level API (similar to RequestBuilder vs. XmlHttpRequest), then I think it could make use of c.g.g.event, but then I think it should use the whole GwtEvent+EventHandler+HandlerManager suite. But as it is done in this patch, there's not enough differentiation to make the extra-level of indirection worth it IMO. (actually, RawWebSocket (or the WebSocket above) could use setXxxListener methods instead of add/removeXxxListener (and possibly using onxxx instead of add/removeEventListener in the JSNI), as there's really not many reasons to have several listeners for a single event of a single WebSocket –similar to the setDelegate of the new Cell-based widgets) -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Add WebSocket API (issue646803)
Here's what I think... What's the purpose of RawWebSocketImpl vs. WebSocket? that you could do a new WebSocket() instead of WebSocket.newInstance() ? (I don't dispute the interface+implementation, which is more-than-useful for mockability). Different browsers might have a slightly different WebSocket object implementation, so it seems to be necessary to be able to inject different implementations for different browsers. The other thing is that it feels much more natural to instantiate a java objet using syntax like new WebSocket() compared to WebSocket.newInstance(). Third, it adds to the testability. When you look at the WebSocketTest, it actually doesn't test anything really useful, only that a 'short' state is correctly converted into a 'State' enum value, and that the generic event-name+EventListener+event-handler-as-Object is correctly mapped to/from event-specific-method+event-specific-handler+HandlerRegistration (actually, it doesn't even test the HandlerRegistration behavior). I reckon more test will be added. This is not a final implementation. (Up in the thread it says that this is not ready to submit yet, this is a work in progrss. Right, John?) What this dichotomy buys us? a cleaner API? why couldn't it be built at the interface level (currently named RawWebSocket)? RawWebSocket is the contract that each RawWebSocket implementation needs to adhere to. I'm not sure what you would put here... http://gwt-code-reviews.appspot.com/646803/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Inserting TreeItems into the logical list in the same spot that they are inserted into the physi... (issue645802)
@rice - Do you mind taking another look at the updated Patch Set? http://gwt-code-reviews.appspot.com/645802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
Re: [gwt-contrib] UiBinder tweaks for GWT Designer
On Thu, Jul 1, 2010 at 3:55 PM, Konstantin Scheglov konstantin.scheg...@gmail.com wrote: What does WBP stand for? WBP is acronym for WindowBuilder Prohttp://www.instantiations.com/windowbuilder/ - set of plugins for Eclipse for WYSIWYG development of GUI for Swing, SWT, RCP, XWT and GWT. Path in XML is / separated string of indexes. For example in ui:UiBinder ui:style/ g:FlowPanel styleName={style.panel} g:Button text=New Button/ /g:FlowPanel /ui:UiBinder 0/1 is FlowPanel 0/1/0 is Button This doesn't sound like a tooling hook, it sounds like a data binding framework, and a very run time one — not really how we like to do things, and not how we're gearing up to write our own data binding support this month. What is the model object we're talking about? Does GWT designer impose a particular architecture on its users, or is it an implementation detail of designer itself? GWT Designer http://www.instantiations.com/gwtdesigner/ is tool for WYSIWYG building of GWT UI, which development I lead at Instantiations. Its latest release works only with Java source for GWT, but now I work on UiBinder support too and many things already workhttp://dl.dropbox.com/u/76691/Eclipse/images/Screenshot-20100701-232651.png . This is absolutely not related to databinding, we just want to produce GUI builder for UiBinder. I think that tooling was specified as one of the reasons to use XML for GWT UI. So, this is on what I work now. :-) Well that makes a lot more sense. :-) It occurs to me that this could be a lot easier when we revive r7816http://code.google.com/p/google-web-toolkit/source/detail?r=7816, which I had to roll back (r7858http://code.google.com/p/google-web-toolkit/source/detail?spec=svn8346r=7858) due to its naive handling of tables. If we make the paths the binder builds part of its public api, you could have your map and we wouldn't have to think as hard about hiding design time hooks from developers, or at least not all of them. Certainly, you shouldn't make your changes before that code comes back (and it really, really needs to come back). In your original note you suggested: In method createAndBindUi() directly after creating each Widget instance (but before applying setX() methods) wbpObjectHandler is used to notify GWT Designer about new widget and its path in XML. GWT Designer bind Widget instance to model (using path) and also asks default values for all properties using getX() methods. Why do you need this notice before the set calls? I'd be a lot more comfortable with hooks that happen at code generation time, e.g. to allow you to navigate the model binder builds before things get written to disk. Note, that nothing is going to be written on disk, because we speak only about design time. For design time we use tweaked dev code, what we call hosted mode support, which we use to create CompilingClassLoader. And for design time we don't write any output of generators on disk. Users don't need this at design time. And any such wbp related code (note, this is just current name, we could use for example designTime prefix) will be generated only if Beans.isDesignTime() is set to true. Nothing will be generated for dev mode or deploy mode. 4. To allow quick updates of design canvas as user changes properties, without reloading GWT context each time, we should: 4.1. Generate Binder implementation class with new name each time, so be able to define each time new class in same ClassLoader. Right now we just add current time to the name of class. //XXX Instantiations // generate class with new name each time, to allow refresh in same ClassLoader implName += _wbp + System.currentTimeMillis(); //XXX Instantiations We could not do this with a timestamp, as it's important that the same code always produce the same binary. Would appending an md5 sum to the class name do the trick? Well, I hope that now it is clear that nothing is going to be produced with such design time tweaks. At these modes generated code will be exactly same as it is now. But if we can avoid having alternative behavior at design time life is simpler. Would check sums on the generated class names meet that need? -- Konstantin Scheglov, Instantiations, Inc. -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Add support for creating Grid elements using UiBinder. (issue154810)
Remember this? It's really close, I think just one more change is needed (below). http://gwt-code-reviews.appspot.com/154810/diff/22003/54004 File user/test/com/google/gwt/uibinder/elementparsers/GridParserTest.java (right): http://gwt-code-reviews.appspot.com/154810/diff/22003/54004#newcode114 user/test/com/google/gwt/uibinder/elementparsers/GridParserTest.java:114: fieldName.resizeColumns(2);, All these redundant calls to resizeColumns and resizeRows are troubling. It would be better to emit a single call. http://gwt-code-reviews.appspot.com/154810/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Add support for creating Grid elements using UiBinder. (issue154810)
Yeah, I do remember. I will make the change later today. On 2010/07/02 14:40:57, Ray Ryan wrote: Remember this? It's really close, I think just one more change is needed (below). http://gwt-code-reviews.appspot.com/154810/diff/22003/54004 File user/test/com/google/gwt/uibinder/elementparsers/GridParserTest.java (right): http://gwt-code-reviews.appspot.com/154810/diff/22003/54004#newcode114 user/test/com/google/gwt/uibinder/elementparsers/GridParserTest.java:114: fieldName.resizeColumns(2);, All these redundant calls to resizeColumns and resizeRows are troubling. It would be better to emit a single call. http://gwt-code-reviews.appspot.com/154810/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Fix issue 4781: allow HTML= in UiBinder for setHTML() (issue642801)
Thanks for the patch, Thomas. Yeah, I hate to say this but could you make the fix backward compatible? http://gwt-code-reviews.appspot.com/642801/diff/1/3 File user/test/com/google/gwt/uibinder/rebind/model/OwnerFieldClassTest.java (right): http://gwt-code-reviews.appspot.com/642801/diff/1/3#newcode62 user/test/com/google/gwt/uibinder/rebind/model/OwnerFieldClassTest.java:62: assertMethod(htmlSetter, setHTML, gwtTypeAdapter.adaptJavaClass(String.class)); Rather than completely replacing the test for a conventionally named field, could you make the HTML test an additional one? That should be as simple as repeating these last few lines for setText http://gwt-code-reviews.appspot.com/642801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r8347 committed - Adds parser for TextAlignConstant, which accepts both friendly names...
Revision: 8347 Author: rj...@google.com Date: Fri Jul 2 04:56:18 2010 Log: Adds parser for TextAlignConstant, which accepts both friendly names and the UGLY_ONES used in code. Horiz and Vert constant parsers retrofitted with the same friendliness. Patch by konstantin.scheg...@gmail.com Review by rj...@google.com http://gwt-code-reviews.appspot.com/612803 Review by: j...@google.com http://code.google.com/p/google-web-toolkit/source/detail?r=8347 Added: /trunk/user/src/com/google/gwt/uibinder/attributeparsers/TextAlignConstantParser.java /trunk/user/test/com/google/gwt/uibinder/attributeparsers/HorizontalAlignmentConstantParserTest.java /trunk/user/test/com/google/gwt/uibinder/attributeparsers/TextAlignConstantParserTest.java /trunk/user/test/com/google/gwt/uibinder/attributeparsers/VerticalAlignmentConstantParserTest.java Modified: /trunk/user/src/com/google/gwt/uibinder/attributeparsers/AttributeParsers.java /trunk/user/src/com/google/gwt/uibinder/attributeparsers/HorizontalAlignmentConstantParser.java /trunk/user/src/com/google/gwt/uibinder/attributeparsers/LengthAttributeParser.java /trunk/user/src/com/google/gwt/uibinder/attributeparsers/VerticalAlignmentConstantParser.java /trunk/user/src/com/google/gwt/user/client/ui/HasHorizontalAlignment.java /trunk/user/src/com/google/gwt/user/client/ui/HasVerticalAlignment.java /trunk/user/src/com/google/gwt/user/client/ui/ValueBoxBase.java /trunk/user/test/com/google/gwt/uibinder/UiBinderJreSuite.java /trunk/user/test/com/google/gwt/uibinder/test/UiJavaResources.java === --- /dev/null +++ /trunk/user/src/com/google/gwt/uibinder/attributeparsers/TextAlignConstantParser.java Fri Jul 2 04:56:18 2010 @@ -0,0 +1,58 @@ +/* + * Copyright 2007 Google Inc. + * + * Licensed under the Apache License, Version 2.0 (the License); you may not + * use this file except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ +package com.google.gwt.uibinder.attributeparsers; + +import com.google.gwt.core.ext.UnableToCompleteException; +import com.google.gwt.core.ext.typeinfo.JType; +import com.google.gwt.uibinder.rebind.MortalLogger; +import com.google.gwt.user.client.ui.TextBoxBase; + +import java.util.HashMap; + +/** + * Parses a {...@link com.google.gwt.user.client.ui.TextBoxBase.TextAlignConstant}. + */ +class TextAlignConstantParser extends StrictAttributeParser { + + private static final String PREFIX = TextBoxBase.class.getCanonicalName() + + .ALIGN_; + private static final HashMapString, String values = new HashMapString, String(); + + static { +values.put(LEFT, PREFIX + LEFT); +values.put(CENTER, PREFIX + CENTER); +values.put(RIGHT, PREFIX + RIGHT); +values.put(JUSTIFY, PREFIX + JUSTIFY); +values.put(ALIGN_LEFT, PREFIX + LEFT); +values.put(ALIGN_CENTER, PREFIX + CENTER); +values.put(ALIGN_RIGHT, PREFIX + RIGHT); +values.put(ALIGN_JUSTIFY, PREFIX + JUSTIFY); + } + + TextAlignConstantParser(FieldReferenceConverter converter, JType type, + MortalLogger logger) { +super(converter, type, logger); + } + + @Override + public String parse(String value) throws UnableToCompleteException { +String translated = values.get(value.toUpperCase()); +if (translated != null) { + return translated; +} +return super.parse(value); + } +} === --- /dev/null +++ /trunk/user/test/com/google/gwt/uibinder/attributeparsers/HorizontalAlignmentConstantParserTest.java Fri Jul 2 04:56:18 2010 @@ -0,0 +1,76 @@ +/* + * Copyright 2009 Google Inc. + * + * Licensed under the Apache License, Version 2.0 (the License); you may not + * use this file except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ +package com.google.gwt.uibinder.attributeparsers; + +import com.google.gwt.core.ext.TreeLogger; +import com.google.gwt.core.ext.UnableToCompleteException; +import com.google.gwt.core.ext.typeinfo.TypeOracle; +import com.google.gwt.dev.javac.CompilationState; +import com.google.gwt.dev.javac.CompilationStateBuilder; +import com.google.gwt.uibinder.rebind.MortalLogger; +import
[gwt-contrib] Adds EventTarget, add/removeEventListener() et al to gwt dom. (issue623803)
Reviewers: tbroyer, Description: Adds EventTarget, add/removeEventListener() et al to gwt dom. Note: This is not remotely finished, nor is the API certain. Please review this at http://gwt-code-reviews.appspot.com/623803/show Affected files: M user/src/com/google/gwt/dom/client/DOMImpl.java M user/src/com/google/gwt/dom/client/DOMImplStandard.java M user/src/com/google/gwt/dom/client/DOMImplTrident.java M user/src/com/google/gwt/dom/client/Element.java M user/src/com/google/gwt/dom/client/EventTarget.java M user/src/com/google/gwt/dom/client/Node.java M user/test/com/google/gwt/dom/DOMSuite.java A user/test/com/google/gwt/dom/client/EventTest.java -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Adds Event.sinkEvent() to make it possible to sink custom events in gwt-user. Reimplements (issue635802)
Reviewers: tbroyer, Description: Adds Event.sinkEvent() to make it possible to sink custom events in gwt-user. Reimplements gwt-user event handling in terms of standard dom EventTarget methods. Note: This is not remotely finished, nor the API certain. Please review this at http://gwt-code-reviews.appspot.com/635802/show Affected files: M user/src/com/google/gwt/user/client/DOM.java M user/src/com/google/gwt/user/client/Event.java M user/src/com/google/gwt/user/client/impl/DOMImpl.java M user/src/com/google/gwt/user/client/impl/DOMImplMozilla.java M user/src/com/google/gwt/user/client/impl/DOMImplOpera.java M user/src/com/google/gwt/user/client/impl/DOMImplStandard.java M user/src/com/google/gwt/user/client/impl/DOMImplTrident.java M user/test/com/google/gwt/user/client/EventTest.java -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Adding microbenchmark for event sinking (using gwt-user Event.sinkEvents()). (issue668802)
Reviewers: tbroyer, Description: Adding microbenchmark for event sinking (using gwt-user Event.sinkEvents()). Please review this at http://gwt-code-reviews.appspot.com/668802/show Affected files: M reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/Microbenchmarks.java A reference/Microbenchmarks/src/com/google/gwt/reference/microbenchmark/client/UserEventSinks.java -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Fix issue 4781: allow HTML= in UiBinder for setHTML() (issue642801)
http://gwt-code-reviews.appspot.com/642801/diff/1/3 File user/test/com/google/gwt/uibinder/rebind/model/OwnerFieldClassTest.java (right): http://gwt-code-reviews.appspot.com/642801/diff/1/3#newcode62 user/test/com/google/gwt/uibinder/rebind/model/OwnerFieldClassTest.java:62: assertMethod(htmlSetter, setHTML, gwtTypeAdapter.adaptJavaClass(String.class)); On 2010/07/02 14:48:33, Ray Ryan wrote: Rather than completely replacing the test for a conventionally named field, could you make the HTML test an additional one? That should be as simple as repeating these last few lines for setText Isn't that what I did? I.e. adding setHTML/HTML below setVisible/visible? Now, I'll add a third, non-regression test for setHTML/hTML. http://gwt-code-reviews.appspot.com/642801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Adds EventTarget, add/removeEventListener() et al to gwt dom. (issue623803)
http://gwt-code-reviews.appspot.com/623803/diff/1/3 File user/src/com/google/gwt/dom/client/DOMImplStandard.java (right): http://gwt-code-reviews.appspot.com/623803/diff/1/3#newcode115 user/src/com/google/gwt/dom/client/DOMImplStandard.java:115: public native void addEventListener(EventTarget target, String type, How about returning Object here as the opaque handle for remove? Then you could just return the callback fuction and avoid the map. http://gwt-code-reviews.appspot.com/623803/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r8348 committed - Inserting TreeItems into the logical list in the same spot that they a...
Revision: 8348 Author: jlaba...@google.com Date: Fri Jul 2 05:43:30 2010 Log: Inserting TreeItems into the logical list in the same spot that they are inserted into the physical DOM. This fixes a bug where keyboard navigation occurs out of order, and generally makes the logical and physical structures consistent. Review at http://gwt-code-reviews.appspot.com/645802 Review by: r...@google.com http://code.google.com/p/google-web-toolkit/source/detail?r=8348 Modified: /trunk/user/src/com/google/gwt/user/client/ui/Tree.java /trunk/user/src/com/google/gwt/user/client/ui/TreeItem.java /trunk/user/test/com/google/gwt/user/client/ui/TreeItemTest.java /trunk/user/test/com/google/gwt/user/client/ui/TreeTest.java === --- /trunk/user/src/com/google/gwt/user/client/ui/Tree.java Mon Jun 7 10:39:00 2010 +++ /trunk/user/src/com/google/gwt/user/client/ui/Tree.java Fri Jul 2 05:43:30 2010 @@ -999,60 +999,7 @@ // The 'root' item is invisible and serves only as a container // for all top-level items. -root = new TreeItem() { - @Override - public void insertItem(int beforeIndex, TreeItem item) - throws IndexOutOfBoundsException { -// Check the index. -int childCount = getChildCount(); -if (beforeIndex 0 || beforeIndex childCount) { - throw new IndexOutOfBoundsException(); -} - -// If this element already belongs to a tree or tree item, remove it. -if ((item.getParentItem() != null) || (item.getTree() != null)) { - item.remove(); -} - -// Physical attach. -Element treeElem = Tree.this.getElement(); -if (beforeIndex == childCount) { - treeElem.appendChild(item.getElement()); -} else { - Element beforeElem = getChild(beforeIndex).getElement(); - treeElem.insertBefore(item.getElement(), beforeElem); -} - -// Logical attach. -item.setTree(this.getTree()); - -// Explicitly set top-level items' parents to null. -item.setParentItem(null); -getChildren().add(item); - -// Use no margin on top-most items. -if (LocaleInfo.getCurrentLocale().isRTL()) { - DOM.setIntStyleAttribute(item.getElement(), marginRight, 0); -} else { - DOM.setIntStyleAttribute(item.getElement(), marginLeft, 0); -} - } - - @Override - public void removeItem(TreeItem item) { -if (!getChildren().contains(item)) { - return; -} - -// Update Item state. -item.setTree(null); -item.setParentItem(null); -getChildren().remove(item); - -DOM.removeChild(Tree.this.getElement(), item.getElement()); - } -}; -root.initChildren(); +root = new TreeItem(true); root.setTree(this); setStyleName(gwt-Tree); === --- /trunk/user/src/com/google/gwt/user/client/ui/TreeItem.java Mon Jun 7 10:39:00 2010 +++ /trunk/user/src/com/google/gwt/user/client/ui/TreeItem.java Fri Jul 2 05:43:30 2010 @@ -38,6 +38,12 @@ * /p */ public class TreeItem extends UIObject implements HasHTML { + + /** + * The margin applied to child items. + */ + private static final double CHILD_MARGIN = 16.0; + /** * Implementation class for {...@link TreeItem}. */ @@ -247,6 +253,12 @@ private ArrayListTreeItem children; private Element contentElem, childSpanElem, imageHolder; + + /** + * Indicates that this item is a root item in a tree. + */ + private boolean isRoot; + private boolean open; private TreeItem parent; private boolean selected; @@ -261,10 +273,7 @@ * Creates an empty tree item. */ public TreeItem() { -Element elem = DOM.clone(BASE_BARE_ELEM, true); -setElement(elem); -contentElem = DOM.getFirstChild(elem); -DOM.setElementAttribute(contentElem, id, DOM.createUniqueId()); +this(false); } /** @@ -286,6 +295,24 @@ this(); setWidget(widget); } + + /** + * Creates an empty tree item. + * + * @param isRoot true if this item is the root of a tree + */ + TreeItem(boolean isRoot) { +this.isRoot = isRoot; +Element elem = DOM.clone(BASE_BARE_ELEM, true); +setElement(elem); +contentElem = DOM.getFirstChild(elem); +DOM.setElementAttribute(contentElem, id, DOM.createUniqueId()); + +// The root item always has children. +if (isRoot) { + initChildren(); +} + } /** * Adds a child tree item containing the specified text. @@ -305,6 +332,9 @@ * @param item the item to be added */ public void addItem(TreeItem item) { +// If this is the item's parent, removing the item will affect the child +// count. +maybeRemoveItemFromParent(item); insertItem(getChildCount(), item); } @@ -441,9 +471,7 @@ public void insertItem(int beforeIndex, TreeItem item) throws
[gwt-contrib] Re: Inserting TreeItems into the logical list in the same spot that they are inserted into the physi... (issue645802)
committed as r8348 http://gwt-code-reviews.appspot.com/645802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Adds Event.sinkEvent() to make it possible to sink custom events in gwt-user. Reimplements (issue635802)
http://gwt-code-reviews.appspot.com/635802/diff/1/3 File user/src/com/google/gwt/user/client/Event.java (right): http://gwt-code-reviews.appspot.com/635802/diff/1/3#newcode556 user/src/com/google/gwt/user/client/Event.java:556: DOM.sinkEvent((com.google.gwt.user.client.Element) elem, type, sink); I'm not 100% sold on the idea of this method. The alternative would be to simply continue defining event bits for all the new events we can find. But I was also kind of hoping to get an escape hatch that would allow people to use new events as they become available, rather than waiting on us to add new bits and push a new GWT version. http://gwt-code-reviews.appspot.com/635802/diff/1/4 File user/src/com/google/gwt/user/client/impl/DOMImpl.java (right): http://gwt-code-reviews.appspot.com/635802/diff/1/4#newcode130 user/src/com/google/gwt/user/client/impl/DOMImpl.java:130: sinkEvent(elem, eventGetType(bit), (bits bit) != 0); We have to route sinkEvents(bits) through the new sinkEvent(string) because it's pretty much the only way to ensure that the two sink methods play well together. I think it would be a Bad Thing to have the same event sunk twice, because it would create potentially hard-to-debug situations where you're receiving events twice in onBrowserEvent(). The downside is that this is pretty inefficient because of all the non-inlineable layers of indirection, the added __events map, and the extra work going on in Element.addEventListener(). A simpler, more efficient, but slightly confusing alternative would be to keep sinkEvent() and sinkEvents() completely separate, and let people know that if they use both for the same event, they'll just get duplicate events. Then create event bits for the current well-known event types and be done with it. http://gwt-code-reviews.appspot.com/635802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Adds EventTarget, add/removeEventListener() et al to gwt dom. (issue623803)
http://gwt-code-reviews.appspot.com/623803/diff/1/3 File user/src/com/google/gwt/dom/client/DOMImplStandard.java (right): http://gwt-code-reviews.appspot.com/623803/diff/1/3#newcode115 user/src/com/google/gwt/dom/client/DOMImplStandard.java:115: public native void addEventListener(EventTarget target, String type, On 2010/07/02 15:39:30, jat wrote: How about returning Object here as the opaque handle for remove? Then you could just return the callback fuction and avoid the map. I was trying to avoid creating a non-standard DOM interface (EventTarget already has addEventListener() defined). While your proposal is a simpler solution, it just pushes the burden on the user, who's going to be forced to do the same thing we're doing here. And while the implementation is kind of ugly, it's still efficient at runtime, which is less likely to be true if we force the user to hang on to an opaque handle. http://gwt-code-reviews.appspot.com/623803/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Adds EventTarget, add/removeEventListener() et al to gwt dom. (issue623803)
http://gwt-code-reviews.appspot.com/623803/diff/1/3 File user/src/com/google/gwt/dom/client/DOMImplStandard.java (right): http://gwt-code-reviews.appspot.com/623803/diff/1/3#newcode115 user/src/com/google/gwt/dom/client/DOMImplStandard.java:115: public native void addEventListener(EventTarget target, String type, On 2010/07/02 16:07:27, jgw wrote: I was trying to avoid creating a non-standard DOM interface (EventTarget already has addEventListener() defined). While your proposal is a simpler solution, it just pushes the burden on the user, who's going to be forced to do the same thing we're doing here. And while the implementation is kind of ugly, it's still efficient at runtime, which is less likely to be true if we force the user to hang on to an opaque handle. In most cases, the user code is never going to unregister its handlers, so it won't save the handle anyway. If it does, it would just store it in a field rather than a map, which would be more efficient than what the general implementation has to do here. http://gwt-code-reviews.appspot.com/623803/diff/1/3#newcode119 user/src/com/google/gwt/dom/client/DOMImplStandard.java:119: listen...@com.google.gwt.dom.client.eventlistener::handleEvent(Lcom/google/gwt/dom/client/NativeEvent;)(e); Why not just go ahead and add it? http://gwt-code-reviews.appspot.com/623803/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Add WebSocket API (issue646803)
I don't have a particularly strong opinion on the RawWebSocket vs. RawWebSocketImpl dichotomy, but it might be a bit more abstracted that necessary. I'm perfectly fine with the WebSocket vs. RawWebSocket difference, though, because one's a native browser class, while the other provides a more Java-centric interface. Where I think there's a breakdown, though, is that the WebSocket*Handler interface, which seem to be meant to mimic the widget-level event handlers, actually pass event objects that are JSO subtypes. This is mixing up the DOM/Java levels of abstraction in a confusing way. FWIW, I think it might be worth trying to land this in two phases: 1. Native/DOM-only stuff. The rawest possible classes necessary to interface with WebSocket. 2. Java-friendly wrappers, possibly in a separate package. This distinction is much like that between XMLHttpRequest (raw native interface) and RequestBuilder (Java-friendly, built on top of it). http://gwt-code-reviews.appspot.com/646803/diff/16001/17013 File user/src/com/google/gwt/websocket/client/RawWebSocket.java (right): http://gwt-code-reviews.appspot.com/646803/diff/16001/17013#newcode35 user/src/com/google/gwt/websocket/client/RawWebSocket.java:35: boolean useCapture); An alternative to this approach would be to use the standard EventTarget.addEventListener() signature as described in http://gwt-code-reviews.appspot.com/623803 It's a little hairier to implement, because of the need to map EventListener instances back to the lambda that wraps them, but it's easier on the user. http://gwt-code-reviews.appspot.com/646803/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Add support for creating Grid elements using UiBinder. (issue154810)
Ok, I had a look and just remembered why I used more calls to resize methods. The GridParser walks through the Grid and on the fly calculates the size. So if it comes to an element that doesn't fit into the current grid element it expands it (either by number of columns, or rows - depends which one is necessary). I thought it would be better to calculate the grid size as I walk through the grid compared to walking it first time to get the size and then once more to populate the elements. So if we had a grid like this 1, 2, 4 5, 6 7, 8, 9, 10 The method would make three calls to resize columns when walking the first row. Then expand to fit the next row and then add elements as along as their number is less then 3. (as the current size of the grid is 2, 3). The there would be one more resize rows call to expand for the next row and one more resize columns call to resize columns to fit in number 10. So in the end you would end up with grid size 3, 4. Does that make sense? http://gwt-code-reviews.appspot.com/154810/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Adds EventTarget, add/removeEventListener() et al to gwt dom. (issue623803)
http://gwt-code-reviews.appspot.com/623803/diff/1/3 File user/src/com/google/gwt/dom/client/DOMImplStandard.java (right): http://gwt-code-reviews.appspot.com/623803/diff/1/3#newcode115 user/src/com/google/gwt/dom/client/DOMImplStandard.java:115: public native void addEventListener(EventTarget target, String type, On 2010/07/02 16:12:33, jat wrote: On 2010/07/02 16:07:27, jgw wrote: I was trying to avoid creating a non-standard DOM interface (EventTarget already has addEventListener() defined). While your proposal is a simpler solution, it just pushes the burden on the user, who's going to be forced to do the same thing we're doing here. And while the implementation is kind of ugly, it's still efficient at runtime, which is less likely to be true if we force the user to hang on to an opaque handle. In most cases, the user code is never going to unregister its handlers, so it won't save the handle anyway. If it does, it would just store it in a field rather than a map, which would be more efficient than what the general implementation has to do here. Look more carefully. The production implementation just drops an expando on the listener instance. That's probably the most efficient thing you could do. Again, I think it's worth sticking to the standards here to avoid confusion at the DOM level. http://gwt-code-reviews.appspot.com/623803/diff/1/3#newcode119 user/src/com/google/gwt/dom/client/DOMImplStandard.java:119: listen...@com.google.gwt.dom.client.eventlistener::handleEvent(Lcom/google/gwt/dom/client/NativeEvent;)(e); On 2010/07/02 16:12:33, jat wrote: Why not just go ahead and add it? Did you see the description of this issue, where it says not done yet? If you want to finish it while I'm gone, be my guest :) http://gwt-code-reviews.appspot.com/623803/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Adds EventTarget, add/removeEventListener() et al to gwt dom. (issue623803)
LGTM overall. As a side note, where is the c.g.g.dom.client.EventListener defined? Could it be made generic? I like how the WebSocket proposal added a base Event class mimicking the DOM Event interface, with NativeEvent (and other WebSocket-specific events) extending it. EventListener could then be defined as interface EventListenerT extends Event. It wouldn't be as type-safe as EventHandler (which guards you against adding a handler not matching the event's type) but would save us all doing casts to the specific Event subclass as the first line of all our EventListeners. http://gwt-code-reviews.appspot.com/623803/diff/1/3 File user/src/com/google/gwt/dom/client/DOMImplStandard.java (right): http://gwt-code-reviews.appspot.com/623803/diff/1/3#newcode115 user/src/com/google/gwt/dom/client/DOMImplStandard.java:115: public native void addEventListener(EventTarget target, String type, On 2010/07/02 15:39:30, jat wrote: How about returning Object here as the opaque handle for remove? Then you could just return the callback fuction and avoid the map. And then people will come complaining that they have to keep a reference to a second object to be able to removeEventListener. Remember the HandlerRegistration.removeHandler() vs. HandlerManager.removeHandler() debate? See http://code.google.com/p/google-web-toolkit/issues/detail?id=3102 and the related issue about now adding removeXxxHandler methods everywhere: http://code.google.com/p/google-web-toolkit/issues/detail?id=4159 There's also the floating idea of issuing warnings in DevMode if you forgot to remove all event handlers, which can cause memory leaks in IE. And finally, it's closer to the DOM-Events model where you pass the exact same object in both addEventListener and removeEventListener. http://gwt-code-reviews.appspot.com/623803/diff/1/4 File user/src/com/google/gwt/dom/client/DOMImplTrident.java (right): http://gwt-code-reviews.appspot.com/623803/diff/1/4#newcode161 user/src/com/google/gwt/dom/client/DOMImplTrident.java:161: // TODO: Hang on to enough information to implement dispose() properly. I guess the implementation would be pretty similar to the DOMImplStandard one re. setFn/getFn, just that setFn would probably also push on a MapEventTarget,SetEventListener (or use an expando on the EventTarget) which would be used by dispose() In other words, maybe setFn/getFn should be instance methods (non-static) at the DOMImpl level, with DOMImplTrident overriding setFn as explained above. http://gwt-code-reviews.appspot.com/623803/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Adds EventTarget, add/removeEventListener() et al to gwt dom. (issue623803)
http://gwt-code-reviews.appspot.com/623803/diff/1/3 File user/src/com/google/gwt/dom/client/DOMImplStandard.java (right): http://gwt-code-reviews.appspot.com/623803/diff/1/3#newcode119 user/src/com/google/gwt/dom/client/DOMImplStandard.java:119: listen...@com.google.gwt.dom.client.eventlistener::handleEvent(Lcom/google/gwt/dom/client/NativeEvent;)(e); On 2010/07/02 16:21:38, jgw wrote: Did you see the description of this issue, where it says not done yet? If you want to finish it while I'm gone, be my guest :) Mostly I was assuming there was some underlying issue that needed to be considered and wondered what it was, since adding the TODO took more effort than just adding $entry() around the listener call. http://gwt-code-reviews.appspot.com/623803/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Add support for creating Grid elements using UiBinder. (issue154810)
You're trading off compile time simplicity at the expense of runtime efficiency, and it's a bad trade. Rather than emitting java lines as you walk the XML, you can build a model of what you want to write. Once you're done with your traversal, you can write out a single call to resize(int, int), and then write the rest. On Fri, Jul 2, 2010 at 12:20 PM, markovuksano...@gmail.com wrote: Ok, I had a look and just remembered why I used more calls to resize methods. The GridParser walks through the Grid and on the fly calculates the size. So if it comes to an element that doesn't fit into the current grid element it expands it (either by number of columns, or rows - depends which one is necessary). I thought it would be better to calculate the grid size as I walk through the grid compared to walking it first time to get the size and then once more to populate the elements. So if we had a grid like this 1, 2, 4 5, 6 7, 8, 9, 10 The method would make three calls to resize columns when walking the first row. Then expand to fit the next row and then add elements as along as their number is less then 3. (as the current size of the grid is 2, 3). The there would be one more resize rows call to expand for the next row and one more resize columns call to resize columns to fit in number 10. So in the end you would end up with grid size 3, 4. Does that make sense? http://gwt-code-reviews.appspot.com/154810/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Adds EventTarget, add/removeEventListener() et al to gwt dom. (issue623803)
http://gwt-code-reviews.appspot.com/623803/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Adds EventTarget, add/removeEventListener() et al to gwt dom. (issue623803)
http://gwt-code-reviews.appspot.com/623803/diff/1/4 File user/src/com/google/gwt/dom/client/DOMImplTrident.java (right): http://gwt-code-reviews.appspot.com/623803/diff/1/4#newcode161 user/src/com/google/gwt/dom/client/DOMImplTrident.java:161: // TODO: Hang on to enough information to implement dispose() properly. On 2010/07/02 16:26:08, tbroyer wrote: I guess the implementation would be pretty similar to the DOMImplStandard one re. setFn/getFn, just that setFn would probably also push on a MapEventTarget,SetEventListener (or use an expando on the EventTarget) which would be used by dispose() In other words, maybe setFn/getFn should be instance methods (non-static) at the DOMImpl level, with DOMImplTrident overriding setFn as explained above. That makes perfect sense to me. I just wanted to get the standard implementation working first. And Trident is going to require extra bookkeeping to allow dispose() to work properly (if only you could enumerate extant event handlers... sigh.). http://gwt-code-reviews.appspot.com/623803/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Adds EventTarget, add/removeEventListener() et al to gwt dom. (issue623803)
On 2010/07/02 16:26:08, tbroyer wrote: LGTM overall. As a side note, where is the c.g.g.dom.client.EventListener defined? Could it be made generic? I like how the WebSocket proposal added a base Event class mimicking the DOM Event interface, with NativeEvent (and other WebSocket-specific events) extending it. EventListener could then be defined as interface EventListenerT extends Event. It wouldn't be as type-safe as EventHandler (which guards you against adding a handler not matching the event's type) but would save us all doing casts to the specific Event subclass as the first line of all our EventListeners. Whoops, just added the missing EventListener interface. I hadn't thought about making it generic, but it's worth considering. I also agree that it makes sense to hoist out the Event base class as in the WebSocket patch. If you all would like to try and get a patch landed while I'm gone, that includes the hoisted Event class, along with the EventListener/EventTarget changes, that would be awesome, and you'd have my blessing :) http://gwt-code-reviews.appspot.com/623803/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r8349 committed - Create top-level directory for GWT 2.1 M2/GPE 1.4 M2.
Revision: 8349 Author: jasonpar...@google.com Date: Fri Jul 2 09:53:04 2010 Log: Create top-level directory for GWT 2.1 M2/GPE 1.4 M2. http://code.google.com/p/google-web-toolkit/source/detail?r=8349 Added: /2.1.0.M2 -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r8350 committed - Populate gwt-maven-plugin and GAE 1.3.5 into Maven repo.
Revision: 8350 Author: jasonpar...@google.com Date: Fri Jul 2 10:26:43 2010 Log: Populate gwt-maven-plugin and GAE 1.3.5 into Maven repo. http://code.google.com/p/google-web-toolkit/source/detail?r=8350 Added: /2.1.0.M2/gwt /2.1.0.M2/gwt/maven /2.1.0.M2/gwt/maven/com /2.1.0.M2/gwt/maven/com/google /2.1.0.M2/gwt/maven/com/google/appengine /2.1.0.M2/gwt/maven/com/google/appengine/appengine-api-1.0-sdk /2.1.0.M2/gwt/maven/com/google/appengine/appengine-api-1.0-sdk/1.3.5 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-api-1.0-sdk/1.3.5/appengine-api-1.0-sdk-1.3.5.jar /2.1.0.M2/gwt/maven/com/google/appengine/appengine-api-1.0-sdk/1.3.5/appengine-api-1.0-sdk-1.3.5.jar.md5 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-api-1.0-sdk/1.3.5/appengine-api-1.0-sdk-1.3.5.jar.sha1 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-api-1.0-sdk/1.3.5/appengine-api-1.0-sdk-1.3.5.pom /2.1.0.M2/gwt/maven/com/google/appengine/appengine-api-1.0-sdk/1.3.5/appengine-api-1.0-sdk-1.3.5.pom.md5 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-api-1.0-sdk/1.3.5/appengine-api-1.0-sdk-1.3.5.pom.sha1 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-api-1.0-sdk/maven-metadata.xml /2.1.0.M2/gwt/maven/com/google/appengine/appengine-api-1.0-sdk/maven-metadata.xml.md5 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-api-1.0-sdk/maven-metadata.xml.sha1 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-java-sdk /2.1.0.M2/gwt/maven/com/google/appengine/appengine-java-sdk/appengine-java-sdk- /2.1.0.M2/gwt/maven/com/google/appengine/appengine-java-sdk/appengine-java-sdk-.md5 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-java-sdk/appengine-java-sdk-.pom /2.1.0.M2/gwt/maven/com/google/appengine/appengine-java-sdk/appengine-java-sdk-.pom.md5 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-java-sdk/appengine-java-sdk-.pom.sha1 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-java-sdk/appengine-java-sdk-.sha1 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-java-sdk/maven-metadata.xml /2.1.0.M2/gwt/maven/com/google/appengine/appengine-java-sdk/maven-metadata.xml.md5 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-java-sdk/maven-metadata.xml.sha1 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-local-runtime /2.1.0.M2/gwt/maven/com/google/appengine/appengine-local-runtime/1.3.5 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-local-runtime/1.3.5/appengine-local-runtime-1.3.5.jar /2.1.0.M2/gwt/maven/com/google/appengine/appengine-local-runtime/1.3.5/appengine-local-runtime-1.3.5.jar.md5 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-local-runtime/1.3.5/appengine-local-runtime-1.3.5.jar.sha1 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-local-runtime/1.3.5/appengine-local-runtime-1.3.5.pom /2.1.0.M2/gwt/maven/com/google/appengine/appengine-local-runtime/1.3.5/appengine-local-runtime-1.3.5.pom.md5 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-local-runtime/1.3.5/appengine-local-runtime-1.3.5.pom.sha1 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-local-runtime/maven-metadata.xml /2.1.0.M2/gwt/maven/com/google/appengine/appengine-local-runtime/maven-metadata.xml.md5 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-local-runtime/maven-metadata.xml.sha1 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-tools-api /2.1.0.M2/gwt/maven/com/google/appengine/appengine-tools-api/1.3.5 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-tools-api/1.3.5/appengine-tools-api-1.3.5.jar /2.1.0.M2/gwt/maven/com/google/appengine/appengine-tools-api/1.3.5/appengine-tools-api-1.3.5.jar.md5 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-tools-api/1.3.5/appengine-tools-api-1.3.5.jar.sha1 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-tools-api/1.3.5/appengine-tools-api-1.3.5.pom /2.1.0.M2/gwt/maven/com/google/appengine/appengine-tools-api/1.3.5/appengine-tools-api-1.3.5.pom.md5 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-tools-api/1.3.5/appengine-tools-api-1.3.5.pom.sha1 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-tools-api/maven-metadata.xml /2.1.0.M2/gwt/maven/com/google/appengine/appengine-tools-api/maven-metadata.xml.md5 /2.1.0.M2/gwt/maven/com/google/appengine/appengine-tools-api/maven-metadata.xml.sha1 /2.1.0.M2/gwt/maven/com/google/appengine/orm /2.1.0.M2/gwt/maven/com/google/appengine/orm/datanucleus-appengine /2.1.0.M2/gwt/maven/com/google/appengine/orm/datanucleus-appengine/1.0.7.final /2.1.0.M2/gwt/maven/com/google/appengine/orm/datanucleus-appengine/1.0.7.final/datanucleus-appengine-1.0.7.final.jar /2.1.0.M2/gwt/maven/com/google/appengine/orm/datanucleus-appengine/1.0.7.final/datanucleus-appengine-1.0.7.final.jar.md5 /2.1.0.M2/gwt/maven/com/google/appengine/orm/datanucleus-appengine/1.0.7.final/datanucleus-appengine-1.0.7.final.jar.sha1
[gwt-contrib] [google-web-toolkit] r8351 committed - Populate GWT 2.1 M2 into Maven repo.
Revision: 8351 Author: jasonpar...@google.com Date: Fri Jul 2 10:29:54 2010 Log: Populate GWT 2.1 M2 into Maven repo. http://code.google.com/p/google-web-toolkit/source/detail?r=8351 Added: /2.1.0.M2/gwt/maven/com/google/gwt /2.1.0.M2/gwt/maven/com/google/gwt/gwt-dev /2.1.0.M2/gwt/maven/com/google/gwt/gwt-dev/2.1.0.M2 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-dev/2.1.0.M2/gwt-dev-2.1.0.M2.jar /2.1.0.M2/gwt/maven/com/google/gwt/gwt-dev/2.1.0.M2/gwt-dev-2.1.0.M2.jar.md5 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-dev/2.1.0.M2/gwt-dev-2.1.0.M2.jar.sha1 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-dev/2.1.0.M2/gwt-dev-2.1.0.M2.pom /2.1.0.M2/gwt/maven/com/google/gwt/gwt-dev/2.1.0.M2/gwt-dev-2.1.0.M2.pom.md5 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-dev/2.1.0.M2/gwt-dev-2.1.0.M2.pom.sha1 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-dev/maven-metadata.xml /2.1.0.M2/gwt/maven/com/google/gwt/gwt-dev/maven-metadata.xml.md5 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-dev/maven-metadata.xml.sha1 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-servlet /2.1.0.M2/gwt/maven/com/google/gwt/gwt-servlet/2.1.0.M2 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-servlet/2.1.0.M2/gwt-servlet-2.1.0.M2.jar /2.1.0.M2/gwt/maven/com/google/gwt/gwt-servlet/2.1.0.M2/gwt-servlet-2.1.0.M2.jar.md5 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-servlet/2.1.0.M2/gwt-servlet-2.1.0.M2.jar.sha1 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-servlet/2.1.0.M2/gwt-servlet-2.1.0.M2.pom /2.1.0.M2/gwt/maven/com/google/gwt/gwt-servlet/2.1.0.M2/gwt-servlet-2.1.0.M2.pom.md5 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-servlet/2.1.0.M2/gwt-servlet-2.1.0.M2.pom.sha1 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-servlet/maven-metadata.xml /2.1.0.M2/gwt/maven/com/google/gwt/gwt-servlet/maven-metadata.xml.md5 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-servlet/maven-metadata.xml.sha1 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-soyc-vis /2.1.0.M2/gwt/maven/com/google/gwt/gwt-soyc-vis/2.1.0.M2 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-soyc-vis/2.1.0.M2/gwt-soyc-vis-2.1.0.M2.jar /2.1.0.M2/gwt/maven/com/google/gwt/gwt-soyc-vis/2.1.0.M2/gwt-soyc-vis-2.1.0.M2.jar.md5 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-soyc-vis/2.1.0.M2/gwt-soyc-vis-2.1.0.M2.jar.sha1 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-soyc-vis/2.1.0.M2/gwt-soyc-vis-2.1.0.M2.pom /2.1.0.M2/gwt/maven/com/google/gwt/gwt-soyc-vis/2.1.0.M2/gwt-soyc-vis-2.1.0.M2.pom.md5 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-soyc-vis/2.1.0.M2/gwt-soyc-vis-2.1.0.M2.pom.sha1 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-soyc-vis/maven-metadata.xml /2.1.0.M2/gwt/maven/com/google/gwt/gwt-soyc-vis/maven-metadata.xml.md5 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-soyc-vis/maven-metadata.xml.sha1 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-user /2.1.0.M2/gwt/maven/com/google/gwt/gwt-user/2.1.0.M2 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-user/2.1.0.M2/gwt-user-2.1.0.M2.jar /2.1.0.M2/gwt/maven/com/google/gwt/gwt-user/2.1.0.M2/gwt-user-2.1.0.M2.jar.md5 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-user/2.1.0.M2/gwt-user-2.1.0.M2.jar.sha1 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-user/2.1.0.M2/gwt-user-2.1.0.M2.pom /2.1.0.M2/gwt/maven/com/google/gwt/gwt-user/2.1.0.M2/gwt-user-2.1.0.M2.pom.md5 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-user/2.1.0.M2/gwt-user-2.1.0.M2.pom.sha1 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-user/maven-metadata.xml /2.1.0.M2/gwt/maven/com/google/gwt/gwt-user/maven-metadata.xml.md5 /2.1.0.M2/gwt/maven/com/google/gwt/gwt-user/maven-metadata.xml.sha1 === --- /dev/null +++ /2.1.0.M2/gwt/maven/com/google/gwt/gwt-dev/2.1.0.M2/gwt-dev-2.1.0.M2.jar Fri Jul 2 10:29:54 2010 File is too large to display a diff. === --- /dev/null +++ /2.1.0.M2/gwt/maven/com/google/gwt/gwt-dev/2.1.0.M2/gwt-dev-2.1.0.M2.jar.md5 Fri Jul 2 10:29:54 2010 @@ -0,0 +1,1 @@ +e6e946bb45e8d20b98cf374e969c417b === --- /dev/null +++ /2.1.0.M2/gwt/maven/com/google/gwt/gwt-dev/2.1.0.M2/gwt-dev-2.1.0.M2.jar.sha1 Fri Jul 2 10:29:54 2010 @@ -0,0 +1,1 @@ +683b8e4f09a34262f399ad6963a4941df7388a83 === --- /dev/null +++ /2.1.0.M2/gwt/maven/com/google/gwt/gwt-dev/2.1.0.M2/gwt-dev-2.1.0.M2.pom Fri Jul 2 10:29:54 2010 @@ -0,0 +1,7 @@ +?xml version=1.0 encoding=UTF-8? +project + modelVersion4.0.0/modelVersion + groupIdcom.google.gwt/groupId + artifactIdgwt-dev/artifactId + version2.1.0.M2/version +/project === --- /dev/null +++ /2.1.0.M2/gwt/maven/com/google/gwt/gwt-dev/2.1.0.M2/gwt-dev-2.1.0.M2.pom.md5 Fri Jul 2 10:29:54 2010 @@ -0,0 +1,1 @@ +6af95a1026306a563eb161753654d2a8 === --- /dev/null +++ /2.1.0.M2/gwt/maven/com/google/gwt/gwt-dev/2.1.0.M2/gwt-dev-2.1.0.M2.pom.sha1 Fri Jul 2 10:29:54 2010 @@ -0,0 +1,1 @@ +ede0145b4aa8cfa03c4a35682c23725ae7e2bf87 === --- /dev/null +++
[gwt-contrib] Re: Replacing PagingListView.setPageStart/Size with PagingListView.setRange. Replacing CellListImpl... (issue614803)
LGTM overall. Some minor comments that shouldn't stop you from committing. And let me just add w00t, tests! http://gwt-code-reviews.appspot.com/614803/diff/3001/4013 File user/src/com/google/gwt/user/cellview/client/CellTable.java (right): http://gwt-code-reviews.appspot.com/614803/diff/3001/4013#newcode790 user/src/com/google/gwt/user/cellview/client/CellTable.java:790: presenter.setRange(start, length); I don't see any real problems with this, but it seems slightly odd to have both setPageStart/Size() *and* setRange(). http://gwt-code-reviews.appspot.com/614803/diff/3001/4016 File user/src/com/google/gwt/user/cellview/client/PagingListViewPresenter.java (right): http://gwt-code-reviews.appspot.com/614803/diff/3001/4016#newcode45 user/src/com/google/gwt/user/cellview/client/PagingListViewPresenter.java:45: * user facing API simpler. I actually don't see this structure as being problematic. The fact that each widget happens to create its own view and uses this presenter to interact with it just indicates to me that it's behaving like its own little application. All the logical interaction between the widget and its view is then mediated by the presenter. Sounds normal to me. http://gwt-code-reviews.appspot.com/614803/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r8352 committed - Populate GPE 1.4 M2 for Eclipse 3.5 into Maven repo.
Revision: 8352 Author: jasonpar...@google.com Date: Fri Jul 2 10:51:10 2010 Log: Populate GPE 1.4 M2 for Eclipse 3.5 into Maven repo. http://code.google.com/p/google-web-toolkit/source/detail?r=8352 Added: /2.1.0.M2/eclipse /2.1.0.M2/eclipse/plugin /2.1.0.M2/eclipse/plugin/3.5 /2.1.0.M2/eclipse/plugin/3.5/artifacts.jar /2.1.0.M2/eclipse/plugin/3.5/content.jar /2.1.0.M2/eclipse/plugin/3.5/features /2.1.0.M2/eclipse/plugin/3.5/features/com.google.appengine.eclipse.sdkbundle.e35.feature.1.3.5_1.3.5.v201007021021.jar /2.1.0.M2/eclipse/plugin/3.5/features/com.google.gdt.eclipse.suite.e35.feature_1.4.0.m2-201007021021.jar /2.1.0.M2/eclipse/plugin/3.5/features/com.google.gwt.eclipse.sdkbundle.e35.feature.2.1.0_2.1.0.m2-201007021021.jar /2.1.0.M2/eclipse/plugin/3.5/plugins /2.1.0.M2/eclipse/plugin/3.5/plugins/com.google.appengine.eclipse.core_1.4.0.m2-201007021021.jar /2.1.0.M2/eclipse/plugin/3.5/plugins/com.google.appengine.eclipse.sdkbundle.1.3.5_1.3.5.v201007021021.jar /2.1.0.M2/eclipse/plugin/3.5/plugins/com.google.gdt.eclipse.core_1.4.0.m2-201007021021.jar /2.1.0.M2/eclipse/plugin/3.5/plugins/com.google.gdt.eclipse.platform.e35_1.4.0.m2-201007021021.jar /2.1.0.M2/eclipse/plugin/3.5/plugins/com.google.gdt.eclipse.platform.shared_1.4.0.m2-201007021021.jar /2.1.0.M2/eclipse/plugin/3.5/plugins/com.google.gdt.eclipse.platform_1.4.0.m2-201007021021.jar /2.1.0.M2/eclipse/plugin/3.5/plugins/com.google.gdt.eclipse.suite_1.4.0.m2-201007021021.jar /2.1.0.M2/eclipse/plugin/3.5/plugins/com.google.gwt.eclipse.core_1.4.0.m2-201007021021.jar /2.1.0.M2/eclipse/plugin/3.5/plugins/com.google.gwt.eclipse.oophm_1.4.0.m2-201007021021.jar /2.1.0.M2/eclipse/plugin/3.5/plugins/com.google.gwt.eclipse.sdkbundle.2.1.0_2.1.0.m2-201007021021.jar /2.1.0.M2/eclipse/plugin/3.5/site.xml /2.1.0.M2/eclipse/plugin/3.5/zips /2.1.0.M2/eclipse/plugin/3.5/zips/com.google.gdt.eclipse.suite.e35.feature_1.4.0.m2-201007021021.zip === --- /dev/null +++ /2.1.0.M2/eclipse/plugin/3.5/artifacts.jar Fri Jul 2 10:51:10 2010 Binary file, no diff available. === --- /dev/null +++ /2.1.0.M2/eclipse/plugin/3.5/content.jarFri Jul 2 10:51:10 2010 Binary file, no diff available. === --- /dev/null +++ /2.1.0.M2/eclipse/plugin/3.5/features/com.google.appengine.eclipse.sdkbundle.e35.feature.1.3.5_1.3.5.v201007021021.jar Fri Jul 2 10:51:10 2010 @@ -0,0 +1,50 @@ +PK + o;â META-INF/þà PK + n;â }âºF^ j META-INF/MANIFEST.MFóMÃÃLK-.à +K-*ÃÃóR0Ã3à årÃC q,HLÃHU Å %Ãõ y¹Åâ¹R KRSt *AêÃô â + uâ à 4âKó |3ââ¹Ã²â¹+â¹KRs⹠óâõ4y¹x¹ PK + o;â±gü4à £ feature.xmlµXasÃ8 þî_±ãOw Ãô2wo/à + 4Â¥G Ãuú©#l JdÃ'ÃPîÿ+à â¢â¼oÃt¦±½û쳫ÃÃJç |Ã9,©ÃLÅ â¹Ã°4n +...@e*3æ áÃä}ô[øÃep£ÃâÅ Ã ~,» Sâ¢Ãs)çÅä(¨Ë3AcÅ¡rVh ëìiZŠ¿Ã·gqÂ¥ +ŸÃoã³°Ãà dJùExã  S Ãs ðâ, Å» ÃŽxƾ âÃÃi«õk«}Šÿjâ¢BÃ%èŠÃi +} }âÃáe` +Ã3ªSà +ÆPââ¢Ã!Æâ¢Tž +³å¸\9oÃâž÷ ðâÆLv0ëT kà æ sø...@»Ãúomà ó + ÷â³â +Mkõà f4º ô sw ½áM ÃÆñèýäSç¾ ÃÃýÃèî¶7Åßý ¼ ÃÃÃÃà + ô¯{Ãq úC|uÃâ¢Ã´Gà è Å qhŸ8 +Apa A0Yìøo +f *kY â â¬*0({ ² U¹ 9Æ1UKÃÆŸ¬\è^â¡?ÿîôs² ! +â ³@ 3â ôkJ L fTà ¨½bfá,9⬠à sÂ¥/§â  ( 1ko# øÃÃÃËâ]â!Ãh  ËÅlâ41 sar + âSÂAà J¦ÃÃé P ='SäÃà +pà Ã\Q 4½RÃ`qÅâ¬â3³ŠBôQlZ âÃÃÃâB/âºÅ¸%R vÃà â¡pà ÷Ã'ð©?ù0zË .ç}g8é÷Ãâ¬kx= vûvÃðé=tâ Ÿquâ¡Ã  4A¿ Ã2GzÃâ f Â¥1Â¥ +Ã6YÃâ.hÃf,Ewü$s +sâ°Ã¥$à (Pâi[Y @âášçà ãž÷|â°mž ?U%ÃÃ?Ãâº)µÃr6£ÃGÃÅ etI¹Dsvâ¢Ã³R0³®£Aâ°Ã¢kà R +0%Å¡yø_ËNRà r* á¡ó§(U!5õõÅb RGÃâ¿w¥⢠âOu:-(/¶ª ÅNêÃ^1à d ºâª}iëJ* ®~I82ø£E qt +ÃÅlîV ËS$] \bâÃË`z A7ò ! â¢ÆvâsâÂ¥âkmjŽ¶...@ÿâºÂ«Ã),0,Ãq ¿ÃL, ®ê yhl{ +C#³2µ±9q!Ãdbµ|D¬⺠ž_P³ lÅ¡ éŠKÃJÃJ âš´+ÅÃ%O ¶ÃmS, Ià Å!¦Jâ¢â¹Ë %§ U ²ø¦n(Ãþ· âM žiypÃȎÃwûà ¸z v ½.Lôï»Ã]ç~òyÃF} ÅIÃÃ¥Ãf/ö'â¢AA ¦éÃà ^1oÅ¡Tpà mä6ÃHâ¢ÃÃöT7 éê8¨¼pIŸ ÃâèÃSÃeÃ5¢â¢âyÂ¥ÃÂ¥OwÃë x ©1kì{ ó®ÃŽê â1ÃAâ°Â± µ}±Ff +âþ]Ã1W«UÅ©j¦d +K5O +-tâÅ¡~óÃìÃs6ÃvÃÃHÃuD + ? uâ Qã«eÃ#Ubà äÃJÃŽ#veÃ5lô¢à æu\!Ãà Tbµ 'â¡Â¼â¬ÂªÃIů Ã, 0¶·äQ V IŸ°±fà %£ÃøW +z î :Åâ é⠲]fòâ¹Hp ÃsÃà r·yê øý⬠+ ²Ã#7Ãýâà |;â¬Ë â6Ã¥T? ¼ +¼Ftâ¬Â·8dâ®Tm6 ⺠+ ¢ +)²H.H§H¸ýÃ^âø +¿±ÃoQâï jâùÃdr ø« +óŠ!~ôèà ìDêì½b´· ÃÂ¥Ã5òL hþXáô ýqxùà üP?(÷N¼$?)ÃÃlÃâïgâÃËz=²f...@m®z)üh{,áGG©î}à ânÿVõ¬ !ÃI zÃâh¸!s
[gwt-contrib] Re: Adding NoSelectionModel, which allows selection without saving the selection state. (issue667801)
On 2010/06/28 17:44:06, jlabanca wrote: LGTM. http://gwt-code-reviews.appspot.com/667801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r8353 committed - Added the artifacts for Eclipse 3.6...
Revision: 8353 Author: amitman...@google.com Date: Fri Jul 2 11:12:19 2010 Log: Added the artifacts for Eclipse 3.6 Patch by: jasonparekh Commit by: amitmanjhi http://code.google.com/p/google-web-toolkit/source/detail?r=8353 Added: /2.1.0.M2/eclipse/plugin/3.6 /2.1.0.M2/eclipse/plugin/3.6/artifacts.jar /2.1.0.M2/eclipse/plugin/3.6/content.jar /2.1.0.M2/eclipse/plugin/3.6/features /2.1.0.M2/eclipse/plugin/3.6/features/com.google.appengine.eclipse.sdkbundle.e36.feature.1.3.5_1.3.5.v201007021040.jar /2.1.0.M2/eclipse/plugin/3.6/features/com.google.gdt.eclipse.suite.e36.feature_1.4.0.m2-201007021040.jar /2.1.0.M2/eclipse/plugin/3.6/features/com.google.gwt.eclipse.sdkbundle.e36.feature.2.1.0_2.1.0.m2-201007021040.jar /2.1.0.M2/eclipse/plugin/3.6/plugins /2.1.0.M2/eclipse/plugin/3.6/plugins/com.google.appengine.eclipse.core_1.4.0.m2-201007021040.jar /2.1.0.M2/eclipse/plugin/3.6/plugins/com.google.appengine.eclipse.sdkbundle.1.3.5_1.3.5.v201007021040.jar /2.1.0.M2/eclipse/plugin/3.6/plugins/com.google.gdt.eclipse.core_1.4.0.m2-201007021040.jar /2.1.0.M2/eclipse/plugin/3.6/plugins/com.google.gdt.eclipse.platform.e36_1.4.0.m2-201007021040.jar /2.1.0.M2/eclipse/plugin/3.6/plugins/com.google.gdt.eclipse.platform.shared_1.4.0.m2-201007021040.jar /2.1.0.M2/eclipse/plugin/3.6/plugins/com.google.gdt.eclipse.platform_1.4.0.m2-201007021040.jar /2.1.0.M2/eclipse/plugin/3.6/plugins/com.google.gdt.eclipse.suite_1.4.0.m2-201007021040.jar /2.1.0.M2/eclipse/plugin/3.6/plugins/com.google.gwt.eclipse.core_1.4.0.m2-201007021040.jar /2.1.0.M2/eclipse/plugin/3.6/plugins/com.google.gwt.eclipse.oophm_1.4.0.m2-201007021040.jar /2.1.0.M2/eclipse/plugin/3.6/plugins/com.google.gwt.eclipse.sdkbundle.2.1.0_2.1.0.m2-201007021040.jar /2.1.0.M2/eclipse/plugin/3.6/site.xml /2.1.0.M2/eclipse/plugin/3.6/zips /2.1.0.M2/eclipse/plugin/3.6/zips/com.google.gdt.eclipse.suite.e36.feature_1.4.0.m2-201007021040.zip === --- /dev/null +++ /2.1.0.M2/eclipse/plugin/3.6/artifacts.jar Fri Jul 2 11:12:19 2010 Binary file, no diff available. === --- /dev/null +++ /2.1.0.M2/eclipse/plugin/3.6/content.jarFri Jul 2 11:12:19 2010 Binary file, no diff available. === --- /dev/null +++ /2.1.0.M2/eclipse/plugin/3.6/features/com.google.appengine.eclipse.sdkbundle.e36.feature.1.3.5_1.3.5.v201007021040.jar Fri Jul 2 11:12:19 2010 @@ -0,0 +1,55 @@ +PK + Ã=â META-INF/þà PK + Ã=â }âºF^ j META-INF/MANIFEST.MFóMÃÃLK-.à +K-*ÃÃóR0Ã3à årÃC q,HLÃHU Å %Ãõ y¹Åâ¹R KRSt *AêÃô â + uâ à 4âKó |3ââ¹Ã²â¹+â¹KRs⹠óâõ4y¹x¹ PK + Ã=âÃÃ5âà £ feature.xmlµX[wÃ6 ~ïÃÃÃà KŽÃîÃ%Ãqb7uçÃY쬧O=´DÃL(R£(»Ã¯ xâ-_Nël©_ IÃâ¡ âÿýKÃaAUä¸ O£f T$2ebv ÅÃ5~ ¿ çâèRà ì Â¥ a³hÃ¥ÅÃËä9 3hD ÃòâFEú4)EÅ ÃèÃOâWŽN£³èMè18â¢P~ ÃX hç9t- | £à °%^£Ëo£E«yÃlþÃl 6_7+â¢\à K©j âà +ú zâ°ÃÃà §´H Ã5B]zÂ} S© + kÃr¹²ÃÃ/]ç#ÅE?YÃx þJd¾Rl6Ã⢠ëê ´šÃ_+ââ Ëƨ)à Å%T ´R nâ Ãâº~ Ãwwà +Ãô ] +à ?¶ï»ÃéþÃà ïn»Æ1üà Ãȇ=| hÿÃâ ~ïº; u¡7ÃW·Ãqo8 âv® â¡Ãâ°Ã¥ æ ãùâÿÃaVâ¬'âââ°â%` ¨ ²û! S⢠§0¢j zðÆâ ÃëðÃì~FV ¤â Ƨçh`à â~Ih® ÃÅÃ9# µâLÃÂ% |òúr¢ Å 0 3ö...@´ +õÃÃà ÃâV Å Ãñ:Icm1ç:ãAð 8- +Pôïâ)tu² DÃà ¹q² \q2Sà + M/ ÃX +'Pé^ E!e +VlRjâÃÃÃâB/ëŸ%R ¶Gà +pà +õF'ð±7~?| .ç}{0îuGâ¬kx= +tzfÃðé +´ Ÿpu  4A¿äÃ0GzÃâ ¦ Â¥ Â¥5ÃYÃSâÃâMYâîËYIf f ÃI £$+Lea EÅ kž1M´}Ãñ%2yâþøJ¬â¿Ÿ7 j Ã¥tJâ¢â¹Å¡ Kéârâ°Ã¦Ã2gÂ¥`zUEÆ Ã WÃÂ¥| +aB +æËà Ÿ ¤ŠeThÃCëO^ª\ ´¨¬§ à Xîü +õÃø|¬ÃiNy¾QÃctReöâq $MAÃ%øöU W )põKÃâ1à +-ºË£ëhghrÃ?bNâdŽZ 2â°Y2eâ s ºâ +1¡©H-´¢Š, L ºâhJB +ô¿¾ Ãà â 5 ù ÃÃR¡a_¯Ãã¡Ã¶§042- ⺠Ãuúå#bU·pxAõÅh0i.¤- , #5-ML*öp¼KŽ(.l úXI(æ CL Ÿâ¹ËPHN1ª dðuÃP¬ý¯AEë6 +hypýiÃwzÆ Â¸z túà ÅÃ֔; »öýøú º +8â¢ÅÃÂ¥Ã^ìO* +Å(Lõà b^7©`¿ š÷ ŸÃ~{ªšâ´u +x/lÃè1'EÃ¥)ê2n ÃTÃÃ+péà +ó: ^à ªõ +û^Ãü²Ã?à â'(1r ¦/VÃÅcÿÂ:ær¹Å0Uõâ©fñ£ ŽQÃm~©YzÃâºNÃÃRò¢Ar = ub Qëaà ªÃŠè⨠+GloÃ6lôÃân ý2® ¡q*1ÃÃâ} žAÃáÃÃW Å`Ã[üXä1V Iž°±¦ +$J6N£ŸqèA¸gèpR +´§jÃfâ¢Ã æÃAÃLÆëÃÃÃä© +à · vDà â¡\ wFb ðõ b 4 +]NÅ ÃÃóà ¢ ¼à ! w%¿à l|LËRà à º áöozYìvüÃn¿Aâ°Â¿A¨ æ÷ãñ +\ã®*ô â øáÃC\ñ0 â°ÂµÃ·âÃÃ⬠+J¡käâ¢|Ãü1Ãà úcñ ¹Ãà W?(wN'?)ÃÃlîâï âÃËz9²...@u®à b¸Ãöxà âRÃû o të óž +` +èU +¢æúËà ¬ø®Ã¤ Ãj¹¦mË{iL3Ãgâ°Jmçhmù¹/üXh^ ÃlT7TIÃ2é¨^SeO% ¢Ëbn/_
[gwt-contrib] [google-web-toolkit] r8354 committed - Added the artifacts for Eclipse 3.4...
Revision: 8354 Author: amitman...@google.com Date: Fri Jul 2 11:15:16 2010 Log: Added the artifacts for Eclipse 3.4 Patch by: jasonparekh Commit by: amitmanjhi http://code.google.com/p/google-web-toolkit/source/detail?r=8354 Added: /2.1.0.M2/eclipse/plugin/3.4 /2.1.0.M2/eclipse/plugin/3.4/artifacts.jar /2.1.0.M2/eclipse/plugin/3.4/content.jar /2.1.0.M2/eclipse/plugin/3.4/features /2.1.0.M2/eclipse/plugin/3.4/features/com.google.appengine.eclipse.sdkbundle.e34.feature.1.3.5_1.3.5.v201007021021.jar /2.1.0.M2/eclipse/plugin/3.4/features/com.google.gdt.eclipse.suite.e34.feature_1.4.0.m2-201007021021.jar /2.1.0.M2/eclipse/plugin/3.4/features/com.google.gwt.eclipse.sdkbundle.e34.feature.2.1.0_2.1.0.m2-201007021021.jar /2.1.0.M2/eclipse/plugin/3.4/plugins /2.1.0.M2/eclipse/plugin/3.4/plugins/com.google.appengine.eclipse.core_1.4.0.m2-201007021021.jar /2.1.0.M2/eclipse/plugin/3.4/plugins/com.google.appengine.eclipse.sdkbundle.1.3.5_1.3.5.v201007021021.jar /2.1.0.M2/eclipse/plugin/3.4/plugins/com.google.gdt.eclipse.core_1.4.0.m2-201007021021.jar /2.1.0.M2/eclipse/plugin/3.4/plugins/com.google.gdt.eclipse.platform.e34_1.4.0.m2-201007021021.jar /2.1.0.M2/eclipse/plugin/3.4/plugins/com.google.gdt.eclipse.platform.shared_1.4.0.m2-201007021021.jar /2.1.0.M2/eclipse/plugin/3.4/plugins/com.google.gdt.eclipse.platform_1.4.0.m2-201007021021.jar /2.1.0.M2/eclipse/plugin/3.4/plugins/com.google.gdt.eclipse.suite_1.4.0.m2-201007021021.jar /2.1.0.M2/eclipse/plugin/3.4/plugins/com.google.gwt.eclipse.core_1.4.0.m2-201007021021.jar /2.1.0.M2/eclipse/plugin/3.4/plugins/com.google.gwt.eclipse.oophm_1.4.0.m2-201007021021.jar /2.1.0.M2/eclipse/plugin/3.4/plugins/com.google.gwt.eclipse.sdkbundle.2.1.0_2.1.0.m2-201007021021.jar /2.1.0.M2/eclipse/plugin/3.4/site.xml /2.1.0.M2/eclipse/plugin/3.4/zips /2.1.0.M2/eclipse/plugin/3.4/zips/com.google.gdt.eclipse.suite.e34.feature_1.4.0.m2-201007021021.zip === --- /dev/null +++ /2.1.0.M2/eclipse/plugin/3.4/artifacts.jar Fri Jul 2 11:15:16 2010 Binary file, no diff available. === --- /dev/null +++ /2.1.0.M2/eclipse/plugin/3.4/content.jarFri Jul 2 11:15:16 2010 Binary file, no diff available. === --- /dev/null +++ /2.1.0.M2/eclipse/plugin/3.4/features/com.google.appengine.eclipse.sdkbundle.e34.feature.1.3.5_1.3.5.v201007021021.jar Fri Jul 2 11:15:16 2010 Binary file, no diff available. === --- /dev/null +++ /2.1.0.M2/eclipse/plugin/3.4/features/com.google.gdt.eclipse.suite.e34.feature_1.4.0.m2-201007021021.jar Fri Jul 2 11:15:16 2010 Binary file, no diff available. === --- /dev/null +++ /2.1.0.M2/eclipse/plugin/3.4/features/com.google.gwt.eclipse.sdkbundle.e34.feature.2.1.0_2.1.0.m2-201007021021.jar Fri Jul 2 11:15:16 2010 Binary file, no diff available. === --- /dev/null +++ /2.1.0.M2/eclipse/plugin/3.4/plugins/com.google.appengine.eclipse.core_1.4.0.m2-201007021021.jar Fri Jul 2 11:15:16 2010 Binary file, no diff available. === --- /dev/null +++ /2.1.0.M2/eclipse/plugin/3.4/plugins/com.google.appengine.eclipse.sdkbundle.1.3.5_1.3.5.v201007021021.jar Fri Jul 2 11:15:16 2010 File is too large to display a diff. === --- /dev/null +++ /2.1.0.M2/eclipse/plugin/3.4/plugins/com.google.gdt.eclipse.core_1.4.0.m2-201007021021.jar Fri Jul 2 11:15:16 2010 Binary file, no diff available. === --- /dev/null +++ /2.1.0.M2/eclipse/plugin/3.4/plugins/com.google.gdt.eclipse.platform.e34_1.4.0.m2-201007021021.jar Fri Jul 2 11:15:16 2010 Binary file, no diff available. === --- /dev/null +++ /2.1.0.M2/eclipse/plugin/3.4/plugins/com.google.gdt.eclipse.platform.shared_1.4.0.m2-201007021021.jar Fri Jul 2 11:15:16 2010 @@ -0,0 +1,88 @@ +PK + Ã:â META-INF/þà PK + Ã:â à âð META-INF/MANIFEST.MF +R]KÃ0 }/ô?äQ¡ +iñ lRDa2 +ø*1½ë2ä7sõÃ{» ²© ô¡Å{rrùâ¢J£ à 1} çµ5#âq GcsâÅ[©âà £áu?¾s ÃtÃõü+.^Eâ¾â°+v6 â MµrÃw +¡ñìÃ(~ +GÃð ´Æt LYÃËYWqPµn=ðÃB*à LNà yÃ'P +± +UÃAòKá é)à ƺ d%ÃrÃ=¸u + Gà ¦µ Ãâ¢Tï²/Ã6¼²¶ª W¤~ hkⰠë ¾ Ã.ùÃ/?â°~) +â½éÿ$C[R [ é +ËŸ 0¡Ãh ç} Je Jﵧ »2iQ¦´nÃî·2öòa8V¨à iâ3[kE «åWwtvXû ¼ÃÃ\dB\â¹Â£o =à °bçâ÷qÃloâ¢~BÂ¥Ãpfº Zà ù0Å¡wÃ[ïf'û_Y»Zo¼6DAR¢Ãnà ôö¯«,6 Bٵ0kìi¨¬ {ÃçEšñÃ8Š£oPK + Ã:âcom/PK + Ã:âcom/google/PK + Ã:âcom/google/gdt/PK + Ã:âcom/google/gdt/eclipse/PK + Ã:â
[gwt-contrib] [google-web-toolkit] r8356 committed - UiBinderWriter#escapeTextForJavaStringLiteral correctly escapes \n and...
Revision: 8356 Author: rj...@google.com Date: Fri Jul 2 08:22:57 2010 Log: UiBinderWriter#escapeTextForJavaStringLiteral correctly escapes \n and , but forgets \. Also, I couldn't see a reason for using replaceAll instead of replace. Patch by tbro...@gmail.com Review by rj...@google.com http://gwt-code-reviews.appspot.com/620804 Review by: robertvaw...@google.com http://code.google.com/p/google-web-toolkit/source/detail?r=8356 Modified: /trunk/user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java /trunk/user/test/com/google/gwt/uibinder/test/client/UiBinderTest.java /trunk/user/test/com/google/gwt/uibinder/test/client/WidgetBasedUi.ui.xml === --- /trunk/user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java Mon Jun 7 12:20:31 2010 +++ /trunk/user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java Fri Jul 2 08:22:57 2010 @@ -113,11 +113,12 @@ /** * Escape characters that would mess up interpretation of this string as a - * string literal in generated code (that is, protect \n and ). + * string literal in generated code (that is, protect \, \n and ). */ public static String escapeTextForJavaStringLiteral(String text) { -text = text.replaceAll(\, \); -text = text.replaceAll(\n, n); +text = text.replace(\\, ); +text = text.replace(\, \\\); +text = text.replace(\n, \\n); return text; } === --- /trunk/user/test/com/google/gwt/uibinder/test/client/UiBinderTest.java Tue Jun 22 06:26:45 2010 +++ /trunk/user/test/com/google/gwt/uibinder/test/client/UiBinderTest.java Fri Jul 2 08:22:57 2010 @@ -231,19 +231,19 @@ public void testDomAttributeMessageWithFunnyChars() { ParagraphElement p = widgetUi.funnyCharsMessageDomAttributeParagraph; String t = p.getAttribute(title); -assertEquals(funny characters \ ' ' { }, t); +assertEquals(funny characters \\ \ ' ' { }, t); } public void testDomAttributeNoMessageWithFunnyChars() { ParagraphElement p = widgetUi.funnyCharsDomAttributeParagraph; String t = p.getAttribute(title); -assertEquals(funny characters \ ' ' { }, t); +assertEquals(funny characters \\ \ ' ' { }, t); } public void testDomTextMessageWithFunnyChars() { String t = widgetUi.funnyCharsMessageParagraph.getInnerText(); assertEquals(They might show up in body text that has been marked for -+ translation: funny characters \ \ ' ' { }, t); ++ translation: funny characters \\ \ \ ' ' { }, t); } public void testEmptyAttributesOkay() { @@ -275,12 +275,12 @@ public void testProtectedDomTextMessageWithFunnyChars() { String t = widgetUi.funnyCharsProtectedMessageParagraph.getInnerText(); assertEquals(Don't forget about protected untranslatable blocks: -+ funny characters \ \ ' ' { }, t); ++ funny characters \\ \ \ ' ' { }, t); } public void testDomTextInNamedElementMessageWithFunnyChars() { String t = widgetUi.funnyCharsMessageChildSpan.getInnerText(); -assertEquals(funny characters \ \ ' ' { }, t); +assertEquals(funny characters \\ \ \ ' ' { }, t); } public void suppressedForSafari3Fail_testDomTextNoMessageWithFunnyChars() { @@ -289,7 +289,7 @@ String t = p.getInnerHTML().replace(\n, ).toLowerCase(); String expected = Templates can be marked up for blocalization/b, which presents alls + kinds of exciting opportunities for bugs related to character escaping. -+ Consider these funny characters \ \ ' ' amp; lt; gt; gt; { }, and ++ Consider these funny characters \\ \ \ ' ' amp; lt; gt; gt; { }, and + the various places they might make your life miserable, like this + untranslated paragraph.; expected = expected.toLowerCase(); @@ -448,13 +448,13 @@ public void testWidgetAttributeMessageWithFunnyChars() { ClickyLink clicky = widgetUi.funnyCharsMessageAttributeWidget; String t = clicky.getPopupText(); -assertEquals(funny characters \ ' ' { }, t); +assertEquals(funny characters \\ \ ' ' { }, t); } public void testWidgetAttributeNoMessageWithFunnyChars() { ClickyLink clicky = widgetUi.funnyCharsAttributeWidget; String t = clicky.getPopupText(); -assertEquals(funny characters \ ' ' { }, t); +assertEquals(funny characters \\ \ ' ' { }, t); } public void testCustomImageClass() { === --- /trunk/user/test/com/google/gwt/uibinder/test/client/WidgetBasedUi.ui.xml Fri Apr 2 07:37:08 2010 +++ /trunk/user/test/com/google/gwt/uibinder/test/client/WidgetBasedUi.ui.xml Fri Jul 2 08:22:57 2010 @@ -443,35 +443,35 @@ h2Localization and character escaping/h2 p ui:field=funnyCharsParagraphTemplates can be marked up for blocalization/b, which presents alls kinds of exciting
[gwt-contrib] Re: Replacing PagingListView.setPageStart/Size with PagingListView.setRange. Replacing CellListImpl... (issue614803)
committed as r8357 http://gwt-code-reviews.appspot.com/614803/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
Re: [gwt-contrib] UiBinder tweaks for GWT Designer
On Fri, Jul 2, 2010 at 6:20 PM, Ray Ryan rj...@google.com wrote: This is absolutely not related to databinding, we just want to produce GUI builder for UiBinder. I think that tooling was specified as one of the reasons to use XML for GWT UI. So, this is on what I work now. :-) Well that makes a lot more sense. :-) It occurs to me that this could be a lot easier when we revive r7816http://code.google.com/p/google-web-toolkit/source/detail?r=7816, which I had to roll back (r7858http://code.google.com/p/google-web-toolkit/source/detail?spec=svn8346r=7858) due to its naive handling of tables. If we make the paths the binder builds part of its public api, you could have your map and we wouldn't have to think as hard about hiding design time hooks from developers, or at least not all of them. Certainly, you shouldn't make your changes before that code comes back (and it really, really needs to come back). Sorry, but I don't understand on what to look in r7816http://code.google.com/p/google-web-toolkit/source/detail?r=7816 . Can you give hint how this can help in accessing widget objects and attribute values? If you speak about paths like 0/1/0, then I already have implementation for preparing/remembering them in XMLElement. public class XMLElement { //XXX Instantiations private static final WeakHashMapElement, String wbpElementPaths = new WeakHashMapElement, String(); public static void rememberPathForElements(Document doc) { rememberPathForElements(doc.getDocumentElement(), 0); } private static void rememberPathForElements(Element element, String path) { wbpElementPaths.put(element, path); NodeList childNodes = element.getChildNodes(); int elementIndex = 0; for (int i = 0; i childNodes.getLength(); ++i) { Node childNode = childNodes.item(i); if (childNode.getNodeType() == Node.ELEMENT_NODE) { Element childElement = (Element) childNode; rememberPathForElements(childElement, path + / + elementIndex++); } } } public String getPath() { return wbpElementPaths.get(elem); } //XXX Instantiations This method is called from UiBinderGenerator.generateOnce() --- Document doc = getW3cDoc(logger, templatePath); //XXX Instantiations XMLElement.rememberPathForElements(doc); //XXX Instantiations uiBinderWriter.parseDocument(doc, binderPrintWriter); --- In your original note you suggested: In method createAndBindUi() directly after creating each Widget instance (but before applying setX() methods) wbpObjectHandler is used to notify GWT Designer about new widget and its path in XML. GWT Designer bind Widget instance to model (using path) and also asks default values for all properties using getX() methods. Why do you need this notice before the set calls? We need default values for properties. This allows us to remove attribute (or method invocation in case of Java version of GWTD) when user tries to set for property same value as default. Easiest example - flipping enabled between true/false. Default value is true, so only enabled=false is written into XML. But if enabled=false already existed in XML, and we ask isEnabled() after set calls, then it is false and we can not know that default value is true. So, we need ask isEnabled() before setEnabled(false), i.e. directly after widget creation. Of course situation is trivial for enabled and standard GWT widgets and we could hardcode its default value. But we can not expect anything about custom widgets - some of them may be will use enabled false by default, or introduce new properties for which we also need to know value. At same time we need not only default values, but also actual values for properties/attributes. Not all setX() properties have corresponding getX() method. So, only reliable way for GWT Designer to know value is patch UiBinder generator to remember these values into map. 4. To allow quick updates of design canvas as user changes properties, without reloading GWT context each time, we should: 4.1. Generate Binder implementation class with new name each time, so be able to define each time new class in same ClassLoader. Right now we just add current time to the name of class. //XXX Instantiations // generate class with new name each time, to allow refresh in same ClassLoader implName += _wbp + System.currentTimeMillis(); //XXX Instantiations We could not do this with a timestamp, as it's important that the same code always produce the same binary. Would appending an md5 sum to the class name do the trick? Well, I hope that now it is clear that nothing is going to be produced with such design time tweaks. At these modes generated code will be exactly same as it is now. But if we can avoid having alternative behavior at design time life
[gwt-contrib] Revert the ListBoxCell changes that slipped into MailRecipe from another change that hasn't been... (issue650802)
Reviewers: Dan Rice, Description: Revert the ListBoxCell changes that slipped into MailRecipe from another change that hasn't been submitted yet. Please review this at http://gwt-code-reviews.appspot.com/650802/show Affected files: M bikeshed/src/com/google/gwt/sample/bikeshed/cookbook/client/MailRecipe.java Index: bikeshed/src/com/google/gwt/sample/bikeshed/cookbook/client/MailRecipe.java === --- bikeshed/src/com/google/gwt/sample/bikeshed/cookbook/client/MailRecipe.java (revision 8357) +++ bikeshed/src/com/google/gwt/sample/bikeshed/cookbook/client/MailRecipe.java (working copy) @@ -21,7 +21,6 @@ import com.google.gwt.cell.client.ClickableTextCell; import com.google.gwt.cell.client.DatePickerCell; import com.google.gwt.cell.client.FieldUpdater; -import com.google.gwt.cell.client.ListBoxCell; import com.google.gwt.cell.client.TextCell; import com.google.gwt.cell.client.ValueUpdater; import com.google.gwt.event.dom.client.ClickEvent; @@ -31,7 +30,6 @@ import com.google.gwt.user.cellview.client.CellTable; import com.google.gwt.user.cellview.client.Column; import com.google.gwt.user.cellview.client.Header; -import com.google.gwt.user.client.Timer; import com.google.gwt.user.client.Window; import com.google.gwt.user.client.ui.Button; import com.google.gwt.user.client.ui.FlowPanel; @@ -44,7 +42,6 @@ import com.google.gwt.view.client.ListViewAdapter; import com.google.gwt.view.client.ProvidesKey; -import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.Date; @@ -311,19 +308,12 @@ @Override protected Widget createWidget() { -final ListViewAdapterMessage adapter = new ListViewAdapterMessage(); +ListViewAdapterMessage adapter = new ListViewAdapterMessage(); messages = adapter.getList(); addMessages(10); table = new CellTableMessage(10); -new Timer() { - @Override - public void run() { -table.redraw(); -schedule(4000); - } -}.schedule(4000); table.setSelectionModel(selectionModel); adapter.addView(table); @@ -404,40 +394,6 @@ } }); table.addColumn(toggleColumn, Toggle Read/Unread); - -final ListViewAdapterString monthAdapter = new ListViewAdapterString(); -final ListString monthList = monthAdapter.getList(); -monthList.add(January); -monthList.add(February); -monthList.add(March); -monthList.add(April); -monthList.add(May); -monthList.add(June); -monthList.add(July); -monthList.add(August); -monthList.add(September); -monthList.add(October); -monthList.add(November); -monthList.add(December); -ListBoxCellString listBoxCell = new ListBoxCellString(new TextCell()); -monthAdapter.addView(listBoxCell); -ColumnMessage, ListString monthColumn = new ColumnMessage, ListString( -listBoxCell) { - @Override - public ListString getValue(Message object) { -ListString l = new ArrayListString(); -l.add(monthList.get(object.getDate().getMonth())); -return l; - } -}; -monthColumn.setFieldUpdater(new FieldUpdaterMessage, ListString() { - public void update(int index, Message object, ListString values) { -int month = monthList.indexOf(values.get(0)); -object.getDate().setMonth(month); -adapter.refresh(); - } -}); -table.addColumn(monthColumn, Month); ScrollbarPagerMessage pager = new ScrollbarPagerMessage(table); -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Custom UiBinder attribute parsers
Hello, I've been investigating UiBinder with a view to creating a custom attribute parser. I was hoping to be able to add my own attributes to existing Widgets' elements in a similar way to the ui:field attribute. From the discussions I've seen, it seems that the only way to do it at the moment is to replace UiBinderWriter with a custom equivalent. Is that right? If so, do you guys still have plans to provide the ability to use custom attribute parsers in the future? Thanks, Daniel -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
Re: [gwt-contrib] Re: Add WebSocket API (issue646803)
On 2 July 2010 15:37, markovuksano...@gmail.com wrote: Here's what I think... What's the purpose of RawWebSocketImpl vs. WebSocket? that you could do a new WebSocket() instead of WebSocket.newInstance() ? (I don't dispute the interface+implementation, which is more-than-useful for mockability). Different browsers might have a slightly different WebSocket object implementation, so it seems to be necessary to be able to inject different implementations for different browsers. The other thing is that it feels much more natural to instantiate a java objet using syntax like new WebSocket() compared to WebSocket.newInstance(). Third, it adds to the testability. more natural ? =) The xx.newInstance concept is used in the JDK itself at many places, _because_ its a natural fit for many cases. A few examples: ByteBuffer.allocate SocketChannel.open -- regards gustav -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] History token encoding issues
I considered logging an issue about this, but I think I'm advocating a different, incompatible history encoding strategy (don't encode/ decode) and it will likely cause issues for some people if the change were made. As I understand the history of history encoding, originally it was encoded using encodeURIComponent, then it was switched to encodeURI as discussed here: http://groups.google.com/group/Google-Web-Toolkit-Contributors/browse_thread/thread/5100d5e59edb2e2b It's also mentioned in issues #1549 and #1949. The problem I ran into is that I treat as a special character in history tokens. It's basically a normal URL appearing after the # as a history token instead of after a ? in a traditional query URL. As an example, if I were implementing a search engine, instead of a URL like /search?q=gwtstart=10, I use a GWT history token like / search#q=gwtstart=10 Now suppose that the user is searching for gt instead of gwt. I'd need to encode the in the query so that I can distinguish it from other s in the history token. So I use %26 because that's a typical encoding for URLs, e.g. /search#q=g%26tstart=10 The problem is that this history token becomes q=gtstart=10 and doesn't parse properly. This decode happens automatically in some browsers (Firefox decodes window.location.hash) and manually by the HistoryImpl code in some other cases (note HistoryImplMozilla doesn't decode because Firefox decodes window.location.hash for you). I considered double encoding the location as #q=g%2526start=10 but that solution was complicated and error prone. Some links may be generated by the server as part of an HTML block, some by the client as Anchor and Hyperlink widgets, and it's not clear when 1 encoding pass is enough. I settled for an alternate implementation of HistoryImpl that can be seen on the rawhistory branch of our gwt-traction project here: http://code.google.com/p/gwt-traction/source/browse/?r=b9cf29c1f471773f9265f30780954707a46ddef6#hg/src/com/tractionsoftware/gwt/history It uses the part after the # of window.location.href to avoid the Firefox hash decoding issue and seems to work well in all browsers. I'm planning to eventually release it so that people that know what they're doing and understand the tradeoffs can include this implementation in their project. It assumes that the developer will properly encode the hash and doesn't decode the history for them. So for /search#q=g%26tstart=10 the history token is just q=g%26tstart=10 as it appears in the URL. It also assumes the developer will decode it as they see fit. I personally prefer this approach as I've been having to encode/decode normal URL parameters for years and this is no different. -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r8358 committed - Revert the ListBoxCell changes that slipped into MailRecipe from anoth...
Revision: 8358 Author: jlaba...@google.com Date: Fri Jul 2 10:03:45 2010 Log: Revert the ListBoxCell changes that slipped into MailRecipe from another change that hasn't been submitted yet. Review at http://gwt-code-reviews.appspot.com/650802 http://code.google.com/p/google-web-toolkit/source/detail?r=8358 Modified: /trunk/bikeshed/src/com/google/gwt/sample/bikeshed/cookbook/client/MailRecipe.java === --- /trunk/bikeshed/src/com/google/gwt/sample/bikeshed/cookbook/client/MailRecipe.java Fri Jul 2 09:26:53 2010 +++ /trunk/bikeshed/src/com/google/gwt/sample/bikeshed/cookbook/client/MailRecipe.java Fri Jul 2 10:03:45 2010 @@ -21,7 +21,6 @@ import com.google.gwt.cell.client.ClickableTextCell; import com.google.gwt.cell.client.DatePickerCell; import com.google.gwt.cell.client.FieldUpdater; -import com.google.gwt.cell.client.ListBoxCell; import com.google.gwt.cell.client.TextCell; import com.google.gwt.cell.client.ValueUpdater; import com.google.gwt.event.dom.client.ClickEvent; @@ -31,7 +30,6 @@ import com.google.gwt.user.cellview.client.CellTable; import com.google.gwt.user.cellview.client.Column; import com.google.gwt.user.cellview.client.Header; -import com.google.gwt.user.client.Timer; import com.google.gwt.user.client.Window; import com.google.gwt.user.client.ui.Button; import com.google.gwt.user.client.ui.FlowPanel; @@ -44,7 +42,6 @@ import com.google.gwt.view.client.ListViewAdapter; import com.google.gwt.view.client.ProvidesKey; -import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.Date; @@ -311,19 +308,12 @@ @Override protected Widget createWidget() { -final ListViewAdapterMessage adapter = new ListViewAdapterMessage(); +ListViewAdapterMessage adapter = new ListViewAdapterMessage(); messages = adapter.getList(); addMessages(10); table = new CellTableMessage(10); -new Timer() { - @Override - public void run() { -table.redraw(); -schedule(4000); - } -}.schedule(4000); table.setSelectionModel(selectionModel); adapter.addView(table); @@ -405,40 +395,6 @@ }); table.addColumn(toggleColumn, Toggle Read/Unread); -final ListViewAdapterString monthAdapter = new ListViewAdapterString(); -final ListString monthList = monthAdapter.getList(); -monthList.add(January); -monthList.add(February); -monthList.add(March); -monthList.add(April); -monthList.add(May); -monthList.add(June); -monthList.add(July); -monthList.add(August); -monthList.add(September); -monthList.add(October); -monthList.add(November); -monthList.add(December); -ListBoxCellString listBoxCell = new ListBoxCellString(new TextCell()); -monthAdapter.addView(listBoxCell); -ColumnMessage, ListString monthColumn = new ColumnMessage, ListString( -listBoxCell) { - @Override - public ListString getValue(Message object) { -ListString l = new ArrayListString(); -l.add(monthList.get(object.getDate().getMonth())); -return l; - } -}; -monthColumn.setFieldUpdater(new FieldUpdaterMessage, ListString() { - public void update(int index, Message object, ListString values) { -int month = monthList.indexOf(values.get(0)); -object.getDate().setMonth(month); -adapter.refresh(); - } -}); -table.addColumn(monthColumn, Month); - ScrollbarPagerMessage pager = new ScrollbarPagerMessage(table); Label searchLabel = new Label(Search Sender or Subject:); -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Revert the ListBoxCell changes that slipped into MailRecipe from another change that hasn't been... (issue650802)
comitted as r8358 http://gwt-code-reviews.appspot.com/650802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Fix for issue 516 (issue612802)
Here's the reverted patch set. http://gwt-code-reviews.appspot.com/612802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors