{-# LANGUAGE CPP #-}
-- Syntax for existential quantification varies:
-- | Programmers' index. There is very little documentation here. See the
-- <http://www.altocumulus.org/Fudgets/Manual/ Fudget Library Reference Manual>
-- instead.
module Fudgets(
-- * GUI
buttonF, border3dF, buttonBorderF, pushButtonF,
BMevents(..),
popupMenuF, Click(..),
radioGroupF, radioGroupF', intF, passwdF, stringF,
intInputF, stringInputF, passwdInputF,
intInputF', stringInputF', passwdInputF',
toggleButtonF,
-- ** Popups
inputPopupOptF, inputPopupF,
passwdPopupOptF, passwdPopupF, stringPopupOptF, stringPopupF,
confirmPopupF, ConfirmMsg(..), oldConfirmPopupF, oldMessagePopupF,
messagePopupF, intDispF, displayF, labelF,
-- ** Text editor
EditStop(..), editF,
EditEvt(..), EditCmd(..), editorF, editorF', selectall, loadEditor,
newline, EDirection(..), inputEditorF, inputEditorF', EditorF,
EditStopFn(..), EditStopChoice(..), IsSelect(..),setEditorCursorPos,
-- ** List and text
oldFilePickF, PickListRequest(..),
textF, textF',-- textF'',
TextRequest(..), TextF, HasInitText(..), HasSizing(..),Sizing(..),
ListRequest(..),
replaceAll, replaceAllFrom, deleteItems, insertItems, appendItems,
changeItems, replaceItems, highlightItems, pickItem, applyListRequest,
smallPickListF, labRightOfF, labLeftOfF, labBelowF, labAboveF,
tieLabelF, menuF, PopupMenu(..), menuPopupF,
pickListF, moreShellF,pickListF', moreShellF',
moreFileShellF, moreFileF, moreF, moreF',
terminalF, cmdTerminalF, TerminalCmd(..),
-- ** Graphics
hyperGraphicsF, hyperGraphicsF',GraphicsF,setAdjustSize,
-- * Fudgets and combinators
contDynF,
Fudget(..), F, --F(..),
listF,
untaggedListF, loopCompF, loopCompSP, loopF, loopLeftF, loopRightF, loopOnlyF,
loopThroughRightF, loopCompThroughLeftF, loopCompThroughRightF,
loopThroughBothF,
--Message,
delayF, getF, putF, putsF, startupF, appendStartF,
nullF, parF, prodF, absF, bypassF, concatMapF, idF, idLeftF,
idRightF, mapF, mapstateF, serCompLeftToRightF, serCompRightToLeftF, stubF,
throughF, toBothF, (>*<), (>+<), (>=^<), (>=^^<),
(>#+<), (>#==<), (>==<), (>^=<), (>^^=<),
prepostMapHigh,
quitIdF, quitF,
DynFMsg(..), dynF, dynListF, DynMsg(..), --Either(..),
FudgetIO(..),
--Fa(..),Direction, TCommand(..),TEvent(..),
{- FCommand(..), FEvent(..), K(..), KCommand(..), KEvent(..),
TCommand(..), TEvent(..), -}
-- ** Input
InF(..), InputMsg(..), inputDoneSP, inputLeaveDoneSP,
inputListSP, inputPairSP, inputThroughF, inputPairF, inputListF, inputChange,
inputListLF, inputPairLF, -- obsolete
stripInputSP,
inputButtonKey, inputLeaveKey, inputMsg, mapInp, stripInputMsg,
inputDone, inputLeaveDone,
tstInp,
-- * Layout
Orientation(..),
alignF, marginHVAlignF, layoutModifierF, noStretchF,
marginF, sepF,
autoP, flipP, permuteP, revP, idP,
Alignment(..), aBottom, aCenter, aLeft, aRight, aTop,
-- barP, rightBelowP,
dynListLF, LayoutDir(..),
listLF, nullLF, holeF,
--rbLayoutF,
untaggedListLF, LayoutRequest,
Placer, center, center', fixedh, fixedv, flipPoint,
flipRect, flipReq,
NameLayout, LName(..),hvAlignNL, marginHVAlignNL, hBoxNL, hBoxNL',
nullNL, leafNL, spaceNL, placeNL,
listNF, modNL, nameF, nameLayoutF, sepNL, marginNL, vBoxNL, vBoxNL',
hBoxF, matrixF, placerF, spacerF, spacer1F, revHBoxF, revVBoxF, spacerP,
tableF, vBoxF, horizontalP, horizontalP', matrixP, matrixP',
verticalP, verticalP',paragraphP,paragraphP',paragraphP'',
dynPlacerF, dynSpacerF, -- There are pitfalls with using these...
Distance(..), Spacer, bottomS, centerS, compS, flipS,
hAlignS, sizeS, maxSizeS, minSizeS, hCenterS, hMarginS, marginHVAlignS,
hvAlignS, hvMarginS, idS, leftS, marginS, sepS, noStretchS,
rightS, topS, vAlignS, vCenterS, vMarginS, tableP, tableP', bubbleF,
bubblePopupF, bubbleRootPopupF, shellF, PotRequest(..), PotState(..),
containerGroupF, hPotF, vPotF, popupShellF, popupShellF', PopupMsg(..),
posPopupShellF, hScrollF, scrollF, scrollShellF, vScrollF,
ESelCmd(..), ESelEvt(..), SelCmd(..), SelEvt(..), eselectionF,
selectionF, allcacheF,
{-
bitmapdatacacheF, bitmapfilecacheF,
colorcacheF, fontcacheF, fontcursorcacheF, fstructcacheF, gCcacheF,
-}
doubleClickF, Time(..),
-- * Stream processors
-- ** Combining stream processors
(-+-),(-*-),(-==-),
compEitherSP, idLeftSP, idRightSP, postMapSP, preMapSP,
prepostMapSP, serCompSP, loopLeftSP, loopSP, loopOnlySP, loopThroughRightSP,
loopThroughBothSP,
parSP, seqSP,
-- ** Stream processor primitives
SP,nullSP,putSP,putsSP,getSP,
StreamProcIO(..),runSP, walkSP, pullSP,
{-SPm(..), bindSPm, getSPm, monadSP, nullSPm, putsSPm, thenSPm, toSPm, unitSPm,-}
-- ** Convenient stream processors
idSP, filterSP, filterJustSP, filterLeftSP, filterRightSP, mapFilterSP,
splitSP, toBothSP,
concatSP, concSP,
mapSP, concatMapSP, concmapSP,
concatMapAccumlSP, mapstateSP, mapAccumlSP,
zipSP,
-- ** Stream processor behaviour
Cont(..),
appendStartSP, chopSP, delaySP, feedSP,
splitAtElemSP, startupSP, stepSP,
cmdContSP, conts, getLeftSP, getRightSP, waitForSP, waitForF, dropSP, contMap,
-- * System (stdio, files, network, subprocesses)
-- ** Dialogue IO
hIOF,
hIOSuccF, hIOerrF, haskellIOF,
inputLinesSP, linesSP,
-- ** Stdio
outputF, stderrF, stdinF,
stdioF, stdoutF,
-- ** Subprocesses
subProcessF,
-- ** Files and directories
appStorageF,
readDirF, readFileF, writeFileF,
-- ** Sockets
Host(..), LSocket(..), Peer(..), Port(..), Socket(..),
openLSocketF,
openSocketF, receiverF, transceiverF, transmitterF, asyncTransmitterF,
asyncTransceiverF,
-- ** Timer
Tick(..), timerF,
--dropF,
-- ** Running a fudget
fudlogue, fudlogue', Fudlogue,
-- * Command line, environment and defaults
argFlag, argKey, argReadKey, argKeyList, args, progName,
bgColor, buttonFont, defaultFont, defaultSize,
defaultPosition, defaultSep, edgeWidth, fgColor, labelFont, look3d,
menuFont, options, paperColor, shadowColor, shineColor,
-- * Utilities for the Either type
filterLeft, filterRight, isLeft, isRight, mapEither,
fromLeft, fromRight, plookup, splitEitherList, stripEither, stripLeft,
-- mapfilter, isM, stripMaybe, stripMaybeDef,
-- use Maybe.mapMaybe,isJust,fromJust,fromMaybe!
stripRight, swapEither,
-- * Geometry
(=.>),
Line(..), Point(..), Rect(..), Size(..), Move(..), confine, diag, freedom,
growrect, inRect, lL, line2rect, moveline, moverect, origin, pMax,
pMin, pP, padd, plim, pmax, pmin, posrect, psub, rR, rect2line,
rectMiddle,
rmax, rsub, scale, scalePoint, sizerect,
--xcoord, ycoord, rectpos, rectsize,
-- * Utilities
aboth, anth, gmap, -- afst, asnd, dropto,
issubset, lhead, loop, lsplit, ltail, mapPair, number, oo, pair,
pairwith, part, remove, replace, swap, unionmap, module FudVersion,
-- * Xlib types
XCommand, XEvent, Path(..),
Button(..), ColorName(..), FontName(..), KeySym(..), FontStruct, RGB(..),
WindowAttributes,
ModState(..), Modifiers(..),
-- * Graphics and drawings
CoordMode(..),Shape(..),
DrawCommand(..),fillCircle,drawCircle,
Graphic(..),
Drawing(..),atomicD,labelD,up,boxD,hboxD,hboxD',vboxD,vboxD',tableD,tableD',
hboxcD,hboxcD',vboxlD,vboxlD',matrixD,matrixD',
attribD,softAttribD,hardAttribD,fontD,fgD,stackD,spacedD,placedD,
blankD,filledRectD,rectD,
DPath(..),
Gfx,
g,
FixedDrawing(..),FixedColorDrawing(..),gctx2gc,
FlexibleDrawing(..),flex,flex',
filler,hFiller,vFiller,frame,frame',ellipse,ellipse',arc,arc',
filledEllipse,filledEllipse',filledarc,filledarc',
lpar,rpar,lbrack,rbrack,lbrace,rbrace,
triangleUp,triangleDown,filledTriangleUp,filledTriangleDown,
BitmapFile(..),
ColorGen(..),FontGen(..),FontSpec,ColorSpec,--Name(..),--ColorFallback(..),
colorSpec,fontSpec,
GCtx,rootGCtx,wCreateGCtx,createGCtx,gcFgA,gcBgA,gcFontA,
GCAttributes(..),GCFillStyle(..),GCCapStyle(..),GCLineStyle(..),GCFunction(..),
Width(..),
-- * Customisation
Customiser(..), PF(..), standard,
HasClickToType(..), HasVisible(..), HasFontSpec(..), setFont,
HasKeys(..), HasWinAttr(..), --HasTitle(..),
HasBorderWidth(..), HasBgColorSpec(..), HasFgColorSpec(..), HasMargin(..),
setBgColor,setFgColor,
HasAlign(..),
{- HasAllowedChar(..), HasShowString(..), -}
setAllowedChar, setShowString, setCursorPos,
HasCache(..),
setDeleteQuit,setDeleteWindowAction,DeleteWindowAction(..),--HasDeleteQuit(..),
HasInitSize(..),
HasInitDisp(..),
--setInitDisp, getInitDisp,
setSpacer,
HasStretchable(..),
HasLabelInside(..),setPlacer,
ShellF, shellF', setInitPos,
unmappedSimpleShellF, unmappedSimpleShellF',
ButtonF, buttonF', buttonF'', setLabel,
DisplayF, displayF',-- displayF'',
labelF', --labelF'',
StringF, stringF', stringF'', setInitString, setInitStringSize,
passwdF', passwdF'',
intF', intF'',
intDispF', --intDispF'',
-- * Miscellaneous
gcWarningF,bellF,
--D_IOError,
-- * Time
getTime,getLocalTime,
-- * Debugging
spyF,teeF, ctrace,showCommandF) where
import AllFudgets -- hiding (Cont,PCont,Fa)
import FudVersion
-- I hate this file /TH
-- I still hate this file /TH