Eneboo - Documentación para desarrolladores
|
00001 /**************************************************************************** 00002 ** 00003 ** Copyright (C) 1992-2007 Trolltech ASA. All rights reserved. 00004 ** 00005 ** This file is part of the $MODULE$ of the Qt Toolkit. 00006 ** 00007 ** $LICENSE$ 00008 ** 00009 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 00010 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 00011 ** 00012 ****************************************************************************/ 00013 00014 #ifndef QSCRIPTENGINE_P_H 00015 #define QSCRIPTENGINE_P_H 00016 00017 // 00018 // W A R N I N G 00019 // ------------- 00020 // 00021 // This file is not part of the Qt API. It exists purely as an 00022 // implementation detail. This header file may change from version to 00023 // version without notice, or even be removed. 00024 // 00025 // We mean it. 00026 // 00027 00028 #include "qtextengine_p.h" 00029 00030 class QString; 00031 struct QCharAttributes; 00032 00033 struct QShaperItem { 00034 int script; 00035 const QString *string; 00036 int from; 00037 int length; 00038 QFontEngine *font; 00039 glyph_t *glyphs; 00040 advance_t *advances; 00041 qoffset_t *offsets; 00042 GlyphAttributes *attributes; 00043 int num_glyphs; // in: available glyphs out: glyphs used/needed 00044 unsigned short *log_clusters; 00045 int flags; 00046 bool has_positioning; 00047 }; 00048 00049 // return true if ok. 00050 typedef bool (*ShapeFunction)(QShaperItem *item); 00051 typedef void (*AttributeFunction)(int script, const QString &, int, int, QCharAttributes *); 00052 00053 struct q_scriptEngine { 00054 ShapeFunction shape; 00055 AttributeFunction charAttributes; 00056 }; 00057 00058 extern const q_scriptEngine scriptEngines[]; 00059 00060 #endif // QSCRIPTENGINE_P_H