annotate mcabber/src/screen.h @ 785:7e0562e3bc83

Replace color_highlight with color_msgout
author Mikael Berthe <mikael@lilotux.net>
date Sun, 02 Apr 2006 23:11:55 +0200
parents 057ffe7c43dc
children 32d5298f9f8d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
24
e88b15cbf2de [/trunk] Changeset 40 by mikael
mikael
parents:
diff changeset
1 #ifndef __SCREEN_H__
e88b15cbf2de [/trunk] Changeset 40 by mikael
mikael
parents:
diff changeset
2 #define __SCREEN_H__ 1
e88b15cbf2de [/trunk] Changeset 40 by mikael
mikael
parents:
diff changeset
3
e88b15cbf2de [/trunk] Changeset 40 by mikael
mikael
parents:
diff changeset
4 #include <ncurses.h>
173
09e24917059d [/trunk] Changeset 185 by mikael
mikael
parents: 151
diff changeset
5 #include <glib.h>
24
e88b15cbf2de [/trunk] Changeset 40 by mikael
mikael
parents:
diff changeset
6
374
bd5638c21834 Improve logging system (traces)
Mikael Berthe <mikael@lilotux.net>
parents: 370
diff changeset
7 #include "logprint.h"
bd5638c21834 Improve logging system (traces)
Mikael Berthe <mikael@lilotux.net>
parents: 370
diff changeset
8
761
4532a9fe0e8c Handle some keyboard escape sequences
Mikael Berthe <mikael@lilotux.net>
parents: 739
diff changeset
9 // Length of the timestamp & flag prefix in the chat buffer window
4532a9fe0e8c Handle some keyboard escape sequences
Mikael Berthe <mikael@lilotux.net>
parents: 739
diff changeset
10 #define PREFIX_WIDTH 17
4532a9fe0e8c Handle some keyboard escape sequences
Mikael Berthe <mikael@lilotux.net>
parents: 739
diff changeset
11
4532a9fe0e8c Handle some keyboard escape sequences
Mikael Berthe <mikael@lilotux.net>
parents: 739
diff changeset
12 #define INPUTLINE_LENGTH 1024
4532a9fe0e8c Handle some keyboard escape sequences
Mikael Berthe <mikael@lilotux.net>
parents: 739
diff changeset
13
4532a9fe0e8c Handle some keyboard escape sequences
Mikael Berthe <mikael@lilotux.net>
parents: 739
diff changeset
14 // Only used in screen.c; this is the maximum line number
4532a9fe0e8c Handle some keyboard escape sequences
Mikael Berthe <mikael@lilotux.net>
parents: 739
diff changeset
15 // in a multi-line message. Should be < 1000
4532a9fe0e8c Handle some keyboard escape sequences
Mikael Berthe <mikael@lilotux.net>
parents: 739
diff changeset
16 // Note: message length is limited by the HBB_BLOCKSIZE size too
4532a9fe0e8c Handle some keyboard escape sequences
Mikael Berthe <mikael@lilotux.net>
parents: 739
diff changeset
17 #define MULTILINE_MAX_LINE_NUMBER 299
4532a9fe0e8c Handle some keyboard escape sequences
Mikael Berthe <mikael@lilotux.net>
parents: 739
diff changeset
18
739
0d5fb1d9077c Allow "bright" text colors
Mikael Berthe <mikael@lilotux.net>
parents: 730
diff changeset
19 enum colors {
0d5fb1d9077c Allow "bright" text colors
Mikael Berthe <mikael@lilotux.net>
parents: 730
diff changeset
20 COLOR_GENERAL = 3,
785
7e0562e3bc83 Replace color_highlight with color_msgout
Mikael Berthe <mikael@lilotux.net>
parents: 779
diff changeset
21 COLOR_MSGOUT,
739
0d5fb1d9077c Allow "bright" text colors
Mikael Berthe <mikael@lilotux.net>
parents: 730
diff changeset
22 COLOR_STATUS,
0d5fb1d9077c Allow "bright" text colors
Mikael Berthe <mikael@lilotux.net>
parents: 730
diff changeset
23 COLOR_ROSTER,
0d5fb1d9077c Allow "bright" text colors
Mikael Berthe <mikael@lilotux.net>
parents: 730
diff changeset
24 COLOR_ROSTERSEL,
0d5fb1d9077c Allow "bright" text colors
Mikael Berthe <mikael@lilotux.net>
parents: 730
diff changeset
25 COLOR_ROSTERSELNMSG,
0d5fb1d9077c Allow "bright" text colors
Mikael Berthe <mikael@lilotux.net>
parents: 730
diff changeset
26 COLOR_ROSTERNMSG,
0d5fb1d9077c Allow "bright" text colors
Mikael Berthe <mikael@lilotux.net>
parents: 730
diff changeset
27 COLOR_max
0d5fb1d9077c Allow "bright" text colors
Mikael Berthe <mikael@lilotux.net>
parents: 730
diff changeset
28 };
0d5fb1d9077c Allow "bright" text colors
Mikael Berthe <mikael@lilotux.net>
parents: 730
diff changeset
29
0d5fb1d9077c Allow "bright" text colors
Mikael Berthe <mikael@lilotux.net>
parents: 730
diff changeset
30 int COLOR_ATTRIB[COLOR_max];
24
e88b15cbf2de [/trunk] Changeset 40 by mikael
mikael
parents:
diff changeset
31
761
4532a9fe0e8c Handle some keyboard escape sequences
Mikael Berthe <mikael@lilotux.net>
parents: 739
diff changeset
32 extern int update_roster;
24
e88b15cbf2de [/trunk] Changeset 40 by mikael
mikael
parents:
diff changeset
33
761
4532a9fe0e8c Handle some keyboard escape sequences
Mikael Berthe <mikael@lilotux.net>
parents: 739
diff changeset
34 typedef struct {
4532a9fe0e8c Handle some keyboard escape sequences
Mikael Berthe <mikael@lilotux.net>
parents: 739
diff changeset
35 int value;
4532a9fe0e8c Handle some keyboard escape sequences
Mikael Berthe <mikael@lilotux.net>
parents: 739
diff changeset
36 enum {
4532a9fe0e8c Handle some keyboard escape sequences
Mikael Berthe <mikael@lilotux.net>
parents: 739
diff changeset
37 MKEY_META = 1,
763
6866ee749225 More keycodes
Mikael Berthe <mikael@lilotux.net>
parents: 761
diff changeset
38 MKEY_EQUIV,
6866ee749225 More keycodes
Mikael Berthe <mikael@lilotux.net>
parents: 761
diff changeset
39 MKEY_CTRL_PGUP,
6866ee749225 More keycodes
Mikael Berthe <mikael@lilotux.net>
parents: 761
diff changeset
40 MKEY_CTRL_PGDOWN,
765
72626e9d60bd Create init_keycodes(), add 2 screen escape sequences
Mikael Berthe <mikael@lilotux.net>
parents: 763
diff changeset
41 MKEY_SHIFT_PGUP,
72626e9d60bd Create init_keycodes(), add 2 screen escape sequences
Mikael Berthe <mikael@lilotux.net>
parents: 763
diff changeset
42 MKEY_SHIFT_PGDOWN,
763
6866ee749225 More keycodes
Mikael Berthe <mikael@lilotux.net>
parents: 761
diff changeset
43 MKEY_CTRL_SHIFT_PGUP,
6866ee749225 More keycodes
Mikael Berthe <mikael@lilotux.net>
parents: 761
diff changeset
44 MKEY_CTRL_SHIFT_PGDOWN
761
4532a9fe0e8c Handle some keyboard escape sequences
Mikael Berthe <mikael@lilotux.net>
parents: 739
diff changeset
45 } mcode;
4532a9fe0e8c Handle some keyboard escape sequences
Mikael Berthe <mikael@lilotux.net>
parents: 739
diff changeset
46 } keycode;
276
627925d885de Limit the number of lines in multi-line messages
Mikael Berthe <mikael@lilotux.net>
parents: 267
diff changeset
47
761
4532a9fe0e8c Handle some keyboard escape sequences
Mikael Berthe <mikael@lilotux.net>
parents: 739
diff changeset
48 void scr_Getch(keycode *kcode);
4532a9fe0e8c Handle some keyboard escape sequences
Mikael Berthe <mikael@lilotux.net>
parents: 739
diff changeset
49 int process_key(keycode kcode);
24
e88b15cbf2de [/trunk] Changeset 40 by mikael
mikael
parents:
diff changeset
50
779
057ffe7c43dc Initialize locale charset earlier
Mikael Berthe <mikael@lilotux.net>
parents: 765
diff changeset
51 void scr_InitLocaleCharSet(void);
24
e88b15cbf2de [/trunk] Changeset 40 by mikael
mikael
parents:
diff changeset
52 void scr_InitCurses(void);
374
bd5638c21834 Improve logging system (traces)
Mikael Berthe <mikael@lilotux.net>
parents: 370
diff changeset
53 void scr_TerminateCurses(void);
151
b69c0b7a23e3 [/trunk] Changeset 163 by mikael
mikael
parents: 139
diff changeset
54 void scr_DrawMainWindow(unsigned int fullinit);
81
0bd578421ce9 [/trunk] Changeset 95 by mikael
mikael
parents: 74
diff changeset
55 void scr_DrawRoster(void);
724
264375fe7159 Fix a roster refresh issue
Mikael Berthe <mikael@lilotux.net>
parents: 723
diff changeset
56 void scr_UpdateMainStatus(int forceupdate);
721
9cf31c9b1dc4 Use room topic as a description in the chat status line
Mikael Berthe <mikael@lilotux.net>
parents: 713
diff changeset
57 void scr_UpdateChatStatus(int forceupdate);
707
b26a0bde4cdb Add /roster hide|show|toggle
Mikael Berthe <mikael@lilotux.net>
parents: 701
diff changeset
58 void scr_RosterVisibility(int status);
184
b5aa2b9c425a [/trunk] Changeset 196 by mikael
mikael
parents: 173
diff changeset
59 void scr_WriteIncomingMessage(const char *jidfrom, const char *text,
190
9c2023d60986 [/trunk] Changeset 202 by mikael
mikael
parents: 187
diff changeset
60 time_t timestamp, guint prefix);
50
5425ee13dce6 [/trunk] Changeset 66 by mikael
mikael
parents: 47
diff changeset
61 void scr_WriteOutgoingMessage(const char *jidto, const char *text);
24
e88b15cbf2de [/trunk] Changeset 40 by mikael
mikael
parents:
diff changeset
62 void scr_ShowBuddyWindow(void);
514
979eb0fe2969 Show status changes in buddy window, if it is open
Mikael Berthe <mikael@lilotux.net>
parents: 508
diff changeset
63 bool scr_BuddyBufferExists(const char *jid);
129
03be1cc94560 [/trunk] Changeset 142 by mikael
mikael
parents: 108
diff changeset
64 inline void scr_set_chatmode(int enable);
238
8e30b2bb380e [/trunk] Changeset 251 by mikael
mikael
parents: 236
diff changeset
65 inline void scr_set_multimode(int enable);
724
264375fe7159 Fix a roster refresh issue
Mikael Berthe <mikael@lilotux.net>
parents: 723
diff changeset
66 inline int scr_get_multimode(void);
654
d7fe7b88e4fc MUC: Set the new_message flag when joining a room
Mikael Berthe <mikael@lilotux.net>
parents: 580
diff changeset
67 void scr_setmsgflag_if_needed(const char *jid);
238
8e30b2bb380e [/trunk] Changeset 251 by mikael
mikael
parents: 236
diff changeset
68 void scr_append_multiline(const char *line);
724
264375fe7159 Fix a roster refresh issue
Mikael Berthe <mikael@lilotux.net>
parents: 723
diff changeset
69 inline const char *scr_get_multiline(void);
24
e88b15cbf2de [/trunk] Changeset 40 by mikael
mikael
parents:
diff changeset
70
675
ae7016aae014 New "beep_on_message" option
Mikael Berthe <mikael@lilotux.net>
parents: 654
diff changeset
71 inline void scr_Beep(void);
24
e88b15cbf2de [/trunk] Changeset 40 by mikael
mikael
parents:
diff changeset
72
322
da138cdebf04 Implement auto-away mode
Mikael Berthe <mikael@lilotux.net>
parents: 314
diff changeset
73 void scr_CheckAutoAway(bool activity);
da138cdebf04 Implement auto-away mode
Mikael Berthe <mikael@lilotux.net>
parents: 314
diff changeset
74
104
fe7257d251ac [/trunk] Changeset 118 by mikael
mikael
parents: 81
diff changeset
75 // For commands...
108
7fb72bc13732 [/trunk] Changeset 122 by mikael
mikael
parents: 104
diff changeset
76 void scr_RosterTop(void);
7fb72bc13732 [/trunk] Changeset 122 by mikael
mikael
parents: 104
diff changeset
77 void scr_RosterBottom(void);
377
00809e3e327e Add "/roster up" and "/roster down"
Mikael Berthe <mikael@lilotux.net>
parents: 374
diff changeset
78 void scr_RosterUp(void);
00809e3e327e Add "/roster up" and "/roster down"
Mikael Berthe <mikael@lilotux.net>
parents: 374
diff changeset
79 void scr_RosterDown(void);
265
49e9e02dd6d0 Add "/roster search" command
mikael@frmp8452
parents: 238
diff changeset
80 void scr_RosterSearch(char *);
480
882e1acae422 Add /say_to command
Mikael Berthe <mikael@lilotux.net>
parents: 464
diff changeset
81 void scr_RosterJumpJid(char *);
361
51ff319947c3 Code cleanup/optimization
Mikael Berthe <mikael@lilotux.net>
parents: 336
diff changeset
82 void scr_BufferTopBottom(int topbottom);
369
499170ed71c9 Rename some buffer commands, for homogeneity
Mikael Berthe <mikael@lilotux.net>
parents: 364
diff changeset
83 void scr_BufferClear(void);
370
dd9e2eb52916 Add /buffer search_{backward,forward}
Mikael Berthe <mikael@lilotux.net>
parents: 369
diff changeset
84 void scr_BufferSearch(int direction, const char *text);
462
d580e87c11ed Add "/buffer %n"
Mikael Berthe <mikael@lilotux.net>
parents: 389
diff changeset
85 void scr_BufferPercent(int pc);
464
e4840b288be0 Add "/buffer date"
Mikael Berthe <mikael@lilotux.net>
parents: 462
diff changeset
86 void scr_BufferDate(time_t t);
236
72fd1273f2b7 [/trunk] Changeset 249 by mikael
mikael
parents: 190
diff changeset
87 void scr_RosterUnreadMessage(int);
330
a9013124ede6 Add "/roster alternate"
Mikael Berthe <mikael@lilotux.net>
parents: 322
diff changeset
88 void scr_RosterJumpAlternate(void);
508
5a2132ba2220 Add "/buffer up" and "/buffer down"
Mikael Berthe <mikael@lilotux.net>
parents: 480
diff changeset
89 void scr_BufferScrollUpDown(int updown, unsigned int nblines);
104
fe7257d251ac [/trunk] Changeset 118 by mikael
mikael
parents: 81
diff changeset
90
24
e88b15cbf2de [/trunk] Changeset 40 by mikael
mikael
parents:
diff changeset
91 #endif
576
8b3db0b555a1 Add Vim modelines
Mikael Berthe <mikael@lilotux.net>
parents: 515
diff changeset
92
580
fed6d1e4d7a9 Fix modelines
Mikael Berthe <mikael@lilotux.net>
parents: 576
diff changeset
93 /* vim: set expandtab cindent cinoptions=>2\:2(0: For Vim users... */