5、MiniGUI V3.0 配置详解

  • 5 MiniGUI V3.0 的运行

    • 5.1 建立 MiniGUI V3.0 运行环境的前提
    • 5.2 MiniGUI.cfg说明
      • 5.2.1 配置文件MiniGUI.cfg格式简介
      • 5.2.2 system段
      • 5.2.3 图形引擎配置段
        • fbcon段
        • qvfb段
        • pc_xvfb 段
        • rtos_xvfb 段
        • shadow 段
        • mlshadow 段
      • 5.2.4 字体配置段
        • systemfont 段
        • rawbitmapfonts、varbitmapfonts、upf、qpf、truetypefonts段
      • 5.2.5 mouse段
      • 5.2.6 event段
      • 5.2.7 cursorinfo段
      • 5.2.8 resinfo段
      • 5.2.9 渲染器的设置
        • classic/flat/fashion 渲染器
        • skin 渲染器
      • 5.2.10 默认的MiniGUI.cfg文件内容
    • 5.3 环境变量

本章介绍 MiniGUI 3.0 的运行时配置选项,包括运行时配置文件、环境变量等。

5.1 建立 MiniGUI V3.0 运行环境的前提

运行 MiniGUI 3.0 的操作系统需要满足一些前提条件:

5.2 MiniGUI.cfg说明

运行时配置选项影响 MiniGUI 的一些运行行为,比如要使用的图形引擎或者输入引擎;要装载的设备字体;要装载的位图、光标资源等等。我们已经了解到,MiniGUI 的运行时配置一般是通过配置文件(MiniGUI.cfg)指定的,但在使用内建资源方式配置并编译 MiniGUI 后,运行时配置选项将直接编译到函数库中,配置文件 MiniGUI.cfg 文件将不起作用。在 MiniGUI 应用程序启动时,MiniGUI 优先查找当前目录下的 MiniGUI.cfg 文件、用户主目录下的 .MiniGUI.cfg 文件,其次是 /usr/local/etc/MiniGUI.cfg,最后是 /etc/MiniGUI.cfg 文件。如果用户没有在当前目录及自己的主目录下建立对应的 MiniGUI.cfg 文件,则通常情况下,/usr/local/etc/MiniGUI.cfg 文件就是 MiniGUI 所使用的默认运行时配置文件。下边章节会先描述使用配置文件时的运行时配置选项,之后描述如何在内建资源方式下指定运行时配置选项。

5.2.1 配置文件MiniGUI.cfg格式简介

配置文件采用了非常简洁的格式,所以修改起来也很容易。其格式如下:

[section-name1]
key-name1=key-value1
key-name2=key-value2[section-name2]
key-name3=key-value3
key-name4=key-value4

配置文件中由注释(#)、段(section)、键(key)和键值(Key Value)四部分组成,注释是以“#”为第一个字符开始的行,段是由[section-name]形式给出,包含若干键和键值对组合,用 key=key_value 的形式指定键和键值。下面按段介绍配置文件内容。

5.2.2 system段

该段指定了MiniGUI 运行时使用的输入输出引擎以及鼠标设备和协议类型。指定的输入输出引擎必须是编译配置MiniGUI库时多个引擎中的一个。

该段定义如下键:

MiniGUI.cfg文件system段内容如下:

[system]
# GAL engine and default options
gal_engine=qvfb
defaultmode=800x600-16bpp# IAL engine
ial_engine=qvfbmdev=/dev/input/mice
mtype=IMPS2

5.2.3 图形引擎配置段

fbcon段

该段是在[system]段gal_engine的键值指定为fbcon时使用,表示运行fbcon时使用的显示模式。若该段未定义或键值为空,则使用[system]段定义的键值。该段只包含一个defaultmode键,具体含义和[system]段相同:defaultmode:指定图形引擎的显示模式,格式为:宽x高-显示位数(bpp)

[fbcon]
defaultmode=1024x768-16bpp

qvfb段

该段是在[system]段 gal_engine 的键值指定为 qvfb 时使用,表示运行 qvfb 时使用了XWindow 的哪个 display 及显示模式。

该段定义如下键,具体含义如下:

  • defaultmode:指定图形引擎的显示模式,格式为:宽x高-显示位数(bpp)
  • display:运行 qvfb 时使用 X Window 的哪个 display,一般取 0。

MiniGUI.cfg 文件 qvfb 段内容如下:

[qvfb]
defaultmode=640x480-16bpp
display=0

pc_xvfb 段

该段是在 [system] 段 gal_engine 的键值指定为 pc_qvfb 时使用,表示 pc_xvfb 的程序路径、显示模式以及窗口标题栏文字。Pc_xvfb 是在 PC 机上使用的一种图形引擎模式。该段定义如下键,具体含义如下:

MiniGUI.cfg文件pc_xvfb段内容如下:

[pc_xvfb]
defaultmode=1024x768-16bpp
window_caption=XVFB-for-MiniGUI-3.0-(Qt-Version)
exec_file=/usr/local/bin/qvfb2

rtos_xvfb 段

该段是在 [system] 段 gal_engine 的键值指定为 rtos_qvfb 时使用,表示 rtos_xvfb 的显示模式。rtos_xvfb 是在嵌入式系统上使用的一种图形引擎模式。

该段定义如下键,具体含义如下:

MiniGUI.cfg 文件 rtos_xvfb 段内容如下:

[rtos_xvfb]
defaultmode=800x600-16bpp

shadow 段

该段是在 [system] 段 gal_engine 的键值指定为 shadow 时使用,表示 shadow 的真实引擎、默认模式以及屏幕旋转模式。

该段定义如下键,具体含义如下:

  • real_engine: 真实图形引擎,可为: pc_xvfb , qvfb
  • defaultmode:指定图形引擎的显示模式,格式为:宽x高-显示位数(bpp)
  • rotate_screen: 指定屏幕是否旋转,值可为: normal ,cw , ccw , hflip , vflip 。

MiniGUI.cfg 文件 shadow 段内容如下:

[shadow]
real_engine=pc_xvfb
defaultmode=800x600-16bpp
rotate_screen=normal

mlshadow 段

该段是在 [system] 段 gal_engine 的键值指定为 mlshadow 时使用,表示 mlshadow 的真实引擎、默认模式、屏幕背景颜色以及刷屏时是否使用双缓冲。

该段定义如下键,具体含义如下:

  • real_engine:真实图形引擎,可为: pc_xvfb , qvfb
  • defaultmode:指定图形引擎的显示模式,格式为:宽x高-显示位数(bpp)
  • def_bgcolor: 指定背景颜色,如:0x00FF00
  • double_buffer: 刷屏时是否使用双缓冲,值可为enable , disable 。

MiniGUI.cfg文件mlshadow段内容如下:

[mlshadow]
real_engine=qvfb
defaultmode=800x600-16bpp
def_bgcolor=0x00FF00
double_buffer=enable

5.2.4 字体配置段

systemfont 段

该段定义了  MiniGUI  的系统字体和字体个数。并定义了系统默认使用的字体,用于  MiniGUI  的标题、菜单、控件的显示。

系统字体是 MiniGUI 装载了由 rawbitmapfonts、 varbitmapfonts、 qpf、 upf、 truetypefonts 等段定义的设备字体之后,根据上述字体名称调用 CreateLogFontByName 函数建立的逻辑字体。

逻辑字体名称的格式如下:

<type>-<facename>-<style>-<width>-<height>-<charset1>

逻辑字体名称各部分的含义如下:

  • type 是所选用的设备字体类型,如果不想指定,则用 * 代替。
  • facename 指字体样式名,比如 Courier、 Times 等等。
  • style 是由六个字母组成的字符串,用来指定逻辑字体风格,比如是否加粗、是否斜体、是否对字体做镜像处理、是否自动放大、是否含有下划线或者删除线等等。
  • width 指定要创建的逻辑字体的宽度。如果不想指定,则用 * 代替。
  • height 指定要创建的逻辑字体的高度。
  • charset 指定要创建的逻辑字体的字符集。

MiniGUI 的许多窗口元素尺寸是根据系统字体的大小定义的,详情请参阅下面对 mainwinmetric 段的说明。

此外,从 MiniGUI V2.0.3/1.6.9 版本开始 MiniGUI 还提供了字体的自动放大功能,以便将点阵字体适当放大来匹配逻辑字体所要求的大小。使用该功能的方法非常简单,请在指定逻辑字体风格时,在第四个字符处使用大写的“S”字母。注意,如果您要使用矢量字体类型,比如 TrueType 字体,则不需要指定该风格,因为矢量字体可以根据逻辑字体的期望大小生成对应的字体字模。

该段定义了如下键:

  • font_number:指定了要创建的逻辑字体个数。
  • font:表示编号为 的逻辑字体名称。
  • default:系统(单字节字符集)默认字体,键值为上述逻辑字体编号。
  • wchar_def:多字节字符集使用的字体,键值为上述逻辑字体编号。
  • fixed:等宽字符集使用的字体,键值为上述逻辑字体编号。
  • caption:窗口标题使用的字体,键值为上述逻辑字体编号。
  • menu:菜单使用的字体,键值为上述逻辑字体编号。
  • control:控件的字体,键值为上述逻辑字体编号。

可以修改要创建的系统字体个数,但至少要创建一种单字节字符集(比如 ISO8859-1)的字体。

MiniGUI 根据 default、wchar_def 系统字体来定义系统的默认字符集,这影响 GetSysCharset、GetSysCharWidth、 GetSysCCharWidth 和 GetSysHeight 函数的返回值。一般来讲,default 和 wchar_default 必须是等宽点阵字体,即 RBF 字体,并且多字节字符集字体的宽度必须是单字节字符集宽度的两倍。

MiniGUI.cfg 文件 systemfont 段内容如下:

# The first system font must be a logical font using RBF device font.
[systemfont]
font_number=6
font0=rbf-fixed-rrncnn-8-16-ISO8859-1
font1=*-fixed-rrncnn-*-16-GB2312
font2=*-Courier-rrncnn-*-16-GB2312
font3=*-SansSerif-rrncnn-*-16-GB2312
font4=*-Times-rrncnn-*-16-GB2312
font5=*-Helvetica-rrncnn-*-16-GB2312default=0
wchar_def=4
fixed=1
caption=4
menu=2
control=3

rawbitmapfonts、varbitmapfonts、upf、qpf、truetypefonts段

这些段用来指定要装载的设备字体信息。定义了要装载的设备字体个数,每个设备字体名称及对应的设备字体文件。

MiniGUI 使用的设备字体名称格式如下:

<type>-<facename>-<style>-<width>-<height>-<charset1[,charset2,...]>

设备字体名称各部分的含义如下:

  • type 是设备字体类型,对 RBF、VBF、QPF、UPF、TrueType 设备字体,分别取 rbf、vbf、qpf、upf和ttf。
  • facename 指设备字体的样式名,比如 Courier、Times 等等。
  • style 是由六个字母组成的字符串,用来指定字体风格,比如是否加粗、是否斜体、是否含有下划线或者删除线等等。通常这六个字母取“rrncnn”。
  • width 表示字体的宽度。对变宽字体来讲,用来指定最大宽度。对可缩放的矢量字体来讲,设置为 0。
  • height 表示字体的高度。对可缩放的矢量字体来讲,设置为 0。
  • charset1、charset2 等,表示该设备字体所支持的字符集。
  • 每个段均包含font_number、name 和 fontfile等键:
  • font_number:装载的设备字体个数
  • name:编号为的设备字体名称
  • fontfile:编号为的设备字体文件

如果不想装载某个类型的设备字体,则可以通过设置对应段的font_number 为 0 来跳过对这种设备字体的装载。

MiniGUI.cfg 文件这些段配置示例如下:

[rawbitmapfonts]
font_number=4
name0=rbf-fixed-rrncnn-8-16-ISO8859-1
fontfile0=/usr/local/lib/minigui/res/font/8x16-iso8859-1.bin
name1=rbf-fixed-rrncnn-16-16-GB2312-0
fontfile1=/usr/local/lib/minigui/res/font/song-16-gb2312.bin
name2=rbf-fixed-rrncnn-6-12-ISO8859-1
fontfile2=/usr/local/lib/minigui/res/font/6x12-iso8859-1.bin
name3=rbf-fixed-rrncnn-12-12-GB2312-0
fontfile3=/usr/local/lib/minigui/res/font/song-12-gb2312.bin[varbitmapfonts]
font_number=6
name0=vbf-Courier-rrncnn-8-13-ISO8859-1
fontfile0=/usr/local/lib/minigui/res/font/Courier-rr-8-13.vbf
name1=vbf-Helvetica-rrncnn-11-12-ISO8859-1
fontfile1=/usr/local/lib/minigui/res/font/Helvetica-rr-11-12.vbf
name2=vbf-Times-rrncnn-10-12-ISO8859-1
fontfile2=/usr/local/lib/minigui/res/font/Times-rr-10-12.vbf
name3=vbf-Courier-rrncnn-10-15-ISO8859-1
fontfile3=/usr/local/lib/minigui/res/font/Courier-rr-10-15.vbf
name4=vbf-Helvetica-rrncnn-15-16-ISO8859-1
fontfile4=/usr/local/lib/minigui/res/font/Helvetica-rr-15-16.vbf
name5=vbf-Times-rrncnn-13-15-ISO8859-1
fontfile5=/usr/local/lib/minigui/res/font/Times-rr-13-15.vbf[upf]
font_number=6
name0=upf-fmsong-rrncnn-12-12-ISO8859-1,ISO8859-15,GB2312-0,BIG5,GBK,UTF-8,UTF-16LE,UTF-16BE
fontfile0=/usr/local/share/minigui/res/font/fmsong-latin-12.upf
name1=upf-fmkai-rrncnn-14-14-ISO8859-1,ISO8859-15,GB2312-0,UTF-8,UTF-16LE,UTF-16BE
fontfile1=/usr/local/share/minigui/res/font/fmkai-latin-14.upf
name2=upf-fmfsong-rrncnn-15-15-ISO8859-1,ISO8859-15,GB2312-0,UTF-8,UTF-16LE,UTF-16BE
fontfile2=/usr/local/share/minigui/res/font/fmfsong-latin-15.upf
name3=upf-fmsong-rrncnn-16-16-ISO8859-1,ISO8859-15,GB2312-0,BIG5,GBK,UTF-8,UTF-16LE,UTF-16BE
fontfile3=/usr/local/share/minigui/res/font/fmsong-latin-16.upf
name4=upf-fmkai-rrncnn-18-18-ISO8859-1,ISO8859-15,GB2312-0,UTF-8,UTF-16LE,UTF-16BE
fontfile4=/usr/local/share/minigui/res/font/fmkai-latin-18.upf
name5=upf-fmhei-rrncnn-20-20-ISO8859-1,ISO8859-15,GB2312-0,BIG5,GBK,UTF-8,UTF-16LE,UTF-16BE
fontfile5=/usr/local/share/minigui/res/font/fmhei-latin-20.upf[qpf]
font_number=3
name0=qpf-unifont-rrncnn-16-16-ISO8859-1,ISO8859-15,GB2312-0,GBK,BIG5
fontfile0=/usr/local/lib/minigui/res/font/unifont_160_50.qpf
name1=qpf-times-rrncnn-5-10-ISO8859-1,ISO8859-15
fontfile1=/usr/local/lib/minigui/res/font/smoothtimes_100_50.qpf
name2=qpf-helvetica-rrncnn-5-10-ISO8859-1,ISO8859-15
fontfile2=/usr/local/lib/minigui/res/font/helvetica_100_50.qpf
name3=qpf-micro-rrncnn-4-4-ISO8859-1,ISO8859-15
fontfile3=/usr/local/lib/minigui/res/font/micro_40_50.qpf[truetypefonts]
font_number=3
name0=ttf-arial-rrncnn-0-0-ISO8859-1
fontfile0=/usr/local/lib/minigui/res/font/arial.ttf
name1=ttf-times-rrncnn-0-0-ISO8859-1
fontfile1=/usr/local/lib/minigui/res/font/times.ttf
name2=ttf-pinball-rrncnn-0-0-ISO8859-1
fontfile2=/usr/local/lib/minigui/res/font/pinball.ttf

5.2.5 mouse段

该段定义了鼠标双击间隔时间。用于系统的内部事件处理,一般无须作任何改动。该段定义了如下键:

  • dblclicktime:指定了双击间隔时间,单位毫秒

MiniGUI .cfg 文件 mouse 段内容如下:

[mouse]
dblclicktime=300

5.2.6 event段

该段定义了底层事件的超时时间和自动重复事件时间。用于系统的内部事件处理,一般无须作任何改动。该段定义了如下键:

  • timeoutusec:事件超时时间,单位微秒
  • repeatusec:重复事件时间,单位微秒

MiniGUI .cfg 文件 event 段内容如下:

timeoutusec=300000
repeatusec=50000

5.2.7 cursorinfo段

该段指定了  MiniGUI  要装载的鼠标光标相关信息。

如果在编译配置 MiniGUI 时使用了 --disable-cursor 选项,则 MiniGUI 会忽略 cursorinfo 段。该段定义如下键:

  • cursorpath:指定光标所在路径
  • cursornumber:指定装载的光标个数,可通过减少个数并删除对应光标减少 MiniGUI 的存储空间占用量
  • cursor:指定编号为的光标

MiniGUI .cfg 文件 cursorinfo 段内容如下:

[cursorinfo]
# Edit following line to specify cursor files path
cursorpath=/usr/local/share/minigui/res/cursor/
cursornumber=23
cursor0=d_arrow.cur
cursor1=d_beam.cur
cursor2=d_pencil.cur
cursor3=d_cross.cur
cursor4=d_move.cur
cursor5=d_sizenwse.cur
cursor6=d_sizenesw.cur
cursor7=d_sizewe.cur
cursor8=d_sizens.cur
cursor9=d_uparrow.cur
cursor10=d_none.cur
cursor11=d_help.cur
cursor12=d_busy.cur
cursor13=d_wait.cur
cursor14=g_rarrow.cur
cursor15=g_col.cur
cursor16=g_row.cur
cursor17=g_drag.cur
cursor18=g_nodrop.cur
cursor19=h_point.cur
cursor20=h_select.cur
cursor21=ho_split.cur
cursor22=ve_split.cur

5.2.8 resinfo段

该段定义了  MiniGUI  要装载的资源相关信息。该段定义如下键:

  • resinfo:指定资源所在路径

MiniGUI .cfg 文件 iconinfo 段内容如下:

[resinfo]
respath=/usr/local/share/minigui/res/

5.2.9 渲染器的设置

classic/flat/fashion 渲染器

在classic 、 flat 和 fashion 这三段设置中分别定义了  MiniGUI  中的 classic 风格、flat 风格和 fashion 风格的渲染器的各项属性信息。这三段的属性都是一样的,只是所设置的值不一样。他们定义了如下的键:

  • iconnumber:渲染器所用图标的个数
  • icon0: 第1个图标的文件名
  • icon1: 第二个图标的文件名
  • icon2: 第三个图标的文件名
  • icon3: 第四个图标的文件名
  • icon4: 第五个图标的文件名
  • dir: 文件夹的图标文件名
  • file: 文件的图标文件名
  • treefold:
  • treeunfold:
  • radiobutton: 单选框按钮的图标文件名
  • checkbutton: 复选框按钮的图标文件名
  • bgpicture: 背景图片的文件名
  • bgpicpos: 背景图片的放置方式
  • caption: 标题栏尺寸
  • menu: 菜单尺寸
  • border: 窗口边框的宽度
  • scrollbar: 滚动条的长度
  • fgc_active_caption: 标题栏获得焦点时的前景色
  • bgca_active_caption: 活动状态标题栏的背景色的渐变起始颜色值
  • bgcb_active_caption: 活动状态标题栏的背景色的渐变终止颜色值
  • fgc_menu: 菜单前景色
  • bgc_menu: 菜单背景色
  • fgc_msgbox: 消息框前景色
  • fgc_tip: 提示框前景色
  • bgc_tip: 提示框背景色
  • fgc_active_border: 活动状态边框前景色
  • fgc_inactive_border: 非活动状态边框前景色
  • fgc_inactive_caption: 非活动状态标题栏前景色
  • bgca_inactive_caption: 非活动状态标题栏背景色起始渐变色
  • bgcb_inactive_caption: 非活动状态标题栏背景色终止渐变色
  • fgc_window: 窗口前景色
  • bgc_window: 窗口背景色
  • fgc_3dbox: 三维方框前景色
  • mainc_3dbox: 三维方框主色
  • fgc_selected_item: 选中项目前景色
  • bgc_selected_item: 选中项目背景色
  • bgc_selected_lostfocus: 选中项目失去焦点时的背景色
  • fgc_disabled_item: 无效项目前景色
  • bgc_disabled_item: 无效项目背景色
  • fgc_hilight_item: 高亮项目前景色
  • bgc_hilight_item: 高粱项目背景色
  • fgc_significant_item: 重要项目前景色
  • bgc_significant_item: 重要项目背景色
  • bgc_desktop: 桌面背景色

MiniGUI.cfg 文件这三个段的内容如下:

# Note that max number defined in source code is 5.
iconnumber=5
icon0=form.ico
icon1=failed.ico
icon2=help.ico
icon3=warning.ico
icon4=excalmatory.ico# default icons for new OpenFileDialogBox
dir=folder.ico
file=textfile.ico# default icons for TreeView controltreefold=fold-flat.icotreeunfold=unfold-flat.ico# bitmap used by BUTTON control
radiobutton=classic_radio_button.bmp
checkbutton=classic_check_button.bmp# background picture, use your favirate photo
bgpicture=none
bgpicpos=center
# bgpicpos=upleft
# bgpicpos=downleft
# bgpicpos=upright
# bgpicpos=downright
# bgpicpos=upcenter
# bgpicpos=downcenter
# bgpicpos=vcenterleft
# bgpicpos=vcenterright
# bgpicpos=none#window element metrics
caption=20
menu=25
border=2
scrollbar=16#window element colors
fgc_active_caption=0xFFFFFFFF
bgca_active_caption=0xFF6A240A
bgcb_active_caption=0xFF6A240Afgc_menu=0xFF000000
bgc_menu=0xFFCED3D6fgc_msgbox=0xFF000000fgc_tip=0xFF000000
bgc_tip=0xFFE7FFFFfgc_active_border=0xFFCED3D6
fgc_inactive_border=0xFFCED3D6fgc_inactive_caption=0xFFC8D0D4
bgca_inactive_caption=0xFF808080
bgcb_inactive_caption=0xFF808080fgc_window=0xFF000000
bgc_window=0xFFFFFFFFfgc_3dbox=0xFF000000
mainc_3dbox=0xFFCED3D6fgc_selected_item=0xFFFFFFFF
bgc_selected_item=0xFF6B2408
bgc_selected_lostfocus=0xFFBDA69Cfgc_disabled_item=0xFF848284
bgc_disabled_item=0xFFCED3D6fgc_hilight_item=0xFFFFFFFF
bgc_hilight_item=0xFF6B2408fgc_significant_item=0xFFFFFFFF
bgc_significant_item=0xFF6B2408bgc_desktop=0xFFC08000

skin 渲染器

该段定义了MiniGUI 中的 skin 渲染器的各项属性信息。在该段中,除了包含了上述三个风格的渲染器的各项属性,还有skin 渲染器独有的一些属性信息。下面将只列出skin渲染器独有的属性键的解释,其他的键的含义和其他三个渲染器的含义一样。 这些额外的键,罗列如下:

  • skin_bkgnd: 背景皮肤图片
  • skin_caption: 标题栏皮肤图片
  • skin_caption_btn: 标题栏按钮皮肤图片
  • skin_scrollbar_hshaft: 水平滚动条凹槽皮肤图片
  • skin_scrollbar_vshaft: 垂直滚动条凹槽皮肤图片
  • skin_scrollbar_hthumb: 水平滚动条游标皮肤图片
  • skin_scrollbar_vthumb: 垂直滚动条游标皮肤图片
  • skin_scrollbar_arrows: 滚动条箭头皮肤图片
  • skin_tborder: 顶部窗口边框皮肤图片
  • skin_bborder: 底部窗口边框皮肤图片
  • skin_lborder: 左边窗口边框皮肤图片
  • skin_rborder: 邮编窗口边框皮肤图片
  • skin_arrows: 箭头皮肤图片
  • skin_arrows_shell: 箭头外框皮肤图片
  • skin_pushbtn: push 按钮皮肤图片
  • skin_radiobtn: 单选框按钮皮肤图片
  • skin_checkbtn: 复选框按钮皮肤图片
  • skin_tree: 树控件皮肤图片
  • skin_header: 树控件头皮肤图片
  • skin_tab: 树控件目录展开收拢皮肤图片
  • skin_tbslider_h: 水平滑动条皮肤图片
  • skin_tbslider_v: 垂直滑动条皮肤图片
  • skin_trackbar_horz: 水平轨迹条皮肤图片
  • skin_trackbar_vert: 垂直轨迹条皮肤图片
  • skin_progressbar_htrack: 水平进度条滑槽皮肤图片
  • skin_progressbar_vtrack: 垂直进度条滑槽皮肤图片
  • skin_progressbar_hchunk: 水平进度条滑块皮肤图片
  • skin_progressbar_vchunk: 垂直进度条滑块皮肤图片

MiniGUI.cfg 文件 skin 段内容如下:

[skin]
# Note that max number defined in source code is 5.
iconnumber=5
icon0=form.ico
icon1=failed.ico
icon2=help.ico
icon3=warning.ico
icon4=excalmatory.ico# default icons for new OpenFileDialogBox
dir=folder.ico
file=textfile.ico# default icons for TreeView controltreefold=fold.icotreeunfold=unfold.ico# background picture, use your favirate photo
bgpicture=none
bgpicpos=center#window element metrics
caption=25
menu=25
border=1
scrollbar=17fgc_active_caption=0xFFFFFFFF
bgca_active_caption=0xFFE35400
bgcb_active_caption=0xFF686868fgc_menu=0xFF000000
bgc_menu=0xFFFFFFFFfgc_msgbox=0xFF000000fgc_tip=0xFF000000
bgc_tip=0xFFFFFFFFfgc_active_border=0xFFC8D0D4
fgc_inactive_border=0xFFC8D0D4fgc_inactive_caption=0xFFF8E4D8
bgca_inactive_caption=0xFFDF967A
bgcb_inactive_caption=0xFF686868fgc_window=0xFF000000
bgc_window=0xFFFFFFFFfgc_3dbox=0xFF000000
mainc_3dbox=0xFFD8E9ECfgc_selected_item=0xFFFFFFFF
bgc_selected_item=0xFFC56A31
bgc_selected_lostfocus=0xFFD8E9ECfgc_disabled_item=0xFF99A8AC
bgc_disabled_item=0xFFFFFFFFfgc_hilight_item=0xFFFFFFFF
bgc_hilight_item=0xFFC56A31fgc_significant_item=0xFFFFFFFF
bgc_significant_item=0xFFC56A31bgc_desktop=0xFF984E00skin_bkgnd=skin_bkgnd.bmp
skin_caption=skin_caption.gif
skin_caption_btn=skin_cpn_btn.gif#for scrollbar
skin_scrollbar_hshaft=skin_sb_hshaft.bmp
skin_scrollbar_vshaft=skin_sb_vshaft.bmp
skin_scrollbar_hthumb=skin_sb_hthumb.bmp
skin_scrollbar_vthumb=skin_sb_vthumb.bmp
skin_scrollbar_arrows=skin_sb_arrows.bmp#for border
skin_tborder=skin_tborder.bmp
skin_bborder=skin_bborder.bmp
skin_lborder=skin_lborder.bmp
skin_rborder=skin_rborder.bmpskin_arrows=skin_arrows.gif
skin_arrows_shell=skin_arrows_shell.bmpskin_pushbtn=skin_pushbtn.gif
skin_radiobtn=skin_radiobtn.gif
skin_checkbtn=skin_checkbtn.bmp#for treeview
skin_tree=skin_tree.bmpskin_header=skin_header.bmp
skin_tab=skin_tab.gif#for trackbar
skin_tbslider_h=skin_tbslider_h.gif
skin_tbslider_v=skin_tbslider_v.gif
skin_trackbar_horz=skin_tb_horz.gif
skin_trackbar_vert=skin_tb_vert.gif#for progressbar
skin_progressbar_htrack=skin_pb_htrack.gif
skin_progressbar_vtrack=skin_pb_vtrack.gif
skin_progressbar_hchunk=skin_pb_htruck.bmp
skin_progressbar_vchunk=skin_pb_vtruck.bmp
#}}

5.2.10 默认的MiniGUI.cfg文件内容

下面是MiniGUI V3.0 版本默认安装的 MiniGUI 函数库的运行环境配置文件的内容:

# This configuration file is for MiniGUI V3.0.x
#
# Copyright (C) 2002~2008 Feynman Software
# Copyright (C) 1998~2002 Wei Yongming.
#
# Web: http://www.minigui.com
#
# This configuration file must be installed in /etc,
# /usr/local/etc or your home directory. When you install it in your
# home directory, it should be named ".MiniGUI.cfg".
#
# The priority of above configruation files is ~/.MiniGUI.cfg,
# /usr/local/etc/MiniGUI.cfg, and then /etc/MiniGUI.cfg.
#
# If you change the install path of MiniGUI resource, you should
# modify this file to meet your configuration.
#
# NOTE:
# The format of this configuration file has changed since the last release.
# Please DONT forget to provide the latest MiniGUI.cfg file for your MiniGUI.
#[system]
# GAL engine and default options
gal_engine=pc_xvfb
defaultmode=800x600-16bpp# IAL engine
ial_engine=pc_xvfb
mdev=/dev/input/mice
mtype=IMPS2[fbcon]
defaultmode=1024x768-16bpp[qvfb]
defaultmode=640x480-16bpp
display=0#{{ifdef _MGGAL_PCXVFB
[pc_xvfb]
defaultmode=800x600-16bpp
window_caption=XVFB-for-MiniGUI-3.0-(Qt-Version)
exec_file=/usr/local/bin/qvfb2
#}}[rtos_xvfb]
defaultmode=800x600-16bpp#{{ifdef _MGGAL_SHADOW
[shadow]
real_engine=pc_xvfb
defaultmode=800x600-16bpp
rotate_screen=normal
#}}#{{ifdef _MGGAL_MLSHADOW
[mlshadow]
real_engine=qvfb
defaultmode=800x600-16bpp
def_bgcolor=0x00FF00
double_buffer=enable
#}}# The first system font must be a logical font using RBF device font.
[systemfont]
font_number=5
font0=rbf-FixedSys-rrncnn-8-16-ISO8859-1
font1=*-FixedSys-rrncnn-*-16-ISO8859-1
font2=*-Courier-rrncnn-*-16-ISO8859-1
font3=*-SansSerif-rrncnn-*-16-ISO8859-1
font4=*-System-rrncnn-*-16-ISO8859-1default=0
wchar_def=4
fixed=1
caption=4
menu=2
control=3[rawbitmapfonts]
font_number=0[varbitmapfonts]
font_number=0[upf]
font_number=0[qpf]
font_number=0[truetypefonts]
font_number=0[mouse]
dblclicktime=300[event]
timeoutusec=300000
repeatusec=50000[cursorinfo]
# Edit following line to specify cursor files path
cursorpath=/usr/local/share/minigui/res/cursor/
cursornumber=23
cursor0=d_arrow.cur
cursor1=d_beam.cur
cursor2=d_pencil.cur
cursor3=d_cross.cur
cursor4=d_move.cur
cursor5=d_sizenwse.cur
cursor6=d_sizenesw.cur
cursor7=d_sizewe.cur
cursor8=d_sizens.cur
cursor9=d_uparrow.cur
cursor10=d_none.cur
cursor11=d_help.cur
cursor12=d_busy.cur
cursor13=d_wait.cur
cursor14=g_rarrow.cur
cursor15=g_col.cur
cursor16=g_row.cur
cursor17=g_drag.cur
cursor18=g_nodrop.cur
cursor19=h_point.cur
cursor20=h_select.cur
cursor21=ho_split.cur
cursor22=ve_split.cur[resinfo]
respath=/usr/local/share/minigui/res/[classic]
# Note that max number defined in source code is 5.
iconnumber=5
icon0=form.ico
icon1=failed.ico
icon2=help.ico
icon3=warning.ico
icon4=excalmatory.ico# default icons for new OpenFileDialogBox
dir=folder.ico
file=textfile.ico# default icons for TreeView controltreefold=fold.icotreeunfold=unfold.ico# bitmap used by BUTTON control
radiobutton=classic_radio_button.bmp
checkbutton=classic_check_button.bmp# background picture, use your favirate photo
bgpicture=none
bgpicpos=center
# bgpicpos=upleft
# bgpicpos=downleft
# bgpicpos=upright
# bgpicpos=downright
# bgpicpos=upcenter
# bgpicpos=downcenter
# bgpicpos=vcenterleft
# bgpicpos=vcenterright
# bgpicpos=none#window element metrics
caption=20
menu=25
border=2
scrollbar=16#window element colors
fgc_active_caption=0xFFFFFFFF
bgca_active_caption=0xFF6A240A
bgcb_active_caption=0xFF6A240Afgc_menu=0xFF000000
bgc_menu=0xFFCED3D6fgc_msgbox=0xFF000000fgc_tip=0xFF000000
bgc_tip=0xFFE7FFFFfgc_active_border=0xFFCED3D6
fgc_inactive_border=0xFFCED3D6fgc_inactive_caption=0xFFC8D0D4
bgca_inactive_caption=0xFF808080
bgcb_inactive_caption=0xFF808080fgc_window=0xFF000000
bgc_window=0xFFFFFFFFfgc_3dbox=0xFF000000
mainc_3dbox=0xFFCED3D6fgc_selected_item=0xFFFFFFFF
bgc_selected_item=0xFF6B2408
bgc_selected_lostfocus=0xFFBDA69Cfgc_disabled_item=0xFF848284
bgc_disabled_item=0xFFCED3D6fgc_hilight_item=0xFFFFFFFF
bgc_hilight_item=0xFF6B2408fgc_significant_item=0xFFFFFFFF
bgc_significant_item=0xFF6B2408bgc_desktop=0xFFC08000#{{ifdef _MGLF_RDR_FLAT
[flat]
# Note that max number defined in source code is 5.
iconnumber=5
icon0=form-flat.ico
icon1=failed-flat.ico
icon2=help-flat.ico
icon3=warning-flat.ico
icon4=excalmatory-flat.ico# default icons for new OpenFileDialogBox
dir=folder-flat.ico
file=textfile-flat.ico# default icons for TreeView controltreefold=fold.icotreeunfold=unfold.ico# bitmap used by BUTTON control
radiobutton=flat_radio_button.bmp
checkbutton=flat_check_button.bmp# background picture, use your favirate photo
bgpicture=none
bgpicpos=center#window element metrics
caption=20
menu=25
border=1
scrollbar=16#window element colors
fgc_active_caption=0xFFFFFFFFF
bgca_active_caption=0xFF000000
bgcb_active_caption=0xFF000000fgc_inactive_caption=0xFF000000
bgca_inactive_caption=0xFFFFFFFF
bgcb_inactive_caption=0xFFFFFFFFfgc_menu=0xFF000000
bgc_menu=0xFFFFFFFFfgc_msgbox=0xFF000000fgc_tip=0xFF000000
bgc_tip=0xFFE7FFFFfgc_active_border=0xFF000000
fgc_inactive_border=0xFF848284fgc_window=0xFF000000
bgc_window=0xFFFFFFFFfgc_3dbox=0xFF000000
mainc_3dbox=0xFFFFFFFFfgc_selected_item=0xFFFFFFFF
bgc_selected_item=0xFF000000
bgc_selected_lostfocus=0xFFBDA69Cfgc_disabled_item=0xFF848284
bgc_disabled_item=0xFF000000fgc_hilight_item=0xFFFFFFFF
bgc_hilight_item=0xFF000000fgc_significant_item=0xFFFFFFFF
bgc_significant_item=0xFF000000bgc_desktop=0xFFC08000
#}}#{{ifdef _MGLF_RDR_SKIN
[skin]
# Note that max number defined in source code is 5.
iconnumber=5
icon0=form.ico
icon1=failed.ico
icon2=help.ico
icon3=warning.ico
icon4=excalmatory.ico# default icons for new OpenFileDialogBox
dir=folder.ico
file=textfile.ico# default icons for TreeView controltreefold=fold.icotreeunfold=unfold.ico# background picture, use your favirate photo
bgpicture=none
bgpicpos=center#window element metrics
caption=25
menu=25
border=1
scrollbar=17fgc_active_caption=0xFFFFFFFF
bgca_active_caption=0xFFE35400
bgcb_active_caption=0xFF686868fgc_menu=0xFF000000
bgc_menu=0xFFFFFFFFfgc_msgbox=0xFF000000fgc_tip=0xFF000000
bgc_tip=0xFFFFFFFFfgc_active_border=0xFFC8D0D4
fgc_inactive_border=0xFFC8D0D4fgc_inactive_caption=0xFFF8E4D8
bgca_inactive_caption=0xFFDF967A
bgcb_inactive_caption=0xFF686868fgc_window=0xFF000000
bgc_window=0xFFFFFFFFfgc_3dbox=0xFF000000
mainc_3dbox=0xFFD8E9ECfgc_selected_item=0xFFFFFFFF
bgc_selected_item=0xFFC56A31
bgc_selected_lostfocus=0xFFD8E9ECfgc_disabled_item=0xFF99A8AC
bgc_disabled_item=0xFFFFFFFFfgc_hilight_item=0xFFFFFFFF
bgc_hilight_item=0xFFC56A31fgc_significant_item=0xFFFFFFFF
bgc_significant_item=0xFFC56A31bgc_desktop=0xFF984E00skin_bkgnd=skin_bkgnd.bmp
skin_caption=skin_caption.gif
skin_caption_btn=skin_cpn_btn.gif#for scrollbar
skin_scrollbar_hshaft=skin_sb_hshaft.bmp
skin_scrollbar_vshaft=skin_sb_vshaft.bmp
skin_scrollbar_hthumb=skin_sb_hthumb.bmp
skin_scrollbar_vthumb=skin_sb_vthumb.bmp
skin_scrollbar_arrows=skin_sb_arrows.bmp#for border
skin_tborder=skin_tborder.bmp
skin_bborder=skin_bborder.bmp
skin_lborder=skin_lborder.bmp
skin_rborder=skin_rborder.bmpskin_arrows=skin_arrows.gif
skin_arrows_shell=skin_arrows_shell.bmpskin_pushbtn=skin_pushbtn.gif
skin_radiobtn=skin_radiobtn.gif
skin_checkbtn=skin_checkbtn.bmp#for treeview
skin_tree=skin_tree.bmpskin_header=skin_header.bmp
skin_tab=skin_tab.gif#for trackbar
skin_tbslider_h=skin_tbslider_h.gif
skin_tbslider_v=skin_tbslider_v.gif
skin_trackbar_horz=skin_tb_horz.gif
skin_trackbar_vert=skin_tb_vert.gif#for progressbar
skin_progressbar_htrack=skin_pb_htrack.gif
skin_progressbar_vtrack=skin_pb_vtrack.gif
skin_progressbar_hchunk=skin_pb_htruck.bmp
skin_progressbar_vchunk=skin_pb_vtruck.bmp
#}}[fashion]
# Note that max number defined in source code is 5.
iconnumber=5
icon0=form.ico
icon1=failed.ico
icon2=mg_help.ico
icon3=warning.ico
icon4=excalmatory.ico# default icons for new OpenFileDialogBox
dir=folder.ico
file=textfile.ico# default icons for TreeView controltreefold=fold.icotreeunfold=unfold.ico# bitmap used by BUTTON control
radiobutton=fashion_radio_btn.bmp
checkbutton=fashion_check_btn.bmp# bitmap used by IME window
#IMEctrlbtn=shurufa.bmp# bitmap used by About dialog box
#logo=MiniGUI256.bmp# background picture, use your favirate photo
bgpicture=none
bgpicpos=center#window element metrics
caption=25
menu=25
border=1
scrollbar=17fgc_active_caption=0xFFFFFFFF
bgca_active_caption=0xFFE35400
bgcb_active_caption=0xFFFF953Dfgc_menu=0xFF000000
bgc_menu=0xFFFFFFFFfgc_msgbox=0xFF000000fgc_tip=0xFF000000
bgc_tip=0xFFFFFFFFfgc_active_border=0xFFC8D0D4
fgc_inactive_border=0xFFC8D0D4fgc_inactive_caption=0xFFF8E4D8
bgca_inactive_caption=0xFFDF967A
bgcb_inactive_caption=0xFFEBB99Dfgc_window=0xFF000000
bgc_window=0xFFEBB99Dfgc_3dbox=0xFF000000
mainc_3dbox=0xFFD8E9ECfgc_selected_item=0xFFFFFFFF
bgc_selected_item=0xFFC56A31
bgc_selected_lostfocus=0xFFD8E9ECfgc_disabled_item=0xFF99A8AC
bgc_disabled_item=0xFFFFFFFFfgc_hilight_item=0xFFFFFFFF
bgc_hilight_item=0xFFC56A31fgc_significant_item=0xFFFFFFFF
bgc_significant_item=0xFFC56A31bgc_desktop=0xFF984E00

5.3 环境变量

MiniGUI V3.0 提供了通过环境变量修改图形及输入引擎的方式。比如,您的 MiniGUI 已经包含了 fbcon 和 qvfb 两种图形引擎以及对应的 console 和 qvfb 输入引擎,并在 MiniGUI.cfg 或者内建资源中指定了使用 qvfb 图形及输入引擎,但在运行时,您可以通过如下方式指定 fbcon 和 console 引擎,而不需要修改 MiniGUI.cfg 文件或者内建资源配置文件:

$ export MG_GAL_ENGINE=fbcon
$ export MG_IAL_ENGINE=console

同时您可以通过类似的方式改变其他配置选项,如下:

$ export MG_MDEV=/dev/input/mice
$ export MG_MTYPE=ps2
$ export MG_DEFAULTMODE=1024x768-16bpp

MiniGUI.cfg 文件详解相关推荐

  1. 服务器server.cfg文件详解,配合L4D使用

    服务器server.cfg文件详解,配合L6D使用,未知或错误参数说明希望XD补全和修正 该设置文件针对用srcds.exe开服务器并使用LXD插件的情况,用MAP方式开图会无效 文件内容如下: // ...

  2. YOLOv3 cfg文件详解

    参考了多篇详解后 以https://blog.csdn.net/phinoo/article/details/83022101为主补充了一些解释 [net] ★ [xxx]开始的行表示网络的一层,其后 ...

  3. Hibernate配置文件与映射文件详解

    Hibernate是一个彻底的ORM(Object Relational Mapping,对象关系映射)开源框架. 我们先看一下官方文档所给出的,Hibernate 体系结构的高层视图: 其中PO=P ...

  4. Linux中/proc目录下文件详解

    Linux中/proc目录下文件详解(一) 声明:可以自由转载本文,但请务必保留本文的完整性. 作者:张子坚 email:zhangzijian@163.com 说明:本文所涉及示例均在fedora ...

  5. Mybatis复习笔记3:映射文件详解

    映射文件详解 参数处理(#和$的区别) #{}:可以获取map中的值或者实体对象属性的值: ${}:可以获取map中的值或者实体对象属性的值: select * from person where i ...

  6. Android - Manifest 文件 详解

    Manifest 文件 详解 本文地址: http://blog.csdn.net/caroline_wendy/article/details/20899281 Manifest可以定义应用程序及其 ...

  7. javaweb web.xml文件详解

    web.xml文件详解 前言:一般的web工程中都会用到web.xml,web.xml主要用来配置,可以方便的开发web工程.web.xml主要用来配置Filter.Listener.Servlet等 ...

  8. oracle控制文件都一样么,Oracle控制文件详解

    一.Oracle控制文件 为二进制文件,初始化大小由CREATEDATABASE指定,可以使用RMAN备份 记录了当前数据库的结构信息,同时也包含数据文件及日志文件的信息以及相关的状态,归档信息等等 ...

  9. linux /proc目录文件详解

    Linux中/proc目录下文件详解(一) /proc文件系统下的多种文件提供的系统信息不是针对某个特定进程的,而是能够在整个系统范围的上下文中使用.可以使用的文件随系统配置的变化而变化.命令proc ...

最新文章

  1. 【深度学习】(6) tensorflow2.0使用keras高层API
  2. python把图片另存为_pycharm sciview的图片另存为操作
  3. 【数据结构与算法】之深入解析“修剪二叉搜索树”的求解思路与算法示例
  4. JasperMES.cn JasperMES.com.cn 我的MES网站
  5. sed知识整理:模式空间
  6. 深入Go的底层,带你走近一群有追求的人
  7. 从ffmpeg源代码分析如何解决ffmpeg编码的延迟问题(如何解决编码 0 延时)
  8. SpringBoot 配置文件 application.properties(二)
  9. makefile中的patsubst, wildcard, notdir
  10. Java通过cal.get(Calendar.MONTH)比真实月份少一个月
  11. 程序员面试金典 - 面试题 03.03. 堆盘子 (vector(stack))
  12. xp访问服务器显示没有权限,xp无法访问2008R2共享
  13. 云计算之路-试用Azure:搭建自己的内网DNS服务器
  14. 关于网站运营的研究_2020值得关注的20个宝藏创意网站,请收好
  15. 【收藏向】模拟电子技术超强知识点总结 20小时不挂科
  16. 数学建模按赛题划分常用代码
  17. 重新学习FPGA(一):EDA技术
  18. Javascript算法练习(四)
  19. CSS backdrop-filter 滤镜 毛玻璃效果
  20. 微信小程序中转义字符的处理

热门文章

  1. 买什么数据结构与算法,这里有:动态图解十大经典排序算法(含JAVA代码实现)
  2. Java 必看的 Spring 知识汇总!
  3. 多线程:Executor、Sleep、Deamon、Yeild
  4. 两个php的build文件,PHP编译安装中遇到的两个错误和解决方法
  5. 网络故障排除工具 | 快速定位网络故障
  6. mysql root 权限注入_Mysql注入root权限直接写一句话马
  7. centos 开发php扩展,【PHP扩展】centos给PHP安装扩展
  8. Python函数封装:利用正则表达式compile、findall对多组关键词进行模糊查询并返回统计个数,findall截取两个指定符号之间的内容
  9. 成功解决AttributeError: module tensorflow has no attribute random_normal
  10. WeChat之小工具:基于C++程序代码设计的查看微信撤销、撤回消息(包括文本、图片、视频等)GUI小工具