Mercurial > pidgin
annotate plugins/CRAZY @ 133:e277d5f0c1dd
[gaim-migrate @ 143]
Let's see if I can remember everything I did:
- Fixed a bug I let slip. If you choose the new option to not play
login sounds when you log in, and then quit before the timeout is
up, it would save that you didn't want login sounds at all.
- Added two new plugin events: event_away and event_buddy_away.
- Made GtkWidget *imaway in away.c and void play(uchar *, int) in
sound.c not static any more (though not referenced in gaim.h).
This is so plugins can use those (and not have to worry about
writing their own sound code).
- Wrote a quick plugin to auto-iconify windows when you go away. I
had just been locally patching my own copy, since I figured it wasn't
worth including as an option. It also demonstrates some of the issues
of deciding between USE_APPLET and not. Perhaps plugins are the way
to go with some things that would otherwise have been options (for
example, the Lag-O-Meter is one of those things that could possibly
have been a plugin instead of hard-coded in).
I think that's everything.
committer: Tailor Script <tailor@pidgin.im>
author | Eric Warmenhoven <eric@warmenhoven.org> |
---|---|
date | Wed, 19 Apr 2000 02:04:30 +0000 (2000-04-19) |
parents | da0883dfa7db |
children |
rev | line source |
---|---|
94
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
93
diff
changeset
|
1 Figure out a user's IP address if they have the same plugin loaded |
93 | 2 |
3 This would be a really interesting and pretty useful plugin. It | |
4 could work possibly by sending 'hidden' text in the form of an | |
5 HTML tag or something, and if it receives the same hidden text, | |
6 it could then pass messages back and forth to send and receive | |
7 the IP addresses. | |
8 | |
9 Perform extra HTML-highlighting and HTML-stripping | |
10 | |
11 Ever get annoyed because gaim doesn't support some HTML markup? | |
12 Here's a work-around. (Although, if you're this determined, you | |
13 might as well just hack gaim and send us the patches ;-) .) | |
14 | |
15 Auto-reply | |
16 | |
17 If someone sends you a message, immediately send them a message | |
18 back. Add fun things to the message. Reverse their text, then | |
19 send it back to them. Play with fonts and colors and HTML tags. | |
20 Really annoy the hell out of them. :-) | |
21 | |
22 Control gaim by monitoring a file | |
23 | |
24 I have to admit, I blatently stole this idea from LICQ. But it | |
25 is a really interesting concept. What happens is it watches a | |
26 certain file to see if it's empty or not. If it's not, it reads | |
27 the contents and executes any commands stored in there (such as | |
28 send a message to someone). This can be nice for having remote | |
29 control of gaim. | |
30 | |
31 | |
32 These are just some of the ideas I came up with in about ten minutes. A | |
33 really nice thing about having plugins is as long as your code doesn't | |
34 segfault, you can keep testing and debugging without having to restart | |
35 gaim. Plus the plugins tend to be small, and quick and easy to compile, | |
36 so development should be quick. Try to have FUN with these plugins :-). | |
37 (BTW, dibs on the 'control by file' plugin. :-) .) | |
94
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
93
diff
changeset
|
38 |
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
93
diff
changeset
|
39 Other useful ideas I came up with later: |
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
93
diff
changeset
|
40 |
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
93
diff
changeset
|
41 -Auto-reconnect on kick |
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
93
diff
changeset
|
42 -Stock/News ticker (I don't want it, but some people do) |
100
da0883dfa7db
[gaim-migrate @ 110]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
96
diff
changeset
|
43 -Spell check |
da0883dfa7db
[gaim-migrate @ 110]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
96
diff
changeset
|
44 |
da0883dfa7db
[gaim-migrate @ 110]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
96
diff
changeset
|
45 This one watches what you're sending and replaces common misspelled |
da0883dfa7db
[gaim-migrate @ 110]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
96
diff
changeset
|
46 words (e.g. teh -> the, u -> you, r -> are, etc.). |
da0883dfa7db
[gaim-migrate @ 110]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
96
diff
changeset
|
47 |
94
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
93
diff
changeset
|
48 -Play games through the same gaim plugin |
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
93
diff
changeset
|
49 |
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
93
diff
changeset
|
50 This one I think is one of my crazier ideas that I would only come up |
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
93
diff
changeset
|
51 with this early in the morning. This plugin would somehow determine if |
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
93
diff
changeset
|
52 the other person is using the same plugin. If s/he is, it would allow |
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
93
diff
changeset
|
53 the people to play a game against each other, like checkers. It could |
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
93
diff
changeset
|
54 be done by watching the messages passed and intercepting ones that |
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
93
diff
changeset
|
55 relate to the game/plugin. Conversation could even continue as usual. |
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
93
diff
changeset
|
56 What gets really warped is then you could write plugins for that |
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
93
diff
changeset
|
57 plugin for various games (checkers, chess, hearts (4 people!)). I have |
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
93
diff
changeset
|
58 no desire of trying this one, help yourself. |
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
93
diff
changeset
|
59 |
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
93
diff
changeset
|
60 There's going to be a few plugins that are going to ship with gaim by default |
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
93
diff
changeset
|
61 eventually, probably. This would be a good thing to put in the PATCHES thing |
96
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
62 over at sourceforge.net, if you write one. Most plugins are probably only going |
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
63 to be one short file, which is probably how most of them should be (some short |
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
64 little hack to do the auto-reconnect thing, for example. That can probably be |
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
65 done in about 10-15 lines). |