2013-02-05 51 views
1

我想將簡單CAD系統的用戶界面放入決策表中。但我很關心 如何把這些東西放在桌子上。CAD系統用戶界面的決策表示例

首先,有一個電流模式(CurMode),其可以是: 移動,旋轉,刪除

接着,有鼠標動作是這樣的:

OnLButtonDown中 OnLButtonUp OnRButtonDown OnRButtonUp OnMButtonDown OnMButtonUp OnMouseMove

也許在當前鼠標光標下有一個對象的附加測試這 ObjectUnderMouse(TRUE/FALSE)

隨着我要決定下列規則這些和其他參數:

如果模式是刪除和對象是在鼠標之下,按下OnLButtonDown中,刪除對象。

如果MButtonUp被按壓(滾輪),變焦+ 如果按下MButtonDown(滾輪),縮放 -

如果模式是移動和一個目的是鼠標下和OnLButtonDown中被按下時,放置在對象一個緩衝區。 如果Mode爲Move且OnLButtonDown且Buffer和OnMouseMove中的對象起作用,請移動對象

......等等。

你有情景嗎?

我搜索了很多內容,看到了非常簡單的DT,但是對於具有數百個參數,狀態,模式和UI行爲的大型CAD系統來說,這是一個好的開始。

對於決策表來說,這樣的CAD系統的最佳設計是什麼?

在此先感謝

+0

你沒有指定你將用來開發你的程序的框架,但是QT有一個很好的API:http://qt-project.org/doc/qt-4.8/statemachine-api。 html – SirDarius

回答

1

Statestep(http://statestep.com)可能是你在找什麼。在網站上給出的例子是用於用戶界面的,並且描述了它用於非常大的系統(具有覆蓋數百萬種可能性的規則的決策表)。有代碼生成C.

0

感謝您的回覆。我會仔細看看statestep(我們不使用QT)。但總的來說,我有問題來決定我的CAD系統的哪一部分是一個條件,一個行動,一個條件替代品等,以定義一個像維基這樣的決策表。 Wiki Decision Table

+0

這不是您的問題的答案,請使用此評論 – SirDarius