Nano-X API
Nano-X API
它沿用了 X Window 系統上的 Xlib API,但函數命名都以 Gr 而不是 X 開頭。
Nano-X API 是基于客戶/伺服器體系結構的。
它並沒有提供像 Microwindows API 那樣的視窗,標題欄和視窗移動的功能。
但可以由其他一些視窗部件集,如 flnx 和 tinywidget 等來完成,
這意味著應用程式的編程者往往並不是直接操作 Nano-X API,而是在和這些視窗部件集直接打交道。
常見的 Nano-X API 可以按照功能進行如下的劃分。
- 客戶/伺服器 模式
GrOpen 建立與 nano-X 伺服器的連接
GrClose 關閉與 nano-X 伺服器的連接
- 事件
GrSelectEvents 視窗中的事件過濾(遮罩掉對未選擇事件的回應)
GrGetNextEvent 獲取事件佇列中下一個事件,並從事件佇列清除
GrCheckNextEvent 檢查事件佇列中下一個事件
GrPeekEvent 查看事件佇列中下一個事件,並不從事件佇列清除
- 窗口創建和銷毀
GrNewWindow 創建普通窗口
GrNewInputWindow 創建輸入視窗
GrNewPixmap 點陣圖也是當作視窗創建
GrCopyArea 將點陣圖資料拷貝到虛擬的點陣圖視窗中
GrDestroyWindow 銷毀視窗(包括點陣圖視窗)
- 視窗顯示、隱藏和移動
GrMapWindow 顯示視窗
GrUnmapWindow 隱藏視窗
GrRaiseWindow 提升窗口的“Z”序 Z 軸
GrLowerWindow 降低窗口的“Z”序
GrMoveWindow 移動視窗的位置
GrResizeWindow 改變視窗的大小
GrReparentWindow 重新指定視窗的父視窗
- 窗口的繪製
GrNewGC 為視窗創建一個圖形上下文(相當於畫布)
GrDestroyGc 銷毀指定的圖形上下文
GrCopyGc 拷貝圖形上下文
GrGetGCInfo 獲取指定圖形上下文的資訊
GrGetGCTextSize 獲取文本字體大小(高度和寬度)
GrClearWindow 清除某個窗口
GrSetGCForeground 設置圖形上下文的前景色
GrSetGCBackground 設置圖形上下文的背景色
GrSetGCUseBackground 設置圖形上下文中的“使用背景色”
GrSetGCMode 設置繪圖模式
GrSetGCFont 設置字體
GrPoint 畫一個點(使用上述的前景色)
GrLine 畫一條線(使用上述的前景色)
GrRect 畫一個矩形(使用上述的前景色)
GrFillRect 填充一個矩形(使用上述的前景色)
GrFillEllipse 填充一個圓或橢圓(使用上述的前景色)
GrPoly 畫一個多邊形(使用上述的前景色)
GrFillPoly 填充一個多邊形
GrText 顯示文字
GrBitmap 顯示點陣圖
GrBMP 顯示一個 BMP 圖像檔
GrJPEG 顯示一個 JPEG 圖像檔
GrArea 用設備獨立的圖元值畫一個矩形的區域
GrReadArea 讀取螢幕上的指定區域圖元值,並返回
GrGetSystemPaletteEntries 獲取系統當前使用的調色板入口
GrFindColor 將一個 RGB 顏色值轉換為 PIXELVAL 類型圖元值
- 其他應用
GrSetBorderColor 設置視窗的邊框顏色
GrSetCursor 設置滑鼠的點陣圖
GrMoveCursor 移動滑鼠到絕對螢幕座標位置
GrSetFocus 設置視窗上鍵盤的輸入焦點
GrRedrawScreen 重畫整個螢幕
GrGetScreenInfo 獲取實際顯示幕幕的大小
GrGetWindowInfo 獲取視窗的資訊
GrGetFontInfo 獲取字體資訊
GrRegisterInput 註冊一個輸入設備的描述符
GrPrepareSelect 設置變數 fd_set 和 maxfd,將 Nano-X 作為一個被動庫使用。
GrServiceSelect 當 Nano-X 有事件需要處理時,回調 GetNextEvent 函數給定的函數
GrMainLoop 典型 Nano-X 應用程式的主迴圈函數
留言
張貼留言