EKG commit list
2009-05-29 19:22:58 UTC
Author: gophi
Date: 2009-05-29 21:22:57 +0200 (Fri, 29 May 2009)
New Revision: 2822
Modified:
trunk/ChangeLog
trunk/docs/vars.txt
trunk/src/commands.c
trunk/src/ekg.c
trunk/src/events.c
trunk/src/stuff.c
trunk/src/stuff.h
trunk/src/themes.c
trunk/src/vars.c
Log:
- nowe opisy z libgadu: poGGadaj ze mna i nie przeszkadzac (gophi)
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2009-05-29 18:43:00 UTC (rev 2821)
+++ trunk/ChangeLog 2009-05-29 19:22:57 UTC (rev 2822)
@@ -7,6 +7,7 @@
// 2009-05-29
- poprawienie buga z pobieraniem userlisty (Dominik Bia?y/g)
+- nowe opisy z libgadu: poGGadaj ze mn? i nie przeszkadza? (gophi)
// 2009-04-17
Modified: trunk/docs/vars.txt
===================================================================
--- trunk/docs/vars.txt 2009-05-29 18:43:00 UTC (rev 2821)
+++ trunk/docs/vars.txt 2009-05-29 19:22:57 UTC (rev 2822)
@@ -441,6 +441,13 @@
m?wi, czy w interfejsie ncurses t?o ma by? przezroczyste. zmiany
odnios? skutek po ponownym uruchomieniu.
+dnd_reason
+ typ: tekst
+ domy?lna warto??: brak
+
+ domy?lny opis stanu nie przeszkadza?, ustawiany przy zmianie bez
+ podania parametru.
+
emoticons
typ: bool
domy?lna warto??: 1
@@ -478,6 +485,13 @@
pocz?tkowych informacji o stanie os?b po po??czeniu jako zmian?
ich stanu.
+ffc_reason
+ typ: tekst
+ domy?lna warto??: brak
+
+ domy?lny opis stanu poGGadaj ze mn?, ustawiany przy zmianie bez
+ podania parametru.
+
files_mode_config
typ: int
domy?lna warto??: 600
Modified: trunk/src/commands.c
===================================================================
--- trunk/src/commands.c 2009-05-29 18:43:00 UTC (rev 2821)
+++ trunk/src/commands.c 2009-05-29 19:22:57 UTC (rev 2822)
@@ -466,6 +466,12 @@
sms_away_free();
}
+ if (!strcasecmp(name, "ffc"))
+ change_status(GG_STATUS_FFC, params[0], q);
+
+ if (!strcasecmp(name, "dnd"))
+ change_status(GG_STATUS_DND, params[0], q);
+
if (!strcasecmp(name, "private")) {
int tmp;
@@ -4862,6 +4868,14 @@
case GG_STATUS_BUSY_DESCR:
format = format_find("quick_list_busy");
break;
+ case GG_STATUS_FFC:
+ case GG_STATUS_FFC_DESCR:
+ format = format_find("quick_list_ffc");
+ break;
+ case GG_STATUS_DND:
+ case GG_STATUS_DND_DESCR:
+ format = format_find("quick_list_dnd");
+ break;
case GG_STATUS_INVISIBLE:
case GG_STATUS_INVISIBLE_DESCR:
format = format_find("quick_list_invisible");
@@ -6470,6 +6484,15 @@
"??czy? po okre?lonym czasie.");
command_add
+ ( "dnd", "r", cmd_away, 0,
+ " [pow?d/-]", "zmienia stan na nie przeszkadza?",
+ "\n"
+ "Je?li w??czona jest odpowiednia opcja %Trandom_reason%n i nie "
+ "podano powodu, zostanie wylosowany z pliku %Tdnd.reasons%n. "
+ "Podanie ,,%T-%n'' zamiast powodu spowoduje wyczyszczenie bez "
+ "wzgl?du na ustawienia zmiennych.");
+
+ command_add
( "echo", "?", cmd_echo, 0,
" [tekst]", "wy?wietla podany tekst",
"");
@@ -6493,6 +6516,15 @@
"");
command_add
+ ( "ffc", "r", cmd_away, 0,
+ " [pow?d/-]", "zmienia stan na poGGadaj ze mn?",
+ "\n"
+ "Je?li w??czona jest odpowiednia opcja %Trandom_reason%n i nie "
+ "podano powodu, zostanie wylosowany z pliku %Tffc.reasons%n. "
+ "Podanie ,,%T-%n'' zamiast powodu spowoduje wyczyszczenie bez "
+ "wzgl?du na ustawienia zmiennych.");
+
+ command_add
( "find", "u", cmd_find, 0,
" [numer|opcje]", "przeszukiwanie katalogu publicznego",
"\n"
@@ -6659,7 +6691,7 @@
" [-l, --list] [numer] wy?wietla list? zdarze?\n"
"\n"
"Dost?pne zdarzenia to:\n"
- " - avail, away, notavail, invisible - zmiana stanu na podany (bez przypadku ,,online'')\n"
+ " - avail, away, notavail, dnd, ffc, invisible - zmiana stanu na podany (bez przypadku ,,online'')\n"
" - online - zmiana stanu z ,,niedost?pny'' na ,,dost?pny''\n"
" - descr - zmiana opisu\n"
" - blocked - zostali?my zablokowani\n"
Modified: trunk/src/ekg.c
===================================================================
--- trunk/src/ekg.c 2009-05-29 18:43:00 UTC (rev 2821)
+++ trunk/src/ekg.c 2009-05-29 19:22:57 UTC (rev 2822)
@@ -1141,6 +1141,8 @@
struct option ekg_options[] = {
{ "back", optional_argument, 0, 'b' },
{ "away", optional_argument, 0, 'a' },
+ { "ffc", optional_argument, 0, 'F' },
+ { "dnd", optional_argument, 0, 'd' },
{ "invisible", optional_argument, 0, 'i' },
{ "private", no_argument, 0, 'p' },
{ "no-auto", no_argument, 0, 'n' },
@@ -1236,6 +1238,22 @@
xfree(new_reason);
new_reason = xstrdup(optarg);
break;
+ case 'F':
+ if (!optarg && argv[optind] && argv[optind][0] != '-')
+ optarg = argv[optind++];
+
+ new_status = (optarg) ? GG_STATUS_FFC_DESCR : GG_STATUS_FFC;
+ xfree(new_reason);
+ new_reason = xstrdup(optarg);
+ break;
+ case 'd':
+ if (!optarg && argv[optind] && argv[optind][0] != '-')
+ optarg = argv[optind++];
+
+ new_status = (optarg) ? GG_STATUS_DND_DESCR : GG_STATUS_DND;
+ xfree(new_reason);
+ new_reason = xstrdup(optarg);
+ break;
case 'i':
if (!optarg && argv[optind] && argv[optind][0] != '-')
optarg = argv[optind++];
@@ -1264,6 +1282,8 @@
" -n, --no-auto nie ??czy si? automatycznie z serwerem\n"
" -a, --away[=OPIS] domy?lnie zmienia stan na ,,zaj?ty''\n"
" -b, --back[=OPIS] domy?lnie zmienia stan na ,,dost?pny''\n"
+" -F, --ffc[=OPIS] domy?lnie zmienia stan na ,,poGGadaj ze mn?''\n"
+" -d, --dnd[=OPIS] domy?lnie zmienia stan na ,,nie przeszkadza?''\n"
" -i, --invisible[=OPIS] domy?lnie zmienia stan na ,,niewidoczny''\n"
" -p, --private domy?lnie ustawia tryb ,,tylko dla znajomych''\n"
" -v, --version wy?wietla wersje programu i wychodzi\n"
Modified: trunk/src/events.c
===================================================================
--- trunk/src/events.c 2009-05-29 18:43:00 UTC (rev 2821)
+++ trunk/src/events.c 2009-05-29 19:22:57 UTC (rev 2822)
@@ -826,6 +826,10 @@
{ GG_STATUS_AVAIL_DESCR, EVENT_AVAIL, "avail", "status_avail_descr" },
{ GG_STATUS_BUSY, EVENT_AWAY, "busy", "status_busy" },
{ GG_STATUS_BUSY_DESCR, EVENT_AWAY, "busy", "status_busy_descr" },
+ { GG_STATUS_DND, EVENT_DND, "dnd", "status_dnd" },
+ { GG_STATUS_DND_DESCR, EVENT_DND, "dnd", "status_dnd_descr" },
+ { GG_STATUS_FFC, EVENT_FFC, "ffc", "status_ffc" },
+ { GG_STATUS_FFC_DESCR, EVENT_FFC, "ffc", "status_ffc_descr" },
{ GG_STATUS_INVISIBLE, EVENT_INVISIBLE, "invisible", "status_invisible" },
{ GG_STATUS_INVISIBLE_DESCR, EVENT_INVISIBLE, "invisible", "status_invisible_descr" },
{ GG_STATUS_NOT_AVAIL, EVENT_NOT_AVAIL, "notavail", "status_not_avail" },
@@ -2965,6 +2969,14 @@
case GG_STATUS_BUSY_DESCR:
active = format_string(format_find(__format("_busy")), (__firstname) ? __firstname : nickname);
break;
+ case GG_STATUS_DND:
+ case GG_STATUS_DND_DESCR:
+ active = format_string(format_find(__format("_dnd")), (__firstname) ? __firstname : nickname);
+ break;
+ case GG_STATUS_FFC:
+ case GG_STATUS_FFC_DESCR:
+ active = format_string(format_find(__format("_ffc")), (__firstname) ? __firstname : nickname);
+ break;
case GG_STATUS_INVISIBLE:
case GG_STATUS_INVISIBLE_DESCR:
active = format_string(format_find(__format("_invisible")), (__firstname) ? __firstname : nickname);
Modified: trunk/src/stuff.c
===================================================================
--- trunk/src/stuff.c 2009-05-29 18:43:00 UTC (rev 2821)
+++ trunk/src/stuff.c 2009-05-29 19:22:57 UTC (rev 2822)
@@ -157,6 +157,8 @@
char *config_quit_reason = NULL;
char *config_away_reason = NULL;
char *config_back_reason = NULL;
+char *config_ffc_reason = NULL;
+char *config_dnd_reason = NULL;
int config_random_reason = 0;
#ifdef HAVE_REGEX_H
int config_regex_flags = 0;
@@ -912,6 +914,10 @@
tmp = config_away_reason;
if (!strcmp(var, "back_reason"))
tmp = config_back_reason;
+ if (!strcmp(var, "dnd_reason"))
+ tmp = config_dnd_reason;
+ if (!strcmp(var, "ffc_reason"))
+ tmp = config_ffc_reason;
if (!strcmp(var, "quit_reason"))
tmp = config_quit_reason;
@@ -3236,6 +3242,28 @@
auto_format = "auto_back";
auto_format_descr = "auto_back_descr";
break;
+ case GG_STATUS_DND:
+ case GG_STATUS_DND_DESCR:
+ status_descr = GG_STATUS_DND_DESCR;
+ random_mask = 4;
+ filename = "dnd.reasons";
+ config_x_reason = config_dnd_reason;
+ format = "dnd";
+ format_descr = "dnd_descr";
+ auto_format = "auto_dnd";
+ auto_format_descr = "auto_dnd_descr";
+ break;
+ case GG_STATUS_FFC:
+ case GG_STATUS_FFC_DESCR:
+ status_descr = GG_STATUS_FFC_DESCR;
+ random_mask = 4;
+ filename = "ffc.reasons";
+ config_x_reason = config_ffc_reason;
+ format = "ffc";
+ format_descr = "ffc_descr";
+ auto_format = "auto_ffc";
+ auto_format_descr = "auto_ffc_descr";
+ break;
case GG_STATUS_INVISIBLE:
case GG_STATUS_INVISIBLE_DESCR:
status_descr = GG_STATUS_INVISIBLE_DESCR;
@@ -3395,6 +3423,18 @@
case GG_STATUS_BUSY_DESCR:
label = "busy_descr";
break;
+ case GG_STATUS_FFC:
+ label = "ffc";
+ break;
+ case GG_STATUS_FFC_DESCR:
+ label = "ffc_descr";
+ break;
+ case GG_STATUS_DND:
+ label = "dnd";
+ break;
+ case GG_STATUS_DND_DESCR:
+ label = "dnd_descr";
+ break;
case GG_STATUS_INVISIBLE:
label = "invisible";
break;
Modified: trunk/src/stuff.h
===================================================================
--- trunk/src/stuff.h 2009-05-29 18:43:00 UTC (rev 2821)
+++ trunk/src/stuff.h 2009-05-29 19:22:57 UTC (rev 2822)
@@ -70,9 +70,11 @@
EVENT_DISCONNECTED = TOGGLE_BIT(23),
EVENT_CONNECTIONLOST = TOGGLE_BIT(24),
EVENT_IMAGE = TOGGLE_BIT(25),
+ EVENT_DND = TOGGLE_BIT(26),
+ EVENT_FFC = TOGGLE_BIT(27),
- EVENT_ALL = TOGGLE_BIT(26) - 1,
- INACTIVE_EVENT = TOGGLE_BIT(26)
+ EVENT_ALL = TOGGLE_BIT(28) - 1,
+ INACTIVE_EVENT = TOGGLE_BIT(28)
};
struct event_label {
@@ -234,6 +236,8 @@
char *config_aspell_encoding;
#endif
char *config_back_reason;
+char *config_ffc_reason;
+char *config_dnd_reason;
int config_beep;
int config_beep_msg;
int config_beep_chat;
Modified: trunk/src/themes.c
===================================================================
--- trunk/src/themes.c 2009-05-29 18:43:00 UTC (rev 2821)
+++ trunk/src/themes.c 2009-05-29 19:22:57 UTC (rev 2822)
@@ -914,6 +914,10 @@
format_add("away_descr", "%> Zmieniono stan na zaj?ty: %T%1%n%2\n", 1);
format_add("back", "%> Zmieniono stan na dost?pny\n", 1);
format_add("back_descr", "%> Zmieniono stan na dost?pny: %T%1%n%2%n\n", 1);
+ format_add("dnd", "%> Zmieniono stan na nie przeszkadza?\n", 1);
+ format_add("dnd_descr", "%> Zmieniono stan na nie przeszkadza?: %T%1%n%2%n\n", 1);
+ format_add("ffc", "%> Zmieniono stan na poGGadaj ze mn?\n", 1);
+ format_add("ffc_descr", "%> Zmieniono stan na poGGadaj ze mn?: %T%1%n%2%n\n", 1);
format_add("invisible", "%> Zmieniono stan na niewidoczny\n", 1);
format_add("invisible_descr", "%> Zmieniono stan na niewidoczny: %T%1%n%2\n", 1);
format_add("private_mode_is_on", "%> Tryb ,,tylko dla znajomych'' jest w??czony\n", 1);
@@ -959,6 +963,10 @@
format_add("list_avail_descr", "%> %1 %Y(dost?pn%@2: %n%5%Y)%n %b%3:%4%n\n", 1);
format_add("list_busy", "%> %1 %G(zaj?t%@2)%n %b%3:%4%n\n", 1);
format_add("list_busy_descr", "%> %1 %G(zaj?t%@2: %n%5%G)%n %b%3:%4%n\n", 1);
+ format_add("list_ffc", "%> %1 %y(poGGadaj ze mn?)%n %b%3:%4%n\n", 1);
+ format_add("list_ffc_descr", "%> %1 %y(poGGadaj ze mn?: %n%5%Y)%n %b%3:%4%n\n", 1);
+ format_add("list_dnd", "%> %1 %g(nie przeszkadza?)%n %b%3:%4%n\n", 1);
+ format_add("list_dnd_descr", "%> %1 %g(nie przeszkadza?: %n%5%G)%n %b%3:%4%n\n", 1);
format_add("list_not_avail", "%> %1 %r(niedost?pn%@2)%n\n", 1);
format_add("list_not_avail_descr", "%> %1 %r(niedost?pn%@2: %n%5%r)%n\n", 1);
format_add("list_invisible", "%> %1 %c(niewidoczn%@2)%n %b%3:%4%n\n", 1);
@@ -984,6 +992,16 @@
format_add("contacts_busy_descr", "%Ki%G%1%n", 1);
format_add("contacts_busy_descr_full", "%Ki%G%1%n %2", 1);
format_add("contacts_busy_footer", "", 1);
+ format_add("contacts_ffc_header", "", 1);
+ format_add("contacts_ffc", " %Y%1%n", 1);
+ format_add("contacts_ffc_descr", "%Ki%y%1%n", 1);
+ format_add("contacts_ffc_descr_full", "%Ki%y%1%n %2", 1);
+ format_add("contacts_ffc_footer", "", 1);
+ format_add("contacts_dnd_header", "", 1);
+ format_add("contacts_dnd", " %G%1%n", 1);
+ format_add("contacts_dnd_descr", "%Ki%g%1%n", 1);
+ format_add("contacts_dnd_descr_full", "%Ki%g%1%n %2", 1);
+ format_add("contacts_dnd_footer", "", 1);
format_add("contacts_not_avail_header", "", 1);
format_add("contacts_not_avail", " %r%1%n", 1);
format_add("contacts_not_avail_descr", "%Ki%r%1%n", 1);
@@ -1066,6 +1084,10 @@
format_add("status_avail_descr", "%> %1 jest dost?pn%@2: %T%3%n\n", 1);
format_add("status_busy", "%> %1 jest zaj?t%@2\n", 1);
format_add("status_busy_descr", "%> %1 jest zaj?t%@2: %T%3%n\n", 1);
+ format_add("status_dnd", "%> %1 jest nie przeszkadza?\n", 1);
+ format_add("status_dnd_descr", "%> %1 jest nie przeszkadza?: %T%3%n\n", 1);
+ format_add("status_ffc", "%> %1 chce poGGada?\n", 1);
+ format_add("status_ffc_descr", "%> %1 chce poGGada?: %T%3%n\n", 1);
format_add("status_not_avail", "%> %1 jest niedost?pn%@2\n", 1);
format_add("status_not_avail_descr", "%> %1 jest niedost?pn%@2: %T%3%n\n", 1);
format_add("status_invisible", "%> %1 jest niewidoczn%@2\n", 1);
@@ -1076,6 +1098,10 @@
format_add("auto_away_descr", "%> Automagicznie zmieniono stan na zaj?ty po %1 nieaktywno?ci: %T%2%n%3\n", 1);
format_add("auto_back", "%> Automagicznie zmieniono stan na dost?pny\n", 1);
format_add("auto_back_descr", "%> Automagicznie zmieniono stan na dost?pny: %T%2%n%3\n", 1);
+ format_add("auto_dnd", "%> Automagicznie zmieniono stan na nie przeszkadza?\n", 1);
+ format_add("auto_dnd_descr", "%> Automagicznie zmieniono stan na nie przeszkadza?: %T%2%n%3\n", 1);
+ format_add("auto_ffc", "%> Automagicznie zmieniono stan na poGGadaj ze mn?\n", 1);
+ format_add("auto_ffc_descr", "%> Automagicznie zmieniono stan na poGGadaj ze mn?: %T%2%n%3\n", 1);
/* po??czenie z serwerem */
format_add("connecting", "%> ??cz? si? z serwerem...\n", 1);
@@ -1228,6 +1254,10 @@
format_add("user_info_avail_descr", "%Ydost?pn%@1%n (%2)", 1);
format_add("user_info_busy", "%Gzaj?t%@1%n", 1);
format_add("user_info_busy_descr", "%Gzaj?t%@1%n (%2)", 1);
+ format_add("user_info_ffc", "%ypoGGadaj ze mn?%n", 1);
+ format_add("user_info_ffc_descr", "%ypoGGadaj ze mn?%n (%2)", 1);
+ format_add("user_info_dnd", "%gnie przeszkadza?%n", 1);
+ format_add("user_info_dnd_descr", "%gnie przeszkadza?%n (%2)", 1);
format_add("user_info_not_avail", "%rniedost?pn%@1%n", 1);
format_add("user_info_not_avail_descr", "%rniedost?pn%@1%n (%2)", 1);
format_add("user_info_invisible", "%cniewidoczn%@1%n", 1);
@@ -1252,6 +1282,10 @@
format_add("show_status_avail_descr", "%Ydost?pny%n (%T%1%n%2)", 1);
format_add("show_status_busy", "%Gzaj?ty%n", 1);
format_add("show_status_busy_descr", "%Gzaj?ty%n (%T%1%n%2)", 1);
+ format_add("show_status_dnd", "%gnie przeszkadza?%n", 1);
+ format_add("show_status_dnd_descr", "%gnie przeszkadza?%n (%T%1%n%2)", 1);
+ format_add("show_status_ffc", "%ypoGGadaj ze mn?%n", 1);
+ format_add("show_status_ffc_descr", "%ypoGGadaj ze mn?%n (%T%1%n%2)", 1);
format_add("show_status_invisible", "%cniewidoczny%n", 1);
format_add("show_status_invisible_descr", "%cniewidoczny%n (%T%1%n%2)", 1);
format_add("show_status_not_avail", "%rniedost?pny%n", 1);
@@ -1369,6 +1403,10 @@
format_add("quick_list_avail,speech", "%1 jest dost?pny, ", 1);
format_add("quick_list_busy", " %G%1%n", 1);
format_add("quick_list_busy,speech", "%1 jest zaj?ty, ", 1);
+ format_add("quick_list_ffc", " %y%1%n", 1);
+ format_add("quick_list_ffc,speech", "%1 jest poggadaj ze mn?, ", 1);
+ format_add("quick_list_dnd", " %g%1%n", 1);
+ format_add("quick_list_dnd,speech", "%1 jest nie przeszkadza?, ", 1);
format_add("quick_list_invisible", " %c%1%n", 1);
/* window */
Modified: trunk/src/vars.c
===================================================================
--- trunk/src/vars.c 2009-05-29 18:43:00 UTC (rev 2821)
+++ trunk/src/vars.c 2009-05-29 19:22:57 UTC (rev 2822)
@@ -127,6 +127,8 @@
#endif
variable_add("away_reason", "ar", VAR_STR, 1, &config_away_reason, changed_xxx_reason, NULL, NULL);
variable_add("back_reason", "br", VAR_STR, 1, &config_back_reason, changed_xxx_reason, NULL, NULL);
+ variable_add("ffc_reason", "fr", VAR_STR, 1, &config_ffc_reason, changed_xxx_reason, NULL, NULL);
+ variable_add("dnd_reason", "dR", VAR_STR, 1, &config_dnd_reason, changed_xxx_reason, NULL, NULL);
#ifdef WITH_UI_NCURSES
if (ui_init == ui_ncurses_init) {
variable_add("backlog_overlap", "bo", VAR_INT, 1, &config_backlog_overlap, NULL, NULL, NULL);
Date: 2009-05-29 21:22:57 +0200 (Fri, 29 May 2009)
New Revision: 2822
Modified:
trunk/ChangeLog
trunk/docs/vars.txt
trunk/src/commands.c
trunk/src/ekg.c
trunk/src/events.c
trunk/src/stuff.c
trunk/src/stuff.h
trunk/src/themes.c
trunk/src/vars.c
Log:
- nowe opisy z libgadu: poGGadaj ze mna i nie przeszkadzac (gophi)
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2009-05-29 18:43:00 UTC (rev 2821)
+++ trunk/ChangeLog 2009-05-29 19:22:57 UTC (rev 2822)
@@ -7,6 +7,7 @@
// 2009-05-29
- poprawienie buga z pobieraniem userlisty (Dominik Bia?y/g)
+- nowe opisy z libgadu: poGGadaj ze mn? i nie przeszkadza? (gophi)
// 2009-04-17
Modified: trunk/docs/vars.txt
===================================================================
--- trunk/docs/vars.txt 2009-05-29 18:43:00 UTC (rev 2821)
+++ trunk/docs/vars.txt 2009-05-29 19:22:57 UTC (rev 2822)
@@ -441,6 +441,13 @@
m?wi, czy w interfejsie ncurses t?o ma by? przezroczyste. zmiany
odnios? skutek po ponownym uruchomieniu.
+dnd_reason
+ typ: tekst
+ domy?lna warto??: brak
+
+ domy?lny opis stanu nie przeszkadza?, ustawiany przy zmianie bez
+ podania parametru.
+
emoticons
typ: bool
domy?lna warto??: 1
@@ -478,6 +485,13 @@
pocz?tkowych informacji o stanie os?b po po??czeniu jako zmian?
ich stanu.
+ffc_reason
+ typ: tekst
+ domy?lna warto??: brak
+
+ domy?lny opis stanu poGGadaj ze mn?, ustawiany przy zmianie bez
+ podania parametru.
+
files_mode_config
typ: int
domy?lna warto??: 600
Modified: trunk/src/commands.c
===================================================================
--- trunk/src/commands.c 2009-05-29 18:43:00 UTC (rev 2821)
+++ trunk/src/commands.c 2009-05-29 19:22:57 UTC (rev 2822)
@@ -466,6 +466,12 @@
sms_away_free();
}
+ if (!strcasecmp(name, "ffc"))
+ change_status(GG_STATUS_FFC, params[0], q);
+
+ if (!strcasecmp(name, "dnd"))
+ change_status(GG_STATUS_DND, params[0], q);
+
if (!strcasecmp(name, "private")) {
int tmp;
@@ -4862,6 +4868,14 @@
case GG_STATUS_BUSY_DESCR:
format = format_find("quick_list_busy");
break;
+ case GG_STATUS_FFC:
+ case GG_STATUS_FFC_DESCR:
+ format = format_find("quick_list_ffc");
+ break;
+ case GG_STATUS_DND:
+ case GG_STATUS_DND_DESCR:
+ format = format_find("quick_list_dnd");
+ break;
case GG_STATUS_INVISIBLE:
case GG_STATUS_INVISIBLE_DESCR:
format = format_find("quick_list_invisible");
@@ -6470,6 +6484,15 @@
"??czy? po okre?lonym czasie.");
command_add
+ ( "dnd", "r", cmd_away, 0,
+ " [pow?d/-]", "zmienia stan na nie przeszkadza?",
+ "\n"
+ "Je?li w??czona jest odpowiednia opcja %Trandom_reason%n i nie "
+ "podano powodu, zostanie wylosowany z pliku %Tdnd.reasons%n. "
+ "Podanie ,,%T-%n'' zamiast powodu spowoduje wyczyszczenie bez "
+ "wzgl?du na ustawienia zmiennych.");
+
+ command_add
( "echo", "?", cmd_echo, 0,
" [tekst]", "wy?wietla podany tekst",
"");
@@ -6493,6 +6516,15 @@
"");
command_add
+ ( "ffc", "r", cmd_away, 0,
+ " [pow?d/-]", "zmienia stan na poGGadaj ze mn?",
+ "\n"
+ "Je?li w??czona jest odpowiednia opcja %Trandom_reason%n i nie "
+ "podano powodu, zostanie wylosowany z pliku %Tffc.reasons%n. "
+ "Podanie ,,%T-%n'' zamiast powodu spowoduje wyczyszczenie bez "
+ "wzgl?du na ustawienia zmiennych.");
+
+ command_add
( "find", "u", cmd_find, 0,
" [numer|opcje]", "przeszukiwanie katalogu publicznego",
"\n"
@@ -6659,7 +6691,7 @@
" [-l, --list] [numer] wy?wietla list? zdarze?\n"
"\n"
"Dost?pne zdarzenia to:\n"
- " - avail, away, notavail, invisible - zmiana stanu na podany (bez przypadku ,,online'')\n"
+ " - avail, away, notavail, dnd, ffc, invisible - zmiana stanu na podany (bez przypadku ,,online'')\n"
" - online - zmiana stanu z ,,niedost?pny'' na ,,dost?pny''\n"
" - descr - zmiana opisu\n"
" - blocked - zostali?my zablokowani\n"
Modified: trunk/src/ekg.c
===================================================================
--- trunk/src/ekg.c 2009-05-29 18:43:00 UTC (rev 2821)
+++ trunk/src/ekg.c 2009-05-29 19:22:57 UTC (rev 2822)
@@ -1141,6 +1141,8 @@
struct option ekg_options[] = {
{ "back", optional_argument, 0, 'b' },
{ "away", optional_argument, 0, 'a' },
+ { "ffc", optional_argument, 0, 'F' },
+ { "dnd", optional_argument, 0, 'd' },
{ "invisible", optional_argument, 0, 'i' },
{ "private", no_argument, 0, 'p' },
{ "no-auto", no_argument, 0, 'n' },
@@ -1236,6 +1238,22 @@
xfree(new_reason);
new_reason = xstrdup(optarg);
break;
+ case 'F':
+ if (!optarg && argv[optind] && argv[optind][0] != '-')
+ optarg = argv[optind++];
+
+ new_status = (optarg) ? GG_STATUS_FFC_DESCR : GG_STATUS_FFC;
+ xfree(new_reason);
+ new_reason = xstrdup(optarg);
+ break;
+ case 'd':
+ if (!optarg && argv[optind] && argv[optind][0] != '-')
+ optarg = argv[optind++];
+
+ new_status = (optarg) ? GG_STATUS_DND_DESCR : GG_STATUS_DND;
+ xfree(new_reason);
+ new_reason = xstrdup(optarg);
+ break;
case 'i':
if (!optarg && argv[optind] && argv[optind][0] != '-')
optarg = argv[optind++];
@@ -1264,6 +1282,8 @@
" -n, --no-auto nie ??czy si? automatycznie z serwerem\n"
" -a, --away[=OPIS] domy?lnie zmienia stan na ,,zaj?ty''\n"
" -b, --back[=OPIS] domy?lnie zmienia stan na ,,dost?pny''\n"
+" -F, --ffc[=OPIS] domy?lnie zmienia stan na ,,poGGadaj ze mn?''\n"
+" -d, --dnd[=OPIS] domy?lnie zmienia stan na ,,nie przeszkadza?''\n"
" -i, --invisible[=OPIS] domy?lnie zmienia stan na ,,niewidoczny''\n"
" -p, --private domy?lnie ustawia tryb ,,tylko dla znajomych''\n"
" -v, --version wy?wietla wersje programu i wychodzi\n"
Modified: trunk/src/events.c
===================================================================
--- trunk/src/events.c 2009-05-29 18:43:00 UTC (rev 2821)
+++ trunk/src/events.c 2009-05-29 19:22:57 UTC (rev 2822)
@@ -826,6 +826,10 @@
{ GG_STATUS_AVAIL_DESCR, EVENT_AVAIL, "avail", "status_avail_descr" },
{ GG_STATUS_BUSY, EVENT_AWAY, "busy", "status_busy" },
{ GG_STATUS_BUSY_DESCR, EVENT_AWAY, "busy", "status_busy_descr" },
+ { GG_STATUS_DND, EVENT_DND, "dnd", "status_dnd" },
+ { GG_STATUS_DND_DESCR, EVENT_DND, "dnd", "status_dnd_descr" },
+ { GG_STATUS_FFC, EVENT_FFC, "ffc", "status_ffc" },
+ { GG_STATUS_FFC_DESCR, EVENT_FFC, "ffc", "status_ffc_descr" },
{ GG_STATUS_INVISIBLE, EVENT_INVISIBLE, "invisible", "status_invisible" },
{ GG_STATUS_INVISIBLE_DESCR, EVENT_INVISIBLE, "invisible", "status_invisible_descr" },
{ GG_STATUS_NOT_AVAIL, EVENT_NOT_AVAIL, "notavail", "status_not_avail" },
@@ -2965,6 +2969,14 @@
case GG_STATUS_BUSY_DESCR:
active = format_string(format_find(__format("_busy")), (__firstname) ? __firstname : nickname);
break;
+ case GG_STATUS_DND:
+ case GG_STATUS_DND_DESCR:
+ active = format_string(format_find(__format("_dnd")), (__firstname) ? __firstname : nickname);
+ break;
+ case GG_STATUS_FFC:
+ case GG_STATUS_FFC_DESCR:
+ active = format_string(format_find(__format("_ffc")), (__firstname) ? __firstname : nickname);
+ break;
case GG_STATUS_INVISIBLE:
case GG_STATUS_INVISIBLE_DESCR:
active = format_string(format_find(__format("_invisible")), (__firstname) ? __firstname : nickname);
Modified: trunk/src/stuff.c
===================================================================
--- trunk/src/stuff.c 2009-05-29 18:43:00 UTC (rev 2821)
+++ trunk/src/stuff.c 2009-05-29 19:22:57 UTC (rev 2822)
@@ -157,6 +157,8 @@
char *config_quit_reason = NULL;
char *config_away_reason = NULL;
char *config_back_reason = NULL;
+char *config_ffc_reason = NULL;
+char *config_dnd_reason = NULL;
int config_random_reason = 0;
#ifdef HAVE_REGEX_H
int config_regex_flags = 0;
@@ -912,6 +914,10 @@
tmp = config_away_reason;
if (!strcmp(var, "back_reason"))
tmp = config_back_reason;
+ if (!strcmp(var, "dnd_reason"))
+ tmp = config_dnd_reason;
+ if (!strcmp(var, "ffc_reason"))
+ tmp = config_ffc_reason;
if (!strcmp(var, "quit_reason"))
tmp = config_quit_reason;
@@ -3236,6 +3242,28 @@
auto_format = "auto_back";
auto_format_descr = "auto_back_descr";
break;
+ case GG_STATUS_DND:
+ case GG_STATUS_DND_DESCR:
+ status_descr = GG_STATUS_DND_DESCR;
+ random_mask = 4;
+ filename = "dnd.reasons";
+ config_x_reason = config_dnd_reason;
+ format = "dnd";
+ format_descr = "dnd_descr";
+ auto_format = "auto_dnd";
+ auto_format_descr = "auto_dnd_descr";
+ break;
+ case GG_STATUS_FFC:
+ case GG_STATUS_FFC_DESCR:
+ status_descr = GG_STATUS_FFC_DESCR;
+ random_mask = 4;
+ filename = "ffc.reasons";
+ config_x_reason = config_ffc_reason;
+ format = "ffc";
+ format_descr = "ffc_descr";
+ auto_format = "auto_ffc";
+ auto_format_descr = "auto_ffc_descr";
+ break;
case GG_STATUS_INVISIBLE:
case GG_STATUS_INVISIBLE_DESCR:
status_descr = GG_STATUS_INVISIBLE_DESCR;
@@ -3395,6 +3423,18 @@
case GG_STATUS_BUSY_DESCR:
label = "busy_descr";
break;
+ case GG_STATUS_FFC:
+ label = "ffc";
+ break;
+ case GG_STATUS_FFC_DESCR:
+ label = "ffc_descr";
+ break;
+ case GG_STATUS_DND:
+ label = "dnd";
+ break;
+ case GG_STATUS_DND_DESCR:
+ label = "dnd_descr";
+ break;
case GG_STATUS_INVISIBLE:
label = "invisible";
break;
Modified: trunk/src/stuff.h
===================================================================
--- trunk/src/stuff.h 2009-05-29 18:43:00 UTC (rev 2821)
+++ trunk/src/stuff.h 2009-05-29 19:22:57 UTC (rev 2822)
@@ -70,9 +70,11 @@
EVENT_DISCONNECTED = TOGGLE_BIT(23),
EVENT_CONNECTIONLOST = TOGGLE_BIT(24),
EVENT_IMAGE = TOGGLE_BIT(25),
+ EVENT_DND = TOGGLE_BIT(26),
+ EVENT_FFC = TOGGLE_BIT(27),
- EVENT_ALL = TOGGLE_BIT(26) - 1,
- INACTIVE_EVENT = TOGGLE_BIT(26)
+ EVENT_ALL = TOGGLE_BIT(28) - 1,
+ INACTIVE_EVENT = TOGGLE_BIT(28)
};
struct event_label {
@@ -234,6 +236,8 @@
char *config_aspell_encoding;
#endif
char *config_back_reason;
+char *config_ffc_reason;
+char *config_dnd_reason;
int config_beep;
int config_beep_msg;
int config_beep_chat;
Modified: trunk/src/themes.c
===================================================================
--- trunk/src/themes.c 2009-05-29 18:43:00 UTC (rev 2821)
+++ trunk/src/themes.c 2009-05-29 19:22:57 UTC (rev 2822)
@@ -914,6 +914,10 @@
format_add("away_descr", "%> Zmieniono stan na zaj?ty: %T%1%n%2\n", 1);
format_add("back", "%> Zmieniono stan na dost?pny\n", 1);
format_add("back_descr", "%> Zmieniono stan na dost?pny: %T%1%n%2%n\n", 1);
+ format_add("dnd", "%> Zmieniono stan na nie przeszkadza?\n", 1);
+ format_add("dnd_descr", "%> Zmieniono stan na nie przeszkadza?: %T%1%n%2%n\n", 1);
+ format_add("ffc", "%> Zmieniono stan na poGGadaj ze mn?\n", 1);
+ format_add("ffc_descr", "%> Zmieniono stan na poGGadaj ze mn?: %T%1%n%2%n\n", 1);
format_add("invisible", "%> Zmieniono stan na niewidoczny\n", 1);
format_add("invisible_descr", "%> Zmieniono stan na niewidoczny: %T%1%n%2\n", 1);
format_add("private_mode_is_on", "%> Tryb ,,tylko dla znajomych'' jest w??czony\n", 1);
@@ -959,6 +963,10 @@
format_add("list_avail_descr", "%> %1 %Y(dost?pn%@2: %n%5%Y)%n %b%3:%4%n\n", 1);
format_add("list_busy", "%> %1 %G(zaj?t%@2)%n %b%3:%4%n\n", 1);
format_add("list_busy_descr", "%> %1 %G(zaj?t%@2: %n%5%G)%n %b%3:%4%n\n", 1);
+ format_add("list_ffc", "%> %1 %y(poGGadaj ze mn?)%n %b%3:%4%n\n", 1);
+ format_add("list_ffc_descr", "%> %1 %y(poGGadaj ze mn?: %n%5%Y)%n %b%3:%4%n\n", 1);
+ format_add("list_dnd", "%> %1 %g(nie przeszkadza?)%n %b%3:%4%n\n", 1);
+ format_add("list_dnd_descr", "%> %1 %g(nie przeszkadza?: %n%5%G)%n %b%3:%4%n\n", 1);
format_add("list_not_avail", "%> %1 %r(niedost?pn%@2)%n\n", 1);
format_add("list_not_avail_descr", "%> %1 %r(niedost?pn%@2: %n%5%r)%n\n", 1);
format_add("list_invisible", "%> %1 %c(niewidoczn%@2)%n %b%3:%4%n\n", 1);
@@ -984,6 +992,16 @@
format_add("contacts_busy_descr", "%Ki%G%1%n", 1);
format_add("contacts_busy_descr_full", "%Ki%G%1%n %2", 1);
format_add("contacts_busy_footer", "", 1);
+ format_add("contacts_ffc_header", "", 1);
+ format_add("contacts_ffc", " %Y%1%n", 1);
+ format_add("contacts_ffc_descr", "%Ki%y%1%n", 1);
+ format_add("contacts_ffc_descr_full", "%Ki%y%1%n %2", 1);
+ format_add("contacts_ffc_footer", "", 1);
+ format_add("contacts_dnd_header", "", 1);
+ format_add("contacts_dnd", " %G%1%n", 1);
+ format_add("contacts_dnd_descr", "%Ki%g%1%n", 1);
+ format_add("contacts_dnd_descr_full", "%Ki%g%1%n %2", 1);
+ format_add("contacts_dnd_footer", "", 1);
format_add("contacts_not_avail_header", "", 1);
format_add("contacts_not_avail", " %r%1%n", 1);
format_add("contacts_not_avail_descr", "%Ki%r%1%n", 1);
@@ -1066,6 +1084,10 @@
format_add("status_avail_descr", "%> %1 jest dost?pn%@2: %T%3%n\n", 1);
format_add("status_busy", "%> %1 jest zaj?t%@2\n", 1);
format_add("status_busy_descr", "%> %1 jest zaj?t%@2: %T%3%n\n", 1);
+ format_add("status_dnd", "%> %1 jest nie przeszkadza?\n", 1);
+ format_add("status_dnd_descr", "%> %1 jest nie przeszkadza?: %T%3%n\n", 1);
+ format_add("status_ffc", "%> %1 chce poGGada?\n", 1);
+ format_add("status_ffc_descr", "%> %1 chce poGGada?: %T%3%n\n", 1);
format_add("status_not_avail", "%> %1 jest niedost?pn%@2\n", 1);
format_add("status_not_avail_descr", "%> %1 jest niedost?pn%@2: %T%3%n\n", 1);
format_add("status_invisible", "%> %1 jest niewidoczn%@2\n", 1);
@@ -1076,6 +1098,10 @@
format_add("auto_away_descr", "%> Automagicznie zmieniono stan na zaj?ty po %1 nieaktywno?ci: %T%2%n%3\n", 1);
format_add("auto_back", "%> Automagicznie zmieniono stan na dost?pny\n", 1);
format_add("auto_back_descr", "%> Automagicznie zmieniono stan na dost?pny: %T%2%n%3\n", 1);
+ format_add("auto_dnd", "%> Automagicznie zmieniono stan na nie przeszkadza?\n", 1);
+ format_add("auto_dnd_descr", "%> Automagicznie zmieniono stan na nie przeszkadza?: %T%2%n%3\n", 1);
+ format_add("auto_ffc", "%> Automagicznie zmieniono stan na poGGadaj ze mn?\n", 1);
+ format_add("auto_ffc_descr", "%> Automagicznie zmieniono stan na poGGadaj ze mn?: %T%2%n%3\n", 1);
/* po??czenie z serwerem */
format_add("connecting", "%> ??cz? si? z serwerem...\n", 1);
@@ -1228,6 +1254,10 @@
format_add("user_info_avail_descr", "%Ydost?pn%@1%n (%2)", 1);
format_add("user_info_busy", "%Gzaj?t%@1%n", 1);
format_add("user_info_busy_descr", "%Gzaj?t%@1%n (%2)", 1);
+ format_add("user_info_ffc", "%ypoGGadaj ze mn?%n", 1);
+ format_add("user_info_ffc_descr", "%ypoGGadaj ze mn?%n (%2)", 1);
+ format_add("user_info_dnd", "%gnie przeszkadza?%n", 1);
+ format_add("user_info_dnd_descr", "%gnie przeszkadza?%n (%2)", 1);
format_add("user_info_not_avail", "%rniedost?pn%@1%n", 1);
format_add("user_info_not_avail_descr", "%rniedost?pn%@1%n (%2)", 1);
format_add("user_info_invisible", "%cniewidoczn%@1%n", 1);
@@ -1252,6 +1282,10 @@
format_add("show_status_avail_descr", "%Ydost?pny%n (%T%1%n%2)", 1);
format_add("show_status_busy", "%Gzaj?ty%n", 1);
format_add("show_status_busy_descr", "%Gzaj?ty%n (%T%1%n%2)", 1);
+ format_add("show_status_dnd", "%gnie przeszkadza?%n", 1);
+ format_add("show_status_dnd_descr", "%gnie przeszkadza?%n (%T%1%n%2)", 1);
+ format_add("show_status_ffc", "%ypoGGadaj ze mn?%n", 1);
+ format_add("show_status_ffc_descr", "%ypoGGadaj ze mn?%n (%T%1%n%2)", 1);
format_add("show_status_invisible", "%cniewidoczny%n", 1);
format_add("show_status_invisible_descr", "%cniewidoczny%n (%T%1%n%2)", 1);
format_add("show_status_not_avail", "%rniedost?pny%n", 1);
@@ -1369,6 +1403,10 @@
format_add("quick_list_avail,speech", "%1 jest dost?pny, ", 1);
format_add("quick_list_busy", " %G%1%n", 1);
format_add("quick_list_busy,speech", "%1 jest zaj?ty, ", 1);
+ format_add("quick_list_ffc", " %y%1%n", 1);
+ format_add("quick_list_ffc,speech", "%1 jest poggadaj ze mn?, ", 1);
+ format_add("quick_list_dnd", " %g%1%n", 1);
+ format_add("quick_list_dnd,speech", "%1 jest nie przeszkadza?, ", 1);
format_add("quick_list_invisible", " %c%1%n", 1);
/* window */
Modified: trunk/src/vars.c
===================================================================
--- trunk/src/vars.c 2009-05-29 18:43:00 UTC (rev 2821)
+++ trunk/src/vars.c 2009-05-29 19:22:57 UTC (rev 2822)
@@ -127,6 +127,8 @@
#endif
variable_add("away_reason", "ar", VAR_STR, 1, &config_away_reason, changed_xxx_reason, NULL, NULL);
variable_add("back_reason", "br", VAR_STR, 1, &config_back_reason, changed_xxx_reason, NULL, NULL);
+ variable_add("ffc_reason", "fr", VAR_STR, 1, &config_ffc_reason, changed_xxx_reason, NULL, NULL);
+ variable_add("dnd_reason", "dR", VAR_STR, 1, &config_dnd_reason, changed_xxx_reason, NULL, NULL);
#ifdef WITH_UI_NCURSES
if (ui_init == ui_ncurses_init) {
variable_add("backlog_overlap", "bo", VAR_INT, 1, &config_backlog_overlap, NULL, NULL, NULL);