aboutsummaryrefslogtreecommitdiff
path: root/nx-X11/include/DPS/FontSB.h
diff options
context:
space:
mode:
Diffstat (limited to 'nx-X11/include/DPS/FontSB.h')
-rw-r--r--nx-X11/include/DPS/FontSB.h287
1 files changed, 287 insertions, 0 deletions
diff --git a/nx-X11/include/DPS/FontSB.h b/nx-X11/include/DPS/FontSB.h
new file mode 100644
index 000000000..d37d126c7
--- /dev/null
+++ b/nx-X11/include/DPS/FontSB.h
@@ -0,0 +1,287 @@
+/*
+ * FontSB.h
+ *
+ * (c) Copyright 1991-1994 Adobe Systems Incorporated.
+ * All rights reserved.
+ *
+ * Permission to use, copy, modify, distribute, and sublicense this software
+ * and its documentation for any purpose and without fee is hereby granted,
+ * provided that the above copyright notices appear in all copies and that
+ * both those copyright notices and this permission notice appear in
+ * supporting documentation and that the name of Adobe Systems Incorporated
+ * not be used in advertising or publicity pertaining to distribution of the
+ * software without specific, written prior permission. No trademark license
+ * to use the Adobe trademarks is hereby granted. If the Adobe trademark
+ * "Display PostScript"(tm) is used to describe this software, its
+ * functionality or for any other purpose, such use shall be limited to a
+ * statement that this software works in conjunction with the Display
+ * PostScript system. Proper trademark attribution to reflect Adobe's
+ * ownership of the trademark shall be given whenever any such reference to
+ * the Display PostScript system is made.
+ *
+ * ADOBE MAKES NO REPRESENTATIONS ABOUT THE SUITABILITY OF THE SOFTWARE FOR
+ * ANY PURPOSE. IT IS PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY.
+ * ADOBE DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
+ * IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ * NON- INFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL ADOBE BE LIABLE
+ * TO YOU OR ANY OTHER PARTY FOR ANY SPECIAL, INDIRECT, OR CONSEQUENTIAL
+ * DAMAGES OR ANY DAMAGES WHATSOEVER WHETHER IN AN ACTION OF CONTRACT,
+ * NEGLIGENCE, STRICT LIABILITY OR ANY OTHER ACTION ARISING OUT OF OR IN
+ * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ADOBE WILL NOT
+ * PROVIDE ANY TRAINING OR OTHER SUPPORT FOR THE SOFTWARE.
+ *
+ * Adobe, PostScript, and Display PostScript are trademarks of Adobe Systems
+ * Incorporated which may be registered in certain jurisdictions
+ *
+ * Author: Adobe Systems Incorporated
+ */
+/* $XFree86$ */
+
+#ifndef _FontSelectionBox_h
+#define _FontSelectionBox_h
+
+/* New resouce names and classes */
+
+#define XtNcontext "context"
+#define XtCContext "Context"
+#define XtNpreviewString "previewString"
+#define XtCPreviewString "PreviewString"
+#define XtNsizes "sizes"
+#define XtCSizes "Sizes"
+#define XtNsizeCount "sizeCount"
+#define XtCSizeCount "SizeCount"
+#define XtNdefaultResourcePath "defaultResourcePath"
+#define XtCDefaultResourcePath "DefaultResourcePath"
+#define XtNresourcePathOverride "resourcePathOverride"
+#define XtCResourcePathOverride "ResourcePathOverride"
+#define XtNuseFontName "useFontName"
+#define XtCUseFontName "UseFontName"
+#define XtNfontName "fontName"
+#define XtCFontName "FontName"
+#define XtNfontFamily "fontFamily"
+#define XtCFontFamily "FontFamily"
+#define XtNfontFace "fontFace"
+#define XtCFontFace "FontFace"
+#define XtNfontSize "fontSize"
+#define XtCFontSize "FontSize"
+#define XtNfontBlend "fontBlend"
+#define XtCFontBlend "FontBlend"
+#define XtNfontNameMultiple "fontNameMultiple"
+#define XtCFontNameMultiple "FontNameMultiple"
+#define XtNfontFamilyMultiple "fontFamilyMultiple"
+#define XtCFontFamilyMultiple "FontFamilyMultiple"
+#define XtNfontFaceMultiple "fontFaceMultiple"
+#define XtCFontFaceMultiple "FontFaceMultiple"
+#define XtNfontSizeMultiple "fontSizeMultiple"
+#define XtCFontSizeMultiple "FontSizeMultiple"
+#define XtNgetServerFonts "getServerFonts"
+#define XtCGetServerFonts "GetServerFonts"
+#define XtNgetAFM "getAFM"
+#define XtCGetAFM "GetAFM"
+#define XtNautoPreview "autoPreview"
+#define XtCAutoPreview "AutoPreview"
+#define XtNpreviewOnChange "previewOnChange"
+#define XtCPreviewOnChange "PreviewOnChange"
+#define XtNundefUnusedFonts "undefUnusedFonts"
+#define XtCUndefUnusedFonts "UndefUnusedFonts"
+#define XtNmaxPendingDeletes "maxPendingDeletes"
+#define XtCMaxPendingDeletes "MaxPendingDeletes"
+#define XtNmakeFontsShared "makeFontsShared"
+#define XtCMakeFontsShared "MakeFontsShared"
+#define XtNshowSampler "showSampler"
+#define XtCShowSampler "ShowSampler"
+#define XtNshowSamplerButton "showSamplerButton"
+#define XtCShowSamplerButton "ShowSamplerButton"
+#define XtNtypographicSort "typographicSort"
+#define XtCTypographicSort "TypographicSort"
+#define XtNokCallback "okCallback"
+#define XtNapplyCallback "applyCallback"
+#define XtNresetCallback "resetCallback"
+#ifndef XtNcancelCallback
+#define XtNcancelCallback "cancelCallback"
+#endif
+#define XtNvalidateCallback "validateCallback"
+#define XtNfaceSelectCallback "faceSelectCallback"
+#define XtNvalueChangedCallback "valueChangedCallback"
+#define XtNcreateSamplerCallback "createSamplerCallback"
+#define XtNcreateCreatorCallback "createCreatorCallback"
+
+/* Read-only resources for all the subwidgets */
+
+#define XtNpaneChild "paneChild"
+#define XtNpreviewChild "previewChild"
+#define XtNpanelChild "panelChild"
+#define XtNfamilyLabelChild "familyLabelChild"
+#define XtNfamilyMultipleLabelChild "familyMultipleLabelChild"
+#define XtNfamilyScrolledListChild "familyScrolledListChild"
+#define XtNfaceLabelChild "faceLabelChild"
+#define XtNfaceMultipleLabelChild "faceMultipleLabelChild"
+#define XtNfaceScrolledListChild "faceScrolledListChild"
+#define XtNsizeLabelChild "sizeLabelChild"
+#define XtNsizeTextFieldChild "sizeTextFieldChild"
+#define XtNsizeOptionMenuChild "sizeOptionMenuChild"
+#define XtNsizeMultipleLabelChild "sizeMultipleLabelChild"
+#define XtNsamplerButtonChild "samplerButtonChild"
+#define XtNpreviewButtonChild "previewButtonChild"
+#define XtNseparatorChild "separatorChild"
+#define XtNokButtonChild "okButtonChild"
+#define XtNapplyButtonChild "applyButtonChild"
+#define XtNresetButtonChild "resetButtonChild"
+#define XtNcancelButtonChild "cancelButtonChild"
+#define XtNmultipleMasterButtonChild "multipleMasterButtonChild"
+
+/* New resource types */
+
+#define XtRFloatList "FloatList"
+#define XtRDPSContext "DPSContext"
+
+/* Class record constants */
+
+extern WidgetClass fontSelectionBoxWidgetClass;
+
+typedef struct _FontSelectionBoxRec *FontSelectionBoxWidget;
+
+typedef enum {FSBNone, FSBOne, FSBMultiple} FSBSelectionType;
+typedef enum {FSBOK, FSBApply, FSBReset, FSBCancel,
+ FSBValueChanged} FSBCallbackReason;
+
+typedef struct {
+ FSBCallbackReason reason;
+ String family;
+ String face;
+ float size;
+ String name;
+ String afm_filename;
+ FSBSelectionType family_selection;
+ FSBSelectionType face_selection;
+ FSBSelectionType size_selection;
+ FSBSelectionType name_selection;
+ Boolean afm_present;
+ Boolean unused;
+ String blend;
+ String base_name;
+ float axis_percent[4];
+} FSBCallbackRec;
+
+typedef struct {
+ FSBCallbackReason reason;
+ String family;
+ String face;
+ float size;
+ String name;
+ String afm_filename;
+ FSBSelectionType family_selection;
+ FSBSelectionType face_selection;
+ FSBSelectionType size_selection;
+ FSBSelectionType name_selection;
+ Boolean afm_present;
+ Boolean doit;
+ String blend;
+ String base_name;
+ float axis_percent[4];
+} FSBValidateCallbackRec;
+
+typedef struct {
+ String *available_faces;
+ int num_available_faces;
+ String current_face;
+ String new_face;
+} FSBFaceSelectCallbackRec;
+
+typedef struct {
+ Widget sampler;
+ Widget sampler_shell;
+} FSBCreateSamplerCallbackRec;
+
+typedef struct {
+ Widget creator;
+ Widget creator_shell;
+} FSBCreateCreatorCallbackRec;
+
+typedef enum {FSBAddBlend, FSBReplaceBlend, FSBDeleteBlend} FSBBlendAction;
+
+/* Convenience and info routines */
+
+#if defined(__cplusplus) || defined(c_plusplus)
+extern "C" {
+#endif
+
+/* Note use of Bool and double in prototypes: this makes the library
+ work correctly when linked with no-prototype compiled objects */
+
+extern void FSBSetFontName(Widget w,
+ String font_name,
+ Bool font_name_multiple);
+
+extern void FSBSetFontFamilyFace(Widget w,
+ String font_family, String font_face,
+ Bool font_family_multiple,
+ Bool font_face_multiple);
+
+extern void FSBSetFontSize(Widget w, double font_size,
+ Bool font_size_multiple);
+
+extern void FSBRefreshFontList(Widget w);
+
+extern void FSBGetFamilyList(Widget w, int *count_return,
+ String **family_return);
+
+extern void FSBGetFaceList(Widget w, String family, int *count_return,
+ String **face_return, String **font_return);
+
+extern void FSBUndefineUnusedFonts(Widget w);
+
+extern Boolean FSBDownloadFontName(Widget w, String font_name);
+
+extern Boolean FSBMatchFontFace(Widget w, String old_face, String new_family,
+ String *new_face);
+
+extern void FSBFontNameToFamilyFace(Widget w, String font_name,
+ String *family, String *face);
+
+extern void FSBFontFamilyFaceToName(Widget w, String family, String face,
+ String *font_name);
+
+extern String FSBFindAFM(Widget w, String font_name);
+
+extern String FSBFindFontFile(Widget w, String font_name);
+
+extern void FSBGetTextDimensions(Widget w, String text, String font,
+ double size, double x, double y,
+ float *dx, float *dy,
+ float *left, float *right,
+ float *top, float *bottom);
+
+extern void FSBSetFontFamilyFaceBlend(Widget w, String family, String face,
+ String blend, Bool family_multiple,
+ Bool face_multiple);
+
+extern void FSBFontNameToFamilyFaceBlend(Widget w, String font_name,
+ String *family, String *face,
+ String *blend);
+
+extern void FSBFontFamilyFaceBlendToName(Widget w, String family, String face,
+ String blend, String *font_name);
+
+extern void FSBGetBlendList(Widget w, String font_name, int *count_return,
+ String **blend_return, String **font_name_return,
+ float **axis_values_return);
+
+extern void FSBGetBlendInfo(Widget w, String name, int *num_axes_return,
+ int *num_designs_return,
+ String **axis_names_return,
+ float **blend_positions_return,
+ int **blend_map_count_return,
+ int **blend_design_coords_return,
+ float **blend_normalized_coords_return);
+
+extern Boolean FSBChangeBlends(Widget w, String base_name, String blend_name,
+ FSBBlendAction action, int *axis_values,
+ float *axis_percents);
+
+#if defined(__cplusplus) || defined(c_plusplus)
+}
+#endif
+
+#endif /* _FontSelectionBox_h */
+/* DON'T ADD ANYTHING AFTER THIS #endif */