FreeBSD Manual Pages
AG_INTRO(3) Library Functions Manual AG_INTRO(3) NAME AG_Intro -- agar introduction DESCRIPTION Agar is a cross-platform GUI system and framework. It provides a pro- gramming platform and a standard toolkit of widgets from which graphi- cal applications can be built. AGAR-CORE The ag_core library is Agar's non-graphical platform and utility li- brary. It implements the base object system, events / virtual func- tions and timers. It provides cross-platform interfaces to OS services such as filesystems, kernel-based events, timers and threads. To use this library alone (without GUI), link against `agar-core-config --libs'. AG_Config(3) Manage Agar configuration settings. AG_Core(3) Core Agar library initialization. AG_DataSource(3) Data sources and serialization. AG_Db(3) Generic database access methods. AG_DSO(3) Dynamic linker interface. AG_Error(3) Error handling and error-checking memory allocation. AG_Event(3) Event handlers / virtual functions. AG_EventLoop(3) Low-level event loop. Event sources and sinks. AG_Execute(3) File execution interface. AG_File(3) File access routines. AG_Limits(3) Limit constants. AG_Object(3) The Agar object system. AG_String(3) C string specific functions. AG_TextElement(3) Multilanguage dynamic text buffer. AG_Threads(3) Threads interface. AG_Timer(3) The Agar timer facility. AG_Time(3) Monotonically-increasing time sources. AG_User(3) User account information access. AG_Variable(3) Agar object variables. AG_Version(3) Data file versioning. AGAR-GUI: BASE SYSTEM The ag_gui library includes the base Agar GUI system and its standard widget toolkit. To use it, link against `agar-config --libs'. AG_AlphaFn(3) Alpha blending functions. AG_Color(3) Color structure. AG_Cursor(3) Cursor configuration. AG_Driver(3) Driver (backend) interface. AG_DriverSw(3) Driver interface for single-window drivers. AG_DriverMw(3) Driver interface for multi-window drivers. AG_GlobalKeys(3) Application-wide keyboard shortcuts. AG_GL(3) OpenGL-specific functions. AG_GuiDebugger(3) GUI debugging tool. AG_InitGraphics(3) Agar GUI initialization. AG_Keyboard(3) Interface to keyboard status. AG_KeySym(3) Keyboard key definitions. AG_KeyMod(3) Modifier keys definitions. AG_MouseButton(3) Mouse button definitions. AG_StyleSheet(3) Agar's version of cascading style sheets. AG_Surface(3) Graphics surfaces. AG_Text(3) Typography; interface to the font engine. AG_Units(3) Conversion between different unit systems. AG_Widget(3) The base class for Agar widgets (and windows). AG_WidgetPrimitives(3) Rendering primitives for GUI elements. AG_Window(3) The base container for Agar widgets. AGAR-GUI: STANDARD WIDGETS Standard widgets in in ag_gui (unless built with "--disable-widgets"). AG_Box(3) Horizontal/vertical widget container. AG_Button(3) Push-button widget. AG_Checkbox(3) Checkbox widget. AG_Combo(3) Canned text input/drop-down menu widget. AG_Console(3) Scrollable text console widget. AG_DirDlg(3) Directory selection widget. AG_Editable(3) The Agar text editor (plain editable field). AG_FileDlg(3) File selection widget. AG_Fixed(3) Container for fixed position/geometry widgets. AG_FontSelector(3) Font selection widget. AG_GLView(3) Low-level OpenGL context widget. AG_Graph(3) Graph display widget. AG_FixedPlotter(3) Plotter for integral values. AG_HSVPal(3) Hue/saturation/value color picker widget. AG_Icon(3) Drag-and-droppable object that can be inserted into AG_Socket(3) widgets. AG_Label(3) Display a string of text (static or polled). AG_MPane(3) Standard single, dual, triple and quad paned view. AG_Menu(3) Menu widget. AG_Notebook(3) Notebook widget. AG_Numerical(3) Spinbutton widget (for integers or floats). AG_Pane(3) Dual paned view. AG_Pixmap(3) Displays arbitrary surfaces. AG_ProgressBar(3) Progress bar widget. AG_Radio(3) Simple radio group widget (integer). AG_Scrollbar(3) Scrollbar (integer or floating-point). AG_Scrollview(3) Scrollable view. AG_Separator(3) Cosmetic separator widget. AG_Slider(3) Slider control (integer or floating-point). AG_Socket(3) Placeholder for drag-and-droppable AG_Icon(3). AG_Statusbar(3) Specialized statusbar widget. AG_Table(3) Table display widget. AG_Treetbl(3) Tree-based table display widget. AG_Textbox(3) The Agar text editor (an AG_Editable in a box). AG_Tlist(3) Linearized tree / list box widget. AG_Toolbar(3) Specialized button container for toolbars. AG_UCombo(3) Single-button variant of AG_Combo(3). AGAR-MATH The ag_math library is a general-purpose math library which extends Agar with new widgets and support for linear algebra / geometry types. To use this library, link against `agar-math-config --libs'. M_Matrix(3) Matrix operations. Provides optimized methods for sparse matrices (common in scientific applications) as well as 4x4 matrices (common in computer graph- ics). M_Circle(3) Circles in R^2 and R^3. M_Color(3) Mapping between different color spaces. M_Complex(3) Complex-number arithmetic. M_Coordinates(3) Mapping between different coordinate systems. M_Sort(3) Sort algorithms (qsort, heapsort, mergesort, radix- sort) M_IntVector(3) Vector operations for vectors with integer elements. M_String(3) Math-specific extensions to the AG_Printf(3) engine. M_Line(3) Lines, half-lines and line segments. M_Matview(3) Visualization widget for M_Matrix(3). M_Plane(3) Routines related to planes in R^3. M_Plotter(3) General-purpose plotting widget (displays sets of M_Real, M_Vector and M_Complex elements). M_PointSet(3) Operations on sets of points (e.g., convex hull). M_Polygon(3) Operations related to polygons in R^2 and R^3. M_Quaternion(3) Basic quaternion arithmetic. M_Rectangle(3) Routines specific to rectangles in R^2 and R^3. M_Triangle(3) Routines specific to triangles in R^2 and R^3. M_Vector(3) Vectors (optimized R^2, R^3 and R^4 or general R^n). AGAR-NET The ag_net library provides network access methods and implements a modular HTTP/1.1 application server. To use this library, link against `agar-net-config --libs'. AG_Net(3) Interface to network services. AG_Web(3) HTTP/1.1 application server. AGAR-SG The ag_sg library (beta) provides a basic 3D engine. It implements 3D scene-graph, rendering and geometry methods. To use this library, link against `agar-sg-config --libs'. SG(3) Base scene graph object. SG_Image(3) Textured polygon generated from an image surface. SG_Camera(3) Viewpoint in scene (tied to the SG_View(3) widget). SG_CgProgram(3) Vertex/fragment program in the Cg language. SG_Circle(3) Circle (reference geometry). SG_Geom(3) Base class for reference geometry objects. SG_Light(3) Light source. SG_Node(3) Base class for all elements of a SG(3) scene. SG_Object(3) Base class for polyhedral objects (as brep). SG_Plane(3) Plane (reference geometry). SG_Point(3) Single point (reference geometry). SG_Polygon(3) Polygon (reference geometry). SG_PolyBall(3) Sphere (as polyhedral approximation). SG_PolyBox(3) Rectangular box (as polyhedron). SG_Program(3) Base class for vertex or fragment programs. SG_Rectangle(3) Rectangle (reference geometry). SG_Sphere(3) Sphere (reference geometry). SG_Texture(3) Texture compiled from a set of surfaces. SG_Triangle(3) Triangle (reference geometry). SG_View(3) Agar visualization and editor widget for SG(3) scenes. SG_Voxel(3) Voxel object. AGAR-SK The ag_sk library (beta) implements dimensioned 2D sketches with con- straint solving through degree-of-freedom analysis. Sketches contain sets of metric relations (i.e., distances, angles) and logical rela- tions (i.e., coincidence, parallelism, tangency). To use this library, link against `agar-sk-config --libs'. SK(3) Base sketch object. SK_View(3) Agar visualization widget for sketch objects. AGAR-AU The ag_au library (beta) provides a sound interface extends ag_gui with widgets useful in audio applications such as waveform visualizers. To use this library, link against `agar-au-config --libs'. AU(3) Audio library initialization. AU_Wave(3) Structure containing an audio stream. AU_DevOut(3) Interface to audio output device. AGAR-MAP The ag_map library (beta) implements a simple and extensible 2D/3D tile engine. To use this library, link against `agar-map-config --libs'. MAP(3) Base map object. MAP_Actor(3) Map object rendered dynamically. MAP_View(3) Visualization and edition widget. RG(3) Feature-based 2D pixel graphics. RG_Feature(3) Base feature framework. RG_Pixmap(3) A pixmap image element. RG_Sketch(3) A vector sketch element. RG_Texture(3) A texture element. RG_Tile(3) Base tile element. RG_Tileview(3) Edition and visualization widget. AGAR-VG The ag_vg library implements basic 2D vector graphics display. It in- cludes an editor tool framework. Geometrical placement of elements is determined by linear transformations using floating-point methods. To use this library, link against `agar-vg-config --libs'. VG(3) Vector drawing object. VG_View(3) Display and edition widget. VG_Arc(3) Arc entity. VG_Circle(3) Circle entity. VG_Line(3) Line entity. VG_Polygon(3) Polygon entity. VG_Text(3) Text entity. COMMON MANUAL SECTIONS Manual pages are provided for most Agar object classes. Some sections are standard throughout the documentation: INHERITANCE HIERARCHY List of inherited parent classes (see AG_Object(3) for details on inheritance). EVENTS The list of events defined (or raised) by this object (see AG_Event(3) for details on events). STRUCTURE DATA List of public structure members which are safe to access directly. Multithreaded applications must use AG_ObjectLock(3) prior to accessing this data (although in some contexts, such as inside event handler routines, objects can be presumed locked; see AG_Threads(3) for de- tails). SEE ALSO Agar Website: https://libAgar.org/ Agar Patreon: https://patreon.com/libagar Agar GitHub: https://github.com/JulNadeauCA/libagar Agar 1.7 December 21, 2022 AG_INTRO(3)
NAME | DESCRIPTION | AGAR-CORE | AGAR-GUI: BASE SYSTEM | AGAR-GUI: STANDARD WIDGETS | AGAR-MATH | AGAR-NET | AGAR-SG | AGAR-SK | AGAR-AU | AGAR-MAP | AGAR-VG | COMMON MANUAL SECTIONS | SEE ALSO
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=AG_Intro&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>
