]> git.sesse.net Git - vlc/blobdiff - modules/gui/skins2/parser/builder.hpp
Make Zorglub less unhappy
[vlc] / modules / gui / skins2 / parser / builder.hpp
index b34843fd79f155733516d37fa2b865ceccb8f495..999c46e97f8764045438f20420aebbd68fcf5f5b 100644 (file)
@@ -1,8 +1,8 @@
 /*****************************************************************************
  * builder.hpp
  *****************************************************************************
- * Copyright (C) 2003 VideoLAN
- * $Id: builder.hpp,v 1.3 2004/01/25 11:44:19 asmax Exp $
+ * Copyright (C) 2003 the VideoLAN team
+ * $Id$
  *
  * Authors: Cyril Deguet     <asmax@via.ecp.fr>
  *          Olivier Teulière <ipkiss@via.ecp.fr>
@@ -37,7 +37,6 @@
 
 #include <string>
 #include <list>
-#include <set>
 #include <map>
 
 class Theme;
@@ -48,7 +47,7 @@ class Builder: public SkinObject
 {
     public:
         Builder( intf_thread_t *pIntf, const BuilderData &rData );
-        virtual ~Builder() {}
+        virtual ~Builder();
 
         /// Create a Theme object, ready to use.
         /// Return NULL in case of problem
@@ -64,11 +63,9 @@ class Builder: public SkinObject
         /// Theme under construction
         Theme *m_pTheme;
 
-        /// Set of used id
-        set<string> m_idSet;
-
         void addTheme( const BuilderData::Theme &rData );
         void addBitmap( const BuilderData::Bitmap &rData );
+        void addBitmapFont( const BuilderData::BitmapFont &rData );
         void addFont( const BuilderData::Font &rData );
         void addWindow( const BuilderData::Window &rData );
         void addLayout( const BuilderData::Layout &rData );
@@ -80,21 +77,22 @@ class Builder: public SkinObject
         void addRadialSlider( const BuilderData::RadialSlider &rData );
         void addSlider( const BuilderData::Slider &rData );
         void addList( const BuilderData::List &rData );
+        void addVideo( const BuilderData::Video &rData );
 
-        /// Generate a new id
-        const string generateId() const;
-
-        /// Check if the id is unique, and if not generate a new one
-        const string uniqueId( const string &id );
-
-        /// Compute the position of a control
+       /// Compute the position of a control
         const Position makePosition( const string &rLeftTop,
                                      const string &rRightBottom,
                                      int xPos, int yPos, int width, int height,
                                      const Box &rBox ) const;
 
+        /// Get a font from its id
+        GenericFont *getFont( const string &fontId );
+
         /// Function to parse "points" tags
         Bezier *getPoints( const char *pTag ) const;
+
+        /// Image handler (used to load image files)
+        image_handler_t *m_pImageHandler;
 };
 
 #endif