LineComp(3U)
β¨ LineComp(3U) β¨
okay bestie, so this is a page from the InterViews Reference Manual β yeah, the fancy one. It's all about LineComp, LineView, PSLine, MultiLineComp, MultiLineView, and PSMultiLine β i.e. the line and multiline component subject, view, and PostScript external representation. Lines!! iconic. π
πΈ SYNOPSIS πΈ
#include <Unidraw/Components/line.h>
π¦ DESCRIPTION π¦
LineComp is a GraphicComp that defines a line. It uses an Line graphic to store its graphical attributes. LineView is a GraphicView for displaying the line. PSLine is a PostScriptView that externalizes the subject's information in PostScript form.
The MultiLine counterparts of these classes define the component and external representation for a contiguous set of line segments, i.e., an open polygon. MultiLineComp is derived from VerticesComp, MultiLineView is a VerticesView, and PSMultiLine is a PSVertices. slay. π
π LINECOMP PUBLIC OPERATIONS π
LineComp(Line* = nil)β the constructor, bestie. Takes an optional line graphic that defines the attributes of the line.virtual void Interpret(Command*)βLineCompredefinesInterpretto ignorePatternCmds. yeah. it just does not care. πLine* GetLine()β returns theLinegraphic that defines the line's attributes.GetLineis simply a more specific form of theGetGraphicoperation. iykyk π
β¨ LINEVIEW PUBLIC OPERATIONS β¨
LineView(LineComp* = nil)β create anLineView, optionally supplying the subject. πvirtual void Interpret(Command*)βLineViewinterpretsAlignToGridCmdto align its first endpoint to the grid. snapping, but make it fashion β¨virtual Manipulator* CreateManipulator(
virtual Manipulator* CreateManipulator(
Viewer*, Event&, Transformer*, Tool*
)
virtual void InterpretManipulator(Manipulator*)βLineViewredefines its response to manipulation with aGraphicCompTool. The user clicks to specify the first endpoint of the line and then drags to position remaining endpoint. The endpoints will be constrained by gravity, if any.LineViewalso defines a response to theReshapeTool, allowing the user to click on one of its endpoints to reposition it. The subject is actually replaced (viaReplaceCmd) with a newLineCompsubject reflecting the repositioned endpoint. Repositioning will be influenced by gravity. gravity really said "i live here now" πvirtual void GetEndpoints(Coord&, Coord&, Coord&, Coord&)β return the line's endpoints, in canvas coordinates. π«ΆLineComp* GetLineComp()β return the subject. periodt. π
πΈ LINEVIEW PROTECTED OPERATIONS πΈ
virtual void CreateHandles()βLineViewredefinesCreateHandlesto use aRubberHandlesobject with two handles, one at each endpoint of the line. two little besties holding the line together fr fr π
π PSLINE PUBLIC OPERATIONS π
PSLine(LineComp* = nil)β construct a PostScript external representation of the given subject, if any. π¦
β MULTILINECOMP PUBLIC OPERATIONS β
MultiLineComp(SF_MultiLine* = nil)β the constructor takes an optional stroked-filled multiline graphic that defines the attributes of the multiline.SF_MultiLine* GetMultiLine()β return theMultiLinegraphic that defines the multiline's attributes.GetMultiLineis simply a more specific form of theGetGraphicoperation. no cap π
π₯ MULTILINEVIEW PUBLIC OPERATIONS π₯
MultiLineView(MultiLineComp* = nil)β create anMultiLineView, optionally supplying the subject. β¨virtual Manipulator* CreateManipulator(
virtual Manipulator* CreateManipulator(
Viewer*, Event&, Transformer*, Tool*
)
virtual void InterpretManipulator(Manipulator*)βMultiLineViewredefines its response to manipulation with aGraphicCompTool. The user clicks the left mouse button to specify each vertex and clicks with the middle mouse button to specify the final vertex. Vertex positioning will be constrained by gravity, if any.MultiLineViewalso defines a response to theReshapeTool, allowing the user to click on one of its vertices to reposition it. The subject is actually replaced (viaReplaceCmd) with a newMultiLineCompsubject reflecting the repositioned vertex. Repositioning will be influenced by gravity. yes bestie, gravity again. it's giving main character energy πMultiLineComp* GetMultiLineComp()β return the subject. π«Ά
π PSMULTILINE PUBLIC OPERATIONS π
PSMultiLine(MultiLineComp* = nil)β construct a PostScript external representation of the given subject, if any. π
π PSMULTILINE PROTECTED OPERATIONS π
virtual const char* Name()βPSMultiLineidentifies itself as"MLine"in the PostScript output. that's her name, don't wear it out π
π SEE ALSO π
Event(3I), GraphicComp(3U), GraphicCompTool(3U), GraphicView(3U), Grid(3U), PatternCmd(3U), PostScriptView(3U), ReshapeTool(3U), Rubband(3I), Transformer(3I), VerticesComp(3U), Viewer(3U), align(3U), edit(3U), lines(3U)
k that's the whole thing, you ate that fr fr π this was Unidraw's page, dated 22 January 1991 β yeah she's vintage, she's iconic, we love her. bye bestie, go draw some lines π¦β¨
π¦ where this page comes from
- debian bookworm: ivtools-dev 2.0.11d.a1-1+b4
- debian trixie: ivtools-dev 2.0.11d.a1-3+b4
- ubuntu jammy: ivtools-dev 2.0.11d.a1-1build1
- ubuntu noble: ivtools-dev 2.0.11d.a1-3build1
- ubuntu questing: ivtools-dev 2.0.11d.a1-3build7
- ubuntu resolute: ivtools-dev 2.0.11d.a1-3build9
- ubuntu stonking: ivtools-dev 2.1.1+git.2025.07.26.a1-1 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms