aboutsummaryrefslogtreecommitdiff
path: root/Gem/develop/include/Gem/Base/TextBase.h
diff options
context:
space:
mode:
authorTravis CI <zmoelnig@travis-ci.umlaeute.mur.at>2015-03-17 22:38:45 +0000
committerTravis CI <zmoelnig@travis-ci.umlaeute.mur.at>2015-03-17 22:38:45 +0000
commit356f94fc355f36c16e48555d10c2377dff4b7554 (patch)
tree4b825dc642cb6eb9a060e54bf8d69288fbee4904 /Gem/develop/include/Gem/Base/TextBase.h
parent5c694f159b012d1d94bf15bfe580dec52e4fe797 (diff)
Gem 096ed6ef786b7a9d6e11a437ff8526619c89a1fd osx/x86_64
built 'coverity_scan:096ed6ef786b7a9d6e11a437ff8526619c89a1fd' for osx/x86_64
Diffstat (limited to 'Gem/develop/include/Gem/Base/TextBase.h')
-rw-r--r--Gem/develop/include/Gem/Base/TextBase.h245
1 files changed, 0 insertions, 245 deletions
diff --git a/Gem/develop/include/Gem/Base/TextBase.h b/Gem/develop/include/Gem/Base/TextBase.h
deleted file mode 100644
index f65204a..0000000
--- a/Gem/develop/include/Gem/Base/TextBase.h
+++ /dev/null
@@ -1,245 +0,0 @@
-/*-----------------------------------------------------------------
- LOG
- GEM - Graphics Environment for Multimedia
-
- A text
-
- Copyright (c) 1997-1999 Mark Danks. mark@danks.org
- Copyright (c) Günther Geiger. geiger@epy.co.at
- Copyright (c) 2001-2011 IOhannes m zmölnig. forum::für::umläute. IEM. zmoelnig@iem.at
- Copyright (c) 2005 Georg Holzmann <grh@mur.at>
- For information on usage and redistribution, and for a DISCLAIMER OF ALL
- WARRANTIES, see the file, "GEM.LICENSE.TERMS" in this distribution.
-
- -----------------------------------------------------------------*/
-
-#ifndef _INCLUDE__GEM_BASE_TEXTBASE_H_
-#define _INCLUDE__GEM_BASE_TEXTBASE_H_
-
-
-#ifdef _WIN32
-# pragma warning( disable : 4786 )
-# pragma warning( disable : 4788 )
-#endif
-
-#include "Gem/GemConfig.h"
-
-#include "RTE/Outlet.h"
-#include "Base/GemBase.h"
-
-#include <vector>
-#include <string>
-
-#ifdef FTGL
-# define FONT_SCALE 0.2/3.0
-# ifdef HAVE_FTGL_FTGL_H
-# include "FTGL/ftgl.h"
-# else
-# include "FTFont.h"
-# endif
-#else
-# define FONT_SCALE 1.0
-#endif
-
-using std::vector;
-using std::string;
-using std::wstring;
-
-/*-----------------------------------------------------------------
- -------------------------------------------------------------------
- CLASS
- TextBase
-
- Base class for text objects
-
- DESCRIPTION
-
- "ft1" - The font size
- "text" - The text to draw
-
- -----------------------------------------------------------------*/
-class GEM_EXTERN TextBase : public GemBase
-{
- CPPEXTERN_HEADER(TextBase, GemBase);
-
- public:
-
- //////////
- // Constructor with args
- TextBase(int argc, t_atom *argv);
-
-
- protected:
-
- //////////
- // Destructor
- virtual ~TextBase();
-
- //////////
- // Do the rendering
- virtual void render(GemState*);
-
- //////////
- // break a string according to '\n'
- virtual void breakLine(wstring line);
-
- //-- moocow
- //////////
- // Set the text string from an ASCII list
- virtual void stringMess(int argc, t_atom *argv);
- void stringMess(t_symbol*, int argc, t_atom*argv) { stringMess(argc, argv); }
- //-- /moocow
-
- //////////
- // Set the text string
- virtual void textMess(int argc, t_atom *argv);
- void textMess(t_symbol*, int argc, t_atom*argv) { textMess(argc, argv); }
-
- //////////
- // The font to use
- virtual void fontNameMess(const std::string filename);
-
- //////////
- // set line distance
- virtual void linedistMess(float dist);
-
- //////////
- // Set the font size
- virtual void setFontSize(float size);
- virtual void setFontSize();
-
- //////////
- // Set the precision for rendering
- virtual void setPrecision(float prec);
-
- //////////
- // The different types of justification
- enum JustifyWidth { LEFT, RIGHT, CENTER, BASEW };
- enum JustifyHeight { BOTTOM, TOP, MIDDLE, BASEH };
- enum JustifyDepth { FRONT, BACK, HALFWAY, BASED };
-
- //////////
- // Set the justification
- virtual void setJustification(JustifyWidth wType);
- virtual void setJustification(JustifyWidth wType, JustifyHeight hType);
- virtual void setJustification(JustifyWidth wType, JustifyHeight hType, JustifyDepth dType);
-
- typedef struct Justification_ {
- float width;
- float height;
- float depth;
- float scale;
- } Justification;
- //////////
- // do the justification
- // x1,...,z2 just defines the bounding box of the rendered string.
- // y_offset is the offset of the current line
- virtual Justification justifyFont(float x1, float y1, float z1,
- float x2, float y2, float z2, float y_offset=0);
-
-
- //-----------------------------------
- // GROUP: Member variables
- //-----------------------------------
-
- //////////
- // The text to display
- // (one entry for each line)
- vector<wstring> m_theText;
-
- //////////
- // distance between the lines
- // (1 = 1 line, 0.5 = 0.5 lines, ...)
- float m_dist;
-
- //////////
- // vector with the offset
- // offset there individual lines
- vector<float> m_lineDist;
-
- //////////
- // Do we have a valid font?
- int m_valid;
-
- //////////
- // The font fize
- float m_fontSize;
-
- //////////
- // The font depth (only for extruded fonts)
- float m_fontDepth;
-
- //////////
- // The rendering precision
- float m_precision;
-
- //////////
- // The width justification
- JustifyWidth m_widthJus;
-
- //////////
- // The height justification
- JustifyHeight m_heightJus;
-
- //////////
- // The depth justification
- JustifyDepth m_depthJus;
-
- //////////
- // The inlet
- t_inlet *m_inlet;
-
-
- //////////
- // The default font name
- static std::string DEFAULT_FONT;
-
- //////////
- // get the bounding-box for the current text/font/...
- void getBBox(float&x0,float&y0,float&z0, float&x1,float&y1,float&z1);
- //////////
- // output information about the current font/text
- // including the bbox
- void fontInfo(void);
- // an outlet to send font/text/...-info back to the patch
- gem::RTE::Outlet m_infoOut;
-
-
- //////////
- // The font structure
-#ifdef FTGL
- FTFont *m_font;
- /* this should delete (m_font) if it is notnull and recreate it.
- * a pointer to the new structure is returned (and is set to m_font).
- * if creation fails, the font is cleaned-up and NULL is returned
- */
- virtual FTFont* makeFont(const char*fontname)=0;
-
- /* this is just handy to reload a font */
- t_symbol* m_fontname;
- /* on starting to render, we reload the font, to make sure it is there
- * this rids us of having to reload the font by hand every time the rendering is restarted
- */
- virtual void startRendering(void);
-
- /* render one line of the text */
- virtual void renderLine(const char*line,float dist);
- virtual void renderLine(const wchar_t*line,float dist);
-#endif
-
- private:
-
- ///////////
- // helpers:
-
- ///////////
- // helper to make the
- // line distance vector
- void makeLineDist();
-
- //////////
- // Static member functions
- static void justifyMessCallback(void *data, t_symbol *, int, t_atom*);
-};
-
-#endif // for header file