You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(4) |
Jun
|
Jul
(68) |
Aug
(4) |
Sep
|
Oct
(23) |
Nov
(95) |
Dec
(9) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(3) |
Feb
|
Mar
|
Apr
(51) |
May
(81) |
Jun
(2) |
Jul
(86) |
Aug
(143) |
Sep
(3) |
Oct
(31) |
Nov
(63) |
Dec
(90) |
2005 |
Jan
(277) |
Feb
(157) |
Mar
(99) |
Apr
(195) |
May
(151) |
Jun
(148) |
Jul
(98) |
Aug
(123) |
Sep
(20) |
Oct
(174) |
Nov
(155) |
Dec
(26) |
2006 |
Jan
(51) |
Feb
(19) |
Mar
(16) |
Apr
(12) |
May
(5) |
Jun
|
Jul
(11) |
Aug
(7) |
Sep
(10) |
Oct
(31) |
Nov
(174) |
Dec
(56) |
2007 |
Jan
(45) |
Feb
(52) |
Mar
(10) |
Apr
(5) |
May
(47) |
Jun
(16) |
Jul
(80) |
Aug
(29) |
Sep
(14) |
Oct
(59) |
Nov
(46) |
Dec
(16) |
2008 |
Jan
(10) |
Feb
(1) |
Mar
|
Apr
|
May
(49) |
Jun
(26) |
Jul
(8) |
Aug
(4) |
Sep
(25) |
Oct
(53) |
Nov
(9) |
Dec
(1) |
2009 |
Jan
(66) |
Feb
(11) |
Mar
(1) |
Apr
(14) |
May
(8) |
Jun
(1) |
Jul
(2) |
Aug
(2) |
Sep
(9) |
Oct
(23) |
Nov
(35) |
Dec
|
2010 |
Jan
(7) |
Feb
(2) |
Mar
(39) |
Apr
(19) |
May
(161) |
Jun
(19) |
Jul
(32) |
Aug
(65) |
Sep
(113) |
Oct
(120) |
Nov
(2) |
Dec
|
2012 |
Jan
|
Feb
(5) |
Mar
(4) |
Apr
(7) |
May
(9) |
Jun
(14) |
Jul
(1) |
Aug
|
Sep
(1) |
Oct
(1) |
Nov
(12) |
Dec
(2) |
2013 |
Jan
(1) |
Feb
(17) |
Mar
(4) |
Apr
(4) |
May
(9) |
Jun
|
Jul
(8) |
Aug
|
Sep
(2) |
Oct
|
Nov
|
Dec
|
From: Andy S. <And...@co...> - 2010-05-24 23:41:50
|
diffing dir... Mon May 24 19:39:47 EDT 2010 Andy Stewart <laz...@gm...> * Redirect image link to library.gnome.org and update image items to GTK+ 2.20 Ignore-this: f33362d57605d16365e4dfac59c01122 { hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 55 +#if GTK_CHECK_VERSION(2,16,0) + stockCapsLockWarning, +#endif [_$_] hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 73 +#if GTK_CHECK_VERSION(2,12,0) + stockDiscard, +#endif [_$_] hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 106 + stockLeaveFullscreen, hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 121 +#if GTK_CHECK_VERSION(2,10,0) hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 126 +#endif [_$_] +#if GTK_CHECK_VERSION(2,14,0) + stockPageSetup, +#endif [_$_] hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 133 +#if GTK_CHECK_VERSION(2,14,0) + stockPrintError, + stockPrintPaused, + stockPrintReport, + stockPrintWarning, +#endif [_$_] hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 148 +#if GTK_CHECK_VERSION(2,10,0) hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 150 +#endif [_$_] hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 293 --- | <<images/stock-icons/stock_about_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-about.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 300 --- | <<images/stock-icons/stock_add_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-add.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 304 --- | <<images/stock-icons/stock_apply_20.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-apply.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 308 --- | <<images/stock-icons/stock_text_bold_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-bold.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 312 --- | <<images/stock-icons/stock_cancel_20.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-cancel.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 315 + [_$_] +#if GTK_CHECK_VERSION(2,16,0) +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-caps-lock-warning.png>> [_$_] +stockCapsLockWarning :: StockId +stockCapsLockWarning = #{const_str GTK_STOCK_CAPS_LOCK_WARNING} +#endif [_$_] hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 322 --- | <<images/stock-icons/stock_cdrom_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-cdrom.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 326 --- | <<images/stock-icons/stock_clear_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-clear.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 330 --- | <<images/stock-icons/stock_close_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-close.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 335 --- | <<images/stock-icons/stock_color_picker_25.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-color-picker.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 342 --- | <<images/stock-icons/stock_convert_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-convert.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 347 --- | <<images/stock-icons/stock_connect_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-connect.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 354 --- | <<images/stock-icons/stock_copy_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-copy.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 358 --- | <<images/stock-icons/stock_cut_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-cut.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 362 --- | <<images/stock-icons/stock_trash_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-delete.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 367 --- | <<images/stock-icons/stock_dialog_authentication_48.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-dialog-authentication.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 374 --- | <<images/stock-icons/stock_dialog_error_48.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-dialog-error.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 378 --- | <<images/stock-icons/stock_dialog_info_48.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-dialog-info.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 382 --- | <<images/stock-icons/stock_dialog_question_48.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-dialog-question.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 386 --- | <<images/stock-icons/stock_dialog_warning_48.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-dialog-warning.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 391 --- | <<images/stock-icons/stock_directory_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-directory.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 397 + +#if GTK_CHECK_VERSION(2,12,0) +-- | [_$_] +stockDiscard :: StockId +stockDiscard = #{const_str GTK_STOCK_DISCARD} +#endif [_$_] + hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 406 --- | <<images/stock-icons/stock_disconnect_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-disconnect.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 413 --- | <<images/stock-icons/stock_dnd_32.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-dnd.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 417 --- | <<images/stock-icons/stock_dnd_multiple_32.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-dnd-multiple.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 422 --- | <<images/stock-icons/stock_edit_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-edit.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 429 --- | <<images/stock-icons/stock_exec_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-execute.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 434 --- | <<images/stock-icons/stock_file_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-file.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 441 --- | <<images/stock-icons/stock_search_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-find.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 445 --- | <<images/stock-icons/stock_search_replace_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-find-and-replace.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 449 --- | <<images/stock-icons/stock_save_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-floppy.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 454 --- | <<images/stock-icons/stock_fullscreen_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-fullscreen.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 461 --- | <<images/stock-icons/stock_bottom_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-goto-bottom.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 465 --- | <<images/stock-icons/stock_first_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-goto-first-ltr.png>> +-- <<http://library.gnome.org/devel/gtk/stable/gtk-goto-first-rtl.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 470 --- | <<images/stock-icons/stock_last_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-goto-last-ltr.png>> +-- <<http://library.gnome.org/devel/gtk/stable/gtk-goto-last-rtl.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 475 --- | <<images/stock-icons/stock_top_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-goto-top.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 479 --- | <<images/stock-icons/stock_left_arrow_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-go-back-ltr.png>> +-- <<http://library.gnome.org/devel/gtk/stable/gtk-go-back-rtl.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 484 --- | <<images/stock-icons/stock_down_arrow_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-go-down.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 488 --- | <<images/stock-icons/stock_right_arrow_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-go-forward-ltr.png>> +-- <<http://library.gnome.org/devel/gtk/stable/gtk-go-forward-rtl.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 493 --- | <<images/stock-icons/stock_up_arrow_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-go-up.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 498 --- | <<images/stock-icons/stock_harddisk_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-harddisk.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 505 --- | <<images/stock-icons/stock_help_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-help.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 509 --- | <<images/stock-icons/stock_home_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-home.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 514 --- | <<images/stock-icons/stock_text_indent_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-indent-ltr.png>> +-- <<http://library.gnome.org/devel/gtk/stable/gtk-indent-rtl.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 522 --- | <<images/stock-icons/stock_index_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-index.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 527 --- | <<images/stock-icons/stock_info_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-info.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 534 --- | <<images/stock-icons/stock_text_italic_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-italic.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 538 --- | <<images/stock-icons/stock_jump_to_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-jump-to-ltr.png>> +-- <<http://library.gnome.org/devel/gtk/stable/gtk-jump-to-rtl.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 543 --- | <<images/stock-icons/stock_align_center_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-justify-center.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 547 --- | <<images/stock-icons/stock_align_justify_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-justify-fill.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 551 --- | <<images/stock-icons/stock_align_left_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-justify-left.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 555 --- | <<images/stock-icons/stock_align_right_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-justify-right.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 558 + [_$_] +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-leave-fullscreen.png>> [_$_] +stockLeaveFullscreen :: StockId +stockLeaveFullscreen = #{const_str GTK_STOCK_LEAVE_FULLSCREEN} hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 563 --- | <<images/stock-icons/stock_broken_image_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-missing-image.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 568 --- | <<images/stock-icons/stock_media_forward_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-media-forward-ltr.png>> +-- <<http://library.gnome.org/devel/gtk/stable/gtk-media-forward-rtl.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 573 --- | <<images/stock-icons/stock_media_next_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-media-next-ltr.png>> +-- <<http://library.gnome.org/devel/gtk/stable/gtk-media-next-rtl.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 578 --- | <<images/stock-icons/stock_media_pause_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-media-pause.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 582 --- | <<images/stock-icons/stock_media_play_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-media-play-ltr.png>> +-- <<http://library.gnome.org/devel/gtk/stable/gtk-media-play-rtl.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 587 --- | <<images/stock-icons/stock_media_previous_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-media-previous-ltr.png>> +-- <<http://library.gnome.org/devel/gtk/stable/gtk-media-previous-rtl.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 592 --- | <<images/stock-icons/stock_media_record_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-media-record.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 596 --- | <<images/stock-icons/stock_media_rewind_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-media-rewind-ltr.png>> +-- <<http://library.gnome.org/devel/gtk/stable/gtk-media-rewind-rtl.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 601 --- | <<images/stock-icons/stock_media_stop_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-media-stop.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 616 --- | <<images/stock-icons/stock_network_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-network.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 623 --- | <<images/stock-icons/stock_new_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-new.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 627 --- | <<images/stock-icons/stock_no_20.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-no.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 631 --- | <<images/stock-icons/stock_ok_20.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-ok.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 635 --- | <<images/stock-icons/stock_open_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-open.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 640 --- | <<images/stock-icons/stock_orientation_landscape_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-orientation-landscape.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 644 --- | <<images/stock-icons/stock_orientation_reverse_landscape_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-orientation-reverse-landscape.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 648 --- | <<images/stock-icons/stock_orientation_portrait_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-orientation-portrait.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 652 --- | <<images/stock-icons/stock_orientation_reverse_portrait_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-orientation-reverse-portrait.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 662 --- | <<images/stock-icons/stock_paste_24.png>> +#if GTK_CHECK_VERSION(2,14,0) +-- | <<http://library.gnome.org/devel/gtkmm/stable/gtk-page-setup.png>> +stockPageSetup :: StockId +stockPageSetup = #{const_str GTK_STOCK_PAGE_SETUP} +#endif + +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-paste.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 672 --- | <<images/stock-icons/stock_preferences_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-preferences.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 676 --- | <<images/stock-icons/stock_print_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-print.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 680 --- | <<images/stock-icons/stock_print_preview_24.png>> +#if GTK_CHECK_VERSION(2,14,0) +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-print-error.png>> [_$_] +stockPrintError :: StockId +stockPrintError = #{const_str GTK_STOCK_PRINT_ERROR} + [_$_] +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-print-paused.png>> +stockPrintPaused :: StockId +stockPrintPaused = #{const_str GTK_STOCK_PRINT_PAUSED} + [_$_] +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-print-report.png>> +stockPrintReport :: StockId +stockPrintReport = #{const_str GTK_STOCK_PRINT_REPORT} + [_$_] +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-print-warning.png>> +stockPrintWarning :: StockId +stockPrintWarning = #{const_str GTK_STOCK_PRINT_WARNING} +#endif [_$_] + +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-print-preview.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 702 --- | <<images/stock-icons/stock_properties_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-properties.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 706 --- | <<images/stock-icons/stock_exit_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-quit.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 710 --- | <<images/stock-icons/stock_redo_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-redo-ltr.png>> +-- <<http://library.gnome.org/devel/gtk/stable/gtk-redo-rtl.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 715 --- | <<images/stock-icons/stock_refresh_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-refresh.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 719 --- | <<images/stock-icons/stock_remove_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-remove.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 723 --- | <<images/stock-icons/stock_revert_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-revert-to-saved-ltr.png>> +-- <<http://library.gnome.org/devel/gtk/stable/gtk-revert-to-saved-rtl.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 728 --- | <<images/stock-icons/stock_save_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-save.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 732 --- | <<images/stock-icons/stock_save_as_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-save-as.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 737 --- | <<images/stock-icons/stock_select_all_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-select-all.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 744 --- | <<images/stock-icons/stock_colorselector_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-select-color.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 748 --- | <<images/stock-icons/stock_font_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-font.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 752 --- | <<images/stock-icons/stock_sort_ascending_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-sort-ascending.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 756 --- | <<images/stock-icons/stock_sort_descending_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-sort-descending.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 760 --- | <<images/stock-icons/stock_spellcheck_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-spell-check.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 764 --- | <<images/stock-icons/stock_stop_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-stop.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 768 --- | <<images/stock-icons/stock_text_strikethrough_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-strikethrough.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 772 --- | <<images/stock-icons/stock_undelete_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-undelete-ltr.png>> +-- <<http://library.gnome.org/devel/gtk/stable/gtk-undelete-rtl.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 777 --- | <<images/stock-icons/stock_text_underline_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-underline.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 781 --- | <<images/stock-icons/stock_undo_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-undo-ltr.png>> +-- <<http://library.gnome.org/devel/gtk/stable/gtk-undo-rtl.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 787 --- | <<images/stock-icons/stock_text_unindent_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-unindent-ltr.png>> +-- <<http://library.gnome.org/devel/gtk/stable/gtk-unindent-rtl.png>> [_$_] hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 795 --- | <<images/stock-icons/stock_yes_20.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-yes.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 799 --- | <<images/stock-icons/stock_zoom_1_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-zoom-100.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 803 --- | <<images/stock-icons/stock_zoom_fit_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-zoom-fit.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 807 --- | <<images/stock-icons/stock_zoom_in_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-zoom-in.png>> hunk ./gtk/Graphics/UI/Gtk/General/StockItems.hsc 811 --- | <<images/stock-icons/stock_zoom_out_24.png>> +-- | <<http://library.gnome.org/devel/gtk/stable/gtk-zoom-out.png>> } |
From: Axel S. <si...@co...> - 2010-05-24 21:12:37
|
diffing dir... Mon May 24 17:11:58 EDT 2010 Axe...@in... * Add an upper version to the requirement on base. hunk ./gio/gio.cabal 37 - build-depends: base >= 4, array, containers, haskell98, mtl, bytestring, + build-depends: base >= 4 && < 5, array, containers, haskell98, mtl, bytestring, |
From: Axel S. <si...@co...> - 2010-05-24 21:03:53
|
diffing dir... Mon May 24 17:02:10 EDT 2010 Axe...@in... * Be more specific as to the prerequisites of packages. { hunk ./svgcairo/svgcairo.cabal 44 - pkgconfig-depends: librsvg-2.0 >= 2.16.0 + pkgconfig-depends: librsvg-2.0 >= 2.16.0, cairo-svg >= 1.6.0 hunk ./tools/gtk2hs-buildtools.cabal 56 + build-tools: alex, happy } |
From: Axel S. <si...@co...> - 2010-05-24 21:03:49
|
diffing dir... Mon May 24 17:00:32 EDT 2010 Axe...@in... * Make soegtk compile by fixing dependency on old-time and by not relying on Gtk 2.18. { hunk ./soegtk/Graphics/SOE/Gtk.chs 87 -#if GTK_CHECK_VERSION(2,8,0) && defined(ENABLE_CAIRO) +-- Cairo is always enabled since we're depending on gtk-0.11.0 hunk ./soegtk/Graphics/SOE/Gtk.chs 89 -#endif hunk ./soegtk/Graphics/SOE/Gtk.chs 108 -import qualified System.IO (hPutStrLn, stderr) +import qualified System.IO hunk ./soegtk/Graphics/SOE/Gtk.chs 157 - Gtk.widgetSetCanFocus canvas True + Gtk.set canvas [Gtk.widgetCanFocus Gtk.:= True] hunk ./soegtk/soegtk.cabal 31 - old-time >= 1.0.0.3 + old-time >= 1.0.0.2 } |
From: Axel S. <si...@co...> - 2010-05-24 21:03:49
|
diffing dir... Mon May 24 17:01:57 EDT 2010 Axe...@in... * Fix docu. hunk ./gtk/Graphics/UI/Gtk/Abstract/Widget.chs 2016 --- * To use the 'onKeyPress' event, the widget must be allowed +-- * To use the 'keyPress' event, the widget must be allowed |
From: Axel S. <si...@co...> - 2010-05-24 21:03:43
|
diffing dir... Mon May 24 16:14:01 EDT 2010 Axe...@in... * don't mention tools in the docs for unregistering. hunk ./INSTALL 168 -for pkg in webkit vte svgcairo soegtk gtksourceview2 gtkglext gstreamer glade gconf gtk pango cairo gio glib tools ; \ +for pkg in webkit vte svgcairo soegtk gtksourceview2 gtkglext gstreamer glade gconf gtk pango cairo gio glib ; \ |
From: Axel S. <si...@co...> - 2010-05-24 21:03:39
|
diffing dir... Mon May 24 16:08:57 EDT 2010 Axe...@in... tagged 0.11.0 { } |
From: Axel S. <si...@co...> - 2010-05-24 21:03:35
|
diffing dir... Mon May 24 16:07:19 EDT 2010 Axe...@in... * Bump version numbers. { hunk ./cairo/cairo.cabal 2 -Version: 0.10.5 +Version: 0.11.0 hunk ./gconf/gconf.cabal 2 -Version: 0.10.5 +Version: 0.11.0 hunk ./gconf/gconf.cabal 36 - glib >= 0.10.5 && < 0.11 + glib >= 0.11 && < 0.12 hunk ./gio/gio.cabal 2 -Version: 0.10.5 +Version: 0.11.0 hunk ./gio/gio.cabal 38 - glib >= 0.10.5 && < 0.11 + glib >= 0.11 && < 0.12 hunk ./glade/glade.cabal 2 -Version: 0.10.5 +Version: 0.11.0 hunk ./glade/glade.cabal 34 - glib >= 0.10.5 && < 0.11, [_$_] - pango >= 0.10.5 && < 0.11, [_$_] - cairo >= 0.10.5 && < 0.11, - gtk >= 0.10.5 && < 0.11 + glib >= 0.11 && < 0.12, [_$_] + pango >= 0.11 && < 0.12, [_$_] + cairo >= 0.11 && < 0.12, + gtk >= 0.11 && < 0.12 hunk ./glib/glib.cabal 2 -Version: 0.10.5 +Version: 0.11.0 hunk ./gnomevfs/gnomevfs.cabal 2 -Version: 0.10.5 +Version: 0.11.0 hunk ./gnomevfs/gnomevfs.cabal 40 - glib >= 0.10.5 && < 0.11, - gtk >= 0.10.5 && < 0.11 + glib >= 0.11 && < 0.12, + gtk >= 0.11 && < 0.12 hunk ./gstreamer/gstreamer.cabal 2 -Version: 0.10.5 +Version: 0.11.0 hunk ./gstreamer/gstreamer.cabal 53 - glib >= 0.10.5 && < 0.11 + glib >= 0.11 && < 0.12 hunk ./gtk/gtk.cabal 2 -Version: 0.10.5 +Version: 0.11.0 hunk ./gtk/gtk.cabal 47 - glib >= 0.10.5 && < 0.11, - pango >= 0.10.5 && < 0.11, - cairo >= 0.10.5 && < 0.11 + glib >= 0.11 && < 0.12, + pango >= 0.11 && < 0.12, + cairo >= 0.11 && < 0.12 hunk ./gtk/gtk.cabal 51 - build-depends: gio >= 0.10.5 && < 0.11 + build-depends: gio >= 0.11 && < 0.12 hunk ./gtkglext/gtkglext.cabal 2 -Version: 0.10.5 +Version: 0.11.0 hunk ./gtkglext/gtkglext.cabal 32 - glib >= 0.10.5 && < 0.11, [_$_] - pango >= 0.10.5 && < 0.11, [_$_] - cairo >= 0.10.5 && < 0.11, - gtk >= 0.10.5 && < 0.11 + glib >= 0.11 && < 0.12, [_$_] + pango >= 0.11 && < 0.12, [_$_] + cairo >= 0.11 && < 0.12, + gtk >= 0.11 && < 0.12 hunk ./gtksourceview2/gtksourceview2.cabal 2 -Version: 0.10.5 +Version: 0.11.0 hunk ./gtksourceview2/gtksourceview2.cabal 37 - glib >= 0.10.5 && < 0.11, [_$_] - gtk >= 0.10.5 && < 0.11 + glib >= 0.11 && < 0.12, [_$_] + gtk >= 0.11 && < 0.12 hunk ./pango/pango.cabal 2 -Version: 0.10.5 +Version: 0.11.0 hunk ./pango/pango.cabal 39 - glib >= 0.10.5 && < 0.11, - cairo >= 0.10.5 && < 0.11 + glib >= 0.11 && < 0.12, + cairo >= 0.11 && < 0.12 hunk ./soegtk/soegtk.cabal 2 -Version: 0.10.5 +Version: 0.11.0 hunk ./soegtk/soegtk.cabal 28 - glib >= 0.10.5 && < 0.11, [_$_] - cairo >= 0.10.5 && < 0.11, - gtk >= 0.10.5 && < 0.11, [_$_] + glib >= 0.11 && < 0.12, [_$_] + cairo >= 0.11 && < 0.12, + gtk >= 0.11 && < 0.12, [_$_] hunk ./svgcairo/svgcairo.cabal 2 -Version: 0.10.5 +Version: 0.11.0 hunk ./svgcairo/svgcairo.cabal 31 - glib >= 0.10.5 && < 0.11, [_$_] - pango >= 0.10.5 && < 0.11, [_$_] - cairo >= 0.10.5 && < 0.11, - gtk >= 0.10.5 && < 0.11 + glib >= 0.11 && < 0.12, [_$_] + pango >= 0.11 && < 0.12, [_$_] + cairo >= 0.11 && < 0.12, + gtk >= 0.11 && < 0.12 hunk ./vte/vte.cabal 2 -Version: 0.10.5 +Version: 0.11.0 hunk ./vte/vte.cabal 38 - glib >= 0.10.5 && < 0.11, [_$_] - pango >= 0.10.5 && < 0.11, [_$_] - gtk >= 0.10.5 && < 0.11 + glib >= 0.11 && < 0.12, [_$_] + pango >= 0.11 && < 0.12, [_$_] + gtk >= 0.11 && < 0.12 hunk ./webkit/webkit.cabal 2 -Version: 0.10.5 +Version: 0.11.0 hunk ./webkit/webkit.cabal 40 - glib >= 0.10.5 && < 0.11, [_$_] - pango >= 0.10.5 && < 0.11, [_$_] - cairo >= 0.10.5 && < 0.11, - gtk >= 0.10.5 && < 0.11 + glib >= 0.11 && < 0.12, [_$_] + pango >= 0.11 && < 0.12, [_$_] + cairo >= 0.11 && < 0.12, + gtk >= 0.11 && < 0.12 } |
From: Axel S. <si...@co...> - 2010-05-24 19:27:06
|
diffing dir... Mon May 24 15:25:22 EDT 2010 Axe...@in... * Add note that the user needs to install build tools first. I think this is acutally needed. We cannot make packages depend on gtk2hs-buildtools since this package does not install any library of this name. { hunk ./INSTALL 46 -These instructions are about building Gtk2Hs from source. Certain Linux distributions might provide binary packages via their packaging system. +These instructions are about building Gtk2Hs from source. Certain Linux +distributions might provide binary packages via their packaging system. hunk ./INSTALL 58 -Building the Gtk2Hs packages requires the installation of some build tools. -Cabal installs these automatically but you need to have ~/.cabal/bin on your -PATH since otherwise building the libraries will fail, saying that e.g. -gtk2hsC2hs cannot be found. +Building the Gtk2Hs packages requires the installation of Gtk2Hs-specific +build tools. You can install these by issuing: + +cabal install gtk2hs-buildtools + +Note that you need to have ~/.cabal/bin on your PATH since otherwise building +the libraries will fail, saying that e.g. gtk2hsC2hs cannot be found. } |
From: Axel S. <si...@co...> - 2010-05-24 18:49:59
|
diffing dir... Mon May 24 14:48:34 EDT 2010 Axe...@in... * Add (revert, actually) some Mac OS-specific configuration settings. { hunk ./pango/pango.cabal 68 - pkgconfig-depends: pango >= 1.0 + -- Pango 1.26 has a mysterious bug that makes it go into an infinite + -- loop. Don't allow the user to build against this version. + if os(darwin) + pkgconfig-depends: pango >= 1.0 && < 1.26.0 || > 1.26.2 + else + pkgconfig-depends: pango >= 1.0 + + hunk ./tools/gtk2hs-buildtools.cabal 109 - -- this seems to be the best option for all CPPs across different OSs - cpp-options: -D_C2HS_CPP_LANG_SINGLE + if os(darwin) + cpp-options: -D_C2HS_CPP_IS_GCC + else + cpp-options: -D_C2HS_CPP_LANG_SINGLE } |
From: Axel S. <si...@co...> - 2010-05-24 18:49:55
|
diffing dir... Mon May 24 14:47:58 EDT 2010 Axe...@in... * Update INSTALL document and insert comment as to why we have a special case for windows in hsgthread.c. { hunk ./INSTALL 3 +Contents: + +* Overview +* Building +* Building form darcs +* Running the demos +* Documentation +* Deinstallation +* Building on Windows + +Overview +-------- + hunk ./INSTALL 20 -* tools (Tools to build gtk2hs) -* glib (GLib2 library) -* gio (VFS library) -* cairo (Vector graphics library) -* pango (Unicode text rendering) -* gtk (GTK+ GUI toolkit) -* gconf (GConf2 configuration system) -* glade (libglade UI loader) -* gstreamer (Media codec library) -* gtkglext (Gtk+ OpenGL extension) +* tools (Tools to build gtk2hs) +* glib (GLib2 library) +* gio (VFS library) +* cairo (Vector graphics library) +* pango (Unicode text rendering) +* gtk (GTK+ GUI toolkit) +* gconf (GConf2 configuration system) +* glade (libglade UI loader) +* gstreamer (Media codec library) +* gtkglext (Gtk+ OpenGL extension) hunk ./INSTALL 31 -* svgcairo (Cairo SVG loader) -* vte (Terminal emulator) -* webkit (WebKit rendering engine) -* soegtk (Graphics library for book "The Haskell School of Expression") +* svgcairo (Cairo SVG loader) +* vte (Terminal emulator) +* webkit (WebKit rendering engine) +* soegtk (Graphics library for book "The Haskell School of Expression") hunk ./INSTALL 37 -* gnomevfs (replaced by gio) -* mozembed (replaced by webkit) -* sourceview (replaced by gtksourceview2) +* gnomevfs (replaced by gio) +* mozembed (replaced by webkit) +* sourceview (replaced by gtksourceview2) hunk ./INSTALL 46 -These instructions are about building Gtk2Hs from source. If you would rather -install a binary (pre-compiled) package, please check the Gtk2Hs web site: -your distribution may also provide gtk2hs packages. +These instructions are about building Gtk2Hs from source. Certain Linux distributions might provide binary packages via their packaging system. hunk ./INSTALL 53 -So the easiest way to install it is using "cabal-install", eg -$ cabal install gtk +So the easiest way to install it is using "cabal-install", eg.: hunk ./INSTALL 55 -This section assumes that you are building from a darcs checkout or snapshot. -If you are building on Windows, read "Building on Windows" first. +cabal install gtk + +Building the Gtk2Hs packages requires the installation of some build tools. +Cabal installs these automatically but you need to have ~/.cabal/bin on your +PATH since otherwise building the libraries will fail, saying that e.g. +gtk2hsC2hs cannot be found. + +Building on Windows +-------------------- + +Installation on Windows is nearly as easy as on Unix platforms. However, you +need to download the pre-compiled binary libraries of Gtk+ and all it's +dependent libraries. Point your browser to + +http://www.gtk.org/download-windows.html + +and download one of the "All-in-one bundles". Note that you do *not* need to +install MinGW nor MSys but it does not hurt if they are installed on your +system. Install the binaries by unpacking them into a directory without +spaces. Again, this is very important: + +*** Do not install the binaries into a directory with embedded spaces. *** + +Ensure that the /bin directory is added to your %PATH%. You can ensure that +everything is installed correctly if you can say + +pkg-config --cflags gtk+-2.0 + +and you see some compiler flags that contain the path into which you have +installed the binary bundle. + +You may now install the cabal packages of Gtk2Hs into any directory you like +(including one that contains embedded spaces). Note that cabal installs the +tools necessary to build into something like + +C:\Documents and Settings\%user%\Application Data\cabal\bin + +Make sure that this path is also in your %PATH% variable! + +Building on Mac OS X +-------------------- + +There is nothing particular about Mac OS X, except that pango 1.26 has a bug +that makes application seem to hang. + +Furthermore, there are libraries that use the native Aqua API as a backend to +Gdk. It seems that this porting effort has stalled and as of now does not +support certain features as copy and paste. Use at your own risk. hunk ./INSTALL 104 -The following assumes that the sources are in ~/gtk2hs. hunk ./INSTALL 108 +This section assumes that you are building from a darcs checkout or snapshot. +If you are building on Windows, read "Building on Windows" first. + +The following assumes that the sources are in ~/gtk2hs. + hunk ./INSTALL 117 -(glib2, pango, gtk2, etc) for all the packages you wish to build. +(glib-2.0, gio-2.0, pango, cairo, gtk+-2.0) for all the packages you wish to build. You can check the existence by running 'pkg-config --list-all'. hunk ./INSTALL 137 -the demo/ directory in the gtk2hs source directory. For example: +the demo/ directory in the respective packages. For example: hunk ./INSTALL 139 -~/gtk2hs/demo/hello:$ make +~/gtk2hs/gtk/demo/hello:$ make hunk ./INSTALL 143 -~/gtk2hs/demo/hello:$ ghc --make World.hs -o helloworld +~/gtk2hs/gtk/demo/hello:$ ghc --make World.hs -o helloworld hunk ./INSTALL 147 -~/gtk2hs/demo/hello:$ ./helloworld +~/gtk2hs/gtk/demo/hello:$ ./helloworld hunk ./INSTALL 159 -Alternatively, you can uninstall by unregistering the packages with ghc-pkg -and deleting the installed files. Eg reversing the order in bootstrap.sh: hunk ./INSTALL 160 -# for pkg in webkit vte svgcairo soegtk gtksourceview2 gtkglext gstreamer glade gconf gtk pango cairo gio glib tools ; \ -> do ghc-pkg unregister $pkg; done - - -Building on Windows --------------------- +Although cabal doesn't allow to uninstall files at the moment, you can +unregister the packages with ghc-pkg and delete the installed files manually. +Eg reversing the order in bootstrap.sh: hunk ./INSTALL 164 -Install MSYS and MinGW. Download a build of Gtk+, you will need the "dev" -version which includes all the header files and libraries. Make sure that GHC -and that pkg-config.exe can find all your Gtk+ libraries. The configure script -should complain if this is not the case. +for pkg in webkit vte svgcairo soegtk gtksourceview2 gtkglext gstreamer glade gconf gtk pango cairo gio glib tools ; \ +do ghc-pkg unregister $pkg; done hunk ./INSTALL 167 +Unregistering packages is usually enough to be able to work with different +versions of Gtk2Hs. hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 22 - * Also g_static_mutex_lock and g_static_mutex_unlock cause problems ghci - * on windows so using a Win32 critical section instead + * Also g_static_mutex_lock and g_static_mutex_unlock cause linking problems + * in ghci on Windows 7 (namely: HSgtk-0.10.5.o: unknown symbol + * `__imp__g_threads_got_initialized'), so we use a Win32 critical section + * instead. } |
From: Axel S. <si...@co...> - 2010-05-24 11:13:11
|
diffing dir... Sun May 23 21:15:11 EDT 2010 Hamish Mackenzie <ham...@go...> * Improved Win32 critical section init and only lock if threading is initialized. Ignore-this: 880ca168a60671ba8230faeb373022be { hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 22 + * Also g_static_mutex_lock and g_static_mutex_unlock cause problems ghci + * on windows so using a Win32 critical section instead hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 31 +#if defined( WIN32 ) +#include <windows.h> +#endif + hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 37 +static int threads_initialised = 0; +#if defined( WIN32 ) +static CRITICAL_SECTION gtk2hs_finalizer_mutex; +#else hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 42 +#endif hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 51 - static int threads_initialised = 0; hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 54 +#if defined( WIN32 ) + InitializeCriticalSection(>k2hs_finalizer_mutex); +#endif hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 65 - g_static_mutex_lock(>k2hs_finalizer_mutex); + int mutex_locked = 0; + if (threads_initialised) { +#if defined( WIN32 ) + EnterCriticalSection(>k2hs_finalizer_mutex); +#else + g_static_mutex_lock(>k2hs_finalizer_mutex); +#endif + mutex_locked = 1; + } hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 100 - g_static_mutex_unlock(>k2hs_finalizer_mutex); + if (mutex_locked) { +#if defined( WIN32 ) + LeaveCriticalSection(>k2hs_finalizer_mutex); +#else + g_static_mutex_unlock(>k2hs_finalizer_mutex); +#endif + } hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 114 - g_static_mutex_lock(>k2hs_finalizer_mutex); + int mutex_locked = 0; + if (threads_initialised) { +#if defined( WIN32 ) + EnterCriticalSection(>k2hs_finalizer_mutex); +#else + g_static_mutex_lock(>k2hs_finalizer_mutex); +#endif + mutex_locked = 1; + } hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 135 - g_static_mutex_unlock(>k2hs_finalizer_mutex); + if (mutex_locked) { +#if defined( WIN32 ) + LeaveCriticalSection(>k2hs_finalizer_mutex); +#else + g_static_mutex_unlock(>k2hs_finalizer_mutex); +#endif + } } |
From: Andy S. <And...@co...> - 2010-05-24 03:44:36
|
diffing dir... Sun May 23 23:43:49 EDT 2010 Andy Stewart <laz...@gm...> * Move rest demos to ./gtk/demo Ignore-this: 7b9f4784b6d63d1283c7a8a5f5d0eb1b { hunk ./demo/unicode/Arabic.hs 1 --- Example of an international dialog box. -import Graphics.UI.Gtk - -import Data.Char -import Control.Exception - -main :: IO () -main = do - initGUI - dia <- dialogNew - dialogAddButton dia stockYes ResponseYes - dialogAddButton dia stockNo ResponseNo - contain <- dialogGetUpper dia - theText <- labelNew Nothing [_$_] - labelSetMarkup theText arabic - boxPackStartDefaults contain theText - widgetShowAll dia - res <- dialogRun dia - case res of - ResponseNo -> yell - _ -> return () - -arabic :: Markup -arabic = markSpan [FontSize (SizePoint 36)] $ - --"Is Haskell a "++markSpan [FontForeground "red"] "fantastic"++" language?"++ - -- Do you find Haskell a fantastic language? (language has a grammatical - -- mistake in it) - map chr [0x647,0x644,32,0x62A,0x62C,0x62F,0x646,32]++ - markSpan [FontForeground "red"] [_$_] - (map chr [0x647,0x622,0x633,0x643,0x622,0x644])++ - map chr [32,0x644,0x63A,0x62A,32,0x645,0x62F,0x647,0x634,0x62A,0x61F] - -yell :: IO () -yell = do - dia <- dialogNew - dialogAddButton dia stockOk ResponseOk - contain <- dialogGetUpper dia - msg <- labelNew (Just "This is not an option.") - contain `boxPackStartDefaults` msg - widgetShow msg - dialogRun dia - return () rmfile ./demo/unicode/Arabic.hs hunk ./demo/unicode/Makefile 1 - -PROG = arabic -SOURCES = Arabic.hs - -$(PROG) : $(SOURCES) - $(HC) --make $< -o $@ $(HCFLAGS) - -clean: - rm -f $(SOURCES:.hs=.hi) $(SOURCES:.hs=.o) $(PROG) - -HC=ghc rmfile ./demo/unicode/Makefile rmdir ./demo/unicode binary ./demo/treeList/resListDND/desktop.png rmfile ./demo/treeList/resListDND/desktop.png binary ./demo/treeList/resListDND/laptop.png rmfile ./demo/treeList/resListDND/laptop.png binary ./demo/treeList/resListDND/laptopSmall.png rmfile ./demo/treeList/resListDND/laptopSmall.png binary ./demo/treeList/resListDND/printer.png rmfile ./demo/treeList/resListDND/printer.png binary ./demo/treeList/resListDND/server.png rmfile ./demo/treeList/resListDND/server.png binary ./demo/treeList/resListDND/tower.png rmfile ./demo/treeList/resListDND/tower.png rmdir ./demo/treeList/resListDND hunk ./demo/treeList/Completion.hs 1 --- Demo to show off entry completion. - -import Graphics.UI.Gtk -import Data.Char -import Data.List - -data ColorDesc = ColorDesc { - cdColor :: Color, - cdName :: String - } deriving Show - -compareCol :: ColumnId ColorDesc String -compareCol = makeColumnIdString 0 - -invertColor (Color r g b) = Color (32767+r) (32767+g) (32767+b) [_$_] ---Color (65535-r) (65535-g) (65535-b) - -parseColor s = ColorDesc c (dropWhile isSpace (upperToSpace name)) - where - s1 = dropWhile isSpace s - (s2,s3) = span isDigit s1 - s4 = dropWhile isSpace s3 - (s5,s6) = span isDigit s4 - s7 = dropWhile isSpace s6 - (s8,s9) = span isDigit s7 - n1 = read ('0':s2) - n2 = read ('0':s5) - n3 = read ('0':s8) - c = Color (n1*256+n1) (n2*256+n2) (n3*256+n3) - name = dropWhile isSpace s9 - upperToSpace [] = [] - upperToSpace (x:xs) | isUpper x = ' ':toLower x:upperToSpace xs - | otherwise = x:upperToSpace xs - -main = - do - initGUI - window <- windowNew - [_$_] - contents <- readFile "rgb.txt" - let killDups [] = [] - killDups [x] = [x] - killDups (x:y:xs) | cdName x==cdName y = killDups (y:xs) - | otherwise = x:killDups (y:xs) - cols = killDups $ map parseColor (drop 1 (lines contents)) - store <- listStoreNew cols - customStoreSetColumn store compareCol cdName - - entry <- entryNew - completion <- entryCompletionNew - entrySetCompletion entry completion - - set completion [entryCompletionModel := Just store] - cell <- cellRendererTextNew - set cell [cellTextBackgroundSet := True, - cellTextForegroundSet := True] - cellLayoutPackStart completion cell True - cellLayoutSetAttributes completion cell store - (\cd -> [cellText := cdName cd, - cellTextBackgroundColor := cdColor cd, - cellTextForegroundColor := invertColor (cdColor cd)]) - entryCompletionSetMatchFunc completion (matchFunc store) - on completion matchSelected $ \model iter -> do - color <- treeModelGetValue model iter compareCol - entrySetText entry color - return True - set window [containerChild := entry] - widgetShowAll window - onDestroy window mainQuit - mainGUI - -matchFunc :: ListStore ColorDesc -> String -> TreeIter -> IO Bool -matchFunc model str iter = do - --putStrLn ("iter is "++show iter) - tp <- treeModelGetPath model iter - r <- case tp of - (i:_) -> do row <- listStoreGetValue model i - return $ any (isPrefixOf (map toLower str)) - (words (map toLower (cdName row))) - otherwise -> return False - return r - rmfile ./demo/treeList/Completion.hs hunk ./demo/treeList/DirList.hs 1 -{-# OPTIONS -cpp #-} --- Test file for the ListView widget. -module Main(main) where - -import Graphics.UI.Gtk -import Graphics.UI.Gtk.ModelView as New - -import Control.Exception -import System.Directory -import System.IO -import System.Locale -import System.Time - -data FileInfo = FileInfo { - fName :: String, - fSize :: Integer, - fTime :: ClockTime -} - -main = do - initGUI - win <- windowNew - win `onDestroy` mainQuit - - curDir <- getCurrentDirectory - files <- getDirectoryContents curDir - fInfos <- (flip mapM) files $ \f -> do - s <- handle (\e -> -#if __GLASGOW_HASKELL__>=610 - case e :: SomeException of - e -> -#endif - return 0) $ do - h <- openFile f ReadMode - s <- hFileSize h - hClose h - return s - t <- getModificationTime f - return FileInfo { fName = f - , fSize = s - , fTime = t } - - store <- New.listStoreNew fInfos - - tv <- New.treeViewNewWithModel store - containerAdd win tv - - tvc <- New.treeViewColumnNew - set tvc [ New.treeViewColumnTitle := "File name" - , New.treeViewColumnResizable := True ] - New.treeViewAppendColumn tv tvc - - name <- New.cellRendererTextNew - New.treeViewColumnPackStart tvc name True - New.cellLayoutSetAttributes tvc name store $ \FileInfo { fName = name } -> - [ New.cellText := name ] - - tvc <- New.treeViewColumnNew - set tvc [ New.treeViewColumnTitle := "Size" - , New.treeViewColumnResizable := True ] - New.treeViewAppendColumn tv tvc - - size <- New.cellRendererTextNew - New.treeViewColumnPackStart tvc size True - New.cellLayoutSetAttributes tvc size store $ \FileInfo { fSize = size } -> - [ New.cellText := show size ] - - tvc <- New.treeViewColumnNew - set tvc [ New.treeViewColumnTitle := "Modification time" - , New.treeViewColumnResizable := True ] - New.treeViewAppendColumn tv tvc - - time <- New.cellRendererTextNew - New.treeViewColumnPackStart tvc time True - New.cellLayoutSetAttributes tvc time store $ \FileInfo { fTime = time } -> - [ New.cellText :=> do - calTime <- toCalendarTime time - return (formatCalendarTime defaultTimeLocale "%D %T" calTime) - ] - - widgetShowAll win - mainGUI rmfile ./demo/treeList/DirList.hs hunk ./demo/treeList/FilterDemo.hs 1 --- a demo that shows how to create a normal tree view and a tree view in --- which only a chosen subset of rows are shown (namely those with upper case letters) -module Main ( main ) where - -import Graphics.UI.Gtk -import Data.List -import Data.Char -import Debug.Trace - --- | Define a virtual column of the model that determines the visibility of a row in --- the model. -visCol :: ColumnId String Bool -visCol = makeColumnIdBool 0 - -main = do - initGUI - [_$_] - win <- windowNew - onDestroy win mainQuit - [_$_] - content <- readFile "FilterDemo.hs" - - -- create a view that shows all lines - model <- listStoreNew (lines content) - viewAll <- treeViewNewWithModel model - col <- treeViewColumnNew - ren <- cellRendererTextNew - cellLayoutPackStart col ren True - cellLayoutSetAttributes col ren model $ \row -> [ cellText := row ] - treeViewAppendColumn viewAll col - - -- create a view that only shows lines with upper case characters - fModel <- treeModelFilterNew model [] - - -- create a virtual column 'visCol' that contains @True@ if a certain row has - -- upper case letters. Then set this column to determine the visibility of a row. - customStoreSetColumn model visCol (any isUpper) - treeModelFilterSetVisibleColumn fModel visCol - -{- - -- this is an alternative way to determine the visibility of a row. In this case, - -- it is not necessary to create the column 'visCol'. - treeModelFilterSetVisibleFunc fModel $ Just $ \iter -> do - row <- treeModelGetRow model iter - return (any isUpper row) --} - -- note: it is important to insert the model into the view after the visibility - -- row or the visibility function have been set. Otherwise, the view is filled - -- first and setting a new visibility column/function will not update the view. - viewFew <- treeViewNewWithModel fModel - col <- treeViewColumnNew - ren <- cellRendererTextNew - cellLayoutPackStart col ren True - cellLayoutSetAttributes col ren model $ \row -> [ cellText := row ] - - treeViewAppendColumn viewFew col - [_$_] - [_$_] - [_$_] - box <- vBoxNew False 0 - swAll <- scrolledWindowNew Nothing Nothing - containerAdd swAll viewAll - boxPackStart box swAll PackGrow 4 - - swFew <- scrolledWindowNew Nothing Nothing - containerAdd swFew viewFew - boxPackEnd box swFew PackGrow 4 - [_$_] - containerAdd win box - widgetShowAll win - mainGUI rmfile ./demo/treeList/FilterDemo.hs hunk ./demo/treeList/ListDND.hs 1 -module Main where - -import Graphics.UI.Gtk -import Graphics.UI.Gtk.Gdk.EventM - -import System.Glib.GObject ( toGObject ) -import System.FilePath -import Control.Concurrent.MVar -import Control.Monad ( liftM ) -import Control.Monad.Trans ( liftIO ) -import Data.Maybe ( fromMaybe ) -import Data.List ( findIndex ) - -roomStrCol :: ColumnId String String -roomStrCol = makeColumnIdString 1 - --- Define a string column and an image column on the store holding the --- computer types. -compPicCol :: ColumnId CompType Pixbuf -compPicCol = makeColumnIdPixbuf 1 - -compStrCol :: ColumnId CompType String -compStrCol = makeColumnIdString 2 - -data Computer = Computer { - name :: String, - addr :: (Int, Int, Int, Int), - roomStore :: ListStore String, - roomSel :: Int, - cType :: CompType } - -data CompType - = MacBookPro - | MacBook - | Printer - | MacPro - | Xserve - | IMac - deriving (Enum, Bounded, Show) - -showCT :: CompType -> String -showCT ct = case show ct of - 'I':xs -> 'i':xs - xs -> xs - -main = do - initGUI - - win <- windowNew - onDestroy win mainQuit - - -- create a tag that we use as selection, target and selection type - compTypeTag <- atomNew "_CompType" - - let pNames = map ("resListDND" </>) - ["laptop.png","laptopSmall.png","printer.png", - "tower.png","server.png","desktop.png"] - pics <- mapM pixbufNewFromFile pNames - - smallPics <- mapM (\n -> pixbufNewFromFileAtScale n 48 48 True) pNames -[_^I_][_$_] - [noRoom, publicRoom, restrictedRoom] <- mapM listStoreNew - [["Paul (Home)","John (Home)","Fred (Home)"], - ["N12","S112", "S113", "S114"], - ["Server Room Upstairs", "Server Room Downstairs"]] - - -- define extractor function for the string column - treeModelSetColumn noRoom roomStrCol id - treeModelSetColumn publicRoom roomStrCol id - treeModelSetColumn restrictedRoom roomStrCol id - [_$_] - let genRoomStore MacBookPro = noRoom - genRoomStore MacBook = noRoom - genRoomStore Printer = publicRoom - genRoomStore MacPro = publicRoom - genRoomStore Xserve = restrictedRoom - genRoomStore IMac = publicRoom - - -- the initial computer list - it's a coincidence that there's - -- one computer of each type - content <- listStoreNewDND [_$_] - (map (\t -> Computer { name = showCT t, addr = (192,168,0,fromEnum t+1), - roomStore = genRoomStore t, roomSel = 0, cType = t}) - [minBound :: CompType .. maxBound]) - (Just listStoreDefaultDragSourceIface) - (Just DragDestIface { - treeDragDestRowDropPossible = \store path@(i:_) -> do - mCT <- selectionDataGet compTypeTag - case mCT :: Maybe [Int] of - Just [ct] -> return True - Nothing -> - (treeDragDestRowDropPossible listStoreDefaultDragDestIface) - store path - _ -> return False, - treeDragDestDragDataReceived = \store path@(i:_) -> do - mCT <- selectionDataGet compTypeTag - case mCT of - Just [ct] -> do - let t = toEnum ct - liftIO $ listStoreInsert store i - Computer { name = showCT t, addr = (192,168,0,254), - roomStore = genRoomStore t, roomSel = 0, - cType = t } - return True - Nothing -> - (treeDragDestDragDataReceived listStoreDefaultDragDestIface) - store path - }) - -- the area with the possible computer types - compTypes <- listStoreNewDND [minBound :: CompType .. maxBound] - (Just DragSourceIface { - treeDragSourceRowDraggable = \store (i:_) -> return True, - treeDragSourceDragDataGet = \store (i:_) -> do - ty <- selectionDataGetTarget - ct <- liftIO $ listStoreGetValue store i - selectionDataSet compTypeTag [fromEnum ct] - return True, - treeDragSourceDragDataDelete = \store path -> return True - }) - Nothing - - -- define extractor functions for the two column - treeModelSetColumn compTypes compPicCol $ - \t -> pics !! fromEnum t - treeModelSetColumn compTypes compStrCol showCT - [_$_] - -- create an icon view of all the computer types - typesView <- iconViewNew - set typesView [iconViewModel := Just compTypes, - iconViewPixbufColumn := compPicCol, - iconViewTextColumn := compStrCol, - iconViewColumns := 6] [_$_] - - -- create an editable list of computers - inventory <- treeViewNewWithModel content - - tyCol <- treeViewColumnNew - treeViewColumnSetTitle tyCol "Type" - picRen <- cellRendererPixbufNew - treeViewColumnPackStart tyCol picRen False - cellLayoutSetAttributes tyCol picRen content - (\Computer { cType = t} -> [cellPixbuf := smallPics !! fromEnum t]) - tyRen <- cellRendererTextNew - treeViewColumnPackStart tyCol tyRen False - cellLayoutSetAttributes tyCol tyRen content - (\Computer { cType = t} -> [cellText := showCT t]) - treeViewAppendColumn inventory tyCol - - nameCol <- treeViewColumnNew - treeViewColumnSetTitle nameCol "Name" - treeViewColumnSetResizable nameCol True - treeViewColumnSetMinWidth nameCol 100 - nameRen <- cellRendererTextNew - set nameRen [ cellTextEditable := True, - cellTextEditableSet := True, - cellTextEllipsize := EllipsizeEnd, - cellTextEllipsizeSet := True] - treeViewColumnPackStart nameCol nameRen True - cellLayoutSetAttributes nameCol nameRen content - (\Computer { name = n } -> [cellText := n]) - treeViewAppendColumn inventory nameCol - on nameRen edited $ \[i] str -> do - val <- listStoreGetValue content i - listStoreSetValue content i val { name = str } - - addrCol <- treeViewColumnNew - treeViewColumnSetTitle addrCol "Address" - oct1 <- cellRendererTextNew - dot1 <- cellRendererTextNew - oct2 <- cellRendererTextNew - dot2 <- cellRendererTextNew - oct3 <- cellRendererTextNew - dot3 <- cellRendererTextNew - oct4 <- cellRendererTextNew - mapM_ (uncurry (cellLayoutPackStart addrCol)) - [(oct1, True), (dot1, False), (oct2, True), - (dot2, False), (oct3, True), (dot3, False), (oct4, True)] - mapM_ (\d -> set d [cellText := ".", - cellTextWidthChars := 0]) [dot1, dot2, dot3] - mapM_ (\o -> set o [cellXAlign := 1.0, - cellTextWidthChars := 3]) [oct1, oct2, oct3, oct4] - cellLayoutSetAttributes addrCol oct1 content - (\Computer { addr = (o1,_,_,_)} -> [cellText := show o1]) - cellLayoutSetAttributes addrCol oct2 content - (\Computer { addr = (_,o2,_,_)} -> [cellText := show o2]) - cellLayoutSetAttributes addrCol oct3 content - (\Computer { addr = (_,_,o3,_)} -> [cellText := show o3]) - cellLayoutSetAttributes addrCol oct4 content - (\Computer { addr = (_,_,_,o4)} -> [cellText := show o4]) [_$_] - treeViewAppendColumn inventory addrCol - - roomCol <- treeViewColumnNew - treeViewColumnSetTitle roomCol "Room" - treeViewColumnSetResizable roomCol True - treeViewColumnSetSizing roomCol TreeViewColumnAutosize - roomRen <- cellRendererComboNew - set roomRen [ cellTextEditable := True, - cellTextEditableSet := True, - cellComboHasEntry := True ] - treeViewColumnPackStart roomCol roomRen True - cellLayoutSetAttributes roomCol roomRen content - (\Computer { roomStore = t, roomSel = idx } -> - [cellText :=> listStoreGetValue t idx, - cellComboTextModel := (t, roomStrCol)]) - on roomRen edited $ \[i] str -> do - row@Computer { roomStore = t } <- listStoreGetValue content i - elems <- listStoreToList t - idx <- case (findIndex ((==) str) elems) of - Just idx -> return idx - Nothing -> listStoreAppend t str - listStoreSetValue content i row { roomSel = idx } - treeViewAppendColumn inventory roomCol - - -- make typesView a drag source for compTypeTag values - tl <- targetListNew - targetListAdd tl compTypeTag [TargetSameApp] 0 - iconViewEnableModelDragSource typesView [Button1] tl [ActionCopy] - [_$_] - -- Due to a bug in Gtk+, the treeDragSourceDragDataGet handler in - -- the DND source handler is not called unless the IconView is also - -- set to be a DND destination. Bugzilla 550528 - tl <- targetListNew - iconViewEnableModelDragDest typesView tl [] - [_$_] - -- make the inventory widget a drag destination for compTypeTag values - tl <- targetListNew - targetListAdd tl compTypeTag [TargetSameApp] 0 - targetListAdd tl targetTreeModelRow [TargetSameWidget] 0 - treeViewEnableModelDragDest inventory tl [ActionMove] - tl <- targetListNew - targetListAdd tl targetTreeModelRow [TargetSameWidget] 0 - treeViewEnableModelDragSource inventory [Button1] tl [ActionMove] - [_$_] - -- Install drag and drop for permuting rows. This is now done above using - -- the explicit target 'targetTreeModelRow'. Calling the function below - -- will set a completely new 'TargetList' thereby removing our own - -- 'compTypeTag' from the inventory widget's target list. - [_$_] - --treeViewSetReorderable inventory True - - -- arrange the widgets - v <- vPanedNew - panedAdd1 v typesView - panedAdd2 v inventory - containerAdd win v - - widgetShowAll win - mainGUI [_$_] rmfile ./demo/treeList/ListDND.hs hunk ./demo/treeList/ListDemo.hs 1 -module Main where - -import Graphics.UI.Gtk -import System.Glib.Signals (on) -import Data.List ( isPrefixOf ) -import Data.Char ( toLower ) - -data Phone = Phone { name :: String, number :: Int, marked :: Bool } - -main = do - initGUI - - win <- windowNew - onDestroy win mainQuit - - -- create a new list model - model <- listStoreNew - [Phone { name = "Foo", number = 12345, marked = False } - ,Phone { name = "Bar", number = 67890, marked = True } - ,Phone { name = "Baz", number = 39496, marked = False }] - view <- treeViewNewWithModel model - [_$_] - treeViewSetHeadersVisible view True - - -- add a couple columns - col1 <- treeViewColumnNew - col2 <- treeViewColumnNew - col3 <- treeViewColumnNew - - treeViewColumnSetTitle col1 "String column" - treeViewColumnSetTitle col2 "Int column" - treeViewColumnSetTitle col3 "Bool column" - - renderer1 <- cellRendererTextNew - renderer2 <- cellRendererTextNew - renderer3 <- cellRendererToggleNew - - cellLayoutPackStart col1 renderer1 True - cellLayoutPackStart col2 renderer2 True - cellLayoutPackStart col3 renderer3 True - - cellLayoutSetAttributes col1 renderer1 model $ \row -> [ cellText := name row ] - cellLayoutSetAttributes col2 renderer2 model $ \row -> [ cellText := show (number row) ] - cellLayoutSetAttributes col3 renderer3 model $ \row -> [ cellToggleActive := marked row ] - - treeViewAppendColumn view col1 - treeViewAppendColumn view col2 - treeViewAppendColumn view col3 - - -- update the model when the toggle buttons are activated - on renderer3 cellToggled $ \pathStr -> do - let (i:_) = stringToTreePath pathStr - val <- listStoreGetValue model i - listStoreSetValue model i val { marked = not (marked val) } - - - -- enable interactive search - treeViewSetEnableSearch view True - treeViewSetSearchEqualFunc view $ Just $ \str iter -> do - (i:_) <- treeModelGetPath model iter - row <- listStoreGetValue model i - return (map toLower str `isPrefixOf` map toLower (name row)) - [_$_] - containerAdd win view - widgetShowAll win - mainGUI [_$_] rmfile ./demo/treeList/ListDemo.hs hunk ./demo/treeList/ListTest.glade 1 -<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*--> -<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd"> - -<glade-interface> - -<widget class="GtkWindow" id="window"> - <property name="visible">True</property> - <property name="title" translatable="yes">List Test</property> - <property name="type">GTK_WINDOW_TOPLEVEL</property> - <property name="window_position">GTK_WIN_POS_NONE</property> - <property name="modal">False</property> - <property name="resizable">True</property> - <property name="destroy_with_parent">False</property> - <property name="decorated">True</property> - <property name="skip_taskbar_hint">False</property> - <property name="skip_pager_hint">False</property> - <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property> - <property name="gravity">GDK_GRAVITY_NORTH_WEST</property> - <property name="focus_on_map">True</property> - - <child> - <widget class="GtkVBox" id="vbox1"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">0</property> - - <child> - <widget class="GtkScrolledWindow" id="scrolledwindow1"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="hscrollbar_policy">GTK_POLICY_ALWAYS</property> - <property name="vscrollbar_policy">GTK_POLICY_ALWAYS</property> - <property name="shadow_type">GTK_SHADOW_IN</property> - <property name="window_placement">GTK_CORNER_TOP_LEFT</property> - - <child> - <widget class="GtkTreeView" id="view"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="headers_visible">True</property> - <property name="rules_hint">False</property> - <property name="reorderable">False</property> - <property name="enable_search">True</property> - <property name="fixed_height_mode">False</property> - <property name="hover_selection">False</property> - <property name="hover_expand">False</property> - </widget> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkHBox" id="hbox1"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">0</property> - - <child> - <widget class="GtkVBox" id="vbox2"> - <property name="border_width">8</property> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">12</property> - - <child> - <widget class="GtkExpander" id="expander6"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="expanded">True</property> - <property name="spacing">0</property> - - <child> - <widget class="GtkTable" id="table1"> - <property name="border_width">2</property> - <property name="visible">True</property> - <property name="n_rows">3</property> - <property name="n_columns">2</property> - <property name="homogeneous">False</property> - <property name="row_spacing">2</property> - <property name="column_spacing">18</property> - - <child> - <widget class="GtkSpinButton" id="intValue"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="climb_rate">1</property> - <property name="digits">0</property> - <property name="numeric">True</property> - <property name="update_policy">GTK_UPDATE_ALWAYS</property> - <property name="snap_to_ticks">True</property> - <property name="wrap">False</property> - <property name="adjustment">1 0 100 1 10 10</property> - </widget> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">1</property> - <property name="bottom_attach">2</property> - <property name="y_options"></property> - </packing> - </child> - - <child> - <widget class="GtkCheckButton" id="boolValue"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - <property name="active">False</property> - <property name="inconsistent">False</property> - <property name="draw_indicator">True</property> - </widget> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">2</property> - <property name="bottom_attach">3</property> - <property name="x_options">fill</property> - <property name="y_options"></property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label2"> - <property name="visible">True</property> - <property name="label" translatable="yes">String value:</property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">1</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="left_attach">0</property> - <property name="right_attach">1</property> - <property name="top_attach">0</property> - <property name="bottom_attach">1</property> - <property name="y_options"></property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label3"> - <property name="visible">True</property> - <property name="label" translatable="yes">Number value:</property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">1</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="left_attach">0</property> - <property name="right_attach">1</property> - <property name="top_attach">1</property> - <property name="bottom_attach">2</property> - <property name="y_options"></property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label4"> - <property name="visible">True</property> - <property name="label" translatable="yes">Boolean value:</property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">1</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="left_attach">0</property> - <property name="right_attach">1</property> - <property name="top_attach">2</property> - <property name="bottom_attach">3</property> - <property name="y_options"></property> - </packing> - </child> - - <child> - <widget class="GtkEntry" id="stringValue"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="editable">True</property> - <property name="visibility">True</property> - <property name="max_length">0</property> - <property name="text" translatable="yes"></property> - <property name="has_frame">True</property> - <property name="invisible_char">*</property> - <property name="activates_default">False</property> - </widget> - <packing> - <property name="left_attach">1</property> - <property name="right_attach">2</property> - <property name="top_attach">0</property> - <property name="bottom_attach">1</property> - <property name="x_options">expand|shrink|fill</property> - <property name="y_options"></property> - </packing> - </child> - </widget> - </child> - - <child> - <widget class="GtkLabel" id="label29"> - <property name="visible">True</property> - <property name="label" translatable="yes"><b>Value</b></property> - <property name="use_underline">False</property> - <property name="use_markup">True</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="type">label_item</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkExpander" id="expander5"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="expanded">True</property> - <property name="spacing">0</property> - - <child> - <widget class="GtkVBox" id="vbox7"> - <property name="border_width">4</property> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">2</property> - - <child> - <widget class="GtkHBox" id="hbox9"> - <property name="visible">True</property> - <property name="homogeneous">True</property> - <property name="spacing">0</property> - - <child> - <widget class="GtkButton" id="insert"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="label" translatable="yes">insert</property> - <property name="use_underline">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label23"> - <property name="visible">True</property> - <property name="label" translatable="yes">new entry at</property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">4</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkSpinButton" id="newIndex"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="climb_rate">1</property> - <property name="digits">0</property> - <property name="numeric">False</property> - <property name="update_policy">GTK_UPDATE_ALWAYS</property> - <property name="snap_to_ticks">False</property> - <property name="wrap">False</property> - <property name="adjustment">1 0 100 1 10 10</property> - </widget> - <packing> - <property name="padding">4</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkHBox" id="hbox7"> - <property name="visible">True</property> - <property name="homogeneous">True</property> - <property name="spacing">0</property> - - <child> - <widget class="GtkButton" id="prepend"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="label" translatable="yes">prepend</property> - <property name="use_underline">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label21"> - <property name="visible">True</property> - <property name="label" translatable="yes">new entry</property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">4</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label30"> - <property name="visible">True</property> - <property name="label" translatable="yes"></property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkHBox" id="hbox8"> - <property name="visible">True</property> - <property name="homogeneous">True</property> - <property name="spacing">0</property> - - <child> - <widget class="GtkButton" id="append"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="label" translatable="yes">append</property> - <property name="use_underline">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label22"> - <property name="visible">True</property> - <property name="label" translatable="yes">new entry</property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">4</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label31"> - <property name="visible">True</property> - <property name="label" translatable="yes"></property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkHBox" id="hbox6"> - <property name="visible">True</property> - <property name="homogeneous">True</property> - <property name="spacing">0</property> - - <child> - <widget class="GtkButton" id="update"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="label" translatable="yes">update</property> - <property name="use_underline">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label20"> - <property name="visible">True</property> - <property name="label" translatable="yes">entry</property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">4</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkSpinButton" id="updateIndex"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="climb_rate">1</property> - <property name="digits">0</property> - <property name="numeric">False</property> - <property name="update_policy">GTK_UPDATE_ALWAYS</property> - <property name="snap_to_ticks">False</property> - <property name="wrap">False</property> - <property name="adjustment">1 0 100 1 10 10</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - </widget> - </child> - - <child> - <widget class="GtkLabel" id="label28"> - <property name="visible">True</property> - <property name="label" translatable="yes"><b>Insert and Update</b></property> - <property name="use_underline">False</property> - <property name="use_markup">True</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="type">label_item</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkExpander" id="expander1"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="expanded">True</property> - <property name="spacing">0</property> - - <child> - <widget class="GtkVBox" id="vbox8"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">2</property> - - <child> - <widget class="GtkHBox" id="hbox5"> - <property name="border_width">4</property> - <property name="visible">True</property> - <property name="homogeneous">True</property> - <property name="spacing">0</property> - - <child> - <widget class="GtkButton" id="remove"> - <property name="width_request">54</property> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="label" translatable="yes">delete</property> - <property name="use_underline">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label19"> - <property name="visible">True</property> - <property name="label" translatable="yes">entry</property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">4</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkSpinButton" id="removeIndex"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="climb_rate">1</property> - <property name="digits">0</property> - <property name="numeric">False</property> - <property name="update_policy">GTK_UPDATE_ALWAYS</property> - <property name="snap_to_ticks">False</property> - <property name="wrap">False</property> - <property name="adjustment">1 0 100 1 10 10</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label32"> - <property name="visible">True</property> - <property name="label" translatable="yes"></property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label33"> - <property name="visible">True</property> - <property name="label" translatable="yes"></property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkHBox" id="hbox10"> - <property name="border_width">4</property> - <property name="visible">True</property> - <property name="homogeneous">True</property> - <property name="spacing">0</property> - - <child> - <widget class="GtkButton" id="clear"> - <property name="visible">True</property> - <property name="can_focus">True</property> - <property name="label" translatable="yes">clear</property> - <property name="use_underline">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label34"> - <property name="visible">True</property> - <property name="label" translatable="yes">all</property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0</property> - <property name="yalign">0.5</property> - <property name="xpad">4</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">True</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label35"> - <property name="visible">True</property> - <property name="label" translatable="yes"></property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_LEFT</property> - <property name="wrap">False</property> - <property name="selectable">False</property> - <property name="xalign">0.5</property> - <property name="yalign">0.5</property> - <property name="xpad">0</property> - <property name="ypad">0</property> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - - <child> - <widget class="GtkLabel" id="label36"> - <property name="visible">True</property> - <property name="label" translatable="yes"></property> - <property name="use_underline">False</property> - <property name="use_mar... [truncated message content] |
From: Andy S. <And...@co...> - 2010-05-24 03:44:33
|
diffing dir... Sun May 23 23:39:04 EDT 2010 Andy Stewart <laz...@gm...> * Move mozembed demo to ./mozembed/demo Ignore-this: be945149615e5c04c0e7557967afd213 { hunk ./demo/mozembed/Makefile 1 - -PROG = testembedmoz -SOURCES = TestEmbedMoz.hs - -$(PROG) : $(SOURCES) - $(HC) --make $< -o $@ $(HCFLAGS) - -clean: - rm -f $(SOURCES:.hs=.hi) $(SOURCES:.hs=.o) $(PROG) - -HC=ghc rmfile ./demo/mozembed/Makefile hunk ./demo/mozembed/TestEmbedMoz.hs 1 --- A Test Program for the Gtk2 Mozilla Widget --- - -import Graphics.UI.Gtk -import Graphics.UI.Gtk.MozEmbed -import System (getArgs, getEnv, getProgName) - - -main :: IO () -main = do - initGUI - w <- windowNew - onDestroy w mainQuit - mozEmbedSetCompPath mozEmbedDefaultCompPath - - moz <- mozEmbedNew - widgetShow moz - - containerAdd w moz - - windowSetTitle w "TestEmbedMoz" - containerSetBorderWidth w 2 - widgetSetSizeRequest w 640 480 - widgetShowAll w - - onOpenConnectID <- onOpenURI moz - (\ s -> do putStrLn ("onOpenURI: " ++ s) - return False) - - args <- getArgs - case args of - file@(c:_) : _ -> let - (fr,dr) = span ('/' /=) $ reverse file - dir = reverse dr - in do - dir <- if c == '/' then return dir - else do pwd <- getEnv "PWD" - return (pwd ++ '/' : dir) - let dirSlash = case last dir of - '/' -> dir - _ -> dir ++ "/" - baseURI = "file://" ++ dirSlash - mozdata <- readFile file - mozEmbedRenderData moz mozdata baseURI mimeType - mainGUI - _ -> do p <- getProgName - putStrLn ("Usage: " ++ p ++ " <htmlfile>") - -mimeType = "text/html" - rmfile ./demo/mozembed/TestEmbedMoz.hs rmdir ./demo/mozembed adddir ./mozembed/demo addfile ./mozembed/demo/Makefile hunk ./mozembed/demo/Makefile 1 + +PROG = testembedmoz +SOURCES = TestEmbedMoz.hs + +$(PROG) : $(SOURCES) + $(HC) --make $< -o $@ $(HCFLAGS) + +clean: + rm -f $(SOURCES:.hs=.hi) $(SOURCES:.hs=.o) $(PROG) + +HC=ghc addfile ./mozembed/demo/TestEmbedMoz.hs hunk ./mozembed/demo/TestEmbedMoz.hs 1 +-- A Test Program for the Gtk2 Mozilla Widget +-- + +import Graphics.UI.Gtk +import Graphics.UI.Gtk.MozEmbed +import System (getArgs, getEnv, getProgName) + + +main :: IO () +main = do + initGUI + w <- windowNew + onDestroy w mainQuit + mozEmbedSetCompPath mozEmbedDefaultCompPath + + moz <- mozEmbedNew + widgetShow moz + + containerAdd w moz + + windowSetTitle w "TestEmbedMoz" + containerSetBorderWidth w 2 + widgetSetSizeRequest w 640 480 + widgetShowAll w + + onOpenConnectID <- onOpenURI moz + (\ s -> do putStrLn ("onOpenURI: " ++ s) + return False) + + args <- getArgs + case args of + file@(c:_) : _ -> let + (fr,dr) = span ('/' /=) $ reverse file + dir = reverse dr + in do + dir <- if c == '/' then return dir + else do pwd <- getEnv "PWD" + return (pwd ++ '/' : dir) + let dirSlash = case last dir of + '/' -> dir + _ -> dir ++ "/" + baseURI = "file://" ++ dirSlash + mozdata <- readFile file + mozEmbedRenderData moz mozdata baseURI mimeType + mainGUI + _ -> do p <- getProgName + putStrLn ("Usage: " ++ p ++ " <htmlfile>") + +mimeType = "text/html" + } |
From: Andy S. <And...@co...> - 2010-05-24 03:32:07
|
diffing dir... Sun May 23 23:31:55 EDT 2010 Andy Stewart <laz...@gm...> * Move sourceview demo to ./gtksourceview2/demo Ignore-this: 3239746ab1c6293af3c4af235511e631 { hunk ./demo/sourceview/Makefile 1 - -PROG = sourceview -SOURCES = SourceViewTest.hs - -$(PROG) : $(SOURCES) - $(HC) --make $< -o $@ $(HCFLAGS) - -clean: - rm -f $(SOURCES:.hs=.hi) $(SOURCES:.hs=.o) $(PROG) - -HC=ghc rmfile ./demo/sourceview/Makefile hunk ./demo/sourceview/SourceViewTest.hs 1 --- Test file for the SourceView widget. -module Main where - -import Graphics.UI.Gtk -import Graphics.UI.Gtk.SourceView - -main = do - initGUI - win <- windowNew - win `onDestroy` mainQuit - - -- create the appropriate language - lm <- sourceLanguageManagerNew - langM <- sourceLanguageManagerGetLanguage lm "haskell" - lang <- case langM of - (Just lang) -> return lang - Nothing -> do - langDirs <- sourceLanguageManagerGetSearchPath lm - error ("please copy haskell.lang to one of the following directories:\n" - ++unlines langDirs) - - -- create a new SourceBuffer object - buffer <- sourceBufferNewWithLanguage lang - - -- load up and display a file - fileContents <- readFile "SourceViewTest.hs" - textBufferSetText buffer fileContents - textBufferSetModified buffer False - - sourceBufferSetHighlightSyntax buffer True - - -- create a new SourceView Widget - sv <- sourceViewNewWithBuffer buffer - - -- put it in a scrolled window - sw <- scrolledWindowNew Nothing Nothing - sw `containerAdd` sv - scrolledWindowSetPolicy sw PolicyAutomatic PolicyAutomatic - sw `scrolledWindowSetShadowType` ShadowIn - win `containerAdd` sw - [_$_] - -- show the widget and run the main loop - windowSetDefaultSize win 400 500 - widgetShowAll win - mainGUI rmfile ./demo/sourceview/SourceViewTest.hs hunk ./demo/sourceview/haskell.lang 1 -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE language SYSTEM "language.dtd"> -<language _name="Haskell" version="1.0" _section="Sources" mimetypes="text/x-haskell"> - - <escape-char>\</escape-char> - - <line-comment _name = "Line Comment" style= "Comment"> - <start-regex>--</start-regex> - </line-comment> - - <block-comment _name = "Block Comment" style = "Comment"> - <start-regex>\{-</start-regex> - <end-regex>-\}</end-regex> - </block-comment> - - <syntax-item _name = "Pragma" style = "Preprocessor"> - <start-regex>\{-#</start-regex> - <end-regex>#-\}</end-regex> - </syntax-item> - - <pattern-item _name = "Data Type or Constructor" style = "Data Type"> - <regex>\b[A-Z][0-9a-zA-Z._]*('|#)*</regex> - </pattern-item> - - <pattern-item _name = "Keysymbols" style = "Keyword"> - <regex>::|->|<-|=>|=|\||\\|@|~|\.\.</regex> - </pattern-item> -<!-- - <pattern-item _name = "Operators" style = "Operators"> - <regex>[:!#$%&*+./>=<?@\\^|~\-]+</regex> - </pattern-item> - - <keyword-list _name="Keysymbols" style = "Keyword"> - <keyword>::</keyword> - <keyword>-></keyword> - <keyword><-</keyword> - <keyword>=></keyword> - <keyword>=</keyword> - <keyword>|</keyword>` - <keyword>\</keyword> - <keyword>@</keyword> - <keyword>~</keyword> - <keyword>..</keyword> - </keyword-list> ---> - <string _name = "String" style = "String" end-at-line-end = "true"> - <start-regex>"</start-regex> - <end-regex>"</end-regex> - </string> - - <string _name = "Character Constant" style = "String" end-at-line-end = "true"> - <start-regex>[^A-Za-z0-9]'</start-regex> - <end-regex>'</end-regex> - </string> - - <pattern-item _name = "Decimal" style = "Decimal"> - <regex>\b[0-9]\b</regex> - </pattern-item> - - <pattern-item _name = "Floating Point Number" style = "Floating point"> - <regex>\b([0-9]+.[0-9]+([eE][+-]?[0-9])?|[0-9][eE][+-]?[0-9])</regex> - </pattern-item> - - <pattern-item _name = "Octal Number" style = "Base-N Integer"> - <regex>\b[oO][0-7]+\b</regex> - </pattern-item> - - <pattern-item _name = "Hex Number" style = "Base-N Integer"> - <regex>\b0[xX][0-9a-fA-F]+\b</regex> - </pattern-item> - - <keyword-list _name = "Keywords" style = "Keyword" case-sensitive="true"> - <keyword>as</keyword> - <keyword>case</keyword> - <keyword>class</keyword> - <keyword>data</keyword> - <keyword>deriving</keyword> - <keyword>do</keyword> - <keyword>else</keyword> - <keyword>forall</keyword> <!-- GHC extension --> - <keyword>hiding</keyword> - <keyword>if</keyword> - <keyword>import</keyword> - <keyword>in</keyword> - <keyword>infix</keyword> - <keyword>infixl</keyword> - <keyword>infixr</keyword> - <keyword>instance</keyword> - <keyword>let</keyword> - <keyword>module</keyword> - <keyword>newtype</keyword> - <keyword>of</keyword> - <keyword>qualified</keyword> - <keyword>then</keyword> - <keyword>where</keyword> - <keyword>with</keyword> <!-- GHC extension --> - </keyword-list> - - <keyword-list _name = "Preprocessor Definitions" style = "Preprocessor" case-sensitive="true" - match-empty-string-at-beginning = "false" - match-empty-string-at-end = "true" - beginning-regex = "^[ \t]*#[ \t]*"> - <keyword>if</keyword> - <keyword>ifdef</keyword> - <keyword>ifndef</keyword> - <keyword>else</keyword> - <keyword>elif</keyword> - <keyword>define</keyword> - <keyword>endif</keyword> - <keyword>undef</keyword> - <keyword>error</keyword> - </keyword-list> - -</language> rmfile ./demo/sourceview/haskell.lang rmdir ./demo/sourceview adddir ./gtksourceview2/demo addfile ./gtksourceview2/demo/Makefile hunk ./gtksourceview2/demo/Makefile 1 + +PROG = sourceview +SOURCES = SourceViewTest.hs + +$(PROG) : $(SOURCES) + $(HC) --make $< -o $@ $(HCFLAGS) + +clean: + rm -f $(SOURCES:.hs=.hi) $(SOURCES:.hs=.o) $(PROG) + +HC=ghc addfile ./gtksourceview2/demo/SourceViewTest.hs hunk ./gtksourceview2/demo/SourceViewTest.hs 1 +-- Test file for the SourceView widget. +module Main where + +import Graphics.UI.Gtk +import Graphics.UI.Gtk.SourceView + +main = do + initGUI + win <- windowNew + win `onDestroy` mainQuit + + -- create the appropriate language + lm <- sourceLanguageManagerNew + langM <- sourceLanguageManagerGetLanguage lm "haskell" + lang <- case langM of + (Just lang) -> return lang + Nothing -> do + langDirs <- sourceLanguageManagerGetSearchPath lm + error ("please copy haskell.lang to one of the following directories:\n" + ++unlines langDirs) + + -- create a new SourceBuffer object + buffer <- sourceBufferNewWithLanguage lang + + -- load up and display a file + fileContents <- readFile "SourceViewTest.hs" + textBufferSetText buffer fileContents + textBufferSetModified buffer False + + sourceBufferSetHighlightSyntax buffer True + + -- create a new SourceView Widget + sv <- sourceViewNewWithBuffer buffer + + -- put it in a scrolled window + sw <- scrolledWindowNew Nothing Nothing + sw `containerAdd` sv + scrolledWindowSetPolicy sw PolicyAutomatic PolicyAutomatic + sw `scrolledWindowSetShadowType` ShadowIn + win `containerAdd` sw + [_$_] + -- show the widget and run the main loop + windowSetDefaultSize win 400 500 + widgetShowAll win + mainGUI addfile ./gtksourceview2/demo/haskell.lang hunk ./gtksourceview2/demo/haskell.lang 1 +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE language SYSTEM "language.dtd"> +<language _name="Haskell" version="1.0" _section="Sources" mimetypes="text/x-haskell"> + + <escape-char>\</escape-char> + + <line-comment _name = "Line Comment" style= "Comment"> + <start-regex>--</start-regex> + </line-comment> + + <block-comment _name = "Block Comment" style = "Comment"> + <start-regex>\{-</start-regex> + <end-regex>-\}</end-regex> + </block-comment> + + <syntax-item _name = "Pragma" style = "Preprocessor"> + <start-regex>\{-#</start-regex> + <end-regex>#-\}</end-regex> + </syntax-item> + + <pattern-item _name = "Data Type or Constructor" style = "Data Type"> + <regex>\b[A-Z][0-9a-zA-Z._]*('|#)*</regex> + </pattern-item> + + <pattern-item _name = "Keysymbols" style = "Keyword"> + <regex>::|->|<-|=>|=|\||\\|@|~|\.\.</regex> + </pattern-item> +<!-- + <pattern-item _name = "Operators" style = "Operators"> + <regex>[:!#$%&*+./>=<?@\\^|~\-]+</regex> + </pattern-item> + + <keyword-list _name="Keysymbols" style = "Keyword"> + <keyword>::</keyword> + <keyword>-></keyword> + <keyword><-</keyword> + <keyword>=></keyword> + <keyword>=</keyword> + <keyword>|</keyword>` + <keyword>\</keyword> + <keyword>@</keyword> + <keyword>~</keyword> + <keyword>..</keyword> + </keyword-list> +--> + <string _name = "String" style = "String" end-at-line-end = "true"> + <start-regex>"</start-regex> + <end-regex>"</end-regex> + </string> + + <string _name = "Character Constant" style = "String" end-at-line-end = "true"> + <start-regex>[^A-Za-z0-9]'</start-regex> + <end-regex>'</end-regex> + </string> + + <pattern-item _name = "Decimal" style = "Decimal"> + <regex>\b[0-9]\b</regex> + </pattern-item> + + <pattern-item _name = "Floating Point Number" style = "Floating point"> + <regex>\b([0-9]+.[0-9]+([eE][+-]?[0-9])?|[0-9][eE][+-]?[0-9])</regex> + </pattern-item> + + <pattern-item _name = "Octal Number" style = "Base-N Integer"> + <regex>\b[oO][0-7]+\b</regex> + </pattern-item> + + <pattern-item _name = "Hex Number" style = "Base-N Integer"> + <regex>\b0[xX][0-9a-fA-F]+\b</regex> + </pattern-item> + + <keyword-list _name = "Keywords" style = "Keyword" case-sensitive="true"> + <keyword>as</keyword> + <keyword>case</keyword> + <keyword>class</keyword> + <keyword>data</keyword> + <keyword>deriving</keyword> + <keyword>do</keyword> + <keyword>else</keyword> + <keyword>forall</keyword> <!-- GHC extension --> + <keyword>hiding</keyword> + <keyword>if</keyword> + <keyword>import</keyword> + <keyword>in</keyword> + <keyword>infix</keyword> + <keyword>infixl</keyword> + <keyword>infixr</keyword> + <keyword>instance</keyword> + <keyword>let</keyword> + <keyword>module</keyword> + <keyword>newtype</keyword> + <keyword>of</keyword> + <keyword>qualified</keyword> + <keyword>then</keyword> + <keyword>where</keyword> + <keyword>with</keyword> <!-- GHC extension --> + </keyword-list> + + <keyword-list _name = "Preprocessor Definitions" style = "Preprocessor" case-sensitive="true" + match-empty-string-at-beginning = "false" + match-empty-string-at-end = "true" + beginning-regex = "^[ \t]*#[ \t]*"> + <keyword>if</keyword> + <keyword>ifdef</keyword> + <keyword>ifndef</keyword> + <keyword>else</keyword> + <keyword>elif</keyword> + <keyword>define</keyword> + <keyword>endif</keyword> + <keyword>undef</keyword> + <keyword>error</keyword> + </keyword-list> + +</language> } |
From: Andy S. <And...@co...> - 2010-05-23 23:51:24
|
diffing dir... Sun May 23 18:33:58 EDT 2010 Matthias Reisner <mat...@go...> * Make sourceview demo compilable again. Ignore-this: 2d6d3ec8f1af2370d53149f6d1f7e718 { hunk ./demo/sourceview/SourceViewTest.hs 13 - lm <- sourceLanguagesManagerNew - langM <- sourceLanguagesManagerGetLanguageFromMimeType lm "text/x-haskell" + lm <- sourceLanguageManagerNew + langM <- sourceLanguageManagerGetLanguage lm "haskell" hunk ./demo/sourceview/SourceViewTest.hs 18 - langDirs <- sourceLanguagesManagerGetLangFilesDirs lm + langDirs <- sourceLanguageManagerGetSearchPath lm hunk ./demo/sourceview/SourceViewTest.hs 20 - ++unlines langDirs) + ++unlines langDirs) hunk ./demo/sourceview/SourceViewTest.hs 30 - sourceBufferSetHighlight buffer True + sourceBufferSetHighlightSyntax buffer True } |
From: Axel S. <si...@co...> - 2010-05-23 15:53:35
|
diffing dir... Sun May 23 11:46:18 EDT 2010 Axe...@in... * Remove Windows specific mutex operations. Ignore-this: d49fe17f4a03bb66cb2880cebb3be71d { hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 22 - * Also g_static_mutex_lock and g_static_mutex_unlock cause problems ghci - * on windows so using a Win32 critical section instead hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 29 -#if defined( WIN32 ) -#include <windows.h> -#endif - hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 31 -#if defined( WIN32 ) -static int mutex_initialised = 0; -static CRITICAL_SECTION gtk2hs_finalizer_mutex; -#else hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 32 -#endif hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 52 -#if defined( WIN32 ) - if (!mutex_initialised) { - InitializeCriticalSection( >k2hs_finalizer_mutex ); - mutex_initialised = 1; - } - EnterCriticalSection( >k2hs_finalizer_mutex ); -#else hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 53 -#endif hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 79 -#if defined( WIN32 ) - LeaveCriticalSection( >k2hs_finalizer_mutex ); -#else hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 80 -#endif hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 87 -#if defined( WIN32 ) - if (!mutex_initialised) { - InitializeCriticalSection( >k2hs_finalizer_mutex ); - mutex_initialised = 1; - } - EnterCriticalSection( >k2hs_finalizer_mutex ); -#else hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 88 -#endif hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 100 -#if defined( WIN32 ) - LeaveCriticalSection( >k2hs_finalizer_mutex ); -#else hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.c 101 -#endif } |
From: Axel S. <si...@co...> - 2010-05-23 15:53:31
|
diffing dir... Sun May 23 11:44:40 EDT 2010 Axe...@in... * Add mutex functions to Gtk and remove the funky threaded intialisation function. Ignore-this: 6685e05dc9081551762a792194517370 { hunk ./gtk/Graphics/UI/Gtk/General/General.chs 40 - + threadsEnter, + threadsLeave, + [_$_] hunk ./gtk/Graphics/UI/Gtk/General/General.chs 103 +unsafeInitGUIForThreadedRTS = initGUI + hunk ./gtk/Graphics/UI/Gtk/General/General.chs 122 -initGUI :: IO [String] -initGUI = do - name <- getProgName - when (rtsSupportsBoundThreads && name /= "<interactive>") $ fail $ "\n" ++ - "initGUI: Gtk+ is single threaded and so cannot safely be used from\n" ++ - "multiple Haskell threads when using GHC's threaded RTS. You can\n" ++ - "avoid this error by relinking your program without using the\n" ++ - "'-threaded' flag. If you have to use the threaded RTS and are\n" ++ - "absolutely sure that you only ever call Gtk+ from a single OS\n" ++ - "thread then you can use the function: unsafeInitGUIForThreadedRTS\n" - - unsafeInitGUIForThreadedRTS - -{-# NOINLINE unsafeInitGUIForThreadedRTS #-} --- | Same as initGUI except that it prints no warning when used with GHC's --- threaded RTS. hunk ./gtk/Graphics/UI/Gtk/General/General.chs 123 --- If you want to use Gtk2Hs and the threaded RTS then it is your obligation --- to ensure that all calls to Gtk+ happen on a single OS thread. --- If you want to make calls to Gtk2Hs functions from a Haskell thread other --- than the one that calls this functions and 'mainGUI' then you will have to --- \'post\' your GUI actions to the main GUI thread. You can do this using --- 'postGUISync' or 'postGUIAsync'. +-- * If you want to use Gtk2Hs and in a multi-threaded application then it is your obligation +-- to ensure that all calls to Gtk+ happen on a single OS thread. +-- If you want to make calls to Gtk2Hs functions from a Haskell thread other +-- than the one that calls this functions and 'mainGUI' then you will have to +-- \'post\' your GUI actions to the main GUI thread. You can do this using +-- 'postGUISync' or 'postGUIAsync'. See also 'threadsEnter'. hunk ./gtk/Graphics/UI/Gtk/General/General.chs 130 -unsafeInitGUIForThreadedRTS :: IO [String] -unsafeInitGUIForThreadedRTS = do +initGUI :: IO [String] +initGUI = do hunk ./gtk/Graphics/UI/Gtk/General/General.chs 133 + threadsEnter hunk ./gtk/Graphics/UI/Gtk/General/General.chs 176 +-- | Acquired the global Gtk lock. +-- +-- * During normal operation, this lock is held by the thread from which all +-- interaction with Gtk is performed. When calling 'mainGUI', the thread will +-- release this global lock before it waits for user interaction. During this +-- time it is, in principle, possible to use a different OS thread (any other +-- Haskell thread that is bound to the Gtk OS thread will be blocked anyway) +-- to interact with Gtk by explicitly acquiring the lock, calling Gtk functions +-- and releasing the lock. However, the Gtk functions that are called from this +-- different thread may not trigger any calls to the OS since this will +-- lead to a crash on Windows (the Win32 API can only be used from a single +-- thread). Since it is very hard to tell which function only interacts on +-- Gtk data structures and which function call actual OS functions, it +-- is best not to use this feature at all. A better way to perform updates +-- in the background is to spawn a Haskell thread and to perform the update +-- to Gtk widgets using 'postGUIAsync' or 'postGUISync'. These will execute +-- their arguments from the main loop, that is, from the OS thread of Gtk, +-- thereby ensuring that any Gtk and OS function can be called. +-- +{#fun unsafe gdk_threads_enter as threadsEnter {} -> `()' #} + +-- | Release the global Gtk lock. +-- +-- * The use of this function is not recommended. See 'threadsEnter'. +-- +{#fun unsafe gdk_threads_leave as threadsLeave {} -> `()' #} + } |
From: Axel S. <si...@co...> - 2010-05-23 15:53:27
|
diffing dir... Sat May 22 18:12:39 EDT 2010 Axe...@in... * Make -xc default for all C Preprocessors on all platforms. hunk ./tools/gtk2hs-buildtools.cabal 109 - if os(darwin) - cpp-options: -D_C2HS_CPP_IS_GCC - else - if arch(openbsd) - cpp-options: -D_C2HS_CPP_LANG_SINGLE - else - cpp-options: + -- this seems to be the best option for all CPPs across different OSs + cpp-options: -D_C2HS_CPP_LANG_SINGLE |
From: Axel S. <si...@co...> - 2010-05-23 15:53:25
|
diffing dir... Sat May 22 18:05:36 EDT 2010 Axe...@in... * Remove excess after #endif. hunk ./gtk/Graphics/UI/Gtk/General/hsgthread.h 12 -#endif HSGTHREAD_H +#endif |
From: Axel S. <si...@co...> - 2010-05-23 15:53:22
|
diffing dir... Sat May 22 17:41:30 EDT 2010 Axe...@in... * Fix the way c2hs handles file paths. { hunk ./tools/c2hs/base/general/FNameOps.hs 31 -module FNameOps (basename, dirname, stripDirname, suffix, stripSuffix, addPath) +module FNameOps (basename, dirname, stripDirname, suffix, stripSuffix, addPath, + splitSearchPath) hunk ./tools/c2hs/base/general/FNameOps.hs 35 +import System.FilePath + hunk ./tools/c2hs/base/general/FNameOps.hs 42 -basename = stripSuffix . stripDirname [_$_] +basename = takeBaseName [_$_] hunk ./tools/c2hs/base/general/FNameOps.hs 49 -dirname fname = let - slashPoss = [pos | ('/', pos) <- zip fname [0..]] - in - take (last' (-1) slashPoss + 1) fname +dirname = takeDirectory hunk ./tools/c2hs/base/general/FNameOps.hs 56 -stripDirname fname = let - slashPoss = [pos | ('/', pos) <- zip fname [0..]] - in - drop (last' (-1) slashPoss + 1) fname +stripDirname = takeFileName hunk ./tools/c2hs/base/general/FNameOps.hs 63 -suffix fname = let - dotPoss = [pos | ('.', pos) <- zip fname [0..]] - in - drop (last' (length fname) dotPoss) fname +suffix = takeExtension hunk ./tools/c2hs/base/general/FNameOps.hs 70 -stripSuffix fname = let - dotPoss = [pos | ('.', pos) <- zip fname [0..]] - in - take (last' (length fname) dotPoss) fname +stripSuffix = dropExtension hunk ./tools/c2hs/base/general/FNameOps.hs 78 -addPath "" file = file -addPath path file = path ++ (if last path == '/' then "" else "/") ++ file - +addPath = (</>) hunk ./tools/c2hs/base/general/FNameOps.hs 80 --- auxilliary functions --- -------------------- hunk ./tools/c2hs/base/general/FNameOps.hs 81 --- last' x [] = x --- last' x [y1, ..., yn] = yn --- -last' :: a -> [a] -> a -last' = foldl (flip const) hunk ./tools/c2hs/toplevel/Main.hs 151 -import FNameOps (suffix, basename, dirname, stripSuffix, addPath) +import FNameOps (suffix, basename, dirname, stripSuffix, addPath, + splitSearchPath) hunk ./tools/c2hs/toplevel/Main.hs 494 - let fp = makePath str "" + let fp = splitSearchPath str hunk ./tools/c2hs/toplevel/Main.hs 496 - where - makePath ('\\':r:em) path = makePath em (path ++ ['\\',r]) - makePath (' ':rem) path = makePath rem path - makePath (':':rem) "" = makePath rem "" - makePath (':':rem) path = path : makePath rem "" - makePath ('/':':':rem) path = path : makePath rem "" - makePath (r:emain) path = makePath emain (path ++ [r]) - makePath "" "" = [] - makePath "" path = [path] hunk ./tools/gtk2hs-buildtools.cabal 54 - process, directory, array, containers, pretty, haskell98 + process, directory, array, containers, pretty, + haskell98, filepath } |
From: Andy S. <And...@co...> - 2010-05-22 15:47:35
|
diffing dir... Sat May 22 11:46:06 EDT 2010 Andy Stewart <laz...@gm...> * Add contributors to AUTHORS. Ignore-this: a6510cff5dd6f647c68ddf9de367dc9e { hunk ./AUTHORS 8 +(current developer) hunk ./AUTHORS 60 +Matt Arsenault <ar...@rp...> +Hamish Mackenzie <ham...@go...> } |
From: Andy S. <And...@co...> - 2010-05-22 15:31:44
|
diffing dir... Sat May 22 11:30:31 EDT 2010 Andy Stewart <laz...@gm...> * Delete gtk2hs.spec.in Ignore-this: 4a71e7ec43cd8709ad196ffe8269f29f rmfile ./gtk2hs.spec.in |
From: Andy S. <And...@co...> - 2010-05-22 15:31:41
|
diffing dir... Sat May 22 09:05:11 EDT 2010 Jens Petersen <pet...@ha...> * remove old gtk2hs.spec.in file Ignore-this: d32b91a7623554c5adcceb61c7f098c0 This was the original spec file used to generate gtk2hs rpms - it was inherited by Fedora and maybe other rpm distros. Removing since it has been maintained for a long time. hunk ./gtk2hs.spec.in 1 -# RPM spec file for Gtk2HS -*-rpm-spec-*- -# -# Copyright [2001..2002] Manuel M T Chakravarty <ch...@cs...> -# Copyright 2002, 2003, 2004 Jens-Ulrik Holger Petersen <pet...@ha...> - -%define ghc_version 6.2.2 -%define ghcver ghc622 -%define old_suffix ghc%{ghc_version} -%define mozver 37:1.7.3 - -Summary: A Haskell GUI library based on the Gtk+ GUI toolkit -Name: gtk2hs -Version: @VERSION@ -Release: 0.%(date +%%Y%%m%%d) -Epoch: 0 -License: LGPL -Group: Development/Libraries -Source: gtk2hs-%{version}.tar.gz -URL: http://gtk2hs.sourceforge.net/ -BuildRoot: /var/tmp/gtk2hs-%{version}-root -BuildRequires: ghc = %{ghc_version}, %{_bindir}/hsc2hs, haddock -BuildRequires: gtk2-devel, gtksourceview-devel, libglade2-devel, GConf2-devel, mozilla-devel = %{mozver} - -%description -A Gtk+ binding for the functional language Haskell featuring -automatic memory management, unicode support, and wide -coverage of widgets up to Gtk+ 2.2 as well as some 2.4 widgets -such as the new file chooser dialog. - -%package -n gtk2hs-%{ghcver} -Summary: A Haskell GUI library based on the Gtk+ GUI toolkit -Group: Development/Languages/Haskell -Requires: ghc = %{ghc_version}, gtk2hs-glib-%{ghcver} = %{version}-%{release} -Requires: gtk2-devel -Requires(post,preun): %{_bindir}/ghc-pkg-%{ghc_version} -Conflicts: %{name}-%{old_suffix} - -%description -n gtk2hs-%{ghcver} -A Gtk+ binding for the functional language Haskell featuring -automatic memory management, unicode support, and wide -coverage of widgets up to Gtk+ 2.2 as well as some 2.4 widgets -such as the new file chooser dialog. - -This package contains the libraries compiled for ghc-%{ghc_version}. - -%package doc -Summary: Haskell Gtk+ GUI library documentation -Group: Development/Languages/Haskell - -%description doc -A Gtk+ binding for the functional language Haskell featuring -automatic memory management, unicode support, and wide -coverage of widgets up to Gtk+ 2.2 as well as some 2.4 widgets -such as the new file chooser dialog. - -This package contains the gtk2hs documentation. - -%package gconf-%{ghcver} -Summary: Haskell binding for GConf -Group: Development/Languages/Haskell -Requires: ghc = %{ghc_version} -Requires: gtk2hs-%{ghcver} = %{version}-%{release}, GConf-devel -Requires(post,preun): %{_bindir}/ghc-pkg-%{ghc_version} -Conflicts: %{name}-gconf-%{old_suffix} - -%description gconf-%{ghcver} -A GConf binding for gtk2hs. - -This package is compiled for ghc-%{ghc_version}. - -%package glade-%{ghcver} -Summary: Haskell binding of glade for gtk2hs. -Group: Development/Languages/Haskell -Requires: ghc = %{ghc_version} -Requires: libglade2-devel -Requires(post,preun): %{_bindir}/ghc-pkg-%{ghc_version} -Conflicts: %{name}-glade-%{old_suffix} - -%description glade-%{ghcver} -A Glade2 binding for gtk2hs. - -This package is compiled for ghc-%{ghc_version}. - -%package glib-%{ghcver} -Summary: Haskell binding for glib -Group: Development/Languages/Haskell -Requires: ghc = %{ghc_version} -Requires: glib-devel -Requires(post,preun): %{_bindir}/ghc-pkg-%{ghc_version} - -%description glib-%{ghcver} -A glib binding for gtk2hs. - -%package mozembed-%{ghcver} -Summary: Haskell binding for gtkembedmoz -Group: Development/Languages/Haskell -Requires: ghc = %{ghc_version} -Requires: gtk2hs-%{ghcver} = %{version}-%{release}, mozilla-devel = %{mozver} -Requires(post,preun): %{_bindir}/ghc-pkg-%{ghc_version} - -%description mozembed-%{ghcver} -A GtkEmbedMoz binding for gtk2hs. - -%package sourceview-%{ghcver} -Summary: Haskell binding for gtksourceview -Group: Development/Languages/Haskell -Requires: ghc = %{ghc_version} -Requires: gtk2hs-%{ghcver} = %{version}-%{release}, gtksourceview-devel -Requires(post,preun): %{_bindir}/ghc-pkg-%{ghc_version} -Conflicts: %{name}-sourceview-%{old_suffix} - -%description sourceview-%{ghcver} -A GtkSourceView binding for gtk2hs. - -This package is compiled for ghc-%{ghc_version}. - -# the debuginfo subpackage is currently empty anyway, so don't generate it -%define debug_package %{nil} -%define __spec_install_post /usr/lib/rpm/brp-compress - -%define ghclibdir %{_libdir}/ghc-%{ghc_version} -%define gtk2hsdir %{ghclibdir}/gtk2hs - -%prep -%setup -q - -%build -./configure --with-hc=ghc-%{ghc_version} --with-hcflags="-O" --enable-docs --without-pkgreg --prefix=%{_prefix} --libdir=%{ghclibdir} - -LANG=C make all - -%install -rm -rf %{buildroot} -make DESTDIR=%{buildroot} install - -%clean -rm -rf %{buildroot} - -%define ghcpkg_inst env pkglibdir=%{gtk2hsdir} ghc-pkg-%{ghc_version} -u -g -i - -%post -n gtk2hs-%{ghcver} -%{ghcpkg_inst} %{gtk2hsdir}/gtk.pkg -%{ghcpkg_inst} %{gtk2hsdir}/mogul.pkg - -%post gconf-%{ghcver} -%{ghcpkg_inst} %{gtk2hsdir}/gconf.pkg - -%post glade-%{ghcver} -%{ghcpkg_inst} %{gtk2hsdir}/glade.pkg - -%post glib-%{ghcver} -%{ghcpkg_inst} %{gtk2hsdir}/glib.pkg - -%post mozembed-%{ghcver} -%{ghcpkg_inst} %{gtk2hsdir}/mozembed.pkg - -%post sourceview-%{ghcver} -%{ghcpkg_inst} %{gtk2hsdir}/sourceview.pkg - -%preun -n gtk2hs-%{ghcver} -if [ "$1" = 0 ]; then - rm -f %{gtk2hsdir}/{HSgtk,HSmogul}.o - ghc-pkg-%{ghc_version} -r mogul || : - ghc-pkg-%{ghc_version} -r gtk || : -fi - -%preun gconf-%{ghcver} -if [ "$1" = 0 ]; then - rm -f %{gtk2hsdir}/HSgconf.o - ghc-pkg-%{ghc_version} -r gconf || : -fi - -%preun glade-%{ghcver} -if [ "$1" = 0 ]; then - rm -f %{gtk2hsdir}/HSglade.o - ghc-pkg-%{ghc_version} -r glade || : -fi - -%preun glib-%{ghcver} -if [ "$1" = 0 ]; then - rm -f %{gtk2hsdir}/HSglib.o - ghc-pkg-%{ghc_version} -r glib || : -fi - -%preun mozembed-%{ghcver} -if [ "$1" = 0 ]; then - rm -f %{gtk2hsdir}/HSmozembed.o - ghc-pkg-%{ghc_version} -r mozembed || : -fi - -%preun sourceview-%{ghcver} -if [ "$1" = 0 ]; then - rm -f %{gtk2hsdir}/HSsourceview.o - ghc-pkg-%{ghc_version} -r sourceview || : -fi - -%files -n gtk2hs-%{ghcver} -%defattr(-,root,root) [_$_] -%dir %{gtk2hsdir} -%{gtk2hsdir}/gtk.pkg -%{gtk2hsdir}/mogul.pkg -%{gtk2hsdir}/libHSgtk.a -%{gtk2hsdir}/libHSmogul.a -%dir %{gtk2hsdir}/imports -%{gtk2hsdir}/imports/gtk -%{gtk2hsdir}/imports/mogul -%doc ChangeLog TODO AUTHORS COPYING.LIB - -%files doc -%defattr(-,root,root) [_$_] -%{_defaultdocdir}/gtk2hs - -%files gconf-%{ghcver} -%defattr(-,root,root) [_$_] -%dir %{gtk2hsdir} -%{gtk2hsdir}/gconf.pkg -%{gtk2hsdir}/libHSgconf.a -%dir %{gtk2hsdir}/imports -%{gtk2hsdir}/imports/gconf - -%files glade-%{ghcver} -%defattr(-,root,root) [_$_] -%dir %{gtk2hsdir} -%{gtk2hsdir}/glade.pkg -%{gtk2hsdir}/libHSglade.a -%dir %{gtk2hsdir}/imports -%{gtk2hsdir}/imports/glade - -%files glib-%{ghcver} -%defattr(-,root,root) [_$_] -%dir %{gtk2hsdir} -%{gtk2hsdir}/glib.pkg -%{gtk2hsdir}/libHSglib.a -%dir %{gtk2hsdir}/imports -%{gtk2hsdir}/imports/glib - -%files mozembed-%{ghcver} -%defattr(-,root,root) [_$_] -%dir %{gtk2hsdir} -%{gtk2hsdir}/mozembed.pkg -%{gtk2hsdir}/libHSmozembed.a -%dir %{gtk2hsdir}/imports -%{gtk2hsdir}/imports/mozembed - -%files sourceview-%{ghcver} -%defattr(-,root,root) [_$_] -%dir %{gtk2hsdir} -%{gtk2hsdir}/sourceview.pkg -%{gtk2hsdir}/libHSsourceview.a -%dir %{gtk2hsdir}/imports -%{gtk2hsdir}/imports/sourceview - -%changelog -* Thu Aug 19 2004 Jens Petersen <pet...@ha...> -- use suffix -ghc621 instead of -ghc6.2.1 and conflict with old packages -- buildrequire ghc-doc and gtk2hs-doc-ghc621 requires ghc-doc -- move docs and demo files to %{_defaultdocdir}/gtk2hs - -* Mon Aug 16 2004 Jens Petersen <pet...@ha...> -- update to 0.9.6 - -* Thu Jul 22 2004 Jens Petersen <pet...@ha...> -- split sourceview and glade into separate subpackages -- require -devel packages rather than lib pkg for gtk2, gtksourceview, - and libglade2 - -* Wed Mar 24 2004 Jens Petersen <pet...@ha...> -- enable gtksourceview and glade configure options -- use mkdir -p instead of mkdirhier -- update file locations in %%post and %%preun scripts -- buildrequire libglade2-devel - -* Tue Nov 11 2003 Jens Petersen <pet...@ha...> -- use %%c2hs instead of "--with c2hs" to configure c2hs program -- clean demo to avoid binary files in docs dir - -* Mon Nov 3 2003 Jens Petersen <pet...@ha...> -- add sourceview package to %%post and %%preun -- install gtksourceview haskell.lang language-spec - -* Thu Jul 31 2003 Jens Petersen <pet...@ha...> -- build with ghc-6.0.1 -- put demo dir in docs dir rather than individual source files - -* Thu Jul 10 2003 Jens Petersen <pet...@ha...> -- build with ghc-6.0 -- name ghc subpackage "ghc%%{ghc_version}" - -* Wed Jun 18 2003 Jens Petersen <pet...@ha...> -- require and buildrequire %{_bindir}/ghc-%%{ghc_version} - -* Wed May 21 2003 Jens Petersen <pet...@ha...> -- add -g option to ghc-pkg -u so that ghci object gets generated -- delete them when uninstalling -- build and include mogul documentation - -* Thu May 15 2003 Jens Petersen <pet...@ha...> -- use new DESTDIR make variable, so no longer need to fix config files in post -- remove buildroot before install -- build and include gtk docs - -* Fri Jan 10 2003 Jens Petersen <pet...@ha...> -- made into .spec.in file -- let configure set the version -- update description -- introduce --with-c2hs rpmbuild option -- use perl to remove buildroot traces from package conf files -- simplify ghc-pkg update commands - -* Tue Dec 17 2002 Jens Petersen <pet...@ha...> -- latest cvs with ghc 5.04.2 - -* Thu Sep 26 2002 Jens Petersen -- build with ghc-5.04.1 - -* Fri Aug 2 2002 Jens Petersen -- only include demo source in doc dir - -* Fri Jul 26 2002 Jens Petersen -- build with ghc-5.04 -- cvs update - -* Wed Jul 10 2002 Jens Petersen -- my current branch - -* Wed May 1 2002 Jens Petersen -- patch TreeViewColumn.chs to make it usable - -* Tue Apr 23 2002 Jens Petersen -- 0.9.0 -- update gtk2 and mogul ghc-pkg entries on upgrade - -* Fri Apr 12 2002 Jens Petersen -- adapt for gtk2hs -- fix mk files for buildroot install -- post and postun scriptlets for pkg config - -* Tue Mar 12 2002 Manuel Chakravarty -- require a specific Haskell compiler (namely, the one for which the packages [_$_] - was compiled) - -* Sat Feb 17 2001 Manuel Chakravarty -- derived from C->Haskell's .spec file |
From: Andy S. <And...@co...> - 2010-05-22 15:10:53
|
diffing dir... Sat May 22 11:09:20 EDT 2010 Andy Stewart <laz...@gm...> * Adjust INSTALL Ignore-this: 39c7bee3ab02926c402703a7e807ded1 { hunk ./INSTALL 5 -Gtk2hs is a set of Haskell packages wrapping the GTK GUI stack: +Gtk2hs is a set of Haskell packages wrapping the GTK+ GUI stack: hunk ./INSTALL 7 -* gtk (GUI toolkit) -* cairo (graphics library) -* svgcairo (Cairo SVG loader) -* pango (text rendering) -* glade (libglade UI loader) -* glib (GLib2 library) -* gio (VFS library) -* gtkglext (Gtk+ OpenGL extension) -* gtksourceview2 (source code editor) -* gconf (GConf2 configuration system) -* gstreamer (media codec library) -* vte (terminal emulator) -* webkit (WebKit rendering engine) - -Also gtk2hs-buildtools and the soegtk library are provided. +* tools (Tools to build gtk2hs) +* glib (GLib2 library) +* gio (VFS library) +* cairo (Vector graphics library) +* pango (Unicode text rendering) +* gtk (GTK+ GUI toolkit) +* gconf (GConf2 configuration system) +* glade (libglade UI loader) +* gstreamer (Media codec library) +* gtkglext (Gtk+ OpenGL extension) +* gtksourceview2 (Source code editor) +* svgcairo (Cairo SVG loader) +* vte (Terminal emulator) +* webkit (WebKit rendering engine) +* soegtk (Graphics library for book "The Haskell School of Expression") hunk ./INSTALL 24 -* gnomevfs (replaced by gio) -* mozembed (replaced by webkit) +* gnomevfs (replaced by gio) +* mozembed (replaced by webkit) +* sourceview (replaced by gtksourceview2) hunk ./INSTALL 30 -ghc-6.12.2 has a runtime issue that can cause gtk2hs apps to crash, -so better to avoid it. +ghc-6.12.2 has a runtime issue that can cause gtk2hs apps to crash +(http://hackage.haskell.org/trac/ghc/ticket/4038), so better to avoid it. hunk ./INSTALL 33 -These instruuctions are about building Gtk2Hs from source. If you would rather +These instructions are about building Gtk2Hs from source. If you would rather hunk ./INSTALL 99 -Alteratively, you can uninstall by unregistering the packages with ghc-pkg +Alternatively, you can uninstall by unregistering the packages with ghc-pkg hunk ./INSTALL 102 -# for pkg in webkit vte svgcairo soegtk gtksourceview2 gtkglext gstreamer glade gconf gtk pango cairo gio glib gtk2hs-buildtools ; \ +# for pkg in webkit vte svgcairo soegtk gtksourceview2 gtkglext gstreamer glade gconf gtk pango cairo gio glib tools ; \ } |