The Oregon Delphi User Group is a community-sponsored group of Delphi developers and enthusiasts in and around the Portland, Oregon metro area. We offer periodic meetings presented by leading developers, authors, and community members who graciously share their experiences with the group and focus on the Delphi Integrated Development Environment and related technologies.

In Persuit of Development Clairvoyance

04/08/2013 6:00 pm


As web technologies become more robust and the interfaces more rich and user-friendly and as a plethora of computing devices in every size and price range fill our lives, there is a race in the industry to become a major vendor of development tools to build applications for these various computing platforms. It seems that everyone is touting theirs as the one solution you need to cover all devices, minimize development effort, and provide the best experience for the users of your software.


03/11/2013 6:00 pm


On February 5, Embarcadero announced the purchase of a popular third party data access component library named AnyDAC. They have rebranded the library FireDAC for consistency with their new FireMonkey brand, although FireDAC doesn’t rely on FireMonkey in any way. FireDAC ships with the Enterprise, Ultimate and Architect SKUs and may be purchased by Pro users as a component pack. In the end, this appears to be a replacement of the dbExpress stack that Embarcadero has previously developed internally. As a result it’s a very significant change in direction for the company.


02/11/2013 6:00 pm


One of the advantages of using modern development environments such as Delphi is to hide the complexities of displaying controls on a form. Simply place a button or a grid or a label on your form and it looks and behaves like a button or a grid or a label should without any special work. But what if you need to do something that is not covered by the standard set of properties? What if you need to place a bitmap or draw a line or join some cells in a way not supported natively by the control? In some cases, third-party libraries provide just what you need, but in others, you have to do it yourself.

Fortunately, the Windows controls on the Delphi tool palette are simply wrappers around Windows objects and the API to control them is easily accessible.

This is nothing new. Since Delphi 1, developers have been able to explicitly dictate every aspect of a control's look and feel if they are willing to dig down just under the surface by setting a property or two and hooking into an event.

Tonight, we'll show a real-world application that manipulates a StringGrid to combine cells, color them, and fill them with data. We'll touch on a few other controls as well and explore the technology a bit to help you break through the mysterious barrier of the Canvas and how you can Paint on it!


01/14/2013 6:00 pm


For many projects today, it is not enough to work in Delphi. Projects extend to the web. At our January meeting we'll be exploring how to work with HTML, with an emphasis on the newly-approved HTML 5 standard. Our vehicles of exploration for this presentation will be Delphi and HTML5 Builder. We'll look at what works - and doesn't - with these Embarcadero tools. There will also be an open discussion of people's favorite HTML editor.

Tales from the Scrypt!

11/12/2012 6:00 pm


Yes, this is a word play on "Tales from the Crypt" and will be a fun meeting where we share horror stories in coding. Bring your experiences of programming gone awry, the unbelievable code you've been handed, the strangest bugs, or the most unbelievable deadlines imposed on you and the terrible consequences that resulted. We will commiserate together and laugh at what the sales people in the organizations we work for have tried to do to us or ponder about what the previous programmer must've been smoking when s/he wrote the code we're trying to debug.

Document Your Code Using XMLDoc

10/08/2012 6:00 pm


Many people do not know, and fewer still actually use, a nifty feature which appeared in the Delphi IDE a few years ago: built-in XML Documentation for your source code.

At this month's meeting, we'll show how to turn it on, how to use it, and how it can enhance developer productivity, especially if you are sharing libraries or have several units to which you are constantly referring to for reviewing a type or method. There are very few articles on this subject, so come take advantage of the presenter's research and be more productive right away!

RAD Studio XE3 Tour!

09/05/2012 6:00 pm


Exciting new versions of Delphi and RAD Studio are coming soon. Be among the first to see what’s new in Delphi XE3 and in RAD Studio XE3 – including Delphi, C++Builder, Prism, InterBase and new HTML5 Builder at one of these free, live, launch tour events.

Tech Talk

06/11/2012 6:00 pm


There is no formal presentation this month. We'll meet and eat at the usual location and talk tech--or any other subject that may come up. A laptop with Delphi 2010 will be hooked up to the big screen TV if we want to explore some topic or pull out a demo from a prior meeting.

Attributes and RTTI

05/14/2012 6:00 pm


Attributes, a language feature brought over from .NET and Java (known as "annotation"), are a language feature of Delphi introduced in version 2010 that allow annotating types and type members with special objects that carry additional information. This information can be queried at run time using RTTI, or Run Time Type Information. Along with existing OOP mechanisms (inheritance and ownership) you can now use annotations for a class and class members to further define what your classes are capable of.


04/09/2012 6:00 pm


The Open Data Protocol (OData) is a Web protocol for querying and updating data that provides a way to unlock your data and free it from silos that exist in applications today. We'll see how an old technology in Delphi, WebBroker, has been able to do this for quite some time, but now there's a cool name and a formalized protocol for it. A sample Delphi application will make obvious how simple it is to open your data to mobile devices!