Added/moved several "typedef struct _XXX XXX;" to common.h so that

they're known to all files and I don't need those stupid "void *xxx"
anymore just to avoid useless #include. Header files themselves don't
either include others as often anymore.

Added channel->ownnick to point to our NICK_REC in channel's nicks.
Gives a minor speedup in few places :)

Moved completion specific lastmsgs from channel/server core records to
fe-common/core specific records. Also changed the nick completion logic
a bit so it should work better now. Removed
completion_keep_publics_count setting, but changed the meaning of
completion_keep_publics to same as _count was before. Nick completion
doesn't have any time specific code anymore.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1034 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
Timo Sirainen 2001-01-01 07:45:54 +00:00 committed by cras
commit 4a33801669
50 changed files with 316 additions and 266 deletions

View file

@ -1,3 +1,34 @@
#include "common.h"
#define MODULE_NAME "fe-common/core"
typedef struct {
time_t time;
char *nick;
/* channel specific msg to/from me - this is actually a reference
count. it begins from `completion_keep_publics' and is decreased
every time some nick is added to lastmsgs list.
this is because of how the nick completion works. the same nick
is never in the lastmsgs list twice, but every time it's used
it's just moved to the beginning of the list. if this would be
just a boolean value the own-status would never be removed
from the nick if it didn't keep quiet for long enough.
so, the own-status is rememberd only for the last
`completion_keep_publics' lines */
int own;
} LAST_MSG_REC;
typedef struct {
/* /MSG completion: */
GSList *lastmsgs; /* list of nicks who sent you msg or
to who you send msg */
} MODULE_SERVER_REC;
typedef struct {
/* nick completion: */
GSList *lastmsgs; /* list of nicks who sent latest msgs and
list of nicks who you sent msgs to */
} MODULE_CHANNEL_REC;