[原创]初谈BREW上构建小型WINDOW机制

原创 2004年12月29日 14:54:00

近日学习了BREW的开发后,目前自己范围内感觉:
没有方便的可以重用的代码
以及适合的窗口机制,每个工程都要重新开始
所有了这个设想,初步谈谈,抛砖引玉~~

关键字:BREW,可重用,C++,窗口管理,事件投递

例子工程: StockFA.sap

//------- brewwin.h  begin-------//
#include 
typedef unsigned int UINT;
inline void* operator new(UINT size)
{
	return MALLOC(size);
}
inline void operator delete(void * ptr)
{
	FREE(ptr);
}
inline void* operator new[](UINT size)
{
	return MALLOC(size);
}
inline void operator delete[](void * ptr)
{
        FREE(ptr);
}


class CWindow
{
    virtual FinalConstruct();//初始化
    virtual FinalRelease();//最后释放

    virtual Enable(boolean bEnable);//目前显示有效,否则释放数据和资源
    virtual ReDraw();
    virtual boolean OnEvent(AEEEvent evt, uint16 wParam, uint32 dwParam);
}

class CWndManage
{
    //管理窗口
    Add(CWindow * PWnd);
    Remove(CWindow * PWnd);
    RemoveAll();
    MoveToTop(CWindow * pWnd);
    GetTopWnd(CWindow ** ppWnd);

    //表现窗口
    Show(CWindow * pWnd ,uint16 nCmd);
    //事件处理
    boolean OnEvent(AEEEvent evt, uint16 wParam, uint32 dwParam);//转发事件到当前窗口

    //基础函数   
}

//array
template 
class CArray
{
    T* m_aT;
    int m_nSize;
    BOOL Add(T& t)
    //...注意分配内存用BREW环境的
}
//------- brewwin.h  end-------//


//-------具体工程的文件
class StockTrade : public CWindow
{
    //保存现场变量,用于恢复
    //虚函数的实现    
}

class StockFAApp : public CWndManage
{
    //适应BREW 的函数,分配和释放
    //。。。略
    //调用 CWndManage  的基本函数实现
    //其他特色的数据变量
}



初来铡刀,欢迎批评指教,不胜感激。。

唐建

 

BREW上构建小型WINDOW机制

例子工程: StockFA.sap源码: //------- brewwin.h begin-------// #include typedef unsigned int UINT; in...
  • w122079514
  • w122079514
  • 2010年06月28日 15:53
  • 401

从虚拟化谈起(一)

虚拟化技术指将一台计算机虚拟为多台虚拟计算机(简称虚拟机),即一台计算机上同时运行多个虚拟机。通过虚拟化层(又称为虚拟机监控器,VMM)的模拟,虚拟机的操作系统仍然认为自己是独占一个系统,因此虚拟机可...
  • wsfdl
  • wsfdl
  • 2014年03月20日 00:39
  • 2374

一个很菜鸟的问题(原创)

我是一个很业余的程序员啦,在做一些基于中间件平台的web系统开发,很多同学都问我一个很菜鸟的问题:jsp,javascript,asp它们的区别在哪里。当然我的回答也许不是很准确啦,不过我们大家一起来...
  • squirrelling
  • squirrelling
  • 2005年03月05日 00:20
  • 688

windows环境下安装类似liunx命令行工具和os上安装brew命令行工具 及简单使用

1.windows上安装命令行工具chocolatey 1)首先需要以管理员身份运行powershell更改powershell的执行策略 在powershell中执行 Set-ExecutionP...
  • xueyingqi
  • xueyingqi
  • 2016年03月31日 10:58
  • 3142

使用brew安装软件

brew 又叫Homebrew,是Mac OSX上的软件包管理工具,能在Mac中方便的安装软件或者卸载软件, 只需要一个命令, 非常方便 brew类似ubuntu系统下的apt-get的功能...
  • meegomeego
  • meegomeego
  • 2013年10月24日 11:04
  • 9993

搭建自己的小型监控系统——硬件准备

忙了大半月,我终于从一个计算机视觉的门外汉变成了门槛汉了。我搭建成功了自己的第一个硬件平台,并且使用软件测试了效果。下面我把自己的一点经验分享下,期望有几个刚想入门的同学有所帮助。     大概需要...
  • bendanban
  • bendanban
  • 2011年10月06日 10:50
  • 2562

声明:关于原创与转载的标注

声明:本blog多采用word发布blog,对转载文章因office未提供此选项,常自动发布为原创,尽管本人已经在文章醒目位置(头部或者尾部)标注转载位置,但仍不可避免对原创作者造成精神损失。本人会尽...
  • jo_say
  • jo_say
  • 2011年05月23日 13:44
  • 627

macbook 工作使用记(一)从安装brew开始

http://uecss.com/zsh-brew-autojump-plugins-shell-for-mac.html 安装brew 不用sudo权限,在home目录下直接安装: cd ~ r...
  • qinyushuang
  • qinyushuang
  • 2015年04月20日 22:07
  • 2868

[深入分析BREW机制]:BREW的类机制

 BREW的类机制 ——目录—— 引言 1、BREW类声明透析 2、BREW类实现透析 3、BREW类的创建过程 结语引言 Brew开发包由两部分组成:标准接口、助手函数。我们可以利用brew sdk...
  • chinesecoolman
  • chinesecoolman
  • 2008年10月11日 05:54
  • 1140

Linux中的小型数据库 SQLite3

数据库(SQLite) 数据库后缀 .db(data base) gcc时加 -lsqlite3 这些是小希归纳的SQLite的一些重要语句,与示例应用 如果想要进一步学习,大家可以去网上搜...
  • jerryandtony
  • jerryandtony
  • 2017年08月30日 13:22
  • 151
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[原创]初谈BREW上构建小型WINDOW机制
举报原因:
原因补充:

(最多只允许输入30个字)