Changeset 8283a1fef45544ed5f4088fa129168872ebe2bc8


Ignore:
Timestamp:
21/03/10 19:19:15 (3 years ago)
Author:
Matias De la Puente <mfpuente.ar@…>
Children:
63e85bdc294f960ed78c8cb40b44f2b506383dd8
Parents:
e6770c41d1a4c661796f7774b12ae7b45531611c
git-committer:
Matias De la Puente <mfpuente.ar@…> (21/03/10 19:19:15)
Message:

Add close document page action

Location:
libi4uc
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • libi4uc/i4ucdocumentpagepresenter.vala

    r8136fe2 r8283a1f  
    4848                _view.selected.connect (on_selected); 
    4949                _view.content_changed.connect (on_content_changed); 
     50                _view.close_clicked.connect (on_close_clicked); 
    5051        } 
    5152         
     
    9394                _view.tab_mark = true; 
    9495        } 
     96         
     97        private void on_close_clicked () 
     98        { 
     99                if (_view.tab_mark) 
     100                { 
     101                        var response = _view.show_close_message (); 
     102                         
     103                        if (response == Gtk.ResponseType.CANCEL) 
     104                                return; 
     105                         
     106                        if (response == Gtk.ResponseType.YES) 
     107                                save (); 
     108                } 
     109                this.remove_document (); 
     110        } 
    95111} 
  • libi4uc/i4ucdocumentpageview.vala

    r8136fe2 r8283a1f  
    6767                message.destroy (); 
    6868        } 
     69         
     70        public int show_close_message () 
     71        { 
     72                var message = new MessageDialog (null, DialogFlags.MODAL, MessageType.WARNING, ButtonsType.NONE, _("Do you want to save the file <<%s>>?"), this.tab_title); 
     73                message.add_button (STOCK_CANCEL, ResponseType.CANCEL); 
     74                message.add_button (STOCK_NO, ResponseType.NO); 
     75                message.add_button (STOCK_YES, ResponseType.YES); 
     76                message.set_default_response (ResponseType.YES); 
     77                var response = message.run (); 
     78                message.destroy (); 
     79                return response; 
     80        } 
    6981} 
  • libi4uc/i4ucdocumentpageviewiface.vala

    r8136fe2 r8283a1f  
    3535        public abstract int show_save_dialog (string folder_uri, out string document_uri); 
    3636        public abstract void show_error_message (string error_message); 
     37        public abstract int show_close_message (); 
    3738} 
  • libi4uc/i4ucdocumentspresenter.vala

    r8136fe2 r8283a1f  
    5858        } 
    5959         
     60        private void on_remove_page_presenter (DocumentPagePresenter page_presenter) 
     61        { 
     62                _page_view_factory.remove_page (page_presenter.view); 
     63                _page_presenters.remove (page_presenter); 
     64        } 
     65         
    6066        private void on_new_clicked () 
    6167        { 
     
    7379                page_presenter.is_new = true; 
    7480                page_presenter.selected.connect (on_page_presenter_selected); 
     81                page_presenter.remove_document.connect (on_remove_page_presenter); 
    7582                _page_presenters.add (page_presenter); 
    7683                 
Note: See TracChangeset for help on using the changeset viewer.