libgtksourceviewmm: sourcetag.h Source File

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

# sourcetag.h

Go to the documentation of this file.

    00001 // -*- c++ -*-
    00002 // Generated by gtkmmproc -- DO NOT MODIFY!
    00003 #ifndef _GTKSOURCEVIEWMM_SOURCETAG_H
    00004 #define _GTKSOURCEVIEWMM_SOURCETAG_H
    00005
    00006
    00007 #include <glibmm.h>
    00008
    00009 /* sourcetag.hg
    00010  *
    00011  *
    00012  * Copyright (C) 2004-2005 Jae Jang
    00013  * Copyright (C) 2005-2006 Rob Page
    00014  * Copyright (C)2006 Dodji Seketeli
    00015  *
    00016  * This library is free software; you can redistribute it and/or
    00017  * modify it under the terms of the GNU Library General Public
    00018  * License as published by the Free Software Foundation; either
    00019  * version 2 of the License, or (at your option) any later version.
    00020  *
    00021  * This library is distributed in the hope that it will be useful,
    00022  * but WITHOUT ANY WARRANTY; without even the implied warranty of
    00023  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    00024  * Library General Public License for more details.
    00025  *
    00026  * You should have received a copy of the GNU Library General Public
    00027  * License along with this library; if not, write to the Free
    00028  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
    00029  */
    00030
    00034
    00035 #include <glibmm/slisthandle.h>
    00036 #include <gtkmm/textbuffer.h>
    00037 #include <gtksourceviewmm/sourcetagstyle.h>
    00038 #include <gtksourceview/gtksourcetag.h>
    00039
    00040
    00047
    00048
    00049 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00050 typedef struct _GtkSourceTag GtkSourceTag;
    00051 typedef struct _GtkSourceTagClass GtkSourceTagClass;
    00052 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
    00053
    00054
    00055 namespace gtksourceview
    00056 { class SourceTag_Class; } // namespace gtksourceview
    00057 namespace gtksourceview
    00058 {
    00067
    00068 class SourceTag : public Gtk::TextTag
    00069 {
    00070
    00071 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00072
    00073 public:
    00074   typedef SourceTag CppObjectType;
    00075   typedef SourceTag_Class CppClassType;
    00076   typedef GtkSourceTag BaseObjectType;
    00077   typedef GtkSourceTagClass BaseClassType;
    00078
    00079 private:  friend class SourceTag_Class;
    00080   static CppClassType sourcetag_class_;
    00081
    00082 private:
    00083   // noncopyable
    00084   SourceTag(const SourceTag&);
    00085   SourceTag& operator=(const SourceTag&);
    00086
    00087 protected:
    00088   explicit SourceTag(const Glib::ConstructParams& construct_params);
    00089   explicit SourceTag(GtkSourceTag* castitem);
    00090
    00091 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
    00092
    00093 public:
    00094   virtual ~SourceTag();
    00095
    00096 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00097   static GType get_type()      G_GNUC_CONST;
    00098   static GType get_base_type() G_GNUC_CONST;
    00099 #endif
    00100
    00102   GtkSourceTag*       gobj()       { return reinterpret_cast<GtkSourceTag*>(gobject_); }
    00103
    00105   const GtkSourceTag* gobj() const { return reinterpret_cast<GtkSourceTag*>(gobject_); }
    00106
    00108   GtkSourceTag* gobj_copy();
    00109
    00110 private:
    00111
    00112
    00113 protected:
    00114     SourceTag();
    00115
    00116 public:
    00117
    00130     static Glib::RefPtr<SourceTag> create_syntax_tag (const Glib::ustring &a_id,
    00131                                                       const Glib::ustring &a_name,
    00132                                                       const Glib::ustring &a_pat_start,
    00133                                                       const Glib::ustring &a_pat_end);
    00134
    00135
    00143     static Glib::RefPtr<SourceTag> create_pattern_tag (const Glib::ustring &a_id,
    00144                                                        const Glib::ustring &a_name,
    00145                                                        const Glib::ustring &a_pattern);
    00146
    00147
    00166     static Glib::RefPtr<SourceTag> create_keyword_list_tag (const Glib::ustring &a_id,
    00167                                                             const Glib::ustring &a_name,
    00168                                                             const Glib::SListHandle<const Glib::ustring> &a_keywords,
    00169                                                             bool a_case_sensitive=true,
    00170                                                             bool a_match_empty_string_at_beginning=true,
    00171                                                             bool a_match_empty_string_at_end=true,
    00172                                                             const Glib::ustring &a_beginning_regex="",
    00173                                                             const Glib::ustring &a_end_regex="") ;
    00174
    00175
    00184     static Glib::RefPtr<SourceTag> create_line_comment_tag_new (const Glib::ustring &a_id,
    00185                                                                 const Glib::ustring &a_name,
    00186                                                                 const Glib::ustring &a_pattern_start) ;
    00187
    00188
    00197     static Glib::RefPtr<SourceTag> create_string_tag_new (const Glib::ustring &a_id,
    00198                                                           const Glib::ustring &a_name,
    00199                                                           const Glib::ustring &a_pattern_start,
    00200                                                           const Glib::ustring &a_pattern_end,
    00201                                                           bool a_end_at_line_end=true) ;
    00202
    00203
    00207
    00208   Glib::ustring get_id() const;
    00209
    00213
    00214   SourceTagStyle get_style() const;
    00215
    00219
    00220   void set_style(const SourceTagStyle& a_style);
    00221
    00222
    00223 public:
    00224
    00225 public:
    00226   //C++ methods used to invoke GTK+ virtual functions:
    00227 #ifdef GLIBMM_VFUNCS_ENABLED
    00228 #endif //GLIBMM_VFUNCS_ENABLED
    00229
    00230 protected:
    00231   //GTK+ Virtual Functions (override these to change behaviour):
    00232 #ifdef GLIBMM_VFUNCS_ENABLED
    00233 #endif //GLIBMM_VFUNCS_ENABLED
    00234
    00235   //Default Signal Handlers::
    00236 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
    00237 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
    00238
    00239
    00240 };//end class SourceTag
    00241
    00242 }//end namespace gtksourceview
    00243
    00244
    00245 namespace Glib
    00246 {
    00255   Glib::RefPtr<gtksourceview::SourceTag> wrap(GtkSourceTag* object, bool take_copy = false);
    00256 }
    00257
    00258
    00259 #endif /* _GTKSOURCEVIEWMM_SOURCETAG_H */
    00260