星期六, 9月 22, 2007

Convert Position between WPF Controls & Screen



Lester's WPF blog : Code for getting screen relative Position in WPF
這幾天一直在try Windows Vista的Gagdget.... 中秋連假還一直在加班 :-(

最後有一個major bugs就是卡在這裡~~ 超麻煩的 不過還好給我找到了....

呵~


Powered by ScribeFire.

Transparent WPF Control over Unmanaged Window Handle



Transparent WPF control over unmanaged window handle - Just code - Tamir Khason

之前在合作一個case 好像我就有使用過這樣的技法~~ 不過這個link比較簡單...:p


Powered by ScribeFire.

星期一, 9月 17, 2007

DirectX-base UI : Become windowless


viksoe.dk - UI: Become windowless


晚上在研究VMR的時候~~~ 突然發現這個網站~~ 看完我真是驚為天人...而且還附上sample program & source code

一套UI Library/Control Set based on DirectX

我被他的Sample Program驚豔到了~~ 因為我還真有點分不出這不是Traditional SDK Controls,而是用DirectX寫的

wow~~ WPF好像沒他的performance那麼好~ 跑的很順很快 ..... 有稍微大概研究了一下source code 算是蠻完整的.....

:D

等我有空 一定要好好研究一番.....


Powered by ScribeFire.

星期六, 7月 21, 2007

Introduction to Boost Function

為了要在C++裡實現delegate/event 所以我自己寫了一個Functor的class

不過為了未來使用的方便,最好是找一個library來用

所以我選了boost的function來研究

以下列出一些tutorial給大家參考一下 ................


Boost源码剖析:C++泛型函数指针类

Boost.Function的基本使用

Chapter 6. Boost.Function

functor 還是 boost 的好用

functor 還是 boost 的好用 (續)


星期四, 7月 19, 2007

利用C++ Functor實現.Net的delegant/event



在C++中實現.NET風格的委託-開發者網路-C++-天極Yesky

CALLBACKS IN C++ USING TEMPLATE FUNCTORS

http://www.codeproject.com/cpp/#Delegates

A new way to implement Delegate in C++

最近為了一些原因,又得重新再檢視一次Design Pattern。

大多的Patterns我已經是滾瓜爛熟的.... 但是說真的每一個Pattern都有在用嗎?

其實我也覺得沒那麼常用~~ 有些Pattern知道十分強大,但是實作起來就沒那麼方便 或是真的很麻煩....


這次又重看一次Observer...... 很常見的Pattern,但是C++ implement起來就是得繼承來繼承去

但是近一年來我都是用C#,我用C#的event/delegant可以很輕易的不用繼承解決Observer的東西

於是我重回到C++思考.....  想到之前有人跟我說functor的概念~~~ 我一直以為就是function object

就是在STL裡 能夠customize 不用演算法的行為~~ 這樣的作法已經很厲害了....


沒想到Functor的確可以實現出類似C# event/delegant的概念~~~

所以貼上來給大家參考一下 :-)

(第二篇是1994年寫的.....也太神奇了~~ 那些code VC6有辦法compile嗎? 我到2007才準備開始用..)


星期一, 7月 16, 2007

UML 工具比較分析


這陣子在Survey UML Modelling的工作

有看到的是Visual Paradigm,有朋友說他們用的是Jude,還有說是IBM RSA,

又看到網路上一些比較

http://www.kenming.idv.tw/index.php?title=uml_amya_mam_ef_a_a&more=1&c=1&tb=1&pb=1

先列出來 我慢慢把這篇整理完整

Powered by ScribeFire.

星期日, 6月 24, 2007

Image Processing for Dummies with C# and GDI+

這一陣子一直在寫一些有關Image DSP方面的東西.....



也累積了一些在C#該怎麼用Gdi+來寫~~



@@ 結果發現 CodeProject有一系列的文章寫的太詳盡了 甚至連Source code都有了...



基本的結構跟我後來寫的方法近似~~ 但是文章介紹的Filter就多我能力所及太多了...



列出來給大家參考一下 :p





Image Processing for Dummies with C# and GDI+ Part 1 - Per Pixel Filters
Last Updated: 21 Mar 2002  Page views: 306,899  Rating: 4.6/5  Votes: 144  Popularity: 10.0

The first in a series of articles which will build an image processing library in C# and GDI+




Image Processing for Dummies with C# and GDI+ Part 2 - Convolution Filters
Last Updated: 7 Nov 2005  Page views: 247,464  Rating: 4.7/5  Votes: 97  Popularity: 9.3

The second in a series of articles which will build an image processing library in C# and GDI+.




Image Processing for Dummies with C# and GDI+ Part 3 - Edge Detection Filters
Last Updated: 1 Apr 2002  Page views: 193,665  Rating: 4.6/5  Votes: 55  Popularity: 8.1

The third in a series of articles which will build an image processing library in C# and GDI+




Image Processing for Dummies with C# and GDI+ Part 4 - Bilinear Filters and Resizing
Last Updated: 15 Apr 2002  Page views: 180,571  Rating: 4.5/5  Votes: 48  Popularity: 7.6

The fourth installment covers how to write a filter that resizes an image, and uses bilinear filtering




Image Processing for Dummies with C# and GDI+ Part 5 - Displacement filters, including swirl
Last Updated: 26 Dec 2002  Page views: 217,943  Rating: 4.7/5  Votes: 112  Popularity: 9.6

In the fifth installment,
we build a framework for generating filters that work by changing a
pixel's location, rather than colour.




Image Processing for Dummies with C# and GDI+ Part 6 - The HSL color space
Last Updated: 29 Jun 2004  Page views: 94,535  Rating: 4.8/5  Votes: 35  Popularity: 7.4

A discussion of the HSL color space, including code for a color picker and image filters

星期一, 6月 04, 2007

Google Gears



Google推出一個Open Source的Project叫Gears,是一組可以讓Web Application能Offline執行的Library or API



現在還是BETA版~~ 詳情我是還沒看過 有興趣可以參考Google Gears (BETA)



Google真的有計畫地一步步逼近Desktop Software的市場 而且手腳真的很快









Powered by ScribeFire.

Microsoft Surface



對於Usability一直很有興趣~~ 一直想做出不一樣的東西~~



看過了許多的Demo與一些其它的Prototype,總覺得心中有一塊可以做的東西~~~



也有一塊還未開發的市場~~~ 如果我看到Microsoft Surface



我覺得他幫我彌平了我心中一直想要想的一大塊~~~ 有空的話一定要去看一下他的Demo.....真的很炫!!!!





星期三, 5月 30, 2007

[C#] PropertyGrid





我一直想要做一個auto property panel

如果能做出來 那許多的property dialog全都可以automatically genearte出來...



有點像Visual Studio .Net 2005的Properpty Panel一樣 只是那時候我也不知他是寫死還是自動產生的



結果我發現C#內建的PropertyGrid就完完全全做到我想做的

而且做的好極了~~~



@@ 只好看一下下面兩篇文章就很清楚知道怎麼做了

現在就只差怎麼去customize propertygrid的UI了

文章裡也有寫相關 但是可能需要更進階



只是真的有點驚訝 @@ 自己的想法還是比他們晚一步 微軟都先做好好的了 :|







充份運用 .NET Framework PropertyGrid 控制項



Make Your Components Really RAD with Visual Studio .NET Property Browser









星期五, 5月 25, 2007

[COM interop] TypeLibConverter



最近一直在想辦法設計一些東西~~



C#擁有Reflection的機制,許多難解的設計都可以很輕鬆的找到方法



但是若得要考慮Native的Code  (C++, ..etc native dll) 的時候,就完全傻眼了



我也想了許多辦法~~ 想要在C++做類似Reflection或是直接用坊間的C++Reflection Library或是...etc



其實都不是那麼方便的方法 後來想說COM的IDispatch機制 也是一種Reflection



但是現在C#與COM最快的方式就是RCW (Runtime callable wrapper)



這種方法卻是Early Binding 所以我想要的設計最好是Late Binding的方式 (例如不用P/Invoke而用LoadLibrary)



但最終還是傻眼........用Reflector一直trace微軟寫的程式 從tlbimp.exe trace到System.Runtime.InteropServices裡



有一個class叫TypeLibConverter 果不其它 他就是想辦法從IDispatch的界面 生出Interop的.net assembly



以下有一篇文章有範例code



COM interop理论/实践 - 漫步 | Manbu's Blog



但是不論如何.........還是很不方便 :s



這個設計的難題 還真的困擾我很久很久...:(





星期六, 5月 19, 2007

JavaFX



既Microsoft的WPF AND SilverLight,Adobe的Apollo Platform之後,這場Rich Internet Applications(RIAs)又加入新的挑戰者,Java陣營的JavaFX



我看了一下FAQ跟一些介紹,似乎目前JavaFX是一整個Family,目前announce的有JavaFX Script跟JavaFX Mobile

而這些都會變成OpenSource,如果想要看一些demo的話, 可以試著從OpenJFX來試 不過記得要灌JRE (java runtime)

因為會從java web start來執行





我發現整個GUI開發整個趨勢是往Markup Language or Declarative Language走去

像是XAML or JavaFX Script or 上次我看到的Openlazlo....都是這類的概念...



讓UI所有的controls/layouts用markup來設計,最後再跟code作整合

所以想當然爾,未來一定也得要有JavaFX Script的design tool..... 才會真的讓大家想要用吧...





Extending Visual Studio 2005





對於Windows Forms或是WPF的build的process我一直很好奇



就是寫User Interface的時候,對於一個Form1 or Window1.xaml



在compile階段其實會根據UI的resource (xaml or resx)來generate出另一個cs file



利用partial的keyword去merge User跟auto generate出來的code成另一個程式



我想找一下這方面的資訊 看有沒有機會我可以自己implement自己想要的build process



不過我用custom build, extend keyword問google 似乎都沒找到我想要的資料



不過倒找到許多extend visual studio的資料



這個link還有許多video教你怎麼extend vs 2005



至於Visual Studio SDK 4.0 可以從這裡Download





後來我的疑問 讓我找到很類似的 叫single file geneartor



好幾個可以參考的地方..... link1, link2, link3, link4





MSBuild Team Blog : How To: Add a custom build action to Visual Studio







星期一, 5月 14, 2007

SSE指令集介紹



最近一直會接觸到Optimization的東西,因為之前對這一塊完全是空白,所以想下定決心慢慢接觸這一塊



對看了一些介紹MMX, 3D Now!, SSE等資訊



在網路上的找到Hotball的SSE介紹,一個很好入門又很清楚的文章



:p 可以快速的入門了解....











powered by performancing firefox

星期二, 5月 08, 2007

[C#] Speed up XmlSerializer



C#的XmlSerializer十分好用簡單,我只寫了幾行,整個複雜的struct整個輕鬆Serialize and Deserialize

不過我發現效率有點慢....



從Google大神中查到了這篇文章,利用Sgen.exe來預先做好Serializer的assembly以加速

十分神奇 :p

星期一, 5月 07, 2007

[C#] XML Serializable Generic Dictionary

C# XML的Serialization很方便

不過對於有些Class本身不支援的話,可能要另外自己寫Serialize的函式



不過在網路上找到這篇文章 

有XML Serializable的Dictionary<T,K>的Example

:p







Powered by ScribeFire.

星期日, 5月 06, 2007

多點觸摸式Screen



我找到兩篇Blog... 有Touch Screen的



對這方面其實十分有興趣...... 因為我也有做過類似的東西



所以對於User Input & Usability十分好奇 也覺得現在的科技還有一大段路要走...



有興趣可以看看以下的Demo ( Touch Desk & 多點觸摸式螢幕)

星期六, 5月 05, 2007

[Web OS] Openlazlo





上上篇我轉錄了一篇Web OS的文章,於是我也花了點時間看了一下OpenLaszlo

大概了解一下他的技術~~ (Flash or AJAX, and ..etc)



整體用他做出來的Web Page真的很好.... 技術細節我就不詳述了

但是如果是Demo的話就還蠻建議玩玩看的



DHTML (or AJAX)做出來的Web UI居然也可以這麼好用....

說實話.... 用一用一度還覺得其實好像RIA (Rich Internet Application)可以不用那麼複雜 (用MS的xbap or Adobe Apollo or ..其它的平台)



Demo請看這裡 有不少個Demo呦



我好奇的是 既然是Open Source,那我們如果想要開商業化的服務 ,可以免費使用嗎?

結果License Info在這裡

是叫什麼open source Common Public License 英文字太多了 所以沒仔細看

不過感覺應該是可以免費使用...:D



有懂license方面的人 再告訴我吧 ^^