Home » Community » Forums » GDNet Lounge » Vista Expose-style switcher
Intel sponsors gamedev.net search:
Control Panel Register Bookmarks Who's Online Active Topics Stats FAQ Search

Add Forum to Favorites |  Send Topic To a Friend | View Forum FAQ | Track this topic


 Last Thread Next Thread 
 Vista Expose-style switcher
Post New Topic  Post Reply 


It's a Vista Expose-style switcher I wrote in a few nights based on a WPF+DWM thumbnail demo by Douglas Stockwell. I was too lazy to install an IDE for a while, so most of it was written in Notepad. It's compilable on a fresh install of Vista; just run %windir%\Microsoft.NET\Framework\v2.0.50727\csc.exe /target:winexe Switcher.cs

Download here. The switcher activates when you run the executable. I added a shortcut to it in the Quick Launch bar. On Vista, each Quick Launch item is accessible via the keyboard shortcut Win+<number>, where <number> is the index of the item in that bar. My shortcut is first, so I press Win+1 to activate the switcher.

There's another Expose clone here that's written in C++ and has a bit more features. I dislike its animation and graphics, though, which was part of the reason why I wrote my own. Plus I was kinda bored that night.

Hope everyone has fun with it. No restrictions on the code. It might have scary bugs, so don't blame me if your computer explodes. And yes, Civilization 4 is animating at full speed in that screenshot :)

 User Rating: 1668   |  Rate This User  Send Private MessageView Profile Report this Post to a Moderator | Link

Heh.

I absolutely love that they had the foresight to actually make an API for working with DWM and doing stuff like this -- something that to my knowledge Apple and the XGL guys have not bothered to do for either OSX or Linux.

 User Rating: 1899   |  Rate This User  Send Private MessageView ProfileView Journal Report this Post to a Moderator | Link

That's really cool. I do kind of wonder, though, what benefit it would have beyond providing an Expose-like feature?

Any thoughts?

CM

 User Rating: 1692   |  Rate This User  Send Private MessageView ProfileView Journal Report this Post to a Moderator | Link

Conner: Mac users are convinced it's superior to the task bar.

Interestingly, IE7 has something like this for its tabs. On the far left of all the tabs is a very small tab that only appears when you have two or more tabs open. Rather interesting feature.



"aut viam inveniam aut faciam"---[My Site]---[Some Research and Development]---[3H-GDC]---[An Art Gallery]

 User Rating: 1488   |  Rate This User  Send Private MessageView ProfileView JournalView GD Showcase Entries Report this Post to a Moderator | Link

Quote:
Original post by Promit
Heh.

I absolutely love that they had the foresight to actually make an API for working with DWM and doing stuff like this -- something that to my knowledge Apple and the XGL guys have not bothered to do for either OSX or Linux.

You can use Quartz Composer/Core Image to manipulate the window management inside your application and inside the window manager; Amit Singh has made a couple "wobbly window" plugins for OS X.

As for Xgl, Xgl is just the X server -- you can access it using GL/X11 calls like normal. The window managers that you run on top of Xgl (Compiz, Beryl) add stuff like wobbly windows, and Beryl has a pretty aggressive plugin architecture -- I've already replaced its default Expose clone feature with a different one. I never use Expose on my Mac -- according to capn_midnight I'm the only Mac user not to.

ravuya: [Website][Not Your Journal]

 User Rating: 1948   |  Rate This User  Send Private MessageView ProfileView JournalView GD Showcase Entries Report this Post to a Moderator | Link

Quote:
Original post by Conner McCloud
That's really cool. I do kind of wonder, though, what benefit it would have beyond providing an Expose-like feature?

Any thoughts?

CM
I provided it as something people can play and experiment with. The experimentation bar is very low since all you need is Notepad and the C# compiler, both of which come with Vista. It definitely doesn't do much at the moment and is quite lacking in some areas (keyboard navigation is the big one), but hopefully it can inspire someone to do something really awesome and different.

 User Rating: 1668   |  Rate This User  Send Private MessageView Profile Report this Post to a Moderator | Link

Quote:
Original post by mutex
I provided it as something people can play and experiment with. The experimentation bar is very low since all you need is Notepad and the C# compiler, both of which come with Vista. It definitely doesn't do much at the moment and is quite lacking in some areas (keyboard navigation is the big one), but hopefully it can inspire someone to do something really awesome and different.

I didn't mean your program specifically, I meant the thumbnail feature in general. Apparently its got its own API, which is cool, but it seems like an API developed specifically for building an Expose-like program. So why didn't MS just make an Expose-like program?

That said, I did get one idea. It would probably greatly simplify things like overlaying your messenger app over top of a full screen game.

CM

 User Rating: 1692   |  Rate This User  Send Private MessageView ProfileView Journal Report this Post to a Moderator | Link

Quote:
Original post by Conner McCloud
That's really cool. I do kind of wonder, though, what benefit it would have beyond providing an Expose-like feature?

Any thoughts?

CM

Alt-Tab has been updated to use the DWM, the new Win-Tab replacement is also made possible by the DWM, the taskbar has live preview thumbnails of its windows, etc. You could definitely imagine other non-Expose uses for the DWM API. In fact, while I was interning at MS they had me working with the DWM quite a bit.



 User Rating: 1676   |  Rate This User  Send Private MessageView ProfileView JournalView GD Showcase Entries Report this Post to a Moderator | Link

All times are ET (US)

Post Reply
 Last Thread Next Thread 
Forum Rules:
You may not post new threads
You may not post replies
You may not edit your posts
You may not use HTML in your posts
Jump To:
Administrative Options: