1、1.1、CCGUI图形系统的框架图 CCGI图形环境由以下部分组成:l 窗口系统l 窗口管理器l 控件集l 桌面管理器l 窗口应用程序 窗口系统(三层结构)窗口管理器控件集桌面管理器窗口应用程序体积小(不到1M)。支持嵌入式操作系统内核framebuffer技术,实现更高效。支持多种微处理器,系统具有良强的可移植性。提供X仿真环境支持,可以在桌面X系统上开发应用程序,并模拟其在嵌入式系统上的运行情况。层次化设计,采用精心设计的层次化技术,按功能模块组织成不同层次结构,不同层可被重写以适用不同实现的需要。具有很好的可裁减性。支持多任务和中文GB2312。支持全拼汉字输入并提供第三方汉字输入接口。
2、控件库提供了大量完整的控件支持。采用开放软件源代码策略。采用开放软件源代码策略。以开发源码的以开发源码的microwindowsmicrowindows和和fltkfltk为原为原形,在其基础上进行二次开发。形,在其基础上进行二次开发。采用应用反馈驱动的循序渐进的技术路采用应用反馈驱动的循序渐进的技术路线。根据应用的需求,对开发的系统不线。根据应用的需求,对开发的系统不断进行完善。断进行完善。窗口管理器是窗口系统的一部份,是一个可以控制窗口环境中窗口属性的客户程序。对创建的窗口可进行显示、隐藏、移动、重叠、滚动、改变大小等操作。窗口系统窗口系统窗口管理器窗口管理器窗口外观管理多任务管理标题栏按
3、钮装饰边框装饰托盘管理多任务支持任务间切换窗口操作管理最大化最小化拖拽移动改变尺寸关闭窗口应用程序应用程序事件驱动的系统其核心是一个事件循环。在该循环中,管理器选择接收其感兴趣的事件。例如客户窗口显示事件、容器窗口更新事件、客户窗口销毁事件、容器窗口上的鼠标点击事件和鼠标移动事件等。调用相应的处理函数 主事件循环是否容器窗口暴露事件是否窗口更新事件是否容器窗口上的鼠标点击事件是否容器窗口上的鼠标移动事件容器窗口暴露事件处理函数窗口更新事件处理函数容器窗口鼠标点击事件处理函数容器窗口鼠标移动事件处理函数是否出错开始取下一个事件否否否否出错处理函数是是是是是 桌面管理器以标准的图形交互环境为用户提
4、供了应用级以及部分系统级的管理控制,其主要功能包括应用程序的运行状态和显示状态管理以及桌面应用环境管理。窗口管理器窗口管理器桌面管理器桌面管理器应用程序管理应用环境管理菜单驱动图标驱动状态栏管理托盘管理背景管理菜单管理图标管理应用程序配置文件配置文件配置文件图形服务器 桌面管理器是一个事件驱动的系统,其核心是一个事件循环,在该循环中,管理器选择其感兴趣的事件,例如应用主窗口创建事件、应用数超额事件、应用退出事件等,然后调用相应的处理函数。TRAY事件CHLD_NEWMAIN事件CHLD_RAISE事件否 EXCEED事件托盘事件处理函数应用事件处理函数是窗口抬升事件函数应用数超额事件函数关机事件 否否否是是是是否下一事件类类WindowWindow风格的汉字输入。风格的汉字输入。支持全拼输入法。支持全拼输入法。支持中英文输入切换。支持中英文输入切换。支持多种中文输入法的切换。支持多种中文输入法的切换。支持全角半角切换。支持全角半角切换。支持中文特殊符号输入。支持中文特殊符号输入。支持基于源代码的第三方输入法接口。支持基于源代码的第三方输入法接口。基于XIM架构简介 CCGUI中文输入法的实现原理 直接实现与输入控件内部。由输入控件的事件处理程序处理输入法事件。输入控件键盘事件输入法程序事件处理程序图形服务器