chromium view系统

一,控件树

rootview -> widget;

chromium的基础控件主要在:./ui/views/controls下;

二,skia

canvas:chromium中渲染抽象层

skia, chromium中2d渲染库;

gl-es,3d渲染库: 申请显存buffer,context, 绘制;

 

View Code
1 void RootView::OnPaint(gfx::Canvas* canvas)

 

三 ,layout & animal

animation即是重绘; 

 

四,事件分发

View Code
1 void RootView::OnMouseMoved(const ui::MouseEvent& event) {
2   View* v = GetEventHandlerForPoint(event.location());
3   // Find the first enabled view, or the existing move handler, whichever comes
4   // first.  The check for the existing handler is because if a view becomes
5   // disabled while handling moves, it's wrong to suddenly send ET_MOUSE_EXITED
6   // and ET_MOUSE_ENTERED events, because the mouse hasn't actually exited yet.
7   while (v && !v->enabled() && (v != mouse_move_handler_))
8     v = v->parent();
9 ...............

 

posted on 2013-04-10 11:39  Tigris  阅读(676)  评论(0)    收藏  举报