------------------------------------------------------------------------------
--                                                                          --
--                An Ada2005 binding to the Qt C++ framework                --
--                                                                          --
------------------------------------------------------------------------------
--                                                                          --
-- Copyright © 2008 Vadim Godunko <vgodunko@gmail.com>                      --
--                                                                          --
-- QtAda is free software;  you can  redistribute it and/or modify it under --
-- terms of the  GNU General Public License as published  by the Free Soft- --
-- ware  Foundation;  either version 2,  or (at your option) any later ver- --
-- sion. QtAda is distributed in the hope that it will be useful, but WITH- --
-- OUT 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 distributed with QtAda;  see file COPYING.  If not, write --
-- to  the  Free Software Foundation,  51  Franklin  Street,  Fifth  Floor, --
-- Boston, MA 02110-1301, USA.                                              --
--                                                                          --
-- As a special exception,  if other files  instantiate  generics from this --
-- unit, or you link  this unit with other files  to produce an executable, --
-- this  unit  does not  by itself cause  the resulting  executable  to  be --
-- covered  by the  GNU  General  Public  License.  This exception does not --
-- however invalidate  any other reasons why  the executable file  might be --
-- covered by the  GNU Public License.                                      --
--                                                                          --
------------------------------------------------------------------------------
--    This file has been generated automatically. Please don't edit it.     --
------------------------------------------------------------------------------
with Qt4.Abstract_Item_Models;
with Qt4.Action_Events;
with Qt4.Child_Events;
with Qt4.Close_Events;
with Qt4.Context_Menu_Events;
with Qt4.Drag_Enter_Events;
with Qt4.Drag_Leave_Events;
with Qt4.Drag_Move_Events;
with Qt4.Drop_Events;
with Qt4.Events;
with Qt4.Focus_Events;
with Qt4.Hide_Events;
with Qt4.Input_Method_Events;
with Qt4.Key_Events;
with Qt4.Mouse_Events;
with Qt4.Move_Events;
with Qt4.Objects;
with Qt4.Paint_Events;
with Qt4.Resize_Events;
with Qt4.Show_Events;
with Qt4.Tablet_Events;
with Qt4.Timer_Events;
with Qt4.Wheel_Events;
with Qt4.Widgets;
with Qt_Ada.Internals.Events;
with Qt_Ada.Internals.Object_Registry;
pragma Elaborate (Qt_Ada.Internals.Object_Registry);
with Qt_Ada.Internals.Objects;
with Qt_Ada.Internals.Objects.Object_Utilities;

package body Qt4.Header_Views.Directors is

   function qt_metacall_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Kind : Qt4.Meta_Objects.Call;
     Id   : Qt4.Q_Integer;
     Args : Qt4.Address_Pointer)
       return Qt4.Q_Integer;
   pragma Import (C, qt_metacall_wrapper,
                  "__Qt4Ada_QHeaderView_qt_metacall_wrapper");

   function qt_metacast_wrapper
    (Self  : not null access Qt_Ada.Internals.Objects.QObject;
     Class : Interfaces.C.char_array)
       return System.Address;
   pragma Import (C, qt_metacast_wrapper,
                  "__Qt4Ada_QHeaderView_qt_metacast_wrapper");

   procedure geometriesChanged_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject);
   pragma Import (C, geometriesChanged_0_wrapper,
                     "__Qt4Ada_QHeaderView_geometriesChanged_0_wrapper");

   procedure sectionAutoResize_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Logical_Index : Qt4.Q_Integer;
     Mode : Qt4.Header_Views.Header_View_Resize_Mode);
   pragma Import (C, sectionAutoResize_0_wrapper,
                     "__Qt4Ada_QHeaderView_sectionAutoResize_0_wrapper");

   procedure sectionClicked_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Logical_Index : Qt4.Q_Integer);
   pragma Import (C, sectionClicked_0_wrapper,
                     "__Qt4Ada_QHeaderView_sectionClicked_0_wrapper");

   procedure sectionCountChanged_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Old_Count : Qt4.Q_Integer;
     New_Count : Qt4.Q_Integer);
   pragma Import (C, sectionCountChanged_0_wrapper,
                     "__Qt4Ada_QHeaderView_sectionCountChanged_0_wrapper");

   procedure sectionDoubleClicked_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Logical_Index : Qt4.Q_Integer);
   pragma Import (C, sectionDoubleClicked_0_wrapper,
                     "__Qt4Ada_QHeaderView_sectionDoubleClicked_0_wrapper");

   procedure sectionEntered_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Logical_Index : Qt4.Q_Integer);
   pragma Import (C, sectionEntered_0_wrapper,
                     "__Qt4Ada_QHeaderView_sectionEntered_0_wrapper");

   procedure sectionHandleDoubleClicked_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Logical_Index : Qt4.Q_Integer);
   pragma Import (C, sectionHandleDoubleClicked_0_wrapper,
                     "__Qt4Ada_QHeaderView_sectionHandleDoubleClicked_0_wrapper");

   procedure sectionMoved_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Logical_Index : Qt4.Q_Integer;
     Old_Visual_Index : Qt4.Q_Integer;
     New_Visual_Index : Qt4.Q_Integer);
   pragma Import (C, sectionMoved_0_wrapper,
                     "__Qt4Ada_QHeaderView_sectionMoved_0_wrapper");

   procedure sectionPressed_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Logical_Index : Qt4.Q_Integer);
   pragma Import (C, sectionPressed_0_wrapper,
                     "__Qt4Ada_QHeaderView_sectionPressed_0_wrapper");

   procedure sectionResized_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Logical_Index : Qt4.Q_Integer;
     Old_Size : Qt4.Q_Integer;
     New_Size : Qt4.Q_Integer);
   pragma Import (C, sectionResized_0_wrapper,
                     "__Qt4Ada_QHeaderView_sectionResized_0_wrapper");

   procedure sortIndicatorChanged_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Logical_Index : Qt4.Q_Integer;
     Order : Qt4.Sort_Order);
   pragma Import (C, sortIndicatorChanged_0_wrapper,
                     "__Qt4Ada_QHeaderView_sortIndicatorChanged_0_wrapper");

   function sectionSizeFromContents_0_dispatch
    (Self : not null Qt_Ada.Internals.Objects.Q_Object_Base_Access;
     Logical_Index : Qt4.Q_Integer)
       return not null access Qt4.Sizes.Internals.QSize;
   pragma Export (C, sectionSizeFromContents_0_dispatch,
                     "__Qt4Ada_QHeaderView_sectionSizeFromContents_0_dispatch");
   pragma Warnings (Off, sectionSizeFromContents_0_dispatch);
   --  GCC GNAT 4.3.0: suppress warning
   --  is a tagged type which does not correspond to any C type

   procedure sectionSizeFromContents_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Logical_Index : Qt4.Q_Integer;
     Returns : not null access Qt4.Sizes.Internals.QSize);
   pragma Import (C, sectionSizeFromContents_0_wrapper,
                     "__Qt4Ada_QHeaderView_sectionSizeFromContents_0_wrapper");

   procedure reset_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject);
   pragma Import (C, reset_0_wrapper,
                     "__Qt4Ada_QHeaderView_reset_0_wrapper");

   procedure setModel_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Model : not null access Qt_Ada.Internals.Objects.QObject);
   pragma Import (C, setModel_0_wrapper,
                     "__Qt4Ada_QHeaderView_setModel_0_wrapper");

   procedure sizeHint_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Returns : not null access Qt4.Sizes.Internals.QSize);
   pragma Import (C, sizeHint_0_wrapper,
                     "__Qt4Ada_QHeaderView_sizeHint_0_wrapper");

   procedure currentChanged_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Current : not null access constant Qt4.Model_Indices.Internals.QModelIndex;
     Previous : not null access constant Qt4.Model_Indices.Internals.QModelIndex);
   pragma Import (C, currentChanged_0_wrapper,
                     "__Qt4Ada_QHeaderView_currentChanged_0_wrapper");

   procedure dataChanged_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Top_Left : not null access constant Qt4.Model_Indices.Internals.QModelIndex;
     Bottom_Right : not null access constant Qt4.Model_Indices.Internals.QModelIndex);
   pragma Import (C, dataChanged_0_wrapper,
                     "__Qt4Ada_QHeaderView_dataChanged_0_wrapper");

   function event_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     E : not null access Qt_Ada.Internals.Events.QEvent)
       return Qt4.bool;
   pragma Import (C, event_0_wrapper,
                     "__Qt4Ada_QHeaderView_event_0_wrapper");

   function horizontalOffset_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject)
       return Qt4.Q_Integer;
   pragma Import (C, horizontalOffset_0_wrapper,
                     "__Qt4Ada_QHeaderView_horizontalOffset_0_wrapper");

   procedure indexAt_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Point : not null access constant Qt4.Points.Internals.QPoint;
     Returns : not null access Qt4.Model_Indices.Internals.QModelIndex);
   pragma Import (C, indexAt_0_wrapper,
                     "__Qt4Ada_QHeaderView_indexAt_0_wrapper");

   function isIndexHidden_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Index : not null access constant Qt4.Model_Indices.Internals.QModelIndex)
       return Qt4.bool;
   pragma Import (C, isIndexHidden_0_wrapper,
                     "__Qt4Ada_QHeaderView_isIndexHidden_0_wrapper");

   procedure paintEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, paintEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_paintEvent_0_wrapper");

   procedure mouseDoubleClickEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, mouseDoubleClickEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_mouseDoubleClickEvent_0_wrapper");

   procedure mouseMoveEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, mouseMoveEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_mouseMoveEvent_0_wrapper");

   procedure mousePressEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, mousePressEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_mousePressEvent_0_wrapper");

   procedure mouseReleaseEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, mouseReleaseEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_mouseReleaseEvent_0_wrapper");

   procedure rowsInserted_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Parent : not null access constant Qt4.Model_Indices.Internals.QModelIndex;
     Start : Qt4.Q_Integer;
     Stop : Qt4.Q_Integer);
   pragma Import (C, rowsInserted_0_wrapper,
                     "__Qt4Ada_QHeaderView_rowsInserted_0_wrapper");

   procedure scrollContentsBy_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Dx : Qt4.Q_Integer;
     Dy : Qt4.Q_Integer);
   pragma Import (C, scrollContentsBy_0_wrapper,
                     "__Qt4Ada_QHeaderView_scrollContentsBy_0_wrapper");

   procedure scrollTo_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Index : not null access constant Qt4.Model_Indices.Internals.QModelIndex;
     Hint : Qt4.Abstract_Item_Views.Abstract_Item_View_Scroll_Hint);
   pragma Import (C, scrollTo_0_wrapper,
                     "__Qt4Ada_QHeaderView_scrollTo_0_wrapper");

   function verticalOffset_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject)
       return Qt4.Q_Integer;
   pragma Import (C, verticalOffset_0_wrapper,
                     "__Qt4Ada_QHeaderView_verticalOffset_0_wrapper");

   function viewportEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent)
       return Qt4.bool;
   pragma Import (C, viewportEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_viewportEvent_0_wrapper");

   procedure visualRect_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Index : not null access constant Qt4.Model_Indices.Internals.QModelIndex;
     Returns : not null access Qt4.Rects.Internals.QRect);
   pragma Import (C, visualRect_0_wrapper,
                     "__Qt4Ada_QHeaderView_visualRect_0_wrapper");

   procedure visualRegionForSelection_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Selection : not null access constant Qt4.Item_Selections.Thin.QItemSelection;
     Returns : not null access Qt4.Regions.Internals.QRegion);
   pragma Import (C, visualRegionForSelection_0_wrapper,
                     "__Qt4Ada_QHeaderView_visualRegionForSelection_0_wrapper");

   procedure activated_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Index : not null access constant Qt4.Model_Indices.Internals.QModelIndex);
   pragma Import (C, activated_0_wrapper,
                     "__Qt4Ada_QHeaderView_activated_0_wrapper");

   procedure clicked_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Index : not null access constant Qt4.Model_Indices.Internals.QModelIndex);
   pragma Import (C, clicked_0_wrapper,
                     "__Qt4Ada_QHeaderView_clicked_0_wrapper");

   procedure doubleClicked_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Index : not null access constant Qt4.Model_Indices.Internals.QModelIndex);
   pragma Import (C, doubleClicked_0_wrapper,
                     "__Qt4Ada_QHeaderView_doubleClicked_0_wrapper");

   procedure entered_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Index : not null access constant Qt4.Model_Indices.Internals.QModelIndex);
   pragma Import (C, entered_0_wrapper,
                     "__Qt4Ada_QHeaderView_entered_0_wrapper");

   procedure pressed_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Index : not null access constant Qt4.Model_Indices.Internals.QModelIndex);
   pragma Import (C, pressed_0_wrapper,
                     "__Qt4Ada_QHeaderView_pressed_0_wrapper");

   procedure viewportEntered_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject);
   pragma Import (C, viewportEntered_0_wrapper,
                     "__Qt4Ada_QHeaderView_viewportEntered_0_wrapper");

   procedure dirtyRegionOffset_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Returns : not null access Qt4.Points.Internals.QPoint);
   pragma Import (C, dirtyRegionOffset_0_wrapper,
                     "__Qt4Ada_QHeaderView_dirtyRegionOffset_0_wrapper");

   procedure executeDelayedItemsLayout_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject);
   pragma Import (C, executeDelayedItemsLayout_0_wrapper,
                     "__Qt4Ada_QHeaderView_executeDelayedItemsLayout_0_wrapper");

   procedure scheduleDelayedItemsLayout_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject);
   pragma Import (C, scheduleDelayedItemsLayout_0_wrapper,
                     "__Qt4Ada_QHeaderView_scheduleDelayedItemsLayout_0_wrapper");

   procedure scrollDirtyRegion_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Dx : Qt4.Q_Integer;
     Dy : Qt4.Q_Integer);
   pragma Import (C, scrollDirtyRegion_0_wrapper,
                     "__Qt4Ada_QHeaderView_scrollDirtyRegion_0_wrapper");

   procedure setDirtyRegion_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Region : not null access constant Qt4.Regions.Internals.QRegion);
   pragma Import (C, setDirtyRegion_0_wrapper,
                     "__Qt4Ada_QHeaderView_setDirtyRegion_0_wrapper");

   procedure commitData_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Editor : not null access Qt_Ada.Internals.Objects.QObject);
   pragma Import (C, commitData_0_wrapper,
                     "__Qt4Ada_QHeaderView_commitData_0_wrapper");

   procedure editorDestroyed_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Editor : not null access Qt_Ada.Internals.Objects.QObject);
   pragma Import (C, editorDestroyed_0_wrapper,
                     "__Qt4Ada_QHeaderView_editorDestroyed_0_wrapper");

   procedure rowsAboutToBeRemoved_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Parent : not null access constant Qt4.Model_Indices.Internals.QModelIndex;
     Start : Qt4.Q_Integer;
     Stop : Qt4.Q_Integer);
   pragma Import (C, rowsAboutToBeRemoved_0_wrapper,
                     "__Qt4Ada_QHeaderView_rowsAboutToBeRemoved_0_wrapper");

   procedure selectionChanged_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Selected : not null access constant Qt4.Item_Selections.Thin.QItemSelection;
     Deselected : not null access constant Qt4.Item_Selections.Thin.QItemSelection);
   pragma Import (C, selectionChanged_0_wrapper,
                     "__Qt4Ada_QHeaderView_selectionChanged_0_wrapper");

   procedure dragEnterEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, dragEnterEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_dragEnterEvent_0_wrapper");

   procedure dragLeaveEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, dragLeaveEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_dragLeaveEvent_0_wrapper");

   procedure dragMoveEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, dragMoveEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_dragMoveEvent_0_wrapper");

   procedure dropEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, dropEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_dropEvent_0_wrapper");

   procedure focusInEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, focusInEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_focusInEvent_0_wrapper");

   function focusNextPrevChild_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Next : Qt4.bool)
       return Qt4.bool;
   pragma Import (C, focusNextPrevChild_0_wrapper,
                     "__Qt4Ada_QHeaderView_focusNextPrevChild_0_wrapper");

   procedure focusOutEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, focusOutEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_focusOutEvent_0_wrapper");

   procedure inputMethodEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, inputMethodEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_inputMethodEvent_0_wrapper");

   procedure keyPressEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, keyPressEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_keyPressEvent_0_wrapper");

   procedure resizeEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, resizeEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_resizeEvent_0_wrapper");

   procedure timerEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, timerEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_timerEvent_0_wrapper");

   procedure setupViewport_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Viewport : not null access Qt_Ada.Internals.Objects.QObject);
   pragma Import (C, setupViewport_0_wrapper,
                     "__Qt4Ada_QHeaderView_setupViewport_0_wrapper");

   procedure setViewportMargins_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Left : Qt4.Q_Integer;
     Top : Qt4.Q_Integer;
     Right : Qt4.Q_Integer;
     Bottom : Qt4.Q_Integer);
   pragma Import (C, setViewportMargins_0_wrapper,
                     "__Qt4Ada_QHeaderView_setViewportMargins_0_wrapper");

   procedure wheelEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, wheelEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_wheelEvent_0_wrapper");

   procedure contextMenuEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, contextMenuEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_contextMenuEvent_0_wrapper");

   procedure changeEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, changeEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_changeEvent_0_wrapper");

   procedure customContextMenuRequested_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Pos : not null access constant Qt4.Points.Internals.QPoint);
   pragma Import (C, customContextMenuRequested_0_wrapper,
                     "__Qt4Ada_QHeaderView_customContextMenuRequested_0_wrapper");

   procedure actionEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, actionEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_actionEvent_0_wrapper");

   procedure closeEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, closeEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_closeEvent_0_wrapper");

   procedure enterEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, enterEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_enterEvent_0_wrapper");

   function focusNextChild_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject)
       return Qt4.bool;
   pragma Import (C, focusNextChild_0_wrapper,
                     "__Qt4Ada_QHeaderView_focusNextChild_0_wrapper");

   function focusPreviousChild_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject)
       return Qt4.bool;
   pragma Import (C, focusPreviousChild_0_wrapper,
                     "__Qt4Ada_QHeaderView_focusPreviousChild_0_wrapper");

   procedure hideEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, hideEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_hideEvent_0_wrapper");

   procedure keyReleaseEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, keyReleaseEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_keyReleaseEvent_0_wrapper");

   procedure leaveEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, leaveEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_leaveEvent_0_wrapper");

   procedure moveEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, moveEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_moveEvent_0_wrapper");

   procedure resetInputContext_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject);
   pragma Import (C, resetInputContext_0_wrapper,
                     "__Qt4Ada_QHeaderView_resetInputContext_0_wrapper");

   procedure showEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, showEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_showEvent_0_wrapper");

   procedure tabletEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, tabletEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_tabletEvent_0_wrapper");

   function metric_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Metric : Qt4.Paint_Devices.Paint_Device_Metric)
       return Qt4.Q_Integer;
   pragma Import (C, metric_0_wrapper,
                     "__Qt4Ada_QHeaderView_metric_0_wrapper");

   procedure childEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, childEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_childEvent_0_wrapper");

   procedure customEvent_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject;
     Event : not null access Qt_Ada.Internals.Events.QEvent);
   pragma Import (C, customEvent_0_wrapper,
                     "__Qt4Ada_QHeaderView_customEvent_0_wrapper");

   function sender_0_wrapper
    (Self : not null access Qt_Ada.Internals.Objects.QObject)
       return access Qt_Ada.Internals.Objects.QObject;
   pragma Import (C, sender_0_wrapper,
                     "__Qt4Ada_QHeaderView_sender_0_wrapper");

   procedure moveCursor_wrapper
    (Self   : not null access Qt_Ada.Internals.Objects.QObject;
     Action : Qt4.Abstract_Item_Views.Cursor_Action;
     Hint   : Keyboard_Modifiers;
     Result : not null access Qt4.Model_Indices.Internals.QModelIndex);
   pragma Import
    (C, moveCursor_wrapper, "__Qt4Ada_QHeaderView_moveCursor_wrapper");

   procedure setSelection_wrapper
    (Self  : not null access Qt_Ada.Internals.Objects.QObject;
     Rect  : not null access Qt4.Rects.Internals.QRect;
     Flags : Qt4.Item_Selection_Models.Selection_Flags);
   pragma Import (C,
                  setSelection_wrapper,
                  "__Qt4Ada_QHeaderView_setSelection_wrapper");

   -----------------
   -- Move_Cursor --
   -----------------

   overriding
   function Move_Cursor
    (Self      : not null access Q_Header_View_Director;
     Action    : Qt4.Abstract_Item_Views.Cursor_Action;
     Modifiers : Keyboard_Modifiers)
       return Qt4.Model_Indices.Q_Model_Index
   is
   begin
      return Result : Qt4.Model_Indices.Q_Model_Index do
         moveCursor_wrapper
          (Self.QObject_View,
           Action,
           Modifiers,
           Qt4.Model_Indices.Internals.QModelIndex_View (Result));
      end return;
   end Move_Cursor;

   -------------------
   -- Set_Selection --
   -------------------

   overriding
   procedure Set_Selection
    (Self  : not null access Q_Header_View_Director;
     Rect  : Qt4.Rects.Q_Rect;
     Flags : Qt4.Item_Selection_Models.Selection_Flags)
   is
   begin
      setSelection_wrapper (Self.QObject_View,
                            Qt4.Rects.Internals.QRect_View (Rect),
                            Flags);
   end Set_Selection;

   pragma Style_Checks ("N");

   -----------------------------
   -- Emit_Geometries_Changed --
   -----------------------------

   not overriding
   procedure Emit_Geometries_Changed
    (Self : not null access Q_Header_View_Director)
   is
   begin
      geometriesChanged_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View);
   end Emit_Geometries_Changed;

   ------------------------------
   -- Emit_Section_Auto_Resize --
   ------------------------------

   not overriding
   procedure Emit_Section_Auto_Resize
    (Self : not null access Q_Header_View_Director;
     Logical_Index : Qt4.Q_Integer;
     Mode : Qt4.Header_Views.Header_View_Resize_Mode)
   is
   begin
      sectionAutoResize_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Logical_Index,
        Mode);
   end Emit_Section_Auto_Resize;

   --------------------------
   -- Emit_Section_Clicked --
   --------------------------

   not overriding
   procedure Emit_Section_Clicked
    (Self : not null access Q_Header_View_Director;
     Logical_Index : Qt4.Q_Integer)
   is
   begin
      sectionClicked_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Logical_Index);
   end Emit_Section_Clicked;

   --------------------------------
   -- Emit_Section_Count_Changed --
   --------------------------------

   not overriding
   procedure Emit_Section_Count_Changed
    (Self : not null access Q_Header_View_Director;
     Old_Count : Qt4.Q_Integer;
     New_Count : Qt4.Q_Integer)
   is
   begin
      sectionCountChanged_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Old_Count,
        New_Count);
   end Emit_Section_Count_Changed;

   ---------------------------------
   -- Emit_Section_Double_Clicked --
   ---------------------------------

   not overriding
   procedure Emit_Section_Double_Clicked
    (Self : not null access Q_Header_View_Director;
     Logical_Index : Qt4.Q_Integer)
   is
   begin
      sectionDoubleClicked_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Logical_Index);
   end Emit_Section_Double_Clicked;

   --------------------------
   -- Emit_Section_Entered --
   --------------------------

   not overriding
   procedure Emit_Section_Entered
    (Self : not null access Q_Header_View_Director;
     Logical_Index : Qt4.Q_Integer)
   is
   begin
      sectionEntered_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Logical_Index);
   end Emit_Section_Entered;

   ----------------------------------------
   -- Emit_Section_Handle_Double_Clicked --
   ----------------------------------------

   not overriding
   procedure Emit_Section_Handle_Double_Clicked
    (Self : not null access Q_Header_View_Director;
     Logical_Index : Qt4.Q_Integer)
   is
   begin
      sectionHandleDoubleClicked_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Logical_Index);
   end Emit_Section_Handle_Double_Clicked;

   ------------------------
   -- Emit_Section_Moved --
   ------------------------

   not overriding
   procedure Emit_Section_Moved
    (Self : not null access Q_Header_View_Director;
     Logical_Index : Qt4.Q_Integer;
     Old_Visual_Index : Qt4.Q_Integer;
     New_Visual_Index : Qt4.Q_Integer)
   is
   begin
      sectionMoved_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Logical_Index,
        Old_Visual_Index,
        New_Visual_Index);
   end Emit_Section_Moved;

   --------------------------
   -- Emit_Section_Pressed --
   --------------------------

   not overriding
   procedure Emit_Section_Pressed
    (Self : not null access Q_Header_View_Director;
     Logical_Index : Qt4.Q_Integer)
   is
   begin
      sectionPressed_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Logical_Index);
   end Emit_Section_Pressed;

   --------------------------
   -- Emit_Section_Resized --
   --------------------------

   not overriding
   procedure Emit_Section_Resized
    (Self : not null access Q_Header_View_Director;
     Logical_Index : Qt4.Q_Integer;
     Old_Size : Qt4.Q_Integer;
     New_Size : Qt4.Q_Integer)
   is
   begin
      sectionResized_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Logical_Index,
        Old_Size,
        New_Size);
   end Emit_Section_Resized;

   ---------------------------------
   -- Emit_Sort_Indicator_Changed --
   ---------------------------------

   not overriding
   procedure Emit_Sort_Indicator_Changed
    (Self : not null access Q_Header_View_Director;
     Logical_Index : Qt4.Q_Integer;
     Order : Qt4.Sort_Order)
   is
   begin
      sortIndicatorChanged_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Logical_Index,
        Order);
   end Emit_Sort_Indicator_Changed;

   ----------------------------------------
   -- sectionSizeFromContents_0_dispatch --
   ----------------------------------------

   function sectionSizeFromContents_0_dispatch
    (Self : not null Qt_Ada.Internals.Objects.Q_Object_Base_Access;
     Logical_Index : Qt4.Q_Integer)
       return not null access Qt4.Sizes.Internals.QSize
   is
   begin
      return
        Qt4.Sizes.Thin.copy_QSize
         (Qt4.Sizes.Internals.QSize_View
           (Q_Header_View_Director'Class (Self.all).Section_Size_From_Contents
             (Logical_Index)));
   end sectionSizeFromContents_0_dispatch;

   --------------------------------
   -- Section_Size_From_Contents --
   --------------------------------

   not overriding
   function Section_Size_From_Contents
    (Self : not null access constant Q_Header_View_Director;
     Logical_Index : Qt4.Q_Integer)
       return Qt4.Sizes.Q_Size
   is
      Returns : Qt4.Sizes.Q_Size;

   begin
      sectionSizeFromContents_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Logical_Index,
        Qt4.Sizes.Internals.QSize_View (Returns));

      return Returns;
   end Section_Size_From_Contents;

   -----------
   -- Reset --
   -----------

   overriding
   procedure Reset
    (Self : not null access Q_Header_View_Director)
   is
   begin
      reset_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View);
   end Reset;

   ---------------
   -- Set_Model --
   ---------------

   overriding
   procedure Set_Model
    (Self : not null access Q_Header_View_Director;
     Model : not null access Qt4.Abstract_Item_Models.Q_Abstract_Item_Model'Class)
   is
   begin
      setModel_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Model.QObject_View);
   end Set_Model;

   ---------------
   -- Size_Hint --
   ---------------

   overriding
   function Size_Hint
    (Self : not null access constant Q_Header_View_Director)
       return Qt4.Sizes.Q_Size
   is
      Returns : Qt4.Sizes.Q_Size;

   begin
      sizeHint_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Qt4.Sizes.Internals.QSize_View (Returns));

      return Returns;
   end Size_Hint;

   ---------------------
   -- Current_Changed --
   ---------------------

   overriding
   procedure Current_Changed
    (Self : not null access Q_Header_View_Director;
     Current : Qt4.Model_Indices.Q_Model_Index;
     Previous : Qt4.Model_Indices.Q_Model_Index)
   is
   begin
      currentChanged_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Qt4.Model_Indices.Internals.QModelIndex_View (Current),
        Qt4.Model_Indices.Internals.QModelIndex_View (Previous));
   end Current_Changed;

   ------------------
   -- Data_Changed --
   ------------------

   overriding
   procedure Data_Changed
    (Self : not null access Q_Header_View_Director;
     Top_Left : Qt4.Model_Indices.Q_Model_Index;
     Bottom_Right : Qt4.Model_Indices.Q_Model_Index)
   is
   begin
      dataChanged_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Qt4.Model_Indices.Internals.QModelIndex_View (Top_Left),
        Qt4.Model_Indices.Internals.QModelIndex_View (Bottom_Right));
   end Data_Changed;

   -----------
   -- Event --
   -----------

   overriding
   function Event
    (Self : not null access Q_Header_View_Director;
     E : not null access Qt4.Events.Q_Event'Class)
       return Standard.Boolean
   is
   begin
      return
        Qt4.To_Boolean
         (event_0_wrapper
           (Q_Header_View_Director'Class (Self.all).QObject_View,
            E.QEvent_View));
   end Event;

   -----------------------
   -- Horizontal_Offset --
   -----------------------

   overriding
   function Horizontal_Offset
    (Self : not null access constant Q_Header_View_Director)
       return Qt4.Q_Integer
   is
   begin
      return
        horizontalOffset_0_wrapper
         (Q_Header_View_Director'Class (Self.all).QObject_View);
   end Horizontal_Offset;

   --------------
   -- Index_At --
   --------------

   overriding
   function Index_At
    (Self : not null access constant Q_Header_View_Director;
     Point : Qt4.Points.Q_Point)
       return Qt4.Model_Indices.Q_Model_Index
   is
      Returns : Qt4.Model_Indices.Q_Model_Index;

   begin
      indexAt_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Qt4.Points.Internals.QPoint_View (Point),
        Qt4.Model_Indices.Internals.QModelIndex_View (Returns));

      return Returns;
   end Index_At;

   ---------------------
   -- Is_Index_Hidden --
   ---------------------

   overriding
   function Is_Index_Hidden
    (Self : not null access constant Q_Header_View_Director;
     Index : Qt4.Model_Indices.Q_Model_Index)
       return Standard.Boolean
   is
   begin
      return
        Qt4.To_Boolean
         (isIndexHidden_0_wrapper
           (Q_Header_View_Director'Class (Self.all).QObject_View,
            Qt4.Model_Indices.Internals.QModelIndex_View (Index)));
   end Is_Index_Hidden;

   -----------------
   -- Paint_Event --
   -----------------

   overriding
   procedure Paint_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Paint_Events.Q_Paint_Event'Class)
   is
   begin
      paintEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Paint_Event;

   ------------------------------
   -- Mouse_Double_Click_Event --
   ------------------------------

   overriding
   procedure Mouse_Double_Click_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Mouse_Events.Q_Mouse_Event'Class)
   is
   begin
      mouseDoubleClickEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Mouse_Double_Click_Event;

   ----------------------
   -- Mouse_Move_Event --
   ----------------------

   overriding
   procedure Mouse_Move_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Mouse_Events.Q_Mouse_Event'Class)
   is
   begin
      mouseMoveEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Mouse_Move_Event;

   -----------------------
   -- Mouse_Press_Event --
   -----------------------

   overriding
   procedure Mouse_Press_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Mouse_Events.Q_Mouse_Event'Class)
   is
   begin
      mousePressEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Mouse_Press_Event;

   -------------------------
   -- Mouse_Release_Event --
   -------------------------

   overriding
   procedure Mouse_Release_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Mouse_Events.Q_Mouse_Event'Class)
   is
   begin
      mouseReleaseEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Mouse_Release_Event;

   -------------------
   -- Rows_Inserted --
   -------------------

   overriding
   procedure Rows_Inserted
    (Self : not null access Q_Header_View_Director;
     Parent : Qt4.Model_Indices.Q_Model_Index;
     Start : Qt4.Q_Integer;
     Stop : Qt4.Q_Integer)
   is
   begin
      rowsInserted_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Qt4.Model_Indices.Internals.QModelIndex_View (Parent),
        Start,
        Stop);
   end Rows_Inserted;

   ------------------------
   -- Scroll_Contents_By --
   ------------------------

   overriding
   procedure Scroll_Contents_By
    (Self : not null access Q_Header_View_Director;
     Dx : Qt4.Q_Integer;
     Dy : Qt4.Q_Integer)
   is
   begin
      scrollContentsBy_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Dx,
        Dy);
   end Scroll_Contents_By;

   ---------------
   -- Scroll_To --
   ---------------

   overriding
   procedure Scroll_To
    (Self : not null access Q_Header_View_Director;
     Index : Qt4.Model_Indices.Q_Model_Index;
     Hint : Qt4.Abstract_Item_Views.Abstract_Item_View_Scroll_Hint
       := Qt4.Abstract_Item_Views.Ensure_Visible)
   is
   begin
      scrollTo_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Qt4.Model_Indices.Internals.QModelIndex_View (Index),
        Hint);
   end Scroll_To;

   ---------------------
   -- Vertical_Offset --
   ---------------------

   overriding
   function Vertical_Offset
    (Self : not null access constant Q_Header_View_Director)
       return Qt4.Q_Integer
   is
   begin
      return
        verticalOffset_0_wrapper
         (Q_Header_View_Director'Class (Self.all).QObject_View);
   end Vertical_Offset;

   --------------------
   -- Viewport_Event --
   --------------------

   overriding
   function Viewport_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Events.Q_Event'Class)
       return Standard.Boolean
   is
   begin
      return
        Qt4.To_Boolean
         (viewportEvent_0_wrapper
           (Q_Header_View_Director'Class (Self.all).QObject_View,
            Event.QEvent_View));
   end Viewport_Event;

   -----------------
   -- Visual_Rect --
   -----------------

   overriding
   function Visual_Rect
    (Self : not null access constant Q_Header_View_Director;
     Index : Qt4.Model_Indices.Q_Model_Index)
       return Qt4.Rects.Q_Rect
   is
      Returns : Qt4.Rects.Q_Rect;

   begin
      visualRect_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Qt4.Model_Indices.Internals.QModelIndex_View (Index),
        Qt4.Rects.Internals.QRect_View (Returns));

      return Returns;
   end Visual_Rect;

   ---------------------------------
   -- Visual_Region_For_Selection --
   ---------------------------------

   overriding
   function Visual_Region_For_Selection
    (Self : not null access constant Q_Header_View_Director;
     Selection : Qt4.Item_Selections.Q_Item_Selection)
       return Qt4.Regions.Q_Region
   is
      Returns : Qt4.Regions.Q_Region;

   begin
      visualRegionForSelection_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Qt4.Item_Selections.Internals.QItemSelection_View (Selection),
        Qt4.Regions.Internals.QRegion_View (Returns));

      return Returns;
   end Visual_Region_For_Selection;

   --------------------
   -- Emit_Activated --
   --------------------

   overriding
   procedure Emit_Activated
    (Self : not null access Q_Header_View_Director;
     Index : Qt4.Model_Indices.Q_Model_Index)
   is
   begin
      activated_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Qt4.Model_Indices.Internals.QModelIndex_View (Index));
   end Emit_Activated;

   ------------------
   -- Emit_Clicked --
   ------------------

   overriding
   procedure Emit_Clicked
    (Self : not null access Q_Header_View_Director;
     Index : Qt4.Model_Indices.Q_Model_Index)
   is
   begin
      clicked_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Qt4.Model_Indices.Internals.QModelIndex_View (Index));
   end Emit_Clicked;

   -------------------------
   -- Emit_Double_Clicked --
   -------------------------

   overriding
   procedure Emit_Double_Clicked
    (Self : not null access Q_Header_View_Director;
     Index : Qt4.Model_Indices.Q_Model_Index)
   is
   begin
      doubleClicked_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Qt4.Model_Indices.Internals.QModelIndex_View (Index));
   end Emit_Double_Clicked;

   ------------------
   -- Emit_Entered --
   ------------------

   overriding
   procedure Emit_Entered
    (Self : not null access Q_Header_View_Director;
     Index : Qt4.Model_Indices.Q_Model_Index)
   is
   begin
      entered_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Qt4.Model_Indices.Internals.QModelIndex_View (Index));
   end Emit_Entered;

   ------------------
   -- Emit_Pressed --
   ------------------

   overriding
   procedure Emit_Pressed
    (Self : not null access Q_Header_View_Director;
     Index : Qt4.Model_Indices.Q_Model_Index)
   is
   begin
      pressed_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Qt4.Model_Indices.Internals.QModelIndex_View (Index));
   end Emit_Pressed;

   ---------------------------
   -- Emit_Viewport_Entered --
   ---------------------------

   overriding
   procedure Emit_Viewport_Entered
    (Self : not null access Q_Header_View_Director)
   is
   begin
      viewportEntered_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View);
   end Emit_Viewport_Entered;

   -------------------------
   -- Dirty_Region_Offset --
   -------------------------

   overriding
   function Dirty_Region_Offset
    (Self : not null access constant Q_Header_View_Director)
       return Qt4.Points.Q_Point
   is
      Returns : Qt4.Points.Q_Point;

   begin
      dirtyRegionOffset_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Qt4.Points.Internals.QPoint_View (Returns));

      return Returns;
   end Dirty_Region_Offset;

   ----------------------------------
   -- Execute_Delayed_Items_Layout --
   ----------------------------------

   overriding
   procedure Execute_Delayed_Items_Layout
    (Self : not null access Q_Header_View_Director)
   is
   begin
      executeDelayedItemsLayout_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View);
   end Execute_Delayed_Items_Layout;

   -----------------------------------
   -- Schedule_Delayed_Items_Layout --
   -----------------------------------

   overriding
   procedure Schedule_Delayed_Items_Layout
    (Self : not null access Q_Header_View_Director)
   is
   begin
      scheduleDelayedItemsLayout_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View);
   end Schedule_Delayed_Items_Layout;

   -------------------------
   -- Scroll_Dirty_Region --
   -------------------------

   overriding
   procedure Scroll_Dirty_Region
    (Self : not null access Q_Header_View_Director;
     Dx : Qt4.Q_Integer;
     Dy : Qt4.Q_Integer)
   is
   begin
      scrollDirtyRegion_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Dx,
        Dy);
   end Scroll_Dirty_Region;

   ----------------------
   -- Set_Dirty_Region --
   ----------------------

   overriding
   procedure Set_Dirty_Region
    (Self : not null access Q_Header_View_Director;
     Region : Qt4.Regions.Q_Region)
   is
   begin
      setDirtyRegion_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Qt4.Regions.Internals.QRegion_View (Region));
   end Set_Dirty_Region;

   -----------------
   -- Commit_Data --
   -----------------

   overriding
   procedure Commit_Data
    (Self : not null access Q_Header_View_Director;
     Editor : not null access Qt4.Widgets.Q_Widget'Class)
   is
   begin
      commitData_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Editor.QObject_View);
   end Commit_Data;

   ----------------------
   -- Editor_Destroyed --
   ----------------------

   overriding
   procedure Editor_Destroyed
    (Self : not null access Q_Header_View_Director;
     Editor : not null access Qt4.Objects.Q_Object'Class)
   is
   begin
      editorDestroyed_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Editor.QObject_View);
   end Editor_Destroyed;

   ------------------------------
   -- Rows_About_To_Be_Removed --
   ------------------------------

   overriding
   procedure Rows_About_To_Be_Removed
    (Self : not null access Q_Header_View_Director;
     Parent : Qt4.Model_Indices.Q_Model_Index;
     Start : Qt4.Q_Integer;
     Stop : Qt4.Q_Integer)
   is
   begin
      rowsAboutToBeRemoved_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Qt4.Model_Indices.Internals.QModelIndex_View (Parent),
        Start,
        Stop);
   end Rows_About_To_Be_Removed;

   -----------------------
   -- Selection_Changed --
   -----------------------

   overriding
   procedure Selection_Changed
    (Self : not null access Q_Header_View_Director;
     Selected : Qt4.Item_Selections.Q_Item_Selection;
     Deselected : Qt4.Item_Selections.Q_Item_Selection)
   is
   begin
      selectionChanged_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Qt4.Item_Selections.Internals.QItemSelection_View (Selected),
        Qt4.Item_Selections.Internals.QItemSelection_View (Deselected));
   end Selection_Changed;

   ----------------------
   -- Drag_Enter_Event --
   ----------------------

   overriding
   procedure Drag_Enter_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Drag_Enter_Events.Q_Drag_Enter_Event'Class)
   is
   begin
      dragEnterEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Drag_Enter_Event;

   ----------------------
   -- Drag_Leave_Event --
   ----------------------

   overriding
   procedure Drag_Leave_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Drag_Leave_Events.Q_Drag_Leave_Event'Class)
   is
   begin
      dragLeaveEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Drag_Leave_Event;

   ---------------------
   -- Drag_Move_Event --
   ---------------------

   overriding
   procedure Drag_Move_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Drag_Move_Events.Q_Drag_Move_Event'Class)
   is
   begin
      dragMoveEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Drag_Move_Event;

   ----------------
   -- Drop_Event --
   ----------------

   overriding
   procedure Drop_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Drop_Events.Q_Drop_Event'Class)
   is
   begin
      dropEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Drop_Event;

   --------------------
   -- Focus_In_Event --
   --------------------

   overriding
   procedure Focus_In_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Focus_Events.Q_Focus_Event'Class)
   is
   begin
      focusInEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Focus_In_Event;

   ---------------------------
   -- Focus_Next_Prev_Child --
   ---------------------------

   overriding
   function Focus_Next_Prev_Child
    (Self : not null access Q_Header_View_Director;
     Next : Standard.Boolean)
       return Standard.Boolean
   is
   begin
      return
        Qt4.To_Boolean
         (focusNextPrevChild_0_wrapper
           (Q_Header_View_Director'Class (Self.all).QObject_View,
            Qt4.To_bool (Next)));
   end Focus_Next_Prev_Child;

   ---------------------
   -- Focus_Out_Event --
   ---------------------

   overriding
   procedure Focus_Out_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Focus_Events.Q_Focus_Event'Class)
   is
   begin
      focusOutEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Focus_Out_Event;

   ------------------------
   -- Input_Method_Event --
   ------------------------

   overriding
   procedure Input_Method_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Input_Method_Events.Q_Input_Method_Event'Class)
   is
   begin
      inputMethodEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Input_Method_Event;

   ---------------------
   -- Key_Press_Event --
   ---------------------

   overriding
   procedure Key_Press_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Key_Events.Q_Key_Event'Class)
   is
   begin
      keyPressEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Key_Press_Event;

   ------------------
   -- Resize_Event --
   ------------------

   overriding
   procedure Resize_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Resize_Events.Q_Resize_Event'Class)
   is
   begin
      resizeEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Resize_Event;

   -----------------
   -- Timer_Event --
   -----------------

   overriding
   procedure Timer_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Timer_Events.Q_Timer_Event'Class)
   is
   begin
      timerEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Timer_Event;

   --------------------
   -- Setup_Viewport --
   --------------------

   overriding
   procedure Setup_Viewport
    (Self : not null access Q_Header_View_Director;
     Viewport : not null access Qt4.Widgets.Q_Widget'Class)
   is
   begin
      setupViewport_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Viewport.QObject_View);
   end Setup_Viewport;

   --------------------------
   -- Set_Viewport_Margins --
   --------------------------

   overriding
   procedure Set_Viewport_Margins
    (Self : not null access Q_Header_View_Director;
     Left : Qt4.Q_Integer;
     Top : Qt4.Q_Integer;
     Right : Qt4.Q_Integer;
     Bottom : Qt4.Q_Integer)
   is
   begin
      setViewportMargins_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Left,
        Top,
        Right,
        Bottom);
   end Set_Viewport_Margins;

   -----------------
   -- Wheel_Event --
   -----------------

   overriding
   procedure Wheel_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Wheel_Events.Q_Wheel_Event'Class)
   is
   begin
      wheelEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Wheel_Event;

   ------------------------
   -- Context_Menu_Event --
   ------------------------

   overriding
   procedure Context_Menu_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Context_Menu_Events.Q_Context_Menu_Event'Class)
   is
   begin
      contextMenuEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Context_Menu_Event;

   ------------------
   -- Change_Event --
   ------------------

   overriding
   procedure Change_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Events.Q_Event'Class)
   is
   begin
      changeEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Change_Event;

   ----------------------------------------
   -- Emit_Custom_Context_Menu_Requested --
   ----------------------------------------

   overriding
   procedure Emit_Custom_Context_Menu_Requested
    (Self : not null access Q_Header_View_Director;
     Pos : Qt4.Points.Q_Point)
   is
   begin
      customContextMenuRequested_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Qt4.Points.Internals.QPoint_View (Pos));
   end Emit_Custom_Context_Menu_Requested;

   ------------------
   -- Action_Event --
   ------------------

   overriding
   procedure Action_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Action_Events.Q_Action_Event'Class)
   is
   begin
      actionEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Action_Event;

   -----------------
   -- Close_Event --
   -----------------

   overriding
   procedure Close_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Close_Events.Q_Close_Event'Class)
   is
   begin
      closeEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Close_Event;

   -----------------
   -- Enter_Event --
   -----------------

   overriding
   procedure Enter_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Events.Q_Event'Class)
   is
   begin
      enterEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Enter_Event;

   ----------------------
   -- Focus_Next_Child --
   ----------------------

   overriding
   function Focus_Next_Child
    (Self : not null access Q_Header_View_Director)
       return Standard.Boolean
   is
   begin
      return
        Qt4.To_Boolean
         (focusNextChild_0_wrapper
           (Q_Header_View_Director'Class (Self.all).QObject_View));
   end Focus_Next_Child;

   --------------------------
   -- Focus_Previous_Child --
   --------------------------

   overriding
   function Focus_Previous_Child
    (Self : not null access Q_Header_View_Director)
       return Standard.Boolean
   is
   begin
      return
        Qt4.To_Boolean
         (focusPreviousChild_0_wrapper
           (Q_Header_View_Director'Class (Self.all).QObject_View));
   end Focus_Previous_Child;

   ----------------
   -- Hide_Event --
   ----------------

   overriding
   procedure Hide_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Hide_Events.Q_Hide_Event'Class)
   is
   begin
      hideEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Hide_Event;

   -----------------------
   -- Key_Release_Event --
   -----------------------

   overriding
   procedure Key_Release_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Key_Events.Q_Key_Event'Class)
   is
   begin
      keyReleaseEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Key_Release_Event;

   -----------------
   -- Leave_Event --
   -----------------

   overriding
   procedure Leave_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Events.Q_Event'Class)
   is
   begin
      leaveEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Leave_Event;

   ----------------
   -- Move_Event --
   ----------------

   overriding
   procedure Move_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Move_Events.Q_Move_Event'Class)
   is
   begin
      moveEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Move_Event;

   -------------------------
   -- Reset_Input_Context --
   -------------------------

   overriding
   procedure Reset_Input_Context
    (Self : not null access Q_Header_View_Director)
   is
   begin
      resetInputContext_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View);
   end Reset_Input_Context;

   ----------------
   -- Show_Event --
   ----------------

   overriding
   procedure Show_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Show_Events.Q_Show_Event'Class)
   is
   begin
      showEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Show_Event;

   ------------------
   -- Tablet_Event --
   ------------------

   overriding
   procedure Tablet_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Tablet_Events.Q_Tablet_Event'Class)
   is
   begin
      tabletEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Tablet_Event;

   ------------
   -- Metric --
   ------------

   overriding
   function Metric
    (Self : not null access constant Q_Header_View_Director;
     Metric : Qt4.Paint_Devices.Paint_Device_Metric)
       return Qt4.Q_Integer
   is
   begin
      return
        metric_0_wrapper
         (Q_Header_View_Director'Class (Self.all).QObject_View,
          Metric);
   end Metric;

   -----------------
   -- Child_Event --
   -----------------

   overriding
   procedure Child_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Child_Events.Q_Child_Event'Class)
   is
   begin
      childEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Child_Event;

   ------------------
   -- Custom_Event --
   ------------------

   overriding
   procedure Custom_Event
    (Self : not null access Q_Header_View_Director;
     Event : not null access Qt4.Events.Q_Event'Class)
   is
   begin
      customEvent_0_wrapper
       (Q_Header_View_Director'Class (Self.all).QObject_View,
        Event.QEvent_View);
   end Custom_Event;

   ------------
   -- Sender --
   ------------

   overriding
   function Sender
    (Self : not null access constant Q_Header_View_Director)
       return access Qt4.Objects.Q_Object'Class
   is
   begin
      return
        Qt_Ada.Internals.Objects.Object_Utilities.Corresponding_Q_Object
         (sender_0_wrapper
           (Q_Header_View_Director'Class (Self.all).QObject_View));
   end Sender;

begin
   Qt_Ada.Internals.Object_Registry.Register_Director
    ("QHeaderView", qt_metacast_wrapper'Access, qt_metacall_wrapper'Access);

end Qt4.Header_Views.Directors;
