cdk_util - Man Page

Cdk utility functions

Synopsis

cc [ flag ... ] file ... -lcdk [ library ... ]

#include <cdk.h>

    int CDKchdir (
const char *directory);
    int CDKgetDirectoryContents (
const char *directory,
char ***list);
    int CDKopenFile (
const char *filename,
char *mode);
    int CDKreadFile (
const char *filename,
char ***info);
    void alignxy (
WINDOW *window,
int *xpos,
int *ypos,
int boxWidth,
int boxHeight);
    chtype *char2Chtype (
const char *string,
int *length,
int *align);
    EDisplayType char2DisplayType (
const char *string);
    int checkForLink (
const char *line,
char *filename);
    char *chtype2String (
const chtype *string);
    void deleteCursesWindow (
WINDOW *window);
    void eraseCursesWindow (
WINDOW *window);
    int getListIndex (
CDKSCREEN *screen,
const char *title,
CDK_CONST char **list,
int listSize,
boolean numbers);
    char *getString (
CDKSCREEN *screen,
const char *title,
const char *label,
const char *init);
    int justifyString (
int fieldWidth,
int mesglen,
int justify);
    int mode2Filetype (
mode_t fileMode);
    void moveCursesWindow (
WINDOW *window,
int xdiff,
int ydiff);
    int popupDialog (
CDKSCREEN *screen,
CDK_CONST char **mesg,
int mesgCount,
CDK_CONST char **buttons,
int buttonCount);
    void popupLabel (
CDKSCREEN *win,
CDK_CONST char **mesg,
int count);
    void popupLabelAttrib (
CDKSCREEN *win,
CDK_CONST char **mesg,
int count,
chtype attribute);
    char *selectFile (
CDKSCREEN *screen,
const char *title);
    int setWidgetDimension (
int parentDim,
int proposedDim,
int adjustment);
    void stripWhiteSpace (
EStripType stripType,
char *string);
    int viewFile (
CDKSCREEN *screen,
const char *title,
const char *filename,
CDK_CONST char **buttons,
int buttonCount);
    int viewInfo (
CDKSCREEN *screen,
const char *title,
CDK_CONST char **info,
int size,
CDK_CONST char **buttons,
int buttonCount,
boolean interpret);

Description

These are utility functions that one may use to initialize, build or customize widgets.

Available Functions

CDKchdir

Change working directory to the given path, possibly expanding tilde (~) and wildcards (*). It returns zero on success.

CDKgetDirectoryContents

opens and reads the contents of the given directory, filling the array list with the sorted contents of the directory. If the directory cannot be opened then it returns a value of -1.

CDKopenFile

Open the file, possibly expanding tilde (~) and wildcards (*). It returns a FILE pointer.

CDKreadFile

Read the file filename, load the contents into a dynamically allocated array, storing its address via info. It returns the number of lines read if the file could be opened, -1 otherwise.

alignxy

Aligns a box on the given window with the height and width given. See cdk_position (3) for the interpretation of the xpos, ypos, boxWidth and boxHeight, parameters.

char2Chtype

Translate a character string with embedded format markers (e.g., “</X/Y>Blah Blah”) to a null-terminated array of chtype's.

  • The length of the array is stored via the length parameter.
  • The align parameter contains justification information (LEFT, CENTER, RIGHT).

    The caller is responsible for freeing the result.

See cdk_display(3) for details on formatting.

char2DisplayType

Lookup the given name in string and return the equivalent display type. See also cdk_display (3).

checkForLink

Check if the given line is of the form
<F=filename>

If so, extract the filename from the line, storing it in the filename buffer (which must hold at least CDK_PATHMAX characters). Return nonzero if a filename is extracted.

chtype2String

Extract the characters and formatting information from a null-terminated array of chtype's string. A dynamically allocated string is returned.

See cdk_display(3) for details on Cdk's formatting.

In addition, this function supports a feature needed to represent multi-line title strings returned by getCdkTitle (see cdk_objs(3)). Each newline separating lines in the title is represented by “<#10>” to allow Cdk to display the string in a text field.

deleteCursesWindow

Safely delete a given window, i.e., first check if the window parameter is nonnull.

eraseCursesWindow

Safely erase a given window, i.e., first check if the window parameter is nonnull.

getListIndex

Display a scrollable list of strings in a dialog, allow the user to select one. Return the index in the list of the value selected.

  • The list parameter contains the strings to display; there are listSize strings in the list.
  • If numbers is true, the displayed list items will be numbered.
getString

pops up an entry widget with

  • a title supplied by the value of the title parameter,
  • a label supplied by the label parameter, and
  • an initial value supplied by the initialValue parameter.

It returns a pointer to the value typed in or NULL if the widget was exited early.

justifyString

Given a string length mesglen, the available field width fieldWidth and a justification type justify, return the number of characters by which to shift the string.

mode2Filetype

Given a file protection mode fileMode, return ignoring the file-type bits, i.e., ignoring the corresponding permissions data.

moveCursesWindow

Move a given window by the amounts in xdiff and ydiff.

popupDialog

creates a quick pop-up dialog box. Pass in

  • the message in the mesg parameter,
  • the size of the message in the mesgCount parameter,
  • the button labels in the buttons parameter and
  • the number of buttons in the buttonCount parameter.

The dialog box will be centered on the screen.

popupLabel

creates a quick pop-up label widget.

The message and the size of the message are passed in via the mesg and count parameters respectively.

The label widget waits until the user hits a character and is centered on the screen.

popupLabelAttrib

Display a simple dialog with a list of count message strings mesg. Use the given attribute for the background of the dialog.

selectFile

Display a file-selection dialog. Return the selected filename, or null if none is selected. The caller should free the return-value.

setWidgetDimension

This is a helper function used to set the height/width of a widget:

  • If the proposed dimension proposedDim is FULL or zero, the return value will be parentDim.
  • If the proposed dimension proposedDim is positive,

    • and it is larger than parentDim, return proposedDim,
    • otherwise return proposedDim plus adjustment.
  • If the proposed dimension proposedDim is negative, the return value will be parentDim plus proposedDim.
  • Otherwise, the return value will be proposedDim.
stripWhiteSpace

Strip whitespace from the front and/or back of the given string.

The stripType parameter controls the type of stripping done: vFRONT, vBACK or vBOTH.

viewFile

Read the file specified by filename and display it in a CDKVIEWER window. The title, buttons and buttonCount are applied to the CDKVIEWER window.

  • The viewer shows the contents of the file supplied by the filename value.
  • The buttons on the file viewer are supplied by the buttons parameter.

It returns the index of the button selected, or -1 if the file does not exist or if the widget was exited early.

Strip_TypeResult
vFRONTThis tells the function to remove all of the white space from the front of the given string.
vBACKThis tells the function to remove all of the white space from the back of the given string.
vBOTHThis tells the function to remove all of the white space from both the front and the back of the given string.
viewInfo

Display the list of strings in info in a CDKVIEWER window. The number of strings is given by size. The title, buttons and buttonCount are applied to the CDKVIEWER window.

See Also

cdk_dialog(3), cdk_display(3), cdk_misc(3), cdk_objs(3), cdk_position(3).

Referenced By

cdk_compat(3), cdk_display(3), cdk_draw(3), cdk_misc(3).

The man pages alignxy(3), CDKchdir(3), CDKgetDirectoryContents(3), CDKopenFile(3), CDKreadFile(3), char2Chtype(3), char2DisplayType(3), checkForLink(3), chtype2String(3), deleteCursesWindow(3), eraseCursesWindow(3), getListIndex(3), getString(3), justifyString(3), mode2Filetype(3), moveCursesWindow(3), popupDialog(3), popupLabel(3), popupLabelAttrib(3), selectFile(3), setWidgetDimension(3), stripWhiteSpace(3), viewFile(3) and viewInfo(3) are aliases of cdk_util(3).

2024-03-31 Library calls