Changeset 63ca8047cee68d8fa40d41e4a02e1c38aad3726a
- Timestamp:
- 10/25/09 14:24:52 (4 years ago)
- Author:
- Benjamin Herr <ben@…>
- git-author:
- Benjamin Herr <ben@0x539.de> / 2009-01-16T21:52:36Z+0100
- Parents:
- 7cfad2e713662f0eeea22b5c5d19c6a9596c4413
- Children:
- f4c6a3db38b252de69e1eb1b882d87de5d4c00be
- git-committer:
- Benjamin Herr <ben@0x539.de> / 2009-10-25T14:24:52Z+0100
- Message:
-
htmlexport: color first chunk correctly, too
- Files:
-
Legend:
- Unmodified
- Added
- Removed
-
|
r7cfad2e
|
r63ca804
|
|
| 254 | 254 | GtkTextIter begin; |
| 255 | 255 | gtk_text_buffer_get_start_iter(buffer, &begin); |
| 256 | | |
| 257 | | if (gtk_text_iter_is_end(&begin)) |
| 258 | | return; |
| 259 | | |
| 260 | | for (;;) { |
| | 256 | |
| | 257 | while (!gtk_text_iter_is_end(&begin)) { |
| | 258 | // check author, insert new <span/> if necessary |
| | 259 | InfTextUser* new_user |
| | 260 | = inf_text_gtk_buffer_get_author(inf_buffer, &begin); |
| | 261 | |
| | 262 | if (new_user) { |
| | 263 | guint new_id = inf_user_get_id(INF_USER(new_user)); |
| | 264 | if (!user || user != new_user) { |
| | 265 | if (user) |
| | 266 | last_node = last_node->get_parent(); |
| | 267 | |
| | 268 | last_node = last_node->add_child("span"); |
| | 269 | last_node->set_attribute( |
| | 270 | "class", |
| | 271 | Glib::ustring::compose("user_%1", new_id)); |
| | 272 | last_node->set_attribute( |
| | 273 | "title", |
| | 274 | Glib::ustring::compose(_("written by: %1"), |
| | 275 | inf_user_get_name(INF_USER(new_user)))); |
| | 276 | } |
| | 277 | |
| | 278 | user = new_user; |
| | 279 | users.insert(user); |
| | 280 | } else { |
| | 281 | if (user) |
| | 282 | last_node = last_node->get_parent(); |
| | 283 | user = 0; |
| | 284 | } |
| | 285 | |
| 261 | 286 | GtkTextIter next = begin; |
| 262 | 287 | gtk_text_iter_forward_to_tag_toggle(&next, 0); |
| … |
… |
|
| 303 | 328 | |
| 304 | 329 | begin = next; |
| 305 | | |
| 306 | | if (gtk_text_iter_is_end(&begin)) |
| 307 | | break; |
| 308 | | |
| 309 | | // check author, insert new <span/> if necessary |
| 310 | | InfTextUser* new_user |
| 311 | | = inf_text_gtk_buffer_get_author(inf_buffer, &next); |
| 312 | | |
| 313 | | if (new_user) { |
| 314 | | guint new_id = inf_user_get_id(INF_USER(new_user)); |
| 315 | | if (!user || user != new_user) { |
| 316 | | if (user) |
| 317 | | last_node = last_node->get_parent(); |
| 318 | | |
| 319 | | last_node = last_node->add_child("span"); |
| 320 | | last_node->set_attribute( |
| 321 | | "class", |
| 322 | | Glib::ustring::compose("user_%1", new_id)); |
| 323 | | last_node->set_attribute( |
| 324 | | "title", |
| 325 | | Glib::ustring::compose(_("written by: %1"), |
| 326 | | inf_user_get_name(INF_USER(new_user)))); |
| 327 | | } |
| 328 | | |
| 329 | | user = new_user; |
| 330 | | users.insert(user); |
| 331 | | } else { |
| 332 | | if (user) |
| 333 | | last_node = last_node->get_parent(); |
| 334 | | user = 0; |
| 335 | | } |
| 336 | 330 | } |
| 337 | 331 | } |