~unity-team/nux/nux.redirected-views

« back to all changes in this revision

Viewing changes to Nux/BasicView.h

  • Committer: Tarmac
  • Author(s): Jay Taoko
  • Date: 2012-09-18 14:21:37 UTC
  • mfrom: (660.1.2 nux.dash-to-preview)
  • Revision ID: tarmac-20120918142137-uvz785kmnt2s40qy
This branch introduces "Redirected Views" in Nux. Redirected views allows a view to be rendered inside its own texture and that texture is latter composited inside the main rendering.
This branch contains the required changes for redirected views. The opportunty was also taken to fix minor issues and introduce API changes.

== Core of the Redirected View
  Nux/Area.cpp
  Nux/Area.h
  Nux/Layout.cpp
  Nux/Layout.h
  Nux/View.cpp
  Nux/View.h

== Fixed ClientArea to work with RedirectedViews
  Nux/ClientArea.cpp
  Nux/ClientArea.h

== Concrete implementation of a view to replace InputArea in some locations
  Nux/BasicView.cpp
  Nux/BasicView.h

== Nux.h contains the Feature.h file of Nux
  Nux/Nux.h

== API change to frame buffer object architecture
  NuxGraphics/IOpenGLFrameBufferObject.cpp
  NuxGraphics/IOpenGLFrameBufferObject.h

== Added InitSlTexturePremultiplyShader shader
  NuxGraphics/RenderingPipeGLSL.cpp
  NuxGraphics/GraphicsEngine.cpp
  NuxGraphics/GraphicsEngine.h
  NuxGraphics/RenderingPipeAsm.cpp

== Fixed texture inversion
  NuxGraphics/RenderingPipe.cpp. Fixes: https://bugs.launchpad.net/bugs/1049593. Approved by Neil J. Patel.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * Copyright 2012 Inalogic Inc.
 
3
 *
 
4
 * This program is free software: you can redistribute it and/or modify it
 
5
 * under the terms of the GNU General Public License version 3, as published
 
6
 * by the  Free Software Foundation.
 
7
 *
 
8
 * This program is distributed in the hope that it will be useful, but
 
9
 * WITHOUT ANY WARRANTY; without even the implied warranties of
 
10
 * MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR
 
11
 * PURPOSE.  See the GNU General Public License for more details.
 
12
 *
 
13
 * You should have received a copy of the GNU General Public License
 
14
 * version 3 along with this program.  If not, see
 
15
 * <http://www.gnu.org/licenses/>
 
16
 *
 
17
 * Authored by: Jay Taoko <jaytaoko@inalogic.com>
 
18
 *
 
19
 */
 
20
 
 
21
#ifndef BASIC_VIEW_H
 
22
#define BASIC_VIEW_H
 
23
 
 
24
 
 
25
namespace nux {
 
26
 
 
27
//! A very basic View object with no rendering.
 
28
class BasicView: public nux::View
 
29
{
 
30
  NUX_DECLARE_OBJECT_TYPE(BasicView, View);
 
31
public:
 
32
  BasicView(NUX_FILE_LINE_PROTO);
 
33
  ~BasicView();
 
34
 
 
35
  
 
36
protected:
 
37
  void Draw(nux::GraphicsEngine& graphics_engine, bool force_draw);
 
38
};
 
39
 
 
40
}
 
41
#endif // BASIC_VIEW_H
 
42