gnttextview.h File Reference

Textview API. More...

#include "gntwidget.h"
#include "gnt.h"
#include "gntcolors.h"
#include "gntkeys.h"

Go to the source code of this file.

Data Structures

struct  _GntTextView
struct  _GntTextViewClass

Defines

#define GNT_TYPE_TEXT_VIEW   (gnt_text_view_get_gtype())
#define GNT_TEXT_VIEW(obj)   (G_TYPE_CHECK_INSTANCE_CAST((obj), GNT_TYPE_TEXT_VIEW, GntTextView))
#define GNT_TEXT_VIEW_CLASS(klass)   (G_TYPE_CHECK_CLASS_CAST((klass), GNT_TYPE_TEXT_VIEW, GntTextViewClass))
#define GNT_IS_TEXT_VIEW(obj)   (G_TYPE_CHECK_INSTANCE_TYPE((obj), GNT_TYPE_TEXT_VIEW))
#define GNT_IS_TEXT_VIEW_CLASS(klass)   (G_TYPE_CHECK_CLASS_TYPE((klass), GNT_TYPE_TEXT_VIEW))
#define GNT_TEXT_VIEW_GET_CLASS(obj)   (G_TYPE_INSTANCE_GET_CLASS((obj), GNT_TYPE_TEXT_VIEW, GntTextViewClass))
#define GNT_TEXT_VIEW_FLAGS(obj)   (GNT_TEXT_VIEW(obj)->priv.flags)
#define GNT_TEXT_VIEW_SET_FLAGS(obj, flags)   (GNT_TEXT_VIEW_FLAGS(obj) |= flags)
#define GNT_TEXT_VIEW_UNSET_FLAGS(obj, flags)   (GNT_TEXT_VIEW_FLAGS(obj) &= ~(flags))

Typedefs

typedef struct _GntTextView GntTextView
typedef struct _GntTextViewPriv GntTextViewPriv
typedef struct _GntTextViewClass GntTextViewClass

Enumerations

enum  GntTextViewFlag { GNT_TEXT_VIEW_NO_SCROLL = 1 << 0, GNT_TEXT_VIEW_WRAP_CHAR = 1 << 1, GNT_TEXT_VIEW_TOP_ALIGN = 1 << 2 }
enum  GntTextFormatFlags {
  GNT_TEXT_FLAG_NORMAL = 0, GNT_TEXT_FLAG_BOLD = 1 << 0, GNT_TEXT_FLAG_UNDERLINE = 1 << 1, GNT_TEXT_FLAG_BLINK = 1 << 2,
  GNT_TEXT_FLAG_DIM = 1 << 3, GNT_TEXT_FLAG_HIGHLIGHT = 1 << 4
}

Functions

G_BEGIN_DECLS GType gnt_text_view_get_gtype (void)
GntWidget * gnt_text_view_new (void)
 Create a new textview.
void gnt_text_view_scroll (GntTextView *view, int scroll)
 Scroll the textview.
void gnt_text_view_append_text_with_flags (GntTextView *view, const char *text, GntTextFormatFlags flags)
 Append new text in a textview.
void gnt_text_view_append_text_with_tag (GntTextView *view, const char *text, GntTextFormatFlags flags, const char *tag)
 Append text in the textview, with some identifier (tag) for the added text.
void gnt_text_view_next_line (GntTextView *view)
 Move the cursor to the beginning of the next line and resets text-attributes.
chtype gnt_text_format_flag_to_chtype (GntTextFormatFlags flags)
 Convert GNT-text formats to ncurses-text attributes.
void gnt_text_view_clear (GntTextView *view)
 Clear the contents of the textview.
int gnt_text_view_get_lines_below (GntTextView *view)
 The number of lines below the bottom-most visible line.
int gnt_text_view_get_lines_above (GntTextView *view)
 The number of lines above the topmost visible line.
int gnt_text_view_tag_change (GntTextView *view, const char *name, const char *text, gboolean all)
 Change the text of a tag.
void gnt_text_view_attach_scroll_widget (GntTextView *view, GntWidget *widget)
 Setup hooks so that pressing up/down/page-up/page-down keys when 'widget' is in focus scrolls the textview.
void gnt_text_view_attach_pager_widget (GntTextView *view, GntWidget *pager)
 Setup appropriate hooks so that pressing some keys when the 'pager' widget is in focus triggers the PAGER to popup with the contents of the textview in it.
void gnt_text_view_attach_editor_widget (GntTextView *view, GntWidget *widget)
 Setup appropriate hooks so that pressing some keys when 'widget' is in focus triggers the EDITOR to popup with the contents of the textview in it.
void gnt_text_view_set_flag (GntTextView *view, GntTextViewFlag flag)
 Set a GntTextViewFlag for the textview widget.


Detailed Description

Textview API.

Definition in file gnttextview.h.


Function Documentation

chtype gnt_text_format_flag_to_chtype ( GntTextFormatFlags  flags  ) 

Convert GNT-text formats to ncurses-text attributes.

Parameters:
flags The GNT text format.
Returns:
Nucrses text attribute.

void gnt_text_view_append_text_with_flags ( GntTextView *  view,
const char *  text,
GntTextFormatFlags  flags 
)

Append new text in a textview.

Parameters:
view The textview.
text The text to append to the textview.
flags The text-flags to apply to the new text.

void gnt_text_view_append_text_with_tag ( GntTextView *  view,
const char *  text,
GntTextFormatFlags  flags,
const char *  tag 
)

Append text in the textview, with some identifier (tag) for the added text.

Parameters:
view The textview.
text The text to append.
flags The text-flags to apply to the new text.
tag The tag for the appended text, so it can be changed later (
See also:
gnt_text_view_tag_change)

void gnt_text_view_attach_editor_widget ( GntTextView *  view,
GntWidget *  widget 
)

Setup appropriate hooks so that pressing some keys when 'widget' is in focus triggers the EDITOR to popup with the contents of the textview in it.

The default key-combination to trigger the pager is a-e, and the default EDITOR application is $EDITOR. Both can be changed in ~/.gntrc like this:

 [editor]
 key = a-e
 path = /path/to/editor

Parameters:
view The textview.
widget The widget to trigger the EDITOR.

void gnt_text_view_attach_pager_widget ( GntTextView *  view,
GntWidget *  pager 
)

Setup appropriate hooks so that pressing some keys when the 'pager' widget is in focus triggers the PAGER to popup with the contents of the textview in it.

The default key-combination to trigger the pager is a-v, and the default PAGER application is $PAGER. Both can be changed in ~/.gntrc like this:

 [pager]
 key = a-v
 path = /path/to/pager

Parameters:
view The textview.
pager The widget to trigger the PAGER.

void gnt_text_view_attach_scroll_widget ( GntTextView *  view,
GntWidget *  widget 
)

Setup hooks so that pressing up/down/page-up/page-down keys when 'widget' is in focus scrolls the textview.

Parameters:
view The textview.
widget The trigger widget.

void gnt_text_view_clear ( GntTextView *  view  ) 

Clear the contents of the textview.

Parameters:
view The textview.

G_BEGIN_DECLS GType gnt_text_view_get_gtype ( void   ) 

Returns:
GType for GntTextView.

int gnt_text_view_get_lines_above ( GntTextView *  view  ) 

The number of lines above the topmost visible line.

Parameters:
view The textview.
Returns:
Number of lines above the topmost visible line.

int gnt_text_view_get_lines_below ( GntTextView *  view  ) 

The number of lines below the bottom-most visible line.

Parameters:
view The textview.
Returns:
Number of lines below the bottom-most visible line.

GntWidget* gnt_text_view_new ( void   ) 

Create a new textview.

Returns:
The newly created textview.

void gnt_text_view_next_line ( GntTextView *  view  ) 

Move the cursor to the beginning of the next line and resets text-attributes.

It first completes the current line with the current text-attributes.

Parameters:
view The textview.

void gnt_text_view_scroll ( GntTextView *  view,
int  scroll 
)

Scroll the textview.

Parameters:
view The textview to scroll.
scroll scroll > 0 means scroll up, < 0 means scroll down, == 0 means scroll to the end.

void gnt_text_view_set_flag ( GntTextView *  view,
GntTextViewFlag  flag 
)

Set a GntTextViewFlag for the textview widget.

Parameters:
view The textview widget
flag The flag to set
Since:
2.0.0 (gnt), 2.1.0 (pidgin)

int gnt_text_view_tag_change ( GntTextView *  view,
const char *  name,
const char *  text,
gboolean  all 
)

Change the text of a tag.

Parameters:
view The textview.
name The name of the tag.
text The new text for the text. If 'text' is NULL, the tag is removed.
all TRUE if all of the instancess of the tag should be changed, FALSE if only the first instance should be changed.
Returns:
The number of instances changed.