Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions doc/_doxygen/ezgl.dox
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
PROJECT_NAME = "Verilog to Routing - EZGL"
OUTPUT_DIRECTORY = ../_build/doxygen/ezgl
FULL_PATH_NAMES = NO
OPTIMIZE_OUTPUT_FOR_C = YES
EXTRACT_ALL = YES
EXTRACT_PRIVATE = YES
EXTRACT_STATIC = YES
WARN_IF_UNDOCUMENTED = NO
INPUT = ../../libs/EXTERNAL/libezgl
RECURSIVE = YES
GENERATE_HTML = NO
GENERATE_LATEX = NO
GENERATE_XML = YES
6 changes: 6 additions & 0 deletions doc/src/api/ezgl/application.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
===========
Application
===========

.. doxygenfile:: application.hpp
:project: ezgl
56 changes: 56 additions & 0 deletions doc/src/api/ezgl/callback.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
=========
Callbacks
=========

This module provides callback functions for handling keyboard and mouse input, as well as predefined button actions in EZGL applications.

Input Event Callbacks
--------------------

.. doxygenfunction:: press_key
:project: ezgl

.. doxygenfunction:: press_mouse
:project: ezgl

.. doxygenfunction:: release_mouse
:project: ezgl

.. doxygenfunction:: move_mouse
:project: ezgl

.. doxygenfunction:: scroll_mouse
:project: ezgl

Button Action Callbacks
----------------------

.. doxygenfunction:: press_zoom_fit
:project: ezgl

.. doxygenfunction:: press_zoom_in
:project: ezgl

.. doxygenfunction:: press_zoom_out
:project: ezgl

Navigation Callbacks
------------------

.. doxygenfunction:: press_up
:project: ezgl

.. doxygenfunction:: press_down
:project: ezgl

.. doxygenfunction:: press_left
:project: ezgl

.. doxygenfunction:: press_right
:project: ezgl

Other Callbacks
-------------

.. doxygenfunction:: press_proceed
:project: ezgl
5 changes: 5 additions & 0 deletions doc/src/api/ezgl/camera.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
======
Camera
======
.. doxygenfile:: camera.hpp
:project: ezgl
5 changes: 5 additions & 0 deletions doc/src/api/ezgl/canvas.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
======
Canvas
======
.. doxygenfile:: canvas.hpp
:project: ezgl
5 changes: 5 additions & 0 deletions doc/src/api/ezgl/color.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
=====
Color
=====
.. doxygenfile:: color.hpp
:project: ezgl
41 changes: 41 additions & 0 deletions doc/src/api/ezgl/control.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
=======
Control
=======

Functions to manipulate what is visible on the EZGL canvas. These functions are used by EZGL's predefined buttons, but application code can also call them directly when needed.

Zoom Functions
-------------

.. doxygenfunction:: ezgl::zoom_in(canvas*, double)
:project: ezgl

.. doxygenfunction:: ezgl::zoom_out(canvas*, double)
:project: ezgl

.. doxygenfunction:: ezgl::zoom_in(canvas*, point2d, double)
:project: ezgl

.. doxygenfunction:: ezgl::zoom_out(canvas*, point2d, double)
:project: ezgl

.. doxygenfunction:: ezgl::zoom_fit
:project: ezgl

Translation Functions
--------------------

.. doxygenfunction:: ezgl::translate
:project: ezgl

.. doxygenfunction:: ezgl::translate_up
:project: ezgl

.. doxygenfunction:: ezgl::translate_down
:project: ezgl

.. doxygenfunction:: ezgl::translate_left
:project: ezgl

.. doxygenfunction:: ezgl::translate_right
:project: ezgl
5 changes: 5 additions & 0 deletions doc/src/api/ezgl/graphics.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
========
Graphics
========
.. doxygenfile:: graphics.hpp
:project: ezgl
20 changes: 20 additions & 0 deletions doc/src/api/ezgl/index.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
.. _ezgl:

====
EZGL
====

EZGL is a graphics layer on top of version 3.x of the GTK graphics library. It allows drawing in an arbitrary 2D world coordinate space (instead of in pixel coordinates), handles panning and zooming automatically, and provides easy-to-use functions for common tasks like setting up a window, setting graphics attributes (like colour and line style) and drawing primitives (like lines and polygons). Most of VPR's drawing is performed in ezgl, and GTK functionality not exposed by ezgl can still be accessed by directly calling the relevant gtk functions.

.. toctree::
:maxdepth: 1

application
callback
camera
canvas
color
control
graphics
point
rectangle
6 changes: 6 additions & 0 deletions doc/src/api/ezgl/point.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
=====
Point
=====
.. doxygenfile:: point.hpp
:project: ezgl

5 changes: 5 additions & 0 deletions doc/src/api/ezgl/rectangle.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
=========
Rectangle
=========
.. doxygenfile:: rectangle.hpp
:project: ezgl
1 change: 1 addition & 0 deletions doc/src/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -155,6 +155,7 @@
"odin_ii": "../_build/doxygen/odin_ii/xml",
"blifexplorer": "../_build/doxygen/blifexplorer/xml",
"librrgraph": "../_build/doxygen/librrgraph/xml",
"ezgl": "../_build/doxygen/ezgl/xml"
}
breathe_default_project = "vpr"

Expand Down
1 change: 1 addition & 0 deletions doc/src/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@ For more specific documentation about VPR see :ref:`vpr`.

api/vpr/index
api/vtrutil/index
api/ezgl/index
api/vprinternals/index

Indices and tables
Expand Down