The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Каталог документации / Раздел "Программирование, языки" / Оглавление документа

Prev

Up

Home

GTK+ Reference Manual

Next

Top  |  Description  |  Object Hierarchy  |  Properties  |  Signals

GtkTextTag

GtkTextTag Тег применяемый к тексту в GtkTextBuffer

Краткое описание

#include <gtk/gtk.h>


            GtkTextTag;
enum        GtkWrapMode;
            GtkTextAttributes;
GtkTextTag* gtk_text_tag_new                (const gchar *name);

gint        gtk_text_tag_get_priority       (GtkTextTag *tag);
void        gtk_text_tag_set_priority       (GtkTextTag *tag,
                                             gint priority);

gboolean    gtk_text_tag_event              (GtkTextTag *tag,
                                             GObject *event_object,
                                             GdkEvent *event,
                                             const GtkTextIter *iter);
            GtkTextAppearance;

GtkTextAttributes* gtk_text_attributes_new  (void);
GtkTextAttributes* gtk_text_attributes_copy (GtkTextAttributes *src);
void        gtk_text_attributes_copy_values (GtkTextAttributes *src,
                                             GtkTextAttributes *dest);
void        gtk_text_attributes_unref       (GtkTextAttributes *values);

GtkTextAttributes* gtk_text_attributes_ref  (GtkTextAttributes *values);

Иерархия объектов

  GObject

   +----GtkTextTag

Свойства

  "background"           gchararray            : Write
  "background-full-height" gboolean              : Read / Write
  "background-full-height-set" gboolean              : Read / Write
  "background-gdk"       GdkColor              : Read / Write
  "background-set"       gboolean              : Read / Write
  "background-stipple"   GdkPixmap             : Read / Write
  "background-stipple-set" gboolean              : Read / Write
  "direction"            GtkTextDirection      : Read / Write
  "editable"             gboolean              : Read / Write
  "editable-set"         gboolean              : Read / Write
  "family"               gchararray            : Read / Write
  "family-set"           gboolean              : Read / Write
  "font"                 gchararray            : Read / Write
  "font-desc"            PangoFontDescription  : Read / Write
  "foreground"           gchararray            : Write
  "foreground-gdk"       GdkColor              : Read / Write
  "foreground-set"       gboolean              : Read / Write
  "foreground-stipple"   GdkPixmap             : Read / Write
  "foreground-stipple-set" gboolean              : Read / Write
  "indent"               gint                  : Read / Write
  "indent-set"           gboolean              : Read / Write
  "invisible"            gboolean              : Read / Write
  "invisible-set"        gboolean              : Read / Write
  "justification"        GtkJustification      : Read / Write
  "justification-set"    gboolean              : Read / Write
  "language"             gchararray            : Read / Write
  "language-set"         gboolean              : Read / Write
  "left-margin"          gint                  : Read / Write
  "left-margin-set"      gboolean              : Read / Write
  "name"                 gchararray            : Read / Write / Construct Only
  "paragraph-background" gchararray            : Write
  "paragraph-background-gdk" GdkColor              : Read / Write
  "paragraph-background-set" gboolean              : Read / Write
  "pixels-above-lines"   gint                  : Read / Write
  "pixels-above-lines-set" gboolean              : Read / Write
  "pixels-below-lines"   gint                  : Read / Write
  "pixels-below-lines-set" gboolean              : Read / Write
  "pixels-inside-wrap"   gint                  : Read / Write
  "pixels-inside-wrap-set" gboolean              : Read / Write
  "right-margin"         gint                  : Read / Write
  "right-margin-set"     gboolean              : Read / Write
  "rise"                 gint                  : Read / Write
  "rise-set"             gboolean              : Read / Write
  "scale"                gdouble               : Read / Write
  "scale-set"            gboolean              : Read / Write
  "size"                 gint                  : Read / Write
  "size-points"          gdouble               : Read / Write
  "size-set"             gboolean              : Read / Write
  "stretch"              PangoStretch          : Read / Write
  "stretch-set"          gboolean              : Read / Write
  "strikethrough"        gboolean              : Read / Write
  "strikethrough-set"    gboolean              : Read / Write
  "style"                PangoStyle            : Read / Write
  "style-set"            gboolean              : Read / Write
  "tabs"                 PangoTabArray         : Read / Write
  "tabs-set"             gboolean              : Read / Write
  "underline"            PangoUnderline        : Read / Write
  "underline-set"        gboolean              : Read / Write
  "variant"              PangoVariant          : Read / Write
  "variant-set"          gboolean              : Read / Write
  "weight"               gint                  : Read / Write
  "weight-set"           gboolean              : Read / Write
  "wrap-mode"            GtkWrapMode           : Read / Write
  "wrap-mode-set"        gboolean              : Read / Write

Сигналы

"event"     gboolean    user_function      (GtkTextTag  *texttag,
                                            GObject     *arg1,
                                            GdkEvent    *event,
                                            GtkTextIter *arg2,
                                            gpointer     user_data)      : Run last

Описание

Для начала вы можете прочесть text widget conceptual overview который даёт краткое описание всех объектов и типов данных связанных с текстовыми виджетами и как они взаимодействуют.

Теги должны быть в GtkTextTagTable для данного GtkTextBuffer перед использованием их в этом буфере.

gtk_text_buffer_create_tag() лучший способ создать теги. Смотрите в gtk-demo многочисленные примеры.

"invisible" не осуществленно в GTK+ 2.0; это планируется осуществить в будущих релизах.

Детали

GtkTextTag

typedef struct _GtkTextTag GtkTextTag;

enum GtkWrapMode

typedef enum
{
  GTK_WRAP_NONE,
  GTK_WRAP_CHAR,
  GTK_WRAP_WORD,
  GTK_WRAP_WORD_CHAR
} GtkWrapMode;

Описывает тип строковой оболочки.

GTK_WRAP_NONE

Без оболочки; просто делает текстовую область шире

GTK_WRAP_CHAR

Оборачивает текст, разрывая строки везде где может появиться курсор (между символами, полезно если вы хотите быть техничными, между графемами, смотрите pango_get_log_attrs())

GTK_WRAP_WORD

Оборачивает текст, разрывая строки между словами

GTK_WRAP_WORD_CHAR

Оборачивает текст, разрывая строки между словами, или если этого не достаточно, также между графемами.


GtkTextAttributes

typedef struct {
  GtkTextAppearance appearance;

  GtkJustification justification;
  GtkTextDirection direction;

  /* Отдельные куски которые могут быть установлены/сброшены как группа */
  PangoFontDescription *font;

  gdouble font_scale;
  
  gint left_margin;

  gint indent;  

  gint right_margin;

  gint pixels_above_lines;

  gint pixels_below_lines;

  gint pixels_inside_wrap;

  PangoTabArray *tabs;

  GtkWrapMode wrap_mode;        /* Как обрабатывать перенос для этого тега.
                                 * Должен быть GTK_WRAPMODE_CHAR,
                                 * GTK_WRAPMODE_NONE, GTK_WRAPMODE_WORD
                                 */

  PangoLanguage *language;

  /* скрыть этот текст */
  guint invisible : 1;

  /* Фон заполняет всю высоту строки а не
   * основание строки +/- подъем/спуск (высота шрифта)
   */
  guint bg_full_height : 1;

  /* текст можно редактировать */
  guint editable : 1;

  /* распределение цветов и т.д. */
  guint realized : 1;
} GtkTextAttributes;

Непосредственное использование GtkTextAttributes должно быть редко необходимым. Это прежде всего полезно для gtk_text_iter_get_attributes(). Как большинство структур GTK+ , поля этой структуры должны только читаться и не должны изменяться непосредственно.

GtkTextAppearance appearance;

Указатель для подструктуры содержащей некие атрибуты

GtkJustification justification;

GtkTextDirection direction;

PangoFontDescription *font;

gdouble font_scale;

gint left_margin;

gint indent;

gint right_margin;

gint pixels_above_lines;

gint pixels_below_lines;

gint pixels_inside_wrap;

PangoTabArray *tabs;

GtkWrapMode wrap_mode;

PangoLanguage *language;

guint invisible : 1;

guint bg_full_height : 1;

guint editable : 1;

guint realized : 1;


gtk_text_tag_new ()

GtkTextTag* gtk_text_tag_new                (const gchar *name);

Создаёт GtkTextTag. Конфигурирует тег используя объект атрибута, то есть используя g_object_set().

name :

Имя тега, или NULL

Возвращает :

новый GtkTextTag


gtk_text_tag_get_priority ()

gint        gtk_text_tag_get_priority       (GtkTextTag *tag);

Определяет приоритет тега.

tag :

GtkTextTag

Возвращает :

Приоритет тега.


gtk_text_tag_set_priority ()

void        gtk_text_tag_set_priority       (GtkTextTag *tag,
                                             gint priority);

Устанавливает приоритет GtkTextTag. Допустимый приоритет начинается с 0 и меньше нежели полученный из gtk_text_tag_table_get_size(). Каждый тег в таблице имеет уникальный приоритет; установки приоритета одного тега сдвигают приоритеты остальных тегов в таблице для сохранения уникальности приоритетов для каждого тега. Высший приоритет тегов "win" если оба тега установили некоторый атрибут текста. Когда добавляется тег в таблицу тегов, ему присваивается самый высокий приоритет по умолчанию; поэтому обычно старшинство тегов устанавливается в порядке добавления их в таблицу, или создания с помощью gtk_text_buffer_create_tag(), которая добавляет тег в таблицу буферов автоматически.

tag :

GtkTextTag

priority :

новый приоритет


gtk_text_tag_event ()

gboolean    gtk_text_tag_event              (GtkTextTag *tag,
                                             GObject *event_object,
                                             GdkEvent *event,
                                             const GtkTextIter *iter);

Издаёт сигнал "event" на GtkTextTag.

tag :

GtkTextTag

event_object :

объект получающий событие, такой как виджет

event :

событие

iter :

Месторасположение где было получено событие

Возвращает :

Результат распространения сигнала (было ли обработано событие)


GtkTextAppearance

typedef struct {
  GdkColor bg_color;
  GdkColor fg_color;
  GdkBitmap *bg_stipple;
  GdkBitmap *fg_stipple;

  /* повышение/понижение приращения, может быть отрицательным */
  gint rise;

  guint underline : 4;          /* PangoUnderline */
  guint strikethrough : 1;

  /* Ииспользовать ли связанные с фоном значения; это неуместно для
   * значений в структуре тегов, но используется для совмещения
   * значений структуры; истинно если любой из совмещенных тегов
   * устанавливает фон.
   */
  guint draw_bg : 1;
  
  /* Они используются только когда мы реально планируем и предоставляем
   * параграф; не когда GtkTextAppearance часть
   * GtkTextAttributes.
   */
  guint inside_selection : 1;
  guint is_text : 1;
} GtkTextAppearance;

gtk_text_attributes_new ()

GtkTextAttributes* gtk_text_attributes_new  (void);

Создаёт GtkTextAttributes, который описывает установленные свойства некоторого текста.

Возвращает :

новый GtkTextAttributes


gtk_text_attributes_copy ()

GtkTextAttributes* gtk_text_attributes_copy (GtkTextAttributes *src);

Копирует src и возвращает новый GtkTextAttributes.

src :

копируемый GtkTextAttributes

Возвращает :

копию src


gtk_text_attributes_copy_values ()

void        gtk_text_attributes_copy_values (GtkTextAttributes *src,
                                             GtkTextAttributes *dest);

Копирует значения из src в dest так чтобы dest имел такое же значение как src. Уничтожает существующие значения dest.

src :

GtkTextAttributes

dest :

другой GtkTextAttributes


gtk_text_attributes_unref ()

void        gtk_text_attributes_unref       (GtkTextAttributes *values);

Уменьшает количество ссылок на values, освобождает структуру если количество ссылок достигло 0.

values :

GtkTextAttributes


gtk_text_attributes_ref ()

GtkTextAttributes* gtk_text_attributes_ref  (GtkTextAttributes *values);

Увеличивает количество ссылок на values.

values :

GtkTextAttributes

Возвращает :

GtkTextAttributes в который копируется первый

Детали свойств

Свойство "background"

  "background"           gchararray            : Write

Цвет фона строки.

Значение по умолчанию : NULL


Свойство "background-full-height"

  "background-full-height" gboolean              : Read / Write

Заполняет ли цвет фона всю высоту строки или только высоту отмеченных символов.

Значение по умолчанию : FALSE


Свойство "background-full-height-set"

  "background-full-height-set" gboolean              : Read / Write

Влияет ли этот тег на высоту фона.

Значение по умолчанию : FALSE


Свойство "background-gdk"

  "background-gdk"       GdkColor              : Read / Write

Цвет фона как (возможно освобождённый) GdkColor.


Свойство "background-set"

  "background-set"       gboolean              : Read / Write

Влияет ли тег на цвет фона.

Значение по умолчанию : FALSE


Свойство "background-stipple"

  "background-stipple"   GdkPixmap             : Read / Write

Точечный рисунок используемый как маска при отрисовки текстового фона.


Свойство "background-stipple-set"

  "background-stipple-set" gboolean              : Read / Write

Влияет ли тег на фоновые шаблоны.

Значение по умолчанию : FALSE


Свойство "direction"

  "direction"            GtkTextDirection      : Read / Write

Направление текста, например right-to-left или left-to-right.

Значение по умолчанию : GTK_TEXT_DIR_NONE


Свойство "editable"

  "editable"             gboolean              : Read / Write

Может ли текст изменяться пользователем.

Значение по умолчанию : TRUE


Свойство "editable-set"

  "editable-set"         gboolean              : Read / Write

Влияет ли тег на возможность редактирования текста.

Значение по умолчанию : FALSE


Свойство "family"

  "family"               gchararray            : Read / Write

Имя семейства шрифта, например Sans, Helvetica, Times, Monospace.

Значение по умолчанию : NULL


Свойство "family-set"

  "family-set"           gboolean              : Read / Write

Влияет ли тег на шрифт.

Значение по умолчанию : FALSE


Свойство "font"

  "font"                 gchararray            : Read / Write

Шрифт описанный как строка, например \"Sans Italic 12\".

Помните, начальное значение этого свойства зависит от внутренней организации PangoFontDescription.

Значение по умолчанию : NULL


Свойство "font-desc"

  "font-desc"            PangoFontDescription  : Read / Write

Шрифт описанный как структура PangoFontDescription.


Свойство "foreground"

  "foreground"           gchararray            : Write

Цвет символов как строка.

Значение по умолчанию : NULL


Свойство "foreground-gdk"

  "foreground-gdk"       GdkColor              : Read / Write

Цвет символов как (возможно освобождённый) GdkColor.


Свойство "foreground-set"

  "foreground-set"       gboolean              : Read / Write

Влияет ли тег на цвет символов.

Значение по умолчанию : FALSE


Свойство "foreground-stipple"

  "foreground-stipple"   GdkPixmap             : Read / Write

Точечный рисунок используемый как маска при прорисовке переднего плана текста.


Свойство "foreground-stipple-set"

  "foreground-stipple-set" gboolean              : Read / Write

Затрагивает ли тег шаблон переднего плана.

Значение по умолчанию : FALSE


Свойство "indent"

  "indent"               gint                  : Read / Write

Отступ для параграфа, в пикселах.

Значение по умолчанию : 0


Свойство "indent-set"

  "indent-set"           gboolean              : Read / Write

Влияет ли тег на отступ.

Значение по умолчанию : FALSE


Свойство "invisible"

  "invisible"            gboolean              : Read / Write

Скрыт ли текст.

Помните, всё ещё могут возникать проблемы при поддержке невидимого текста, особенно программное перемещение внутри буфера содержащего невидимые части.

Значение по умолчанию : FALSE

Начиная с версии 2.8


Свойство "invisible-set"

  "invisible-set"        gboolean              : Read / Write

Влияет ли тег на видимость текста.

Значение по умолчанию : FALSE


Свойство "justification"

  "justification"        GtkJustification      : Read / Write

Выравнивание слева, справа, или по центру.

Значение по умолчанию : GTK_JUSTIFY_LEFT


Свойство "justification-set"

  "justification-set"    gboolean              : Read / Write

Влияет ли тег на выравнивание параграфа.

Значение по умолчанию : FALSE


Свойство "language"

  "language"             gchararray            : Read / Write

Язык этого текста, например ISO кодировка. Pango может использовать это как подсказку при отображении текста. Если не установлено, соответственно используется значение по умолчанию.

Помните, начальное значение этого свойства зависит от текущих настроек локализации, смотрите также gtk_get_default_language().

Значение по умолчанию : NULL


Свойство "language-set"

  "language-set"         gboolean              : Read / Write

Влияет ли тег на локализацию текста.

Значение по умолчанию : FALSE


Свойство "left-margin"

  "left-margin"          gint                  : Read / Write

Ширина левого поля в пикселах.

Допустимые значения: >= 0

Значение по умолчанию : 0


Свойство "left-margin-set"

  "left-margin-set"      gboolean              : Read / Write

Влияет ли тег на ширину левого поля.

Значение по умолчанию : FALSE


Свойство "name"

  "name"                 gchararray            : Read / Write / Construct Only

Имя используемое для обращения к текстовому тегу. NULL для анонимного тега.

Значение по умолчанию : NULL


Свойство "paragraph-background"

  "paragraph-background" gchararray            : Write

Фон параграфа как строка.

Значение по умолчанию : NULL

Начиная с версии 2.8


Свойство "paragraph-background-gdk"

  "paragraph-background-gdk" GdkColor              : Read / Write

Цвет фона параграфа как (возможно освобождённый) GdkColor.

Начиная с версии 2.8


Свойство "paragraph-background-set"

  "paragraph-background-set" gboolean              : Read / Write

Влияет ли тег на цвет фона параграфа.

Значение по умолчанию : FALSE


Свойство "pixels-above-lines"

  "pixels-above-lines"   gint                  : Read / Write

Интервал над параграфом в пикселах.

Допустимые значения: >= 0

Значение по умолчанию : 0


Свойство "pixels-above-lines-set"

  "pixels-above-lines-set" gboolean              : Read / Write

Влияет ли тег на количество пикселей в интервале над строкой.

Значение по умолчанию : FALSE


Свойство "pixels-below-lines"

  "pixels-below-lines"   gint                  : Read / Write

Интервал после параграфа в пикселах.

Допустимые значения: >= 0

Значение по умолчанию : 0


Свойство "pixels-below-lines-set"

  "pixels-below-lines-set" gboolean              : Read / Write

Влияет ли тег на количество пикселей в интервале после параграфа.

Значение по умолчанию : FALSE


Свойство "pixels-inside-wrap"

  "pixels-inside-wrap"   gint                  : Read / Write

Интервал между окантованными строками в параграфе в пикселах.

Допустимые значения: >= 0

Значение по умолчанию : 0


Свойство "pixels-inside-wrap-set"

  "pixels-inside-wrap-set" gboolean              : Read / Write

Влияет ли тег на количество пикселей между окантованными строками.

Значение по умолчанию : FALSE


Свойство "right-margin"

  "right-margin"         gint                  : Read / Write

Ширина правого поля в пикселах.

Допустимые значения: >= 0

Значение по умолчанию : 0


Свойство "right-margin-set"

  "right-margin-set"     gboolean              : Read / Write

Влияет ли тег на ширину правого поля.

Значение по умолчанию : FALSE


Свойство "rise"

  "rise"                 gint                  : Read / Write

Смещение текста выше основной строки (ниже основной строки если rise отрицательное) в Pango единицах.

Значение по умолчанию : 0


Свойство "rise-set"

  "rise-set"             gboolean              : Read / Write

Влияет ли тег на приращение.

Значение по умолчанию : FALSE


Свойство "scale"

  "scale"                gdouble               : Read / Write

Размер шрифта как фактор масштаба относительно размера шрифта по умолчанию. Это свойство адаптируется к изменениям темы и т.д. так как это рекомендовано. Pango предопределяет некоторые масштабы такие как PANGO_SCALE_X_LARGE.

Допустимые значения: >= 0

Значение по умолчанию : 1


Свойство "scale-set"

  "scale-set"            gboolean              : Read / Write

Влияет ли тег на фактор масштабирования размера шрифта.

Значение по умолчанию : FALSE


Свойство "size"

  "size"                 gint                  : Read / Write

Размер шрифта в Pango единицах.

Допустимые значения: >= 0

Значение по умолчанию : 0


Свойство "size-points"

  "size-points"          gdouble               : Read / Write

Размер шрифта в точках.

Допустимые значения: >= 0

Значение по умолчанию : 0


Свойство "size-set"

  "size-set"             gboolean              : Read / Write

Влияет ли тег на размер шрифта.

Значение по умолчанию : FALSE


Свойство "stretch"

  "stretch"              PangoStretch          : Read / Write

Направление шрифта как PangoStretch, например PANGO_STRETCH_CONDENSED.

Значение по умолчанию : PANGO_STRETCH_NORMAL


Свойство "stretch-set"

  "stretch-set"          gboolean              : Read / Write

Влияет ли тег на направление шрифта.

Значение по умолчанию : FALSE


Свойство "strikethrough"

  "strikethrough"        gboolean              : Read / Write

Перечеркнут ли текст.

Значение по умолчанию : FALSE


Свойство "strikethrough-set"

  "strikethrough-set"    gboolean              : Read / Write

Влияет ли тег на перечеркивание текста.

Значение по умолчанию : FALSE


Свойство "style"

  "style"                PangoStyle            : Read / Write

Стиль шрифта как PangoStyle, например PANGO_STYLE_ITALIC.

Значение по умолчанию : PANGO_STYLE_NORMAL


Свойство "style-set"

  "style-set"            gboolean              : Read / Write

Влияет ли тег на стиль шрифта.

Значение по умолчанию : FALSE


Свойство "tabs"

  "tabs"                 PangoTabArray         : Read / Write

Выбранные позиции табуляции для текста.


Свойство "tabs-set"

  "tabs-set"             gboolean              : Read / Write

Влияет ли тег на табуляцию.

Значение по умолчанию : FALSE


Свойство "underline"

  "underline"            PangoUnderline        : Read / Write

Стиль подчеркивания текста.

Значение по умолчанию : PANGO_UNDERLINE_NONE


Свойство "underline-set"

  "underline-set"        gboolean              : Read / Write

Влияет ли тег на стиль подчеркивания.

Значение по умолчанию : FALSE


Свойство "variant"

  "variant"              PangoVariant          : Read / Write

Вариант шрифта как PangoVariant, например PANGO_VARIANT_SMALL_CAPS.

Значение по умолчанию : PANGO_VARIANT_NORMAL


Свойство "variant-set"

  "variant-set"          gboolean              : Read / Write

Влияет ли тег на вариант шрифта.

Значение по умолчанию : FALSE


Свойство "weight"

  "weight"               gint                  : Read / Write

Ширина шрифта как целое, смотрите предустановленные значения в PangoWeight; например, PANGO_WEIGHT_BOLD.

Допустимые значения: >= 0

Значение по умолчанию : 400


Свойство "weight-set"

  "weight-set"           gboolean              : Read / Write

Влияет ли тег на ширину шрифта.

Значение по умолчанию : FALSE


Свойство "wrap-mode"

  "wrap-mode"            GtkWrapMode           : Read / Write

Режим оболочки строки, в границах слова, или границах символа.

Значение по умолчанию : GTK_WRAP_NONE


Свойство "wrap-mode-set"

  "wrap-mode-set"        gboolean              : Read / Write

Влияет ли тег на режим оболочки строки.

Значение по умолчанию : FALSE

Детали сигналов

Сигнал "event"

gboolean    user_function                  (GtkTextTag  *texttag,
                                            GObject     *arg1,
                                            GdkEvent    *event,
                                            GtkTextIter *arg2,
                                            gpointer     user_data)      : Run last

texttag :

Объект получающий сигнал.

arg1 :

event :

arg2 :

user_data :

Пользовательские данные устанавливаемые при подключении обработчика сигнала.

Возвращает :






Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру