[ 永遠的UNIX::UNIX技術資料的寶庫 ]   GB | BIG5

首頁 > 應用技術 > 其它 > 正文
CLAN For Unix 使用說明手冊
本文出自: http://clansoft.yeah.net 作者: (2001-06-24 12:28:47)
科藍集成開發系統說明手冊
    科藍集成開發系統 GENERAL CLAN Integrate DevelopSet [簡稱CLAN]是
科藍軟件工作室 [CLANSOFT STUDIO]為 UNIX 及 UNIX-Open Server 操作系統
開發的通用軟件開發工具,適用 UNIX 下的應用軟件開發以及現有應用軟件
系統的界面改造.

■第一章 CLAN 介紹

1.1 CLAN 功能強大,獨立具體菜單,支持中西文、色彩、多種顯示屬性.
用它可以開發出漂亮整潔的菜單界面[下拉、彈出式],支持菜單層疊效果,具
有蔭影、邊框等多種控制功能,菜單級數沒有限制.採用環境變量暫存屏幕內
容,顯示及屏幕恢復速度很快.

1.2 CLAN 易學易用,只要會用 vi 便會使用本軟件.用戶可以自由地對軟件
初始畫面以及菜單位置、大小、顏色、蔭影、邊框、標題、顯示屬性等進行控
制,擺脫復雜煩瑣的程序設計.

1.3 CLAN 兼容性強,它兼容 UNIX 及 U-OPS; 兼容中文及西文; 兼容彩色及
單色; 對軟硬件環境無特殊要求.

1.4 預裝例示系統,包括一個系統狀態查詢子菜單; 一個實用工具子菜單; 一
個英漢雙向詞典; 五個遊戲(包括圍棋、推箱子、猜數、十五子棋、掃雷)。具
體使用將在第三章[例示系統CLAN使用說明] 中詳細說明.

1.5 科藍圖形開發包(CCGI)以及大量實用工具軟件, 具體內容請參考面的第
二章以及第三章3.3節、第五章的有關內容.

■第二章 CLAN 安裝說明

2.1 CLAN 的運行環境

CLAN 可以運行在 UNIX 及 U-OPS 操作系統下的各種 IBM 兼容微機上,其安
裝及運行需要操作系統的擴展部分 (即X盤),一般 UNIX 機器均可滿足.對
硬件無特別要求.推薦使用 386 以上機型,最好有漢字系統或者中文終端.

2.2 CLAN 的安裝過程

在 UNIX 系統下安裝 CLAN 的步驟如下:

一) 進入單用戶方式[single user mode],或者在主控制台上以超級用戶 root
注冊

二) 啟動 custom 命令.
如果使用驅動器0使用如下命令: custom
如果使用驅動器1應使用如下命令: custom -m /dev/rinstall1
插入1號軟盤,選擇選項 Install,然再選擇 "A New Product"項,
安裝一個新產品.

三) 根據提示依次插入 01、02 號軟盤,拷貝文件.

四) 文件拷貝完畢.屏幕提示
This machine's index is: xxxxxxxx
Call 0318-XXXXXXX-XXXXXXX or 0318-XXXXXXX for active key with
this lock index.

please input active key:
輸入相應的密碼, 按回車. 屏幕顯示
Install complete, press ENTER ...
表示安裝成功.按回車開始對文件解壓縮.

五) 最,系統提示
Press  to Demonstrate (stage 1-10) ...
按回車進入自演示程序,共有10 種風格的演示,連續按 0 退出即
可,除了 custom 命令的使用方法外,在 U-OPS系統下的安裝過程與
此大致相同,不再贅述[可參考用戶手冊].

附: CLAN 文件清單

一) CLAN 系統文件

/usr/bin/commenu CLAN 菜單驅動主程序
/usr/bin/menudemo 自演示程序
/usr/bin/eclan 西文 CLAN 例示系統 Shell 腳本
/usr/bin/cclan 中文 CLAN 例示系統 Shell 腳本

/usr/man/cat.C/clan.C man 說明文件
/usr/lib/english/*.menu eclan 菜單文件
/usr/lib/english/first* eclan 屏幕初始化文件
/usr/lib/english/variable eclan 配置文件
/usr/lib/chinese/*.menu cclan 菜單文件
/usr/lib/chinese/first* cclan 屏幕初始化文件
/usr/lib/chinese/variable cclan  配置文件

二) 英漢雙向詞典

/usr/bin/_word 單詞查詢服務員
/usr/lib/dict/word.lib 雙向詞典詞庫文件
/usr/bin/word 背單詞
/usr/bin/word.sh 背單詞 Shell 腳本
/usr/lib/dict/college 背單詞 大學英語詞庫
/usr/lib/dict/computer 背單詞 計算機專業英語詞庫
/usr/lib/dict/newconce 背單詞 新概念英語詞庫
/usr/lib/dict/gre 背單詞 GRE 詞庫

/usr/lib/dict/xuguozhang 背單詞 許國璋英語詞庫
/usr/lib/dict/yiliao 背單詞 醫療英語詞庫
/usr/lib/dict/highschool 背單詞 高中英語詞庫
/usr/lib/dict/tofelword 背單詞 托福英語詞庫

三) 遊戲

/usr/bin/ckgl 倉庫管理員
/usr/bin/ckgl.sh 倉庫管理員 Shell 腳本
/usr/lib/ckgl/*.map 倉庫地圖文件
/usr/bin/go 網絡圍棋
/usr/lib/go/*.go 圍棋棋譜文件
/usr/bin/guess 猜數
/usr/bin/mguess 計算機猜數
/usr/bin/guess.sh 猜數 Shell 腳本
/usr/bin/mguess.sh 計算機猜數 Shell 腳本
/usr/bin/puzzle 十五子棋
/usr/bin/mine 掃雷遊戲[只支持 VGA]

四) 圖形開發系統

/usr/bin/graphdemo 圖形演示程序

/usr/include/clangraph.h C 語言圖形接口頭文件
/usr/lib/386/Slibccgi.a U-OPS 系統圖形開發系統庫文件
/usr/lib/libccgi.a UNIX 系統圖形開發系統庫文件
/usr/lib/asc16 16*8 ASCII 碼點陣文件
/usr/lib/hzk16 16*16 國標漢字點陣文件
/usr/lib/clansrc/graphdemo.c 圖形演示程序 C 源代碼
/usr/lib/clansrc/makefile 圖形演示程序的 make 文件

五) 實用程序

/usr/bin/be 十六進制編輯器
/usr/bin/crtdata 自動產生 informix 庫數據文本
/usr/bin/crtform 自動產生 informix 庫表格文件
/usr/bin/curstate 當前菜單狀態
/usr/bin/emore 制作 emore 格式文檔
/usr/bin/demore 釋放 emore 格式文檔
/usr/bin/dt 時鐘
/usr/bin/getpage 分頁輸出程序
/usr/bin/lpcancel 取消打印隊列

/usr/bin/man.sh 聯機用戶手冊 Shell 腳本
/usr/bin/myformat 通用軟盤格式化 Shell 腳本
/usr/bin/part 按字節大小分割文件
/usr/bin/password 提問密碼
/usr/bin/readme 說明文件
/usr/bin/readkey 讀單個鍵
/usr/bin/string 系統命令 strings 中文擴展版
/usr/bin/tot 文本兩欄化處理程序
/usr/bin/transdos DOS 格式軟盤全盤拷貝
/usr/bin/ttykb 終端鍵盤控制
/usr/bin/viewfd 瀏覽軟盤
/usr/bin/vmode 設置 | 獲取顯示方式.

■第三章 例示系統 CLAN 使用說明

3.1 CLAN 例示系統的啟動

.) 在西文模式下啟動 CLAN 的方法:
$ eclan
eclan 自動在屏幕右上角啟動一時鐘顯示.
:) 在中文模式下啟動 CLAN 的方法:
$ cclan

3.2 CLAN 菜單功能列表

例示系統 CLAN 是一個應用 CLAN 所開發出的功能豐富的系統,具有簡單實
用、美觀大方、易理解、易維護和擴充的優點.其預先集成的功能如下:

1.SYS 子菜單: 一組系統狀態查詢命令.
sys.1 查詢系統名稱
sys.2 查詢系統狀態
sys.3 查詢日歷
sys.4 查詢硬盤使用情況
sys.5 查詢進程狀態
sys.6 查詢用戶狀態
sys.7 查詢打印系統狀態
sys.8 查詢 IPC 狀態
sys.9 特權操作子菜單[需要超級用戶密碼]
sys.9.1 用戶代理
sys.9.2 重新啟動系統
sys.9.3 系統關機
sys.10 當前菜單信息[用開發]

2.UTILITY 子菜單: 一組實用工具程序.
util.1 察看軟盤內容子菜單
util.1.1 軟驅 0
util.1.2 軟驅 1
util.2 格式化 UNIX / U-OPS 軟盤子菜單
util.2.1 軟驅 0,360 K
util.2.2 軟驅 0,1200 K
util.2.3 軟驅 0,720 K
util.2.4 軟驅 0,2880 K
util.2.5 軟驅 1,360 K
util.2.6 軟驅 1,1200 K
util.2.7 軟驅 1,720 K
util.2.8 軟驅 1,2880 K
util.3 格式化 DOS 軟盤子菜單
util.2.1 軟驅 0,360 K
util.2.2 軟驅 0,1200 K
util.2.3 軟驅 0,720 K
util.2.4 軟驅 0,2880 K
util.2.5 軟驅 1,360 K
util.2.6 軟驅 1,1200 K
util.2.7 軟驅 1,720 K
util.2.8 軟驅 1,2880 K
util.4 取消打印隊列
util.5 電子信箱
util.6 數學計算器
util.7 聯機命令幫助
util.8 用戶手冊
util.9 鎖定終端鍵盤
util.10 終端鍵盤開鎖

3.DICTIONARY 子菜單: 背單詞及英漢雙向詞典.
dict.1 查單詞服務器
dict.2 背單詞─大學英語
dict.3 背單詞─新概念英語
dict.4 背單詞─托福英語
dict.5 背單詞─GRE 英語
dict.6 背單詞─計算機專業英語

4.GAME 子菜單: 一組遊戲.
game.1 倉庫管理員
game.2 圍棋
game.3 猜數
game.4 計算機猜數
game.5 十五子棋
game.6 圖形演示程序
game.7 掃雷

5.SHELL 子菜單: 各種 shell 環境.
shell.1 shell
shell.2 c shell
shell.3 v shell
shell.4 r shell
shell.5 k shell

6. 說明: 本說明手冊.

3.3 CLAN 部分功能說明

3.3.1 察看軟盤內容
命令名: viewfd
功 能: 識別軟盤格式並對其內容列表.可識別下列格式的軟盤:
1.Dump
2.Tar
3.Cpio
4.Dos
5.FileSystem
菜 單: util.1
命令行: viewfd [0|1]
參數說明:
0 軟盤驅動器 0
1 軟盤驅動器 1

3.3.2 取消打印隊列
命令名: lpcancel
功 能: 取消所有可取消的已排隊的打印任務
菜 單: util.4
命令行: lpcancel
參數說明: 無

3.3.3 終端鍵盤控制
命令名: ttykb
功 能: 暫時鎖定或解鎖終端鍵盤
菜 單: util.9 util.10
命令行: ttykb [o]
參數說明:
缺省 加鎖,o 解鎖
例子: 輸入 tty04,第四屏暫時被鎖死,以可以用 ttykb o 打開.

3.3.4 背單詞
命令名: word
功  能: 可對大學英語、新概念英語、托福詞匯、計算機專業英語、
GRE 英語詞匯等五個方面的英文詞匯進行循環累進記憶,設
置了 19 級難度,用戶輸入錯誤時給出正確結果,並可給出
得分比.
菜 單: dict.2 - dict.6
命令行: word lib [complex]
參數說明:
lib 詞庫文件名
complex 難度系數 [1-19]
功能鍵: q 退出,0 進入單詞查詢狀態

3.3.5 英漢雙向詞典 [支持多用戶同時查詢]
英漢雙向詞典是通過在背單詞時鍵入0 切換到單詞查詢狀態,以及在
查詢狀態時鍵入0 切換回背單詞狀態而實現的.它不能脫離背單詞而
獨立使用.

1.英漢雙向詞典的啟動

在使用詞典之前,必須首先啟動查單詞服務器,否則進入查詢狀態時
會顯示信息 Server not ready.查單詞服務器只需要啟動一次.
命令名: _word
功 能: 啟動查單詞服務器
菜 單: dict.1
命令行: _word lib
參數說明:
lib 詞匯庫文件名
功能鍵:
如果已經啟動過一次,再次啟動時系統提示
Server already started,(r)eset,(c)lose,else ENTER?
此時鍵入 r 重新啟動,c 關閉,回車 不作任何工作

2.英漢雙向詞典的使用

首先啟動查單詞服務器,進入任何一個背單詞狀態,鍵入0 切換到查
詢單詞狀態.屏幕顯示輸入光條,此時即可輸入待查詞匯. 查單詞可
查英語單詞,也可以查漢語詞匯.查單詞支持模糊查詢.利用此項功
能,用戶可以在僅知待查詞匯一部分的情況下進行查詢; 也可以對
具有一定共同特征的詞匯進行查詢列表,以系統學習.
合法查詢輸入字符串的構成規則如下:
.) 單個字母匹配自身.
如: 輸入"list",則所有含"list"的詞匯都將被顯示出來.
:) "^" 匹配單詞開頭.
如: 輸入 "^list",則所有"list"開頭的詞匯將顯示出來.
:.) TAB 鍵匹配單詞結尾.
如: 輸入"list"TAB, 則所有"list"結尾的詞將顯示出來.
::) "." 匹配任意一字母.
如: 輸入"li.st", 則顯示出所有包含"li"及"st"且中間間
隔某一其它字母的單詞.
::.) "*" 匹配一字母的 0 或多次出現.
如: 輸入 "^list.*list"TAB 將顯示所有以 "list" 開頭且
以其結尾的單詞,當然這樣的單詞未必會存在.
熟練應用上面的條件組合,您會發現背單詞是一件輕鬆快樂的事情.
例如:
"^...."TAB 顯示所有四字母單詞.
"^.u."TAB 顯示所有中間字母為 "u" 的三字母單詞.

3.詞庫文件格式及用戶自建詞庫

系統提供五個背單詞詞庫、一個查詢詞庫.其中查詢詞庫有
將近4 萬條詞匯,一般不需要用戶再行建立詞匯庫.如有特殊需求,
可按下述格式自建或追加系統詞庫:
英文單詞TAB漢意
例如: CLANSOFT STUDIO[TAB]科藍軟件工作室
Chinese[TAB]中國
HeBei[TAB]河北
HengShui[TAB]衡水
Computer[TAB]計算機

3.3.6 倉庫管理員遊戲
命令名: ckgl
功 能: (請參考 DOS 下的遊戲軟件 <<倉庫世家>>
菜 單: game.1
命令行: ckgl map
參數說明:
map 地圖文件名 (預設 18 幅地圖)

3.3.7 圍棋遊戲
命令名: go
功 能: 圍棋記譜打譜; 聯網下圍棋. 可以設定讓子數,自動提子. 聯
網使用時先登記方執白, 登記方執黑.  執黑方可以通過 b 鍵設置
讓子. 預置 6 局古譜.
菜 單: game.2
命令行: go

3.3.8 猜數遊戲
命令名: guess & mguess
功  能: 猜一個 n 位數字
guess: 對用戶每次猜測的結果,給出有幾
個數字包含在未知數串中,其中有幾個數字
位正確的位置上,據此進行下一次猜測.
直到猜中或鍵入 n 位 0 退出.
mguess: 計算機模仿人的思維來猜數.
菜 單: game.3
game.4
命令行: guess [n] 或 mguess [n]
參數說明:
n 位數 [缺省為 4 位]

3.3.9 十五子棋遊戲
命令名: puzzle
功 能: (請參考 DOS 系統下的 PUZZLE 遊戲)
菜 單: game.4
命令行: puzzle
參數說明: 無

3.3.10 掃雷遊戲
命令名: mine [n]
功 能: (請參考 WINDOWS 系統下的掃雷遊戲)
菜 單: game.6
命令行: mine
參數說明: n 地雷個數, 缺省為 100.
當前目錄或者 /usr/bin 目錄下有字庫文件 hzk16 以及 asc16. [包
括在 CCGI 中, 用戶也可以從 UCDOS 軟件中得到].

3.3.11 中西文十六進制編輯器
命令名: be
功 能: 對文件進行全屏幕十六進制編輯.類似 DOS 系統下 Pctools
軟件中 File 菜單中的 F 功能. 支持中文模式,支持多文件編輯,支
持扇區定位、扇區讀寫.可用軟件分析及加密解密、軟盤及文件修
復等多種特殊用途領域.支持二進制及字符串兩種模式的搜索定位.
菜 單: 無
命令行: be [-n blocksize] f1 [f2 ...]
參數說明:
-n blocksize 用編輯軟盤等塊設備文件時指定總塊
數,每塊512字節. 例如容量 1.2Mb 的高密度5.25
英寸軟盤塊數為 2400.
f1 [f2...] 一個或多個文件名字.可以是包括設備文
件、管道文件名在內的任何文件名字.
功能鍵:
瀏覽狀態 [VIEW]
TAB 中文方式顯示微調鍵,用 ASCII顯示區漢字顯示
顯示混亂時調節一字節,以澄清漢字顯示.加 -n 
參數時不可用.
? 二進制搜索.
/ 字符串搜索.
CTRL-X 退出本編輯器.
CTRL-U 前一文件.
CTRL-V 一文件.
CTRL-E 進入編輯狀態.
CTRL-P 上一頁.
CTRL-N 下一頁.
CTRL-F 定位扇區.
CTRL-W 寫本扇區內容到一文件中.
CTRL-R 從某文件讀入 512 字節並進入編輯狀態.[若退出
編輯狀態時不存盤,則恢復文件原來內容 ]
CTRL-L 整理屏幕顯示.
編輯狀態 [EDIT]
TAB 16 進制與 ASCII 碼方式切換鍵.
CTRL-X 退出編輯狀態.若編輯過程中有修改操作,系統提
示是否保存,答 y 確認修改,答 n 忽略修改.
CTRL-G 重復上次的搜索.
CTRL-P 上一頁.
CTRL-N 下一頁.
光標鍵 移動光標
CTRL-L 整理屏幕顯示.

3.3.12 析出十六進制文件中的中西文字串
命令名: string
功 能: 系統命令 strings 的中文擴展版
菜 單: 無
命令行: string [-a] [-l n] file1 [file2...]
參數說明:
-a 打印偏移地址
-l n 指定析出字符串長度下限為 n
file1 [file2] 一個或多個文件

3.3.13 文本兩欄化處理程序
命令名: tot
功 能: 用將文本文件轉換為兩欄格式,並可加標題與頁號.
菜 單: 無
命令行: tot [-r ln][-l ll][-d fd] from to
參數說明:
-r ln 指定每頁行數.只作兩欄處理,不加標題和頁號.
-l ll 指定欄寬 (字符數.缺省為 85)
-d fd 指定欄距 (字符數.缺省為 10)
from 源文件名
to 目標文件名

3.3.14 DOS 格式軟盤全盤拷貝
命令名: transdos
功  能: DOS 格式軟盤與 UNIX/U-OPS 文件系統之間的批量拷貝. 類
似 DOS 系統下的 XCOPY 命令, 它連同被拷貝目錄下的各級
子目錄內容一起拷貝.
菜 單: 無
命令行:
1 transdos [-h ksize] [-m|-r] disk:[path] path
2 transdos [-h ksize] [-m|-r] path disk:[path]
參數說明:
格式 1. 遞歸拷貝 DOS軟盤的內容到一目錄
格式 2. 遞歸拷貝一目錄的內容到 DOS軟盤
-h 指定繁重方式, 用待拷貝目錄和文件非常多時提
高速度.
ksize 360,720,1200,1400: 刪除舊數據
0: 保留舊數據,必須是DOS格式軟盤
-m 強制進行 CR-LF 到 CR 的轉換
-r 強制不進行 CR-LF 到 CR 的轉換
disk: A: 或者 B: 指定 DOS 軟盤號
path 目錄名

3.3.15 分頁輸出程序
命令名: getpage
功 能: 用輸出文本文件中的某些頁.
菜 單: 無
命令行: getpage file startpage [endpage]
參數說明:
file 文本文件名
startpage 起始頁號
endpage 結束頁號 [本項缺省則只輸出起始頁]

3.3.16 按字節大小分割文件
命令名: part
功 能: 略
菜 單: 無
命令行: part file bsize [ startblock endblock ]
參數說明:
file 文件名
bsize 分割字節大小
startblock 起始塊
endblock 終止塊

3.3.17 提問密碼程序
命令名: password
功 能: 主要用 Shell 程序設計,檢驗密碼.密碼正確返回 0,否
則返回 1
菜 單: 無
命令行: password [key]
參數說明:
key 密碼串(由 a-j 構成, 被翻譯為 0-9)

3.3.18 讀單個鍵
命令名: readkey
功 能: 主要用 Shell 程序設計,讀單個鍵.打印鍵值或返回鍵碼.
菜 單: 無
命令行: readkey [-s]
參數說明:
-s 返回鍵碼, 可用系統環境變量 $? 訪問, 缺省打印鍵值.

3.3.19 設置 | 獲取顯示方式.
命令名: vmode
功 能:
菜 單: 無
命令行: vmode [n]
參數說明:
n 設置顯示方式為 n, 缺省時打印顯示方式號.

3.3.20 其他雜項命令
時鐘顯示 命令行: dt
自動產生 informix 數據庫的 form 命令行: crtform dbs
制作 emore 格式的文檔 命令行: emore files
釋放 emore > achieve 產生的文檔 命令行: demore arch
CLAN 演示程序 命令行: menudemo
CLAN 說明程序 命令行: readme 或 man clan
CLAN 注冊說明 命令行: readme register

注 1: CLAN 例示系統中大部分軟件均為中西文兼容,環境變量 CHINESE 設
為 1 時指定中文方式,其他值或缺省時為西文方式.請參考 /bin目
錄下的 eclan 及 cclan.

注 2: 如何得到本說明的文本:
readme > /tmp/readme.txt 輸出到文件
readme | lp 輸出到打印機

man clan > /tmp/readme.txt 輸出到文件
man clan | lp 輸出到打印機

■第四章 CLAN 開發說明

CLAN 面向應用軟件開發以及二次開發.用戶只需經過簡單的學習,
使用vi等編輯器編輯幾個簡單的文本文件,即可生成實用、漂亮、易理解、
維護和擴充的菜單屏幕風格的應用系統.
CLAN 由一個獨立具體菜單的通用菜單驅動程序、一個屏幕初始文
件、一個配置文件,以及一組菜單數據文件所構成.其中除了菜單驅動程序以
外,其他文件均可由用戶修改或重建,從而生成新的系統.
[ 注: 本章提到的所有系統文件包括菜單數據文件, 屏幕控制文件, 
配置文件. 其有效行均以"##"開頭, 對屏幕控制文件及配置文件, 無效行(
非 "##" 開頭的行)被忽略, 對菜單數據文件, 無效行首先被執行, 請關心
開發的用戶注意.參考shell.menu ]

詳細說明如下:
1.應用系統目錄.
每個應用系統應該單獨設置一個目錄,以存放配置文件、屏幕初始文
件及各菜單文件.在例示系統CLAN中,中文模式對應目錄 /usr/lib/chinese,
西文模式對應目錄 /usr/lib/english.
2.菜單數據文件.
這是為數最多的一類文件, 每個菜單對應一個菜單數據文件.以
main.menu 命名的文件產生橫向菜單,其它名字命名的菜單數據文件產生縱向
菜單,一個應用系統通常由一個橫向主菜單及幾個以致幾十個縱向子菜單構成
多級樹型結構.CLAN 生成的應用系統菜單級數沒有限制.
CLAN 支持菜單的交叉調用及遞歸調用.雖然我們一般不這樣做,但
通過子菜單調用主菜單是完全可能的.菜單數據文件的命名方式不加限制,例
示系統 CLAN 約定菜單數據文件綴名為 ".menu".

菜單數據文件結構:
.) 第一行控制菜單全局特征:
格式: linec|bgc|title|tfgc|tbgc|optionc|exitc
其中
linec: 邊框顏色
bgc: 菜單底色
title: 標題信息
tfgc: 標題顏色
tbgc: 標題底色
optionc:選擇項提示顏色
exitc: 退出項提示顏色
:) 第二行到第 N+1 行控制菜單第 1 至 N 項的特征
格式:display|execute|control|attribute|fgc|bgc
其中
display: 顯示字段
execute: 執行字段
control: 控制字段
attribute: 顯示屬性
fgc: 前景色
bgc: 背景色
每個字段均可為空,但 "|" 分割符不可省略.
其中:
a) 顯示字段格式:
選擇擊活字符串K:說明串C
鍵入 K 時, 本菜單項執行字段的內容將被執行.
若本字段不含有冒號,則本項不能執行,只能顯示.
b) 控制字段格式:
有 3 種可選擇值: "menu" "cls" 其它值(或空).
menu 控制本項啟動一下級子菜單; "cls" 控制首先清除屏
幕,再執行 execute 字段的內容. 其它值則控制默然(不
清屏幕) 執行 execute 字段的內容.
c) 執行字段格式:
如果控制字段為 "menu",則為:
菜單文件名 起始行 起始列 菜單高度 寬度
否則,本字段接受合法的 shell命令行.
可以訪問下列內部環境變量, 請關心開發的用戶注意:
$is 選擇鍵 K 的值
$mn 本菜單數據文件名
$com 本執行字段自身內容
請參考 state.menu 菜單項 10.
d) 顯示屬性字段格式:
有下列可選擇值:
"normal" 正常屬性
"highlight" 高亮度
"underline" 下劃線
"flash" 閃爍
"reverse" 反象顯示
"nodisp" 隱藏
e) 有關色彩字段可選擇:
"lt_green" 淺綠色
"lt_cyan" 淺藍綠色
"lt_red" 淺紅色
"lt_magenta" 淺紫紅色
"yellow" 黃色
"lt_white" 亮白色
"blue" 藍色
"green" 綠色
"cyan" 藍綠色
"red" 紅色
"magenta" 紫紅色
"brown" 棕色
"white" 白色
"gray" 灰色
"lt_blue" 淺藍色
"black" 黑色
3.屏幕初始文件.
用控制系統的初始畫面.一般每個應用系統對應一屏幕初始文件.
每行有下列 3 種選擇:
.) clear | 色彩 (參考前述色彩值)
功能: 以指定色彩清屏
:) box | 行 | 列 | 高 | 寬 | 框色 | 底色
功能: 在指定位置以指定色彩和大小畫方框
:.) 行 | 列 | 信息 | 屬性 | 前景 | 背景
功能: 在指定區以指定屬性,顏色顯示信息
4.配置文件
控制全局變量,每個應用系統對應一個配置文件,用戶僅可對值域進
行合法修改.
格式: 變量名 | 變量值 | 注釋
其中變量名含義如下:
a_cont 提示運行完畢返回的顯示屬性.
a_errmsg提示輸入錯誤的顯示屬性.
a_exec 提示正在執行的顯示屬性.
a_m_q 退出主菜單提示的顯示屬性.
a_s_q 退出某子菜單提示的顯示屬性.
a_s_opt 子菜單輸入選擇提示的顯示屬性.
a_m_opt 主菜單輸入選擇提示的顯示屬性.
a_m_t 主菜單標題顯示屬性
a_mbox 消息框顯示屬性
a_rd 用戶輸入時的顯示屬性
a_shadow方框蔭影的顯示屬性
a_s_t 子菜單標題顯示屬性
b_mbox 消息框底色
b_shadow蔭影顏色
f_cont 提示程序運行返回的顯示前景色.
f_errmsg提示錯誤輸入的前景色.
f_exec 提示正在運行的前景色.
f_mbox 消息框邊框色.
b_clan CLAN 標記的底色.
f_clan CLAN 標記的前景色.
a_clan CLAN 標記的顯示屬性.
f_normal正常的前景色.
b_normal正常的背景色.
a_normal正常的顯示屬性.

顯示屬性及顏色值可參考前述第 2 節中第 :)小節的 d,e 兩部分.
[ 可參考例示系統 CLAN 中所使用的配置文件: /usr/lib/chinese/variables
和 /usr/lib/english/variables.]

5.通用菜單驅動程序 commenu 命令行調用參數說明:
CLAN 強大的功能、絢麗的界面,最終都是由驅動程序 commenu實現
的./usr/bin/menudemo 演示程序用實例說明了 commenu 命令行參數的用法.
下邊對其參數概括說明:
commenu [-f m][-x c][-y r][-w w][-d d][-c p]
[-i i][-v v][-l c][-m m][-r r][-p p]
-f m 指定主菜單文件名.
默認文件main.menu,產生橫向主菜單.
否則產生縱向菜單.
-x c 指定菜單起始列號. 默認為 1
-y r 指定菜單起始行號. 默認為 1
-w w 指定菜單寬度列數. 默認為 80
-d d 指定菜單高度行數. 默認為 1
-c p 指定應用系統目錄. 默認為當前目錄

-i i 指定初始畫面文件. 默認為 first
-v v 指定配置文件. 默認 variables
-l c 指定中文方式. 默認為西文方式
-m m1 強制單色方式. 默認為自動檢測
-r 11 強制取消邊框. 默認為有邊框
-p 11 強制取消蔭影. 默認為有蔭影
-* 顯示本幫助信息.

在例示系統CLAN中提供了大量的實例, 用戶可以通過修改、擴充例示
系統的目錄/usr/lib/english和/usr/lib/chinese 的內容,逐步理解CLAN的
功能和其所構成的應用系統的結構, 以便自行開發軟件或改造現有軟件.

■第五章 關圖形開發包

針對 UNIX/U-OPS 系統下的商品圖形軟件包價格較貴, 不易配備的問
題, 我們開發了 CCGI-科藍計算機圖形接口, 實現您在 UNIX 及U-OPS 系統下
編制圖形界面程序及顯示漢字的夢想. 掃雷遊戲以及此部分是 CLAN3.1 及其
版本的新增內容.  具體包括: 一個 C 語言函數庫, 一個 C語言頭文件. 提
供了寫像素, 讀像素, 畫線, 畫矩形, 畫橢圓, 畫圓, 模式色彩填充, 保存顯
示區, 恢復顯示區以及顯示中文, 顯示 ASCII字符, 顯示放大字體的中文以及
ASCII 字符等功能.

圖形函數參考:
1)int setvmode(vmode)
設置顯示方式, 成功返回0, 否則返回 -1. 一般在進入圖形方式時以
宏參數 GRAPHMODE 調用, 在退出圖形方式時以原來的方式為參數調用.
2)int getvmode()
獲取顯示方式, 返回顯示方式號.
3)void putpixel(x,y,color)
寫像素, x y 為屏幕坐標, color 為顏色值.
4)int getpixel(x,y)
讀像素, x y 為屏幕坐標, 返回(x,y)點的顏色值.
5)void line(x1,y1,x2,y2,color)
以顏色 color 畫 (x1,y1) 到 (x2,y2) 的線段.
6)void rectangle(x1,y1,x2,y2,color)
以顏色color畫左上角(x1,y1)右下角(x2,y2)的矩形.
7)void ellipse(x,y,a,b,color)
以顏色 color 畫 (x,y) 為中心, a b 為軸的橢圓.
8)void circle(x,y,r,color)
以顏色 color 畫 (x,y) 為中心, r 為半徑的圓.
9)void echarxy(x,y,c,forecolor,backcolor)
在 x,y 處以前景色 forecolor 背景色 backcolor 寫ASCII 字符 c.
10)void ccharxy(x,y,cc,forecolor,backcolor)
在 x,y 處以前景色 forecolor 背景色 backcolor 寫漢字 cc.
11)void textxy(x,y,text,forecolor,backcolor,dir)
在 x,y 處以前景色 forecolor 背景色 backcolor 寫 dir 方向的字
符串 text. dir 為 H 或 V (橫向或縱向)
12)void bigecharxy(x,y,c,forecolor,backcolor,nx,ny)
在 x,y 處以前景色 forecolor 背景色 backcolor 寫大字體ASCII字
符 c, nx ny 分別為橫向及縱向放大倍數.
13)void bigccharxy(x,y,cc,forecolor,backcolor,nx,ny)
在 x,y 處以前景色 forecolor 背景色 backcolor 寫大字體漢字cc,
nx ny 分別為橫向及縱向放大倍數.
14)void bigtextxy(x,y,text,forecolor,backcolor,nx,ny)
在 x,y 處以前景色 forecolor 背景色 backcolor 寫 dir 方向的大
字體字符串text,nx ny分別為橫縱向放大倍數.
15)void fill(x,y,fillcolor,bordercolor)
以 x,y 為種子,  以 fillcolor 和 PATTERN 填充模式屏蔽碼作與運
算之的色值為填充色, 對以 bordercolor 為邊界的區域進行填充.
16)void clearpattern()
清除 PATTERN 填充模式屏蔽碼.
17)void setpattern(pattern)
設置 PATTERN 填充模式屏蔽碼.  pattern 為一個 16 元素的無符號
字符數組, 用控制填充顏色. 例如點 x0,y0 的填充顏色應為:
fillcolor & pattern [ x0 & 0x0f ]
18)unsigned char *getimage(x,y,width,depth)
分配一字符指針指向的內存區, 用保存 (x,y) 為左上角, 寬width
高 depth 的屏幕矩形區域的內容.
19)void putimage(image,x,y,width,depth)
把字符指針 image 指向的內存區域的內容, 寫入(x,y) 為左上角, 
寬 width, 高 depth 的屏幕矩形區域.

編譯命令行:
cc -o 文件名 C源程序文件名 -lccgi
您可以參照圖形演示程序 /usr/bin/graphdemo  的C語言源代碼文件
 /usr/lib/clansrc/graphdemo.c 以了解實際的應用.
CCGI支持VGA圖形方式12(640X480 16色)和13(320X200).

(http://www.fanqiang.com)
    進入【UNIX論壇

相關文章

======
 

★  樊強制作 歡迎分享  ★