tOld tstring stuff removed - vaccinewars - be a doctor and try to vaccinate the world
(HTM) git clone git://src.adamsgaard.dk/vaccinewars
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) README
(DIR) LICENSE
---
(DIR) commit cbe75c4a064236ea7d99cde4091576c75fa63254
(DIR) parent 81d376b3c81127ee132ca8434fff10385e323510
(HTM) Author: Ben Webb <ben@salilab.org>
Date: Sat, 7 Apr 2001 19:45:24 +0000
Old tstring stuff removed
Diffstat:
M src/curses_client.c | 21 +++++++++++----------
M src/gtk_client.c | 65 +++++++++++++++++--------------
M src/tstring.c | 50 -------------------------------
M src/tstring.h | 3 ---
4 files changed, 46 insertions(+), 93 deletions(-)
---
(DIR) diff --git a/src/curses_client.c b/src/curses_client.c
t@@ -1205,7 +1205,6 @@ void print_status(Player *Play,char DispDrug) {
/* right hand side of the screen; if FALSE, displays the carried guns. */
int i,c;
GString *text;
- gchar *tfmt,**tstr;
text=g_string_new(NULL);
attrset(TitleAttr);
t@@ -1293,10 +1292,10 @@ void print_status(Player *Play,char DispDrug) {
if (WantAntique) mvaddstr(1,Width*3/4-5,_("Trenchcoat"));
else {
/* Title of the "drugs" window (the only important bit in this string is the
- "%Tde" which is "Drugs" by default) */
- tstring_fmt(&tfmt,&tstr,_("**Stats: Drugs** %Tde"),Names.Drugs);
- mvaddstr(1,Width*3/4-strlen(tstr[0])/2,tstr[0]);
- tstring_free(tfmt,tstr);
+ "%Tde" which is "Drugs" by default; the %/.../ part is ignored, so you
+ don't need to translate it; see doc/i18n.html) */
+ dpg_string_sprintf(text,_("%/Stats: Drugs/%Tde"),Names.Drugs);
+ mvaddstr(1,Width*3/4-strlen(text->str)/2,text->str);
}
for (i=0;i<NumDrug;i++) {
if (Play->Drugs[i].Carried>0) {
t@@ -1310,9 +1309,8 @@ void print_status(Player *Play,char DispDrug) {
} else {
/* Title of the "guns" window (the only important bit in this string is the
"%Tde" which is "Guns" by default) */
- tstring_fmt(&tfmt,&tstr,_("**Stats: Guns** %Tde"),Names.Guns);
- mvaddstr(1,Width*3/4-strlen(tstr[0])/2,tstr[0]);
- tstring_free(tfmt,tstr);
+ dpg_string_sprintf(text,_("%/Stats: Guns/%Tde"),Names.Guns);
+ mvaddstr(1,Width*3/4-strlen(text->str)/2,text->str);
for (i=0;i<NumGun;i++) {
if (Play->Guns[i].Carried>0) {
/* Display of carried guns (%tde="Baretta", etc. by default) */
t@@ -1340,11 +1338,14 @@ void DisplaySpyReports(char *Data,Player *From,Player *To) {
text=g_strdup_printf(_("Spy reports for %s"),GetPlayerName(From));
mvaddstr(17,1,text); g_free(text);
- text=dpg_strdup_printf(_("%Tde..."),Names.Drugs);
+/* Message displayed with a spy's list of drugs (%Tde="Drugs" by default) */
+ text=dpg_strdup_printf(_("%/Spy: Drugs/%Tde..."),Names.Drugs);
mvaddstr(19,20,text); g_free(text);
print_status(From,1); nice_wait();
clear_line(19);
- text=dpg_strdup_printf(_("%Tde..."),Names.Guns);
+
+/* Message displayed with a spy's list of guns (%Tde="Guns" by default) */
+ text=dpg_strdup_printf(_("%/Spy: Guns/%Tde..."),Names.Guns);
mvaddstr(19,20,text); g_free(text);
print_status(From,0); nice_wait();
(DIR) diff --git a/src/gtk_client.c b/src/gtk_client.c
t@@ -784,7 +784,8 @@ static void UpdateCombatant(gchar *DefendName,int DefendBitches,
/* Display of number of bitches or deputies during combat (%tde="bitches"
or "deputies" (etc.) by default) */
- BitchText=dpg_strdup_printf(_("%d %tde"),DefendBitches,BitchName);
+ BitchText=dpg_strdup_printf(_("%/Combat: Bitches/%d %tde"),
+ DefendBitches,BitchName);
/* Display of health during combat */
HealthText=g_strdup_printf(_("Health: %d"),DefendHealth);
t@@ -911,7 +912,6 @@ void DisplayFightMessage(char *Data) {
void DisplayStats(Player *Play,struct StatusWidgets *Status) {
gchar *prstr;
GString *text;
- gchar *tfmt,**tstr;
text=g_string_new(NULL);
t@@ -936,18 +936,18 @@ void DisplayStats(Player *Play,struct StatusWidgets *Status) {
gtk_label_set_text(GTK_LABEL(Status->DebtValue),prstr);
g_free(prstr);
-/* Display of carried guns in GTK+ client status window */
- tstring_fmt(&tfmt,&tstr,_("**Stats: Guns** %Tde"),Names.Guns);
- gtk_label_set_text(GTK_LABEL(Status->GunsName),tstr[0]);
- tstring_free(tfmt,tstr);
+/* Display of carried guns in GTK+ client status window (%Tde="Guns"
+ by default) */
+ dpg_string_sprintf(text,_("%/GTK Stats: Guns/%Tde"),Names.Guns);
+ gtk_label_set_text(GTK_LABEL(Status->GunsName),text->str);
g_string_sprintf(text,"%d",TotalGunsCarried(Play));
gtk_label_set_text(GTK_LABEL(Status->GunsValue),text->str);
if (!WantAntique) {
-/* Display of number of bitches in GTK+ client status window */
- tstring_fmt(&tfmt,&tstr,_("**Stats: Bitches** %Tde"),Names.Bitches);
- gtk_label_set_text(GTK_LABEL(Status->BitchesName),tstr[0]);
- tstring_free(tfmt,tstr);
+/* Display of number of bitches in GTK+ client status window (%Tde="Bitches"
+ by default) */
+ dpg_string_sprintf(text,_("%/GTK Stats: Bitches/%Tde"),Names.Bitches);
+ gtk_label_set_text(GTK_LABEL(Status->BitchesName),text->str);
g_string_sprintf(text,"%d",Play->Bitches.Carried);
gtk_label_set_text(GTK_LABEL(Status->BitchesValue),text->str);
} else {
t@@ -2320,22 +2320,24 @@ static void TransferOK(GtkWidget *widget,GtkWidget *dialog) {
void TransferDialog(gboolean Debt) {
GtkWidget *dialog,*button,*label,*radio,*table,*vbox,*hbbox,*hsep,*entry;
- gchar *text;
GSList *group;
- gchar *tfmt,**tstr;
+ GString *text;
+
+ text=g_string_new("");
dialog=gtk_window_new(GTK_WINDOW_DIALOG);
gtk_signal_connect(GTK_OBJECT(dialog),"destroy",
GTK_SIGNAL_FUNC(SendDoneMessage),NULL);
if (Debt) {
- tstring_fmt(&tfmt,&tstr,
- _("**LoanShark window title** %Tde"),Names.LoanSharkName);
+/* Title of loan shark dialog - (%Tde="The Loan Shark" by default) */
+ dpg_string_sprintf(text,_("%/LoanShark window title/%Tde"),
+ Names.LoanSharkName);
} else {
- tstring_fmt(&tfmt,&tstr,
- _("**BankName window title** %Tde"),Names.BankName);
+/* Title of bank dialog - (%Tde="The Bank" by default) */
+ dpg_string_sprintf(text,_("%/BankName window title/%Tde"),
+ Names.LoanSharkName);
}
- gtk_window_set_title(GTK_WINDOW(dialog),tstr[0]);
- tstring_free(tfmt,tstr);
+ gtk_window_set_title(GTK_WINDOW(dialog),text->str);
gtk_container_set_border_width(GTK_CONTAINER(dialog),7);
gtk_window_set_modal(GTK_WINDOW(dialog),TRUE);
gtk_window_set_transient_for(GTK_WINDOW(dialog),
t@@ -2347,20 +2349,18 @@ void TransferDialog(gboolean Debt) {
gtk_table_set_col_spacings(GTK_TABLE(table),4);
/* Display of player's cash in bank or loan shark dialog */
- text=dpg_strdup_printf(_("Cash: %P"),ClientData.Play->Cash);
- label=gtk_label_new(text);
- g_free(text);
+ dpg_string_sprintf(text,_("Cash: %P"),ClientData.Play->Cash);
+ label=gtk_label_new(text->str);
gtk_table_attach_defaults(GTK_TABLE(table),label,0,3,0,1);
if (Debt) {
/* Display of player's debt in loan shark dialog */
- text=dpg_strdup_printf(_("Debt: %P"),ClientData.Play->Debt);
+ dpg_string_sprintf(text,_("Debt: %P"),ClientData.Play->Debt);
} else {
/* Display of player's bank balance in bank dialog */
- text=dpg_strdup_printf(_("Bank: %P"),ClientData.Play->Bank);
+ dpg_string_sprintf(text,_("Bank: %P"),ClientData.Play->Bank);
}
- label=gtk_label_new(text);
- g_free(text);
+ label=gtk_label_new(text->str);
gtk_table_attach_defaults(GTK_TABLE(table),label,0,3,1,2);
gtk_object_set_data(GTK_OBJECT(dialog),"debt",GINT_TO_POINTER(Debt));
t@@ -2411,6 +2411,8 @@ void TransferDialog(gboolean Debt) {
gtk_container_add(GTK_CONTAINER(dialog),vbox);
gtk_widget_show_all(dialog);
+
+ g_string_free(text,TRUE);
}
void ListPlayers(GtkWidget *widget,gpointer data) {
t@@ -2829,7 +2831,7 @@ void NewNameDialog() {
void GunShopDialog() {
GtkWidget *window,*button,*hsep,*vbox,*hbox;
GtkAccelGroup *accel_group;
- gchar *tfmt,**tstr;
+ gchar *text;
window=gtk_window_new(GTK_WINDOW_DIALOG);
gtk_window_set_default_size(GTK_WINDOW(window),600,190);
t@@ -2837,10 +2839,13 @@ void GunShopDialog() {
GTK_SIGNAL_FUNC(SendDoneMessage),NULL);
accel_group=gtk_accel_group_new();
gtk_window_add_accel_group(GTK_WINDOW(window),accel_group);
- tstring_fmt(&tfmt,&tstr,
- _("**GunShop window title** %Tde"),Names.GunShopName);
- gtk_window_set_title(GTK_WINDOW(window),tstr[0]);
- tstring_free(tfmt,tstr);
+
+/* Title of 'gun shop' dialog in GTK+ client (%Tde="Dan's House of Guns"
+ by default) */
+ text=dpg_strdup_printf(_("%/GTK GunShop window title/%Tde"),
+ Names.GunShopName);
+ gtk_window_set_title(GTK_WINDOW(window),text);
+ g_free(text);
gtk_window_set_modal(GTK_WINDOW(window),TRUE);
gtk_window_set_transient_for(GTK_WINDOW(window),
GTK_WINDOW(ClientData.window));
(DIR) diff --git a/src/tstring.c b/src/tstring.c
t@@ -78,56 +78,6 @@ gchar *GetTranslatedString(gchar *str,gchar *code,gboolean Caps) {
return tstr;
}
-void tstring_fmt(gchar **tformat,gchar ***tstrings,char *OrigFormat, ...) {
- va_list ap;
- GString *text;
- int i;
- gchar *str,*tstr,code[3],**strings;
- GPtrArray *ptrarr;
- gboolean Caps;
-
- text=g_string_new("");
- va_start(ap,OrigFormat);
- ptrarr=g_ptr_array_new();
-
- i=0;
- while (i<strlen(OrigFormat)) {
- g_string_append_c(text,OrigFormat[i]);
- if (OrigFormat[i]=='%') {
- i++;
- if ((OrigFormat[i]=='T' || OrigFormat[i]=='t')
- && i+2<strlen(OrigFormat)) {
- Caps = (OrigFormat[i]=='T');
- code[0]=OrigFormat[i+1];
- code[1]=OrigFormat[i+2];
- code[2]='\0';
- i+=3;
- g_string_append_c(text,'s');
- str=va_arg(ap,char *);
- tstr=GetTranslatedString(str,code,Caps);
- g_ptr_array_add(ptrarr,(gpointer)tstr);
- }
- } else i++;
- }
- va_end(ap);
- *tformat=text->str;
- strings=g_new(char *,ptrarr->len+10);
- for (i=0;i<ptrarr->len;i++) {
- strings[i]=(gchar *)g_ptr_array_index(ptrarr,i);
- }
- strings[ptrarr->len]=NULL;
- g_ptr_array_free(ptrarr,FALSE);
- *tstrings=strings;
- g_string_free(text,FALSE);
-}
-
-void tstring_free(gchar *tformat,gchar **tstrings) {
- gchar **pt;
- g_free(tformat);
- for (pt=tstrings;*pt;pt++) g_free(*pt);
- g_free(tstrings);
-}
-
void GetNextFormat(int *Index,gchar *str,int *StartPos,
int *EndPos,int *FmtPos,gchar *Type,int *ArgNum,int *Wid,
int *Prec,char *Code) {
(DIR) diff --git a/src/tstring.h b/src/tstring.h
t@@ -27,9 +27,6 @@
#include <glib.h>
-void tstring_fmt(gchar **tformat,gchar ***tstrings,char *OrigFormat, ...);
-void tstring_free(gchar *tformat,gchar **tstrings);
-
void dpg_print(gchar *format, ...);
gchar *dpg_strdup_printf(gchar *format, ...);
void dpg_string_sprintf(GString *string, gchar *format, ...);