EPUBCSSSink.h
Go to the documentation of this file.
00001 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
00002 /*
00003  * This file is part of the libepubgen project.
00004  *
00005  * This Source Code Form is subject to the terms of the Mozilla Public
00006  * License, v. 2.0. If a copy of the MPL was not distributed with this
00007  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
00008  */
00009 
00010 #ifndef INCLUDED_EPUBCSSSINK_H
00011 #define INCLUDED_EPUBCSSSINK_H
00012 
00013 #include <utility>
00014 #include <vector>
00015 
00016 #include <librevenge/librevenge.h>
00017 
00018 #include <libepubgen/libepubgen.h>
00019 
00020 namespace libepubgen
00021 {
00022 
00023 class EPUBCSSSink
00024 {
00025   typedef std::vector<std::pair<librevenge::RVNGString, librevenge::RVNGPropertyList> > Rules_t;
00026 
00027 public:
00028   EPUBCSSSink();
00029 
00030   void insertRule(const librevenge::RVNGString &selector, const librevenge::RVNGPropertyList &properties);
00031 
00032   void writeTo(EPUBPackage &package, const char *name);
00033 
00034 private:
00035   Rules_t m_rules;
00036 };
00037 
00038 }
00039 
00040 #endif // INCLUDED_EPUBCSSSINK_H
00041 
00042 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */