view: single: ExpandLeft(chars) ExpandRight(chars) ExpandTop(chars) ExpandBottom(chars) ShrinkLeft(chars) ShrinkRight(chars) ShrinkTop(chars) ShrinkBottom(chars) QueryWidth -> chars QueryHeight -> chars multi: SplitVertically(chars) SplitHorizontally(chars) JoinWithLeft JoinWithRight JoinWithTop JoinWithBottom QueryLeftView -> view QueryRightView -> view QueryTopView -> view QueryBottomView -> view IsOnlyViewInGroup -> bool MakeOnlyViewInGroup FocusToView link: QueryViewGroup -> viewgroup viewgroup: single: Close Create(frame,buffer) -> viewgroup multi: QueryNextViewGroup -> viewgroup QueryPreviousViewGroup -> viewgroup link: QueryFrame -> frame QueryActiveView -> view QueryBuffer -> buffer frame: single: QueryState -> minimized/normal/maximized SetState(minimized/normal/maximized) Create -> frame Close MoveToFront MoveToBack multi: QueryNextFrame -> frame QueryPreviousFrame -> frame link: QueryActiveViewGroup -> viewgroup SetActiveViewGroup(viewgroup) buffer: single: Create -> buffer Delete SplitLine(line,col) JoinLine(line) RemoveLine(line) AppendLine InsertChar(line,col,char) InsertString(line,col,string,chars) QueryLineCount -> lines QueryString(line,col,chars) -> string QueryLineLength(line) -> chars QueryFilename -> filename SetFilename(filename) Invalidate(xstart,ystart,xend,yend) Lock Unlock multi: QueryFirstBuffer -> buffer QueryNextBuffer(buffer) -> buffer QueryPreviousBuffer(buffer) -> buffer marks: Create(view,where,markname,line,column) -> mark Find(view,markname) -> mark Delete QueryLine QueryColumn QueryPosition SetLine(line) SetColumn(line) SetPosition(line,column) Copy(mark,mark) misc: StartLengthyTask(buffer,callback,extraparm) ReadFile(buffer,filename); SaveFile(buffer,filename); ShowOpenDialog(frame) ShowSaveAsDialog(buffer) ShowSearchDialog(view) StartExit config/state/mode: Create(context,propname,where,type,value) Delete(context,propname) Query(context,propname) -> value Set(context,propname,value) context::= view viewgroup buffer frame callbacks ---Syntax highlighting--------------------------------------------------------- QuerySyntaxClasses -> classlist classlist::= {classinfo} classinfo::= classname+deffgcolor+defbgcolor+deffontattr ClassifySyntax -> continuescan/stopscan scandirection fullfilename fileextension context classbuffer classbufferyorigin classbufferxorigin classbufferheight classbufferwidth areayorigin areaxorigin areaheight areawidth extra ---Command--------------------------------------------------------------------- QueryCommands -> commandlist commandlist::= {commandinfo} commandinfo::= name + putwhere + callback (+bitmapid) putwhere::= menu/speedbar/contextmenu commandcallback context ---Keyboard-------------------------------------------------------------------- ProcessKeyboardEvent -> continuescan/stopscan scandirection fullfilename fileextension context action (processevent/cancelmode) native message ---File I/O-------------------------------------------------------------------- ReadFileIntoBuffer -> continuescan/stopscan, result scandirection fullfilename fileextension buffer context ===Operation library========================================================== Cut,Copy,Paste