Region support for non-rectangular controls

In case you do not follow the Eclipse platform (which Notes and Expeditor sit on top of) the noteworthy new stuff in Eclipse 3.4 is some pretty slick stuff.

Region based controls:

Alpha values on shells:

American Idol does it again

I happen to be watching American Idol live last night – which is very rare with my DVR. Thank God I did, they once again waited until 10:02 to announce the winner. My wife said so many people were pissed at work today because they recorded it and missed the announcement because the DVR was set to end at 10pm. I think this whole concept is classic and kudos to the producers. Of course I hate it though. 🙂

Think Big, go Celtics!

In case you didn't hear, the Celtics won in game 7 and advance to the conference finals! Cleveland actually gave everyone a little scare there for a moment but pulled through.

cai URL under the covers

Mikkel wrote about the CAI url posting Niklas put on the Composite Application wiki. These are all good comments about the format of the URL so I am not going to address the ugliness – I will just say there is a method to the madness.

What I can show you is, you can actually create the URL in code fairly easy (if you are on the Java side of the house of course). Since the page id is the perspective identifier you can use the Eclipse Workbench API's to get that. Then, you can use the method I wrote about in the wiki to get the meta-data associated with the page. Once you get the page object, the application the page is contained in is stored in the property “applicationGUID”. You now have the GUID and the page ID for the cai url.

You can also use the OSGI console to see this same information. Start with using the “thsh p” command on the osgi console. Then use the “thsh nctx ” to get the properties that are written to the extension registry for the page. Lastly, you can do the same thing with components: get the list of components on a page with “thsh sc ” and that will show the properties for that component.

See the sample console output below.

Topology OSGI commmands:

---Topology Handler Commands---
thsh n - Show all navigation elements
thsh p - Show all Pages
thsh l - Show all Labels
thsh f - Show all topology files
thsh apps - Show all application GUIDs
thsh e - Show all registered extensions under the given namespace
thsh dp - Show all dirty pages
thsh nattr - Show all navigation preferences
thsh nctx - Show navigation context
thsh sc - Show components for a page
thsh b - Show copies of the specified page

Sample console output:

osgi> thsh p
Topology Handler All Page Elements
Application GUID: 11_5JMPDRH1000980269G784H2GO41209749441490
TYPE_PERSPECTIVE; NAME = test application; ID = 6_5JMPDRH1000980269G784H2GO11209749441490; Application GUID = 11_5JMPDRH1000980269G784H2GO41209749441490

Application GUID: 11_ITM9DGL1087KE02MQFOQ5C2GK3
TYPE_PERSPECTIVE; NAME = Browser sample; ID = 6_ITM9DGL1087KE02MQFOQ5C2G26; Application GUID = 11_ITM9DGL1087KE02MQFOQ5C2GK3
TYPE_PERSPECTIVE; NAME = Portlet to Portlet Communication sample; ID = 6_ITM9DGL1087KE02MQFOQ5C2GQ6; Application GUID = 11_ITM9DGL1087KE02MQFOQ5C2GK3
TYPE_PERSPECTIVE; NAME = Portlet to SWT Communication sample; ID = 6_ITM9DGL1087KE02MQFOQ5C2GE5; Application GUID = 11_ITM9DGL1087KE02MQFOQ5C2GK3
TYPE_PERSPECTIVE; NAME = SWT to Portlet Communication sample; ID = 6_ITM9DGL1087KE02MQFOQ5C2BB1; Application GUID = 11_ITM9DGL1087KE02MQFOQ5C2GK3
TYPE_PERSPECTIVE; NAME = Double Browser sample; ID = 6_ITM9DGL1087KE02MQFOQ5C2GP7; Application GUID = 11_ITM9DGL1087KE02MQFOQ5C2GK3
TYPE_PERSPECTIVE; NAME = URL Selector to Launch Dynamic Action Page; ID = nav_CrossPageSource1; Application GUID = 11_ITM9DGL1087KE02MQFOQ5C2GK3
TYPE_PERSPECTIVE; NAME = Dynamic Action Accepts a URL; ID = nav_CrossPage_ShowURL1; Application GUID = 11_ITM9DGL1087KE02MQFOQ5C2GK3

Application GUID: 1F_3KE527R20OGG702ELBAT9T10P0
TYPE_PERSPECTIVE; NAME = Getting Started; ID = 6_3KE527R20OGG702ELBAT9T1091; Application GUID = 1F_3KE527R20OGG702ELBAT9T10P0

Application GUID: 1F_3KE527R20OGG702ELBAT9T10K7
TYPE_PERSPECTIVE; NAME = Home; ID = 6_3KE527R20OGG702ELBAT9T10K6; Application GUID = 1F_3KE527R20OGG702ELBAT9T10K7

Application GUID: 11_5JMPDRH1000980269G784H2GO41209697938390
TYPE_PERSPECTIVE; NAME = testApp; ID = 6_5JMPDRH1000980269G784H2GO11209697938390; Application GUID = 11_5JMPDRH1000980269G784H2GO41209697938390

Application GUID: BD973A4E8C0FCDED54C69CB23940B5FC_1F_3KE527R200VQ502MGJOIMC2096
TYPE_PERSPECTIVE; NAME = Mail; ID = BD973A4E8C0FCDED54C69CB23940B5FC_6_3KE527R200VQ502MGJOIMC20H7; Application GUID = BD973A4E8C0FCDED54C69CB23940B5FC_1F_3KE527R200VQ502MGJOIMC2096
TYPE_PERSPECTIVE; NAME = Calendar; ID = BD973A4E8C0FCDED54C69CB23940B5FC_6_3KE527R200VQ502MGJOIMC20T2; Application GUID = BD973A4E8C0FCDED54C69CB23940B5FC_1F_3KE527R200VQ502MGJOIMC2096
TYPE_PERSPECTIVE; NAME = To Do; ID = BD973A4E8C0FCDED54C69CB23940B5FC_6_3KE527R200VQ502MGJOIMC20T7; Application GUID = BD973A4E8C0FCDED54C69CB23940B5FC_1F_3KE527R200VQ502MGJOIMC2096

osgi> thsh nctx BD973A4E8C0FCDED54C69CB23940B5FC_6_3KE527R200VQ502MGJOIMC20H7
Topology Handler Navigation Element Context
Context values for navigation BD973A4E8C0FCDED54C69CB23940B5FC_6_3KE527R200VQ502MGJOIMC20H7 = notes:///852568BD0051EF1E/MailFS?OpenFrameset&or1flg=32&hashId=BD973A4E8C0FCDED54C69CB23940B5FC
requestUrl = nrpc:/__852568BD0051EF1E/composite.xml?file=mail%5Cbbalfe.nsf&name=NotesMailApps.xml&launchUrl=notes%3A%2F%2F%2F852568BD0051EF1E%2FMailFS%3FOpenFrameset%26or1flg%3D32%26hashId%3DBD973A4E8C0FCDED54C69CB23940B5FC = NotesMailApps.xml = mailbbalfe.nsf
applicationGUID = BD973A4E8C0FCDED54C69CB23940B5FC_1F_3KE527R200VQ502MGJOIMC2096

osgi> thsh sc BD973A4E8C0FCDED54C69CB23940B5FC_6_3KE527R200VQ502MGJOIMC20H7
Component data for component id = BD973A4E8C0FCDED54C69CB23940B5FC_5_3KE527R208CCC02M6C5LO53091
portletname = Notes 8.0 Mail Nav
portletwindowid = BD973A4E8C0FCDED54C69CB23940B5FC_5_3KE527R208CCC02M6C5LO53091 = notes:///852568BD0051EF1E/MailFS?OpenFrameset&or1flg=32&hashId=BD973A4E8C0FCDED54C69CB23940B5FC = TMP_10006 = 0.5 = = false
applicationGUID = BD973A4E8C0FCDED54C69CB23940B5FC_1F_3KE527R200VQ502MGJOIMC2096 = false = notes:///852568BD0051EF1E/MailFS?OpenFrameset
requestUrl = nrpc:/__852568BD0051EF1E/composite.xml?file=mail%5Cbbalfe.nsf&name=NotesMailApps.xml&launchUrl=notes%3A%2F%2F%2F852568BD0051EF1E%2FMailFS%3FOpenFrameset%26or1flg%3D32%26hashId%3DBD973A4E8C0FCDED54C69CB23940B5FC = true = Notes Mail Navigator = simple view = true = true = mailbbalfe.nsf = BD973A4E8C0FCDED54C69CB23940B5FC_5_3KE527R208CCC02M6C5LO53091 = N otesMailApps.xml = true = true

Tags: : :

I am Iron Man

Ok, if you have not seen the movie go see it. It was great! It had the usual non-believable super hero stuff but your kids and the kid in you will love the movie. And yes, there is a sneak peak at what's to come after the credits are complete. However, the movie was so long I had to go to the bathroom right after. I went to the bathroom when the credits started and got back in time to see the clip – btw, the credits are also amazingly long.

I don't know about anyone else but I wish I was as smart as Stack and I also wish I had that lab of his.