This file is indexed.

/usr/include/lvtk-1/lvtk/gtkui.hpp is in lvtk-dev 1.2.0~dfsg0-1build1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
/*

    gtkui.hpp - Wrapper library to make it easier to write LV2 GtkUIs in C++

    Copyright (C) 2006-2008 Lars Luthman <lars.luthman@gmail.com>
    Modified by Dave Robillard, 2008 (URI map mixin)
    Modified by Michael Fisher, 2012 (LV2 rev3)

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 51 Franklin Street, Fifth Floor,
    Boston, MA  02110-1301  USA

 */

#ifndef LVTK_GTKUI_HPP
#define LVTK_GTKUI_HPP

#include <gtkmm.h>
#include <lvtk/ui.hpp>


namespace lvtk {


    /** The GtkUI Mixin.
        @headerfile lvtk/gtkui.hpp
        @ingroup guimixins
        @ingroup toolkitmixins
        @see The internal struct I for API details.
     */
    template <bool Required = true>
    struct GtkUI
    {
        /** @memberof GtkUI */
        template <class Derived>
        struct I : Extension<Required>
        {
            I() : p_container(NULL)
            {
                /* Call before anything else. Prevents glib warnings */
                Gtk::Main::init_gtkmm_internals();

                p_container = Gtk::manage (new Gtk::VBox());
            }

            ~I()
            {
                /** Container is managed, so don't delete it */
            }

            /** @skip */
            static void
            map_feature_handlers (FeatureHandlerMap& hmap)
            {
                /** Not required or implemented */
            }


            /**
               Sanity check the Mixin
               @return true if the container was created.
             */
            bool
            check_ok()
            {
                return (p_container != NULL);
            }

        protected:

            /**
               Get the underlying VBox container Object
               @return Underlying Gtk::HBox
             */
            Gtk::VBox& container()
            {
                return *p_container;
            }

            /**
               Add a main widget

               @param widget Gtkmm main UI widget
               @return void
               @remarks You can also use the container() method to acquire the
               underlying Gtk::VBox. Do this if you want to add widgets using
               pack_start and pack_end.
             */
            void add (Gtk::Widget& widget)
            {
                p_container->pack_start (widget);
            }

            /**
               Get the Gtk widget as an LV2UI_Widget
               @return The LV2UI_Widget pointer
             */
            LV2UI_Widget*
            widget()
            {
                return widget_cast (p_container->gobj());
            }

        private:
            /** The container object that harbors the main widget */
            Gtk::VBox *p_container;

        };
    };


} /* namespace lvtk */


#endif /* LVTK_GTKUI_HPP */