-- This file is part of Qtah. -- -- Copyright 2015-2020 The Qtah Authors. -- -- This program is free software: you can redistribute it and/or modify -- it under the terms of the GNU Lesser 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 Lesser General Public License for more details. -- -- You should have received a copy of the GNU Lesser General Public License -- along with this program. If not, see . module Graphics.UI.Qtah.Generator.Interface.Widgets.QGraphicsScene ( aModule, c_QGraphicsScene, e_ItemIndexMethod, e_SceneLayer, fl_SceneLayers, ) where import Foreign.Hoppy.Generator.Spec ( addReqIncludes, classSetEntityPrefix, ident, ident1, includeStd, makeClass, mkMethod, mkMethod', mkCtor, mkConstMethod, mkConstMethod', mkProp, np, ) import Foreign.Hoppy.Generator.Types (voidT, objT, ptrT, intT, boolT, enumT) import Foreign.Hoppy.Generator.Version (collect, just, test) import Graphics.UI.Qtah.Generator.Config (qtVersion) import Graphics.UI.Qtah.Generator.Interface.Core.Types (e_FocusReason, qreal) import Graphics.UI.Qtah.Generator.Interface.Core.QEvent (c_QEvent) -- import Graphics.UI.Qtah.Generator.Interface.Core.QLineF (c_QLineF) import Graphics.UI.Qtah.Generator.Interface.Core.QObject (c_QObject) import Graphics.UI.Qtah.Generator.Interface.Core.QPointF (c_QPointF) import Graphics.UI.Qtah.Generator.Interface.Core.QRectF (c_QRectF) -- import Graphics.UI.Qtah.Generator.Interface.Core.QString (c_QString) import Graphics.UI.Qtah.Generator.Interface.Gui.QBrush (c_QBrush) import Graphics.UI.Qtah.Generator.Interface.Gui.QFont (c_QFont) import Graphics.UI.Qtah.Generator.Interface.Gui.QPainterPath (c_QPainterPath) import Graphics.UI.Qtah.Generator.Interface.Gui.QPen (c_QPen) import Graphics.UI.Qtah.Generator.Interface.Gui.QPolygonF (c_QPolygonF) import Graphics.UI.Qtah.Generator.Interface.Gui.QTransform (c_QTransform) import Graphics.UI.Qtah.Generator.Interface.Widgets.QGraphicsEllipseItem (c_QGraphicsEllipseItem) import Graphics.UI.Qtah.Generator.Interface.Widgets.QGraphicsItem (c_QGraphicsItem) import Graphics.UI.Qtah.Generator.Interface.Widgets.QGraphicsPolygonItem (c_QGraphicsPolygonItem) import Graphics.UI.Qtah.Generator.Interface.Widgets.QGraphicsRectItem (c_QGraphicsRectItem) -- import Graphics.UI.Qtah.Generator.Interface.Widgets.QWidget (c_QWidget) import Graphics.UI.Qtah.Generator.Module (AModule (AQtModule), makeQtModule) import Graphics.UI.Qtah.Generator.Types {-# ANN module "HLint: ignore Use camelCase" #-} aModule = AQtModule $ makeQtModule ["Widgets", "QGraphicsScene"] $ [ qtExport c_QGraphicsScene , qtExport e_ItemIndexMethod , qtExport e_SceneLayer , qtExport fl_SceneLayers ] -- Due to a parsing bug types of the form `T` were generated incorrectly. c_QGraphicsScene = addReqIncludes [includeStd "QGraphicsScene"] $ classSetEntityPrefix "" $ makeClass (ident "QGraphicsScene") Nothing [c_QObject] $ collect [ just $ mkCtor "new" np , just $ mkCtor "newWithParent" [ptrT $ objT c_QObject] , just $ mkCtor "newWithRect" [objT c_QRectF] , just $ mkCtor "newWithRaw" [qreal, qreal, qreal, qreal] , just $ mkConstMethod "activePanel" np $ ptrT $ objT c_QGraphicsItem -- TODO mkConstMethod "activeWindow" np $ ptrT $ objT c_QGraphicsWidget , just $ mkMethod' "addEllipse" "addEllipseRectF" [objT c_QRectF] $ ptrT $ objT c_QGraphicsEllipseItem , just $ mkMethod' "addEllipse" "addEllipseRectFAll" [objT c_QRectF, objT c_QPen, objT c_QBrush] $ ptrT $ objT c_QGraphicsEllipseItem , just $ mkMethod' "addEllipse" "addEllipseRaw" [qreal, qreal, qreal, qreal] $ ptrT $ objT c_QGraphicsEllipseItem , just $ mkMethod' "addEllipse" "addEllipseRawAll" [qreal, qreal, qreal, qreal, objT c_QPen, objT c_QBrush] $ ptrT $ objT c_QGraphicsEllipseItem , just $ mkMethod "addItem" [ptrT $ objT c_QGraphicsItem] voidT -- TODO mkMethod' "addLine" "addLine" [objT c_QLineF] $ -- ptrT $ objT c_QGraphicsLineItem -- TODO mkMethod' "addLine" "addLineAll" [objT c_QLineF, objT c_QPen] $ -- ptrT $ objT c_QGraphicsLineItem -- TODO mkMethod' "addLine" "addLine" [qreal, qreal, qreal, qreal] $ -- ptrT $ objT c_QGraphicsLineItem -- TODO mkMethod' "addLine" "addLineAll" [qreal, qreal, qreal, qreal, objT c_QPen] $ -- ptrT $ objT c_QGraphicsLineItem -- TODO mkMethod "addPath" [objT c_QPainterPath] $ ptrT $ objT c_QGraphicsPathItem -- TODO mkMethod' "addPath" "addPathAll" [objT c_QPainterPath, objT c_QPen, objT c_QBrush] $ -- ptrT $ objT c_QGraphicsPathItem -- TODO mkMethod "addPixmap" [objT c_QPixmap] $ ptrT $ objT c_QGraphicsPixmapItem , just $ mkMethod "addPolygon" [objT c_QPolygonF] $ ptrT $ objT c_QGraphicsPolygonItem , just $ mkMethod' "addPolygon" "addPolygonAll" [objT c_QPolygonF, objT c_QPen, objT c_QBrush] $ ptrT $ objT c_QGraphicsPolygonItem , just $ mkMethod "addRect" [objT c_QRectF] $ ptrT $ objT c_QGraphicsRectItem , just $ mkMethod' "addRect" "addRectAll" [objT c_QRectF, objT c_QPen, objT c_QBrush] $ ptrT $ objT c_QGraphicsRectItem , just $ mkMethod' "addRect" "addRectRaw" [qreal, qreal, qreal, qreal] $ ptrT $ objT c_QGraphicsRectItem , just $ mkMethod' "addRect" "addRectRawAll" [qreal, qreal, qreal, qreal, objT c_QPen, objT c_QBrush] $ ptrT $ objT c_QGraphicsRectItem -- TODO mkMethod "addSimpleText" [objT c_QString] $ ptrT $ objT c_QGraphicsSimpleTextItem -- TODO mkMethod' "addSimpleText" "addSimpleTextAll" [objT c_QString, objT c_QFont] $ -- ptrT $ objT c_QGraphicsSimpleTextItem -- TODO mkMethod "addText" [objT c_QString] $ ptrT $ objT c_QGraphicsTextItem -- TODO mkMethod' "addText" "addTextAll" [objT c_QString, objT c_QFont] $ -- ptrT $ objT c_QGraphicsTextItem -- TODO mkMethod "addWidget" [ptrT $ objT c_QWidget] $ ptrT $ objT c_QGraphicsProxyWidget -- TODO mkMethod' "addWidget" "addWidgetAll" [ptrT $ objT c_QWidget, enumT e_WindowFlags] $ -- ptrT $ objT c_QGraphicsProxyWidget , just $ mkConstMethod "backgroundBrush" np $ objT c_QBrush , just $ mkConstMethod "bspTreeDepth" np intT , just $ mkMethod "clearFocus" np voidT -- TODO mkConstMethod "collidingItems" [ptrT $ objT c_QGraphicsItem] $ -- objT c_QList -- TODO mkConstMethod' "collidingItems" "collidingItemsAll" -- [ptrT $ objT c_QGraphicsItem, objT c_Qt::ItemSelectionMode] $ -- objT c_QList -- TODO mkMethod "createItemGroup" [objT c_QList -- TODO mkConstMethod' "items" "itemsAll" [enumT e_SortOrder] $ -- objT c_QList -- TODO mkConstMethod' "items" "items" [objT c_QPointF] $ -- objT c_QList -- TODO mkConstMethod' "items" "itemsAll" -- [objT c_QPointF, objT c_Qt::ItemSelectionMode, objT c_Qt::SortOrder, objT c_QTransform] $ -- objT c_QList -- TODO mkConstMethod' "items" "items" [objT c_QRectF] $ -- objT c_QList -- TODO mkConstMethod' "items" "itemsAll" -- [objT c_QRectF, objT c_Qt::ItemSelectionMode, objT c_Qt::SortOrder, objT c_QTransform] $ -- objT c_QList -- TODO mkConstMethod' "items" "items" [objT c_QPolygonF] $ -- objT c_QList -- TODO mkConstMethod' "items" "itemsAll" -- [objT c_QPolygonF, objT c_Qt::ItemSelectionMode, objT c_Qt::SortOrder, objT c_QTransform] $ -- objT c_QList -- TODO mkConstMethod' "items" "items" [objT c_QPainterPath] $ -- objT c_QList -- TODO mkConstMethod' "items" "itemsAll" -- [objT c_QPainterPath, objT c_Qt::ItemSelectionMode -- , objT c_Qt::SortOrder, objT c_QTransform -- ] $ objT c_QList -- TODO mkConstMethod' "items" "items" -- [qreal, qreal, qreal, qreal, objT c_Qt::ItemSelectionMode, objT c_Qt::SortOrder] $ -- objT c_QList -- TODO mkConstMethod' "items" "itemsAll" -- [ qreal, qreal, qreal, qreal, objT c_Qt::ItemSelectionMode -- , objT c_Qt::SortOrder, objT c_QTransform -- ] $ objT c_QList , just $ mkConstMethod "itemsBoundingRect" np $ objT c_QRectF , test (qtVersion >= [5, 4]) $ mkConstMethod "minimumRenderSize" np qreal , just $ mkConstMethod "mouseGrabberItem" np $ ptrT $ objT c_QGraphicsItem -- TODO mkConstMethod "palette" np $ objT c_QPalette , just $ mkMethod "removeItem" [ptrT $ objT c_QGraphicsItem] voidT -- TODO mkMethod "render" [ptrT $ objT c_QPainter] voidT -- TODO mkMethod' "render" "renderAll" -- [ptrT $ objT c_QPainter, objT c_QRectF, objT c_QRectF, enumT e_AspectRatioMode] voidT , just $ mkConstMethod "sceneRect" np $ objT c_QRectF -- TODO mkConstMethod "selectedItems" np $ objT c_QList , just $ mkConstMethod "selectionArea" np $ objT c_QPainterPath , just $ mkMethod "sendEvent" [ptrT $ objT c_QGraphicsItem, ptrT $ objT c_QEvent] boolT , just $ mkMethod "setActivePanel" [ptrT $ objT c_QGraphicsItem] voidT -- TODO mkMethod "setActiveWindow" [ptrT $ objT c_QGraphicsWidget] voidT , just $ mkMethod "setBackgroundBrush" [objT c_QBrush] voidT , just $ mkMethod "setBspTreeDepth" [intT] voidT , just $ mkMethod "setFocus" np voidT , just $ mkMethod' "setFocus" "setFocusAll" [enumT e_FocusReason] voidT , just $ mkMethod "setFocusItem" [ptrT $ objT c_QGraphicsItem] voidT , just $ mkMethod' "setFocusItem" "setFocusItemAll" [ptrT $ objT c_QGraphicsItem, enumT e_FocusReason] voidT , just $ mkMethod "setForegroundBrush" [objT c_QBrush] voidT -- TODO mkMethod "setItemIndexMethod" [objT c_ItemIndexMethod] voidT , test (qtVersion >= [5, 4]) $ mkMethod "setMinimumRenderSize" [qreal] voidT -- TODO mkMethod "setPalette" [objT c_QPalette] voidT , just $ mkMethod "setSceneRect" [objT c_QRectF] voidT , just $ mkMethod' "setSceneRect" "setSceneRectRaw" [qreal, qreal, qreal, qreal] voidT , test (qtVersion >= [5, 5]) $ mkMethod' "setSelectionArea" "setSelectionAreaTransform" [objT c_QPainterPath, objT c_QTransform] voidT , test (qtVersion >= [5, 5]) $ mkMethod "setSelectionArea" [objT c_QPainterPath] voidT -- TODO mkMethod' "setSelectionArea" "setSelectionAreaAll" -- [objT c_QPainterPath, objT c_Qt::ItemSelectionMode, objT c_QTransform] voidT -- TODO mkMethod' "setSelectionArea" "setSelectionArea" -- [objT c_QPainterPath, objT c_Qt::ItemSelectionOperation] voidT -- TODO mkMethod' "setSelectionArea" "setSelectionAreaAll" -- [ objT c_QPainterPath, objT c_Qt::ItemSelectionOperation -- , objT c_Qt::ItemSelectionMode, objT c_QTransform -- ] voidT , just $ mkMethod "setStickyFocus" [boolT] voidT -- TODO mkMethod "setStyle" [ptrT $ objT c_QStyle] voidT , just $ mkConstMethod "stickyFocus" np boolT -- TODO mkConstMethod "style" np $ ptrT $ objT c_QStyle , just $ mkMethod "update" [qreal, qreal, qreal, qreal] voidT -- TODO mkConstMethod "views" np $ objT c_QList , just $ mkConstMethod "width" np qreal ] e_ItemIndexMethod = makeQtEnum (ident1 "QGraphicsScene" "ItemIndexMethod") [includeStd "QGraphicsScene"] [ "BspTreeIndex" , "NoIndex" ] (e_SceneLayer, fl_SceneLayers) = makeQtEnumAndFlags (ident1 "QGraphicsScene" "SceneLayer") "SceneLayers" [includeStd "QGraphicsScene"] [ "ItemLayer" , "BackgroundLayer" , "ForegroundLayer" , "AllLayers" ]