您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
 
 
 
 
 
 

88 行
3.4 KiB

  1. /* GAIL - The GNOME Accessibility Implementation Library
  2. * Copyright 2001 Sun Microsystems Inc.
  3. *
  4. * This library is free software; you can redistribute it and/or
  5. * modify it under the terms of the GNU Library General Public
  6. * License as published by the Free Software Foundation; either
  7. * version 2 of the License, or (at your option) any later version.
  8. *
  9. * This library is distributed in the hope that it will be useful,
  10. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  12. * Library General Public License for more details.
  13. *
  14. * You should have received a copy of the GNU Library General Public
  15. * License along with this library; if not, write to the
  16. * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
  17. * Boston, MA 02111-1307, USA.
  18. */
  19. #ifndef __GAIL_TEXT_UTIL_H__
  20. #define __GAIL_TEXT_UTIL_H__
  21. #include <glib-object.h>
  22. #include <gtk/gtk.h>
  23. G_BEGIN_DECLS
  24. #define GAIL_TYPE_TEXT_UTIL (gail_text_util_get_type ())
  25. #define GAIL_TEXT_UTIL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GAIL_TYPE_TEXT_UTIL, GailTextUtil))
  26. #define GAIL_TEXT_UTIL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GAIL_TYPE_TEXT_UTIL, GailTextUtilClass))
  27. #define GAIL_IS_TEXT_UTIL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GAIL_TYPE_TEXT_UTIL))
  28. #define GAIL_IS_TEXT_UTIL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GAIL_TYPE_TEXT_UTIL))
  29. #define GAIL_TEXT_UTIL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GAIL_TYPE_TEXT_UTIL, GailTextUtilClass))
  30. /**
  31. *GailOffsetType:
  32. *@GAIL_BEFORE_OFFSET: Text before offset is required.
  33. *@GAIL_AT_OFFSET: Text at offset is required,
  34. *@GAIL_AFTER_OFFSET: Text after offset is required.
  35. *
  36. * Specifies which of the functions atk_text_get_text_before_offset(),
  37. * atk_text_get_text_at_offset(), atk_text_get_text_after_offset() the
  38. * function gail_text_util_get_text() is being called for.
  39. **/
  40. typedef enum
  41. {
  42. GAIL_BEFORE_OFFSET,
  43. GAIL_AT_OFFSET,
  44. GAIL_AFTER_OFFSET
  45. }GailOffsetType;
  46. typedef struct _GailTextUtil GailTextUtil;
  47. typedef struct _GailTextUtilClass GailTextUtilClass;
  48. struct _GailTextUtil
  49. {
  50. GObject parent;
  51. GtkTextBuffer *buffer;
  52. };
  53. struct _GailTextUtilClass
  54. {
  55. GObjectClass parent_class;
  56. };
  57. GType gail_text_util_get_type (void);
  58. GailTextUtil* gail_text_util_new (void);
  59. void gail_text_util_text_setup (GailTextUtil *textutil,
  60. const gchar *text);
  61. void gail_text_util_buffer_setup (GailTextUtil *textutil,
  62. GtkTextBuffer *buffer);
  63. gchar* gail_text_util_get_text (GailTextUtil *textutil,
  64. gpointer layout,
  65. GailOffsetType function,
  66. AtkTextBoundary boundary_type,
  67. gint offset,
  68. gint *start_offset,
  69. gint *end_offset);
  70. gchar* gail_text_util_get_substring (GailTextUtil *textutil,
  71. gint start_pos,
  72. gint end_pos);
  73. G_END_DECLS
  74. #endif /*__GAIL_TEXT_UTIL_H__ */