A feed of the most active project listings per week
Updates From Eclipse Labs
2010-09-03T04:47:19Z
Marketing at Eclipse
Ian Skerrett
2010-09-02T20:19:41Z
Welcome to my blog!
Heiko Seeberger
2010-09-02T21:06:33Z
Blog for the Eclipse Communication Framework Project (ECF)
Eclipse Communication Framework
2010-09-02T14:56:05Z
work. life. open source. diatribes.
Chris Aniszczyk's (zx) diatribe » work
2010-09-03T02:44:42Z
The Eclipse Business Intelligence and Reporting Tools project is an open-source project focused on the development and delivery of framework tools for reporting and business intelligence within the Eclipse platform.
BIRT World
2010-09-02T15:39:26Z
Recent developments in the JFace Data Binding project.
fireChangeEvent()
2010-09-02T09:14:03Z
Eclipse Equinox OSGi
EclipseSource Blog » Ian Bull
2010-09-03T04:47:11Z
Eclipse Equinox OSGi
EclipseSource Blog » Ian Bull
2010-09-03T04:47:11Z
Practical Eclipse Experiences
Eclipsed
2010-09-03T04:45:21Z
Marketing at Eclipse
Ian Skerrett
2010-09-02T20:19:41Z
work. life. open source. diatribes.
Chris Aniszczyk's (zx) diatribe » work
2010-09-03T02:44:42Z
This blog is dedicated to the hundreds of developers in the Eclipse Community.
I Like Eclipse
2010-09-01T14:29:25Z
Delightful digital distractions in the world of free/libre/open source software
Computer Floss
2010-09-03T04:45:41Z
Practical Eclipse Experiences
Eclipsed
2010-09-03T04:45:20Z
Practical Eclipse Experiences
Eclipsed
2010-09-03T04:45:20Z
Marketing at Eclipse
Ian Skerrett
2010-09-02T20:19:41Z
Just another WordPress weblog
Bonita open source BPM community blog » mickael.istria
2010-08-31T17:15:48Z
myśli luźno zebrane ... ja i moja jaźń w intenecie
Dariusz [LocK] Łuksza » eclipse
2010-08-31T09:43:46Z
Just another Eclipse Committer and Project Blogs weblog
Matthias Sohn's Blog (msohn)
2010-08-31T02:13:46Z
Eclipse News
Eclipse News
2010-08-30T19:18:39Z
This is a blog about programming. Specifically, it is about how programming tools can help make you a better programmer. Even more specifically, it is about how we are making tools for aspect-oriented programming languages so that these languages can become more accessible.
Contraptions for programming
2010-08-30T17:50:35Z
Tips around Java, Eclipse and Web programming
Eclipse Papercuts » Eclipse
2010-08-31T10:17:26Z
A blog dedicated to Bioclipse - a workbench for life science
BioclipseBlog
2010-09-01T03:59:20Z
Delightful digital distractions in the world of free/libre/open source software
Computer Floss
2010-09-03T04:45:41Z
Fabian Steeg's Scribblings on Coding, Eclipse, NLP & Stuff
Geschreibsel » eclipse
2010-08-30T01:44:25Z
Lessons From Behind The Curtain
Hidden Clause
2010-09-03T04:45:32Z
(Andrei Loskutov sein Weblog)
Just code
2010-09-03T04:46:14Z
Blog of Sebastian Zarnekow
Eszetts blog
2010-08-31T11:07:43Z
Everthing Object Teams - adding team spirit to your objects.
The Object Teams Blog » Eclipse
2010-08-29T19:54:31Z
Delightful digital distractions in the world of free/libre/open source software
Computer Floss
2010-09-03T04:45:41Z
My Eclipse Experiences
Manuel Selva's Eclipse blog
2010-08-27T11:49:39Z
Software and nothing but, ok maybe not
Balfes.net » eclipse
2010-09-03T04:43:05Z
Lets howl at the things in the Eclipse universe and at software development in general
eclipse howl » Eclipse
2010-08-30T19:44:20Z
Tips around Java, Eclipse and Web programming
Eclipse Papercuts » Eclipse
2010-08-31T10:17:26Z
The opinions expressed here are my own, not someone else's. If they seem rational, that's purely coincidental and you are likely reading far too much between the lines.
Merks' Meanderings
2010-09-02T16:58:23Z
Eclipse Riena, SWT/Qt and more...
compeople developer blog
2010-09-03T02:44:21Z
It's all about Eclipse Plug-in Development Environment
eclipse PDE and Me
2010-08-25T12:09:18Z
"Code Recommenders" is a blog about ongoing research projects developing so called Framework Understanding Tools (FrUiTs for short) - or more general recommender systems that help developers to deal with the complexity of today's software development.
It has a strong focus on new Eclipse based tools and discusses/presents ideas how to overcome issues with current IDEs.
How much can the IDE predict what you will write in the next seconds?
2010-08-25T10:56:26Z
Eclipse Equinox OSGi
EclipseSource Blog » Holger Staudacher
2010-09-03T04:47:36Z
Rants, praise and observations related to the technical and psychological challenges of running servers for a pretty busy site.
A WebMaster's view of Eclipse.org
2010-08-24T19:31:39Z
Emerging thoughts and ideas about science, software and a sacred world. Topics might include Agent-Based Modeling, Java, Eclipse, Model-Driven Software Development, Social Science. And may occasionally veers off into politics, buddhism, music, skiing...
meta beta
2010-08-31T17:45:07Z
Software and nothing but, ok maybe not
Balfes.net » eclipse
2010-09-03T04:43:05Z
It's all about Eclipse Plug-in Development Environment
eclipse PDE and Me
2010-08-25T12:09:18Z
Tips around Java, Eclipse and Web programming
Eclipse Papercuts » Eclipse
2010-08-31T10:17:26Z
Bob's BPEL Blog
Beepul, beppul or beepell? It's all geek to me!
2010-08-24T03:46:26Z
Hey all. This blog records my thoughts of the day about my life on the Eclipse CDT project. I will occasionally give opinions and news regarding the Eclipse CDT - the project and its ecosystem - and on open source in general. Please feel free to comment on anything I say. I appreciate it when people are honest with me. And, please, please, consider all of these opinions mine, not of my employer.
Doug on the Eclipse CDT
2010-08-27T06:13:25Z
Software and nothing but, ok maybe not
Balfes.net » eclipse
2010-09-03T04:43:05Z
Eclipse Riena, SWT/Qt and more...
compeople developer blog
2010-09-03T02:44:21Z
It's all about Eclipse Plug-in Development Environment
eclipse PDE and Me
2010-08-25T12:09:18Z
keeping developers focused and productive
Steffen's Eclipse Blog
2010-08-23T23:13:39Z
A little bit of this and little bit of that. Random thoughts about eclipse, agile development, and other pieces of information that make me go hmmmmm.
Intellectual Cramps
2010-08-23T15:05:51Z
Just another Eclipse Committer and Project Blogs weblog
Matthias Sohn's Blog (msohn)
2010-08-31T02:13:46Z
The Eclipse Business Intelligence and Reporting Tools project is an open-source project focused on the development and delivery of framework tools for reporting and business intelligence within the Eclipse platform.
BIRT World
2010-09-02T15:39:26Z
Bob's BPEL Blog
Beepul, beppul or beepell? It's all geek to me!
2010-08-24T03:46:26Z
Creating Highly Modular Java Systems
OSGi and Equinox
2010-08-20T17:16:01Z
Eclipse, Model Driven Software Development and whatever else is interesting to make software development more efficient
Karsten's Blog » Eclipse
2010-09-02T09:18:27Z
A Cubus Sapiens oldal
GhoUl » Software Development
2010-08-19T19:45:02Z
Just another WordPress.com site
Sequoyah Project's Blog
2010-09-03T04:44:19Z
work. life. open source. diatribes.
Chris Aniszczyk's (zx) diatribe » work
2010-09-03T02:44:42Z
Flex, Java, RIAs, Eclipse, and information about the Potomac modular framework for Flex.
Chris Gross
2010-08-19T17:21:19Z
Flex, Java, RIAs, Eclipse, and information about the Potomac modular framework for Flex.
Chris Gross
2010-08-19T17:21:19Z
Collects all my Eclipse related blog posts.
Elias on Eclipse
2010-09-03T04:46:38Z
Collects all my Eclipse related blog posts.
Elias on Eclipse
2010-09-03T04:46:38Z
Everthing Object Teams - adding team spirit to your objects.
The Object Teams Blog » Eclipse
2010-08-29T19:54:31Z
I love to develop Eclipse RCP.There are many dreams.What a extensible environment is it?
Fly me to the Indigo!
2010-08-18T21:36:31Z
Eclipse, Model Driven Software Development and whatever else is interesting to make software development more efficient
Karsten's Blog » Eclipse
2010-09-02T09:18:28Z
Bob's BPEL Blog
Beepul, beppul or beepell? It's all geek to me!
2010-08-24T03:46:26Z
Kaloyan Raev’s blog about Eclipse.
Eclipse sweets to share
2010-08-18T17:35:25Z
A little bit of this and little bit of that. Random thoughts about eclipse, agile development, and other pieces of information that make me go hmmmmm.
Intellectual Cramps
2010-08-23T15:05:51Z
I love to develop Eclipse RCP.There are many dreams.What a extensible environment is it?
Fly me to the Indigo!
2010-08-18T21:36:31Z
I love to develop Eclipse RCP.There are many dreams.What a extensible environment is it?
Fly me to the Indigo!
2010-08-18T21:36:31Z
Tom's opensource development
Tomsondev Blog
2010-09-03T04:43:57Z
Eclipse News
Eclipse News
2010-08-30T19:18:39Z
A blog devoted to promoting the Eclipse ecosystem
Eclipse Ecosystem
2010-08-30T16:19:41Z
A tinkerer reporting from the shadowy corners of Eclipse.
The Occasional Eclipse
2010-08-31T13:51:09Z
Java, Eclipse, OSGi, and other cool stuff
Kai's Blog » Eclipse
2010-08-17T10:19:04Z
Updated: 6 hours 25 min ago
6 hours 25 min ago
As I mentioned yesterday, we want to encourage people to tell their Eclipse story. Last week Cell Biosciences told their story at the Eclipse Day at the Googleplex. You can view their entire presentation but I have added a summary on the Eclipse Story wiki and below. btw, Cell Biosciences is looking a great Eclipse [...]
6 hours 25 min ago
Do we need another logging framework in the Java/Scala world? Certainly not! As Scala is fully "downward" compatible to Java, we can use whatever Java logging solution we want. And there are many, aren't there?.So why SLF4S? Well, SLF4S isn't another logging framework, but a very thin Scala wrapper around SLF4J which has emerged as the leading Java logging solution. Why do we need a Scala wrapper for SLF4S? Well, there are some nice Scala features that can make logging even easier and/or more performant.First, SLF4J Loggers use by-name parameters which are only evaluated if needed/accessed. When logging "traditionally", we often create messages by concatenating Strings or using the String.format method, even if we don't need these messages in the end because the logging level is not enabled. Of course we could "manually" check whether the logging level is enabled, e.g. by calling logger.isDebugEnabled, but we often don't, because it's cumbersome. With by-name parameters we can simply call our log methods and let SLF4S check whether the log level is enabled. Just take a look at one example:def debug(msg: => String) { require(msg != null, "msg must not be null!") if (slf4jLogger.isDebugEnabled) slf4jLogger debug msg}Second, SLF4S offers a Logging trait which can be mixed into any class to make a Logger instance available. That particular Logger will be initialized with the name of the class it is mixed into which is a common use case.class MyClazz extends SomeClazz with Logging ... logger debug "SLF4S just rocks!" ...Of course you can create Loggers with arbitrary names by calling Logger("SomeSpecialName").Last but not least, SLF4S offers implicit conversions from "usual" SLF4J Loggers into "pimped" SLF4S Loggers.Ah, and of course, SLF4S is OSGi compliant. But that's not a big surprise, taking into account that the authors are OSGi fanboys and SLF4J is OSGi compliant, too.
6 hours 25 min ago
In ECF's Helios release, we released an implementation of the OSGi remote services standard specification (chapter 13 in compendium).In addition to the full spec implementation...which is based upon synchronous remote service proxies...we added support for asynchronous remote services. This provides non-blocking access to remote OSGi services. This gives remote service consumers choices...allowing them to invoke remote services synchronously (i.e. by making a blocking method call on the proxy), and/or asynchronously (with a guarantee that the calling thread will not block).I think that one nice thing about this approach is that the service host implementer has to do exactly nothing to make these consumer choices available. The implementation of the service host is exactly the same.There are two styles of asynchronous access supported: an asynchronous callback (like GWT), and a future result, from the Actor model of computation. These two styles of of asynchronous access...along with the specified synchronous proxy...provides remote services consumers with some useful choices for creating reliable distributed systems and applications.
6 hours 25 min ago
I’ve been starting a lot of documentation work lately for the EGit/JGit projects and happened to come across this timely article from Forbes. If you don’t want to read it, the gist of it is that solid documentation is more important than you think… especially when it comes to attracting a user and developer base. [...]
6 hours 25 min ago
BIRT has many ways to include images within a report. Images can be used in BIRT styles, as watermarks, in text elements, and placed within the report using an image report item. In this post I will cover some of the details needed to work with images that are inserted using the Image report item. The image report item can retrieve images in four different ways. 1 -Through a URI, 2 – as an image in the resource folder, 3 – as an embedded image, 4 -or by using a dynamic image. Each of these methods is described below with examples. In addition some of the examples use onCreate scripts written in JavaScript. While these examples use JavaScript, they could also have been written in Java.URI ImagesThe first way is to retrieve an image with the image report item is to use a URI specification. This method is pretty straight forward and the value can be entered as a constant or as a JavaScript expression. Constants are processed faster by the engine but are harder to make dynamic. An example of a constant expression for a URI image would be as follows:http://www.eclipse.org/eclipse.org-common/themes/Nova/images/eclipse.png Note: Do not put quotes around the expression unless JavaScript Syntax is selected. An example of using a JavaScript expression is presented below.if( params["dynamicimage"].value == true ){"http://www.google.com/intl/en_ALL/images/srpr/logo1w.png";}else{"http://www.eclipse.org/eclipse.org-common/themes/Nova/images/eclipse.png";}This expression checks the value of the dynamicimage report parameter, and then based on its value, sets the value of the URI.The URI can also be set using an onCreate event handler for the image report item. The syntax for this approach would look like:this.URI = "http://tomcat.apache.org/images/tomcat.gif";//for a local file use: //this.URI = "file://C:/test/birtlogo.png"; Resource Folder ImagesBIRT uses a resource folder for storing report libraries, style sheets, images, jars, js files, properties files or virtually any file that you will need access to at runtime. While in the design environment the resource folder location can be set using the Windows->Preferences->Report Design->Resource setting. This can be set for the entire workspace or on a per project basis. At runtime you can set the resource folder in the web.xml if you are using the viewer. If you are using the engine API you can set the resource folder using the EngineConfig class’ setResourcePath method. When using a resource folder image, all that is needed is to specify the image name as it is defined in the resource folder. You can also set a JavaScript expression for the image name. For example:if( row["QUANTITYORDERED"] > 30 ){"green.png";}else if( row["QUANTITYORDERED"] > 25 && row["QUANTITYORDERED"] <= 30){"yellow.png";}else{"red.png";} This expression checks the row data to determine which resource folder image should be rendered. The same type of checks can be made if you are using the onCreate script event for the image element.var myqty = this.getRowData().getColumnValue("QUANTITYORDERED");if( myqty > 30 ){ this.file = "green.png";}else if( myqty > 25 && myqty <= 30){ this.file ="yellow.png";}else{ this.file="red.png";} One thing to note in the above is that the column value QUANTITYORDERED is the binding column name, not the dataset column name. See the binding tab on the table in the attached example. Images can also be placed in jar files within the resource folder. If your image exists in a jar file, you can use a script expression similar to the following to specify the image to retrieve.var jarfile = reportContext.getResource("birtimages.jar");myfulljarimage = "jar:"+jarfile.toString()+"!/green.png";myfulljarimage; The getResource method of the reportContext object is used to return the location of a file in the resource folder. Using the location of the file and the jar protocol, the image can be specified.Embedded ImagesBIRT allows images to be encoded directly into the xml report design. Images can be added by right clicking on the embedded images icon in the outline view of the report and selecting “New Embedded Image”. After selecting the image, the outline view is updated and the data for the image is encoded in to the design. You can also add embedded images to the report using the add image button of the image report item editor.Once the images are embedded into the report, you can add the image report item to the desired location, choose the embedded image radial, select the image name and click the insert button.If you wish to change the image dynamically, this can be done using an onCreate script. In the onCreate script specify the image name using the imageName property.this.imageName = "eyellow.png"; Dynamic ImagesDynamic images allow Blob images to be inserted into the report. Typically this type of image is tied to a data set column through either the image’s dataset bindings, or the container element’s bindings (eg Table). The sample database, which is delivered as part of BIRT, contains a Blob type column in the PRODUCTLINES table. The example report used in the post has an example of using this column in conjunction with the image report item.A developer can also use an onCreate event script to set the image data. When doing this, the image data should be in a byte[]. Presented below is an onCreate script that uses the ImageIO class to read a file, a URL, an image from the resource folder, or an image in a jar file in the resource folder. Uncomment the section of the script for the desired image location. importPackage(Packages.java.io);importPackage(Packages.java.lang);importPackage(Packages.java.net);importPackage(Packages.javax.imageio);//File Based//var myfile = new Packages.java.io.File("c:/test/green.png");//var img = ImageIO.read(myfile); //URL Based//Jar image in resource foldervar jarfile = reportContext.getResource("birtimages.jar");var myfulljarimagestr = "jar:"+jarfile.toString()+"!/red.png";var myurl = new Packages.java.net.URL(myfulljarimagestr);//Image in resource folder//var myurl = reportContext.getResource("green.png");//Image at url//var myurl = new Packages.java.net.URL("http://www.eclipse.org/eclipse.org-common/themes/Nova/images/eclipse.png");var img = ImageIO.read(myurl);bas = new ByteArrayOutputStream();ImageIO.write(img, "png", bas);this.data = bas.toByteArray(); The example used for this post is available at Birt-Exchange. To setup the example, copy the birtimages.jar and the three supplied images to your resource folder.
6 hours 25 min ago
The Swiss Railway SBB has just recently joined the Eclipse Foundation as an Associate Member.Transporting 327.5 million passengers and 50 million net tons of freight every year the company is by far the biggest travel and transport company in Switzerland.Having experienced their great services for the time I was living in Switzerland I appreciate very much that this very service oriented organization has become a large consumer of the Eclipse platform and Eclipse related services.We have seen presentations of their applications on various occasions such as the Eclipse Summit, and we look forward to an even closer relationship with SBB through the newly signed membership.
6 hours 25 min ago
I'm happy to report that I've been given company approval to port the relevant components of our Flex data binding library back to Eclipse Data Binding.I haven't started the actual port yet--there are still some concepts on the Flex side that are not a perfect match to Java and existing idioms in Eclipse Data Binding. You'll see what I mean.To avoid conflating the port to Java with the general API I'm going to just present what the Flex API looks like. Bind.from(source, "foo") .to(target, "bar");This binding watches the source.foo property, and writes the new value to target.bar each time a change it detected. Now add some validation and conversion magic: Bind.from(source, "foo") .validate(Validators.stringToNumber) .convert(Converters.stringToNumber) .validate(Validators.greaterEqual(0)) .validate(Validators.lessThan(10)) .to(target, "bar");Here we've added several additional steps in the pipeline. After source.foo changes, we first validate that the string can be converted to a number. If so the pipeline continues to the next step, and terminates otherwise. Next we convert the string to a number Now validate that the number is greater than or equal to zero. If so the pipeline continues to the next step, and terminates otherwise. Now validate that the number is less than 10. If so the pipeline continues and the number, now verified to be in the range [0,10), is written to target.bar.Now suppose our binding is misbehaving somehow, and we want to troubleshoot. We can add logging steps to the pipeline in between the other steps so we can see exactly what is going on: Bind.from(source, "foo") .log(LogEventLeven.INFO, "source.foo == {0}") .log(LogEventLeven.INFO, "validate {0} is a number") .validate(Validators.stringToNumber) .log(LogEventLeven.INFO, "convert {0} to a number") .convert(Converters.stringToNumber) .log(LogEventLeven.INFO, "validate {0} >= 0") .validate(Validators.greaterEqual(0)) .log(LogEventLeven.INFO, "validate {0} .validate(Validators.lessThan(10)) .log(LogEventLeven.INFO, "set target.bar = {0}") .to(target, "bar");(In Flex, string formatting is done with {n} format instead of the %s syntax which Java inherited from C. The log statement passes the values in the pipeline as additional arguments which you can reference in log statements.)These log steps are a real lifesaver for tracking down and squashing bugs in your binding code.If you've already worked with Eclipse Data Binding you may have noticed something else: you are no longer constrained to the standard data-binding pipeline. You are free to add steps in the pipeline wherever you like and in any order you like.Next up is two-way bindings. The bind class provides a twoWay method which connects two bindings to the other one's starting point: Bind.twoWay( Bind.from(source, "foo"), Bind.from(target, "bar") );is equivalent to: var lock:Lock = new Lock(); Bind.from(source, "foo") .lock(lock) .to(target, "bar"); Bind.from(target, "bar") .lock(lock) .to(target, "foo");Notice that each binding has a "lock" step in the pipeline. Only one binding can hold a lock at a time. This solves the common infinite loop problem: source.foo changes. binding one executes, writing the value to target.bar target.bar changes. binding two executes, writing the value to source.foo source.foo changes. binding one executes, writing the value to target.bar ... stack overflow!Since only one binding can hold the lock at a time, this is what happens instead: source.foo changes. binding one acquires the lock and executes, writing the value to target.bar target.bar changes. binding two attempts to acquire the lock but it is already acquired. binding two aborts. binding one releases the lockYou should never add the same lock more than once to a single binding, since that would guarantee that the binding will never run.Two-way bindings can use validations, conversions, logging, locks etc just like regular one-way bindings (since two-way bindings are just two one-way bindings wired up to eachother): Bind.twoWay( Bind.from(person, "birthDate") .convert(Converters.dateToString(dateFormat)) Bind.from(heightText, "text") .validate(Validators.stringToDate(dateFormat)) .convert(Converters.stringToDate(dateFormat)) .validate(Validators.lessEqual(now)) );We usually leave out the validations in the model-to-UI bindings. It's usually only important to apply validations when you're copying data back from the UI to the model, to make sure domain constraints are satisfied, such as ensuring that a birth date occurred in the past.And now for my favorite part: binding from multiple sources, to multiple destinations. Raise your hand if you have ever had to wire up a UI form like this: Is there a foo? (o) Yes ( ) No <-- fooRadioGroup Enter bar: ____________________ <-- barTextRequirements: fooRadioGroup.selectedItem is bound to model.foo (a boolean) barText.text is bound to model.bar (a string) barText must be enabled iff fooRadioGroup selection is Yes. When the user clicks "No," set model.bar to null but do not clear the text box. If the user clicks "Yes" again, set model.bar back to the contents of barTextRequirements 1 and 3 are easy: var fooLock:Lock = new Lock(); Bind.twoWay( Bind.from(model, "foo"), Bind.from(fooRadioGroup, "selectedItem"), fooLock); // explicitly provide the lock, see more below Bind.from(fooRadioGroup, "selectedItem") .to(barText, "enabled");Requirements 2 and 4 are kind of related to eachother. The model-to-UI binding is simple enough: just write the value straight across: var barLock:Lock = new Lock(); Bind.from(model, "bar") .lock(barLock) .to(barText, "text");However the inverse binding (UI-to-model) must also take fooRadioGroup.selectedItem into account to decide whether to write back barText.text (if Yes is selected) or null (if No is selected).The Bind class has another trick up its sleeve: Bind.fromAll( Bind.from(fooRadioGroup, "selectedItem") .lock(fooLock), Bind.from(barText, "text") ) .lock(barLock) .convert(function(foo:Boolean, bar:String):String { return foo ? bar : null; }) .to(model, "bar");Look closely. The binding pipelines that we pass to fromAll(...) become the arguments, in the order they are provided, to the converter and validator functions further down the pipeline. The first pipeline is from fooRadioGroup.selectedItem and therefore that boolean value is the first argument to the converter. Likewise, the barText.text pipeline is provided second, so that string value becomes the second argument to the converter.The converter takes multiple values but returns only a single value. This is where those values get coalesced into a single value that we can write to the model--in this case, a String value or null.The outer pipeline adds a locking step on barLock, which is expected since we need to prevent infinite loops between the last two pipelines. However we are also locking on fooLock, on the first of the inner pipelines. We had a problem with our bindings overwriting values in the UI depending on the order things were initialized.It turned out that without that lock, if a new model object was set, then the foo binding would fire first. Thus model.foo was copied to fooRadioGroup.selectedItem. But that would trigger our last binding to execute, so if the new foo value was false, then the last binding would override anything in the text box and set null on the model.bar field, before the model.bar => barText.text binding had a chance to execute!A good rule of thumb is that any time you need to bind from multiple sources, you should make sure to create a lock to share between all the bindings to relate to the same field in the model.Obviously there are several concepts that will have to be adapted to work elegantly with our existing APIs. Realms are a missing piece (Flex is single-threaded so we didn't even have to consider it). Also we would want to try to retrofit the existing binding classes to use this new API transparently, like we did with the transition from custom observables to custom properties.So there you have it. This is my current vision of what Eclipse Data Binding should evolve toward.Comments?
6 hours 25 min ago
If anybody is going to be in Dublin next Thursday (Sept 9th), I’ll be talking about OSGi, Software Modularity and Single Sourcing. Details of the event can be found here. If anybody is going to be in the area, let me know. I’d love to catch up with some Eclipse folks over a few frosty [...]
6 hours 25 min ago
I know Eclipse ‘Help’ is not a very exciting topic, but today I found myself working with a little known secret of Help. Most people know that you can setup context sensitive help (Press F1 and bring up help for the specific workbench part under focus). However, did you now you do the opposite? [...]
6 hours 25 min ago
I’ll continue my instructions regarding how to set up JSDT development infrastructure. Previously I set up the build target I checked out the code I updated to the latest debug plugins to resolve compilation issues. I launched the unit tests Now run the product When I work on Eclipse products, we typically provide a default [...]
6 hours 25 min ago
Lots of people are doing incredible things with Eclipse. People are building amazing applications that embedded Eclipse technology. Companies have standardized on Eclipse as their development tools platform. Students and researchers are using Eclipse for creating some very cool new technology. As with any open source community, sharing information is critical to fostering a healthy [...]
6 hours 25 min ago
Last night I had the pleasure to speak at my local AustinJUG. It was nice to catch up with some local folks and introduce people to some new Eclipse technology. In the end, we kind of got sidetracked and there was some good discussion about source control in the corporate environment versus what is going [...]
6 hours 25 min ago
Dunge: Hello there, sorry for the noob question. I installed Eclipse for Java (Helios) and JDK update 21, I’m trying to use the Blackberry SDK but when I install it it say I require org.eclipse.jdt.debug [3.5.0,3.6.0) first. I tried to find it in “install new software” or on the website, I can’t find anything
rcjsuen: Dunge: [...]
6 hours 25 min ago
Packt Publishing, a UK based book publishing firm has send me a copy of their latest book BIRT 2.6 Data Analysis and Reporting by John Ward to write a review. You can find the details of the book here. I hope to publish an in-depth review about this book in a few weeks at "I Like Eclipse", the blog site of EclipseBible.com.madhueclipseBible.com
6 hours 25 min ago
We are happy to announce that the EMFStore project has been accepted as an Eclipse Project.www.emfstore.org
6 hours 25 min ago
We are happy to announce that the EMF Client Platform project has been accepted as an Eclipse Project.www.emfcp.org
6 hours 25 min ago
Not many votes (about 20 or so at time of reading), but Google App Engine seems to be a big favourite for Eclipse users, gathering half the votes by itself. Looks like I have some reading up on Google App Engine to do…
6 hours 25 min ago
What’s on your tablet? For the perfect Android tablet, you need the real Android Market.
6 hours 25 min ago
I’ll continue my instructions regarding how to set up JSDT development infrastructure. Previously I set up the build target I checked out the code I updated to the latest debug plugins to resolve compilation issues. Run the unit tests Now I want to verify that the unit tests for JSDT pass. (TDD — we should [...]
6 hours 25 min ago
I’ve been documenting how to use JSDT to do some HTML5/CSS/JavaScript development. In order to poke around the JSDT code to understand it better, I spent a bit of time figuring out how to get things checked out, built and running. The instructions on the JSDT site a re a bit sparse, so I thought [...]