diff options
author | irungentoo <irungentoo@gmail.com> | 2013-08-07 09:11:51 -0400 |
---|---|---|
committer | irungentoo <irungentoo@gmail.com> | 2013-08-07 09:11:51 -0400 |
commit | 5a8da17e61f59f189a8534f75d56c0e98f9caf39 (patch) | |
tree | ca27bb89c39cee1171fae48cf977daf7d4ddd866 | |
parent | 0c4788030fb2f44d1120616d5b0ffd914700d3ff (diff) | |
parent | ba48234bfc864702b6464d3b148eafaf9ae32486 (diff) |
Merge branch 'provide-status-type' of https://github.com/jin-eld/ProjectTox-Core into pull-requests
-rw-r--r-- | testing/toxic/prompt.c | 51 |
1 files changed, 50 insertions, 1 deletions
diff --git a/testing/toxic/prompt.c b/testing/toxic/prompt.c index b0e21c64..d79d061f 100644 --- a/testing/toxic/prompt.c +++ b/testing/toxic/prompt.c | |||
@@ -175,6 +175,54 @@ static void execute(ToxWindow *self, char *u_cmd) | |||
175 | } | 175 | } |
176 | 176 | ||
177 | else if (!strncmp(cmd, "status ", strlen("status "))) { | 177 | else if (!strncmp(cmd, "status ", strlen("status "))) { |
178 | char *status = strchr(cmd, ' '); | ||
179 | char *msg; | ||
180 | char *status_text; | ||
181 | if (status == NULL) { | ||
182 | wprintw(self->window, "Invalid syntax.\n"); | ||
183 | return; | ||
184 | } | ||
185 | status++; | ||
186 | USERSTATUS_KIND status_kind; | ||
187 | if (!strncmp(status, "online", strlen("online"))) { | ||
188 | status_kind = USERSTATUS_KIND_ONLINE; | ||
189 | status_text = "ONLINE"; | ||
190 | } | ||
191 | |||
192 | else if (!strncmp(status, "away", strlen("away"))) { | ||
193 | status_kind = USERSTATUS_KIND_AWAY; | ||
194 | status_text = "AWAY"; | ||
195 | } | ||
196 | |||
197 | else if (!strncmp(status, "busy", strlen("busy"))) { | ||
198 | status_kind = USERSTATUS_KIND_BUSY; | ||
199 | status_text = "BUSY"; | ||
200 | } | ||
201 | |||
202 | else if (!strncmp(status, "offline", strlen("offline"))) { | ||
203 | status_kind = USERSTATUS_KIND_OFFLINE; | ||
204 | status_text = "OFFLINE"; | ||
205 | } | ||
206 | |||
207 | else | ||
208 | { | ||
209 | wprintw(self->window, "Invalid status.\n"); | ||
210 | return; | ||
211 | } | ||
212 | |||
213 | msg = strchr(status, ' '); | ||
214 | if (msg == NULL) { | ||
215 | m_set_userstatus_kind(status_kind); | ||
216 | wprintw(self->window, "Status set to: %s\n", status_text); | ||
217 | } | ||
218 | else { | ||
219 | msg++; | ||
220 | m_set_userstatus(status_kind, (uint8_t*) msg, strlen(msg)+1); | ||
221 | wprintw(self->window, "Status set to: %s, %s\n", status_text, msg); | ||
222 | } | ||
223 | } | ||
224 | |||
225 | else if (!strncmp(cmd, "statusmsg ", strlen("statumsg "))) { | ||
178 | char *msg = strchr(cmd, ' '); | 226 | char *msg = strchr(cmd, ' '); |
179 | if (msg == NULL) { | 227 | if (msg == NULL) { |
180 | wprintw(self->window, "Invalid syntax.\n"); | 228 | wprintw(self->window, "Invalid syntax.\n"); |
@@ -317,7 +365,8 @@ static void print_usage(ToxWindow *self) | |||
317 | 365 | ||
318 | wprintw(self->window, " connect <ip> <port> <key> : Connect to DHT server\n"); | 366 | wprintw(self->window, " connect <ip> <port> <key> : Connect to DHT server\n"); |
319 | wprintw(self->window, " add <id> <message> : Add friend\n"); | 367 | wprintw(self->window, " add <id> <message> : Add friend\n"); |
320 | wprintw(self->window, " status <message> : Set your status\n"); | 368 | wprintw(self->window, " status <type> <message> : Set your status\n"); |
369 | wprintw(self->window, " statusmsg <message> : Set your status\n"); | ||
321 | wprintw(self->window, " nick <nickname> : Set your nickname\n"); | 370 | wprintw(self->window, " nick <nickname> : Set your nickname\n"); |
322 | wprintw(self->window, " accept <number> : Accept friend request\n"); | 371 | wprintw(self->window, " accept <number> : Accept friend request\n"); |
323 | wprintw(self->window, " myid : Print your ID\n"); | 372 | wprintw(self->window, " myid : Print your ID\n"); |