Changeset 759935945aef4be4bdc69724a7648f25885843f4


Ignore:
Timestamp:
06/08/10 16:53:35 (3 years ago)
Author:
Matias De la Puente <mfpuente.ar@…>
Children:
9d43db94269512bf20ab23e9dd7416fe0c741151
Parents:
34fbc249592793418e7eb907cccee13196e06ed6
git-committer:
Matias De la Puente <mfpuente.ar@…> (06/08/10 16:53:35)
Message:

Documents: Improve message bars

Location:
libi4uc
Files:
2 added
4 edited

Legend:

Unmodified
Added
Removed
  • libi4uc/Makefile.am

    r34fbc24 r7599359  
    6969        i4ucmainwindowview.vala \ 
    7070        i4ucmainwindowviewiface.vala \ 
     71        i4ucmessagebar.vala \ 
     72        i4ucmessagebariface.vala \ 
    7173        i4ucnewprojectdialog.vala \ 
    7274        i4ucpage.vala \ 
  • libi4uc/i4ucdocumentpagepresenter.vala

    r8d57f47 r7599359  
    6161                _view.wrap_mode = settings.documents_wrap_mode; 
    6262                 
    63                 _view.error_bar_visible = false; 
    64                 _view.reload_bar_visible = false; 
    65                 _view.save_bar_visible = false; 
     63                _view.error_message_bar.visible = false; 
     64                _view.error_message_bar.image = TabImage.ERROR; 
     65                _view.reload_message_bar.visible = false; 
     66                _view.reload_message_bar.image = TabImage.WARNING; 
     67                _view.save_message_bar.visible = false; 
     68                _view.save_message_bar.image = TabImage.WARNING; 
    6669                _view.search_bar_view_visible = false; 
    6770                _view.content_modified = false; 
    6871                 
    6972                //connect view signals 
    70                 _view.error_bar_ok_clicked.connect (on_error_bar_ok_clicked); 
    71                 _view.reload_bar_reload_clicked.connect (on_reload_bar_reload_clicked); 
    72                 _view.reload_bar_cancel_clicked.connect (on_reload_bar_cancel_clicked); 
    73                 _view.save_bar_save_clicked.connect (on_save_bar_save_clicked); 
    74                 _view.save_bar_cancel_clicked.connect (on_save_bar_cancel_clicked); 
     73                _view.error_message_bar.ok_clicked.connect (on_error_message_bar_ok_clicked); 
     74                _view.reload_message_bar.ok_clicked.connect (on_reload_message_bar_ok_clicked); 
     75                _view.reload_message_bar.cancel_clicked.connect (on_reload_message_bar_cancel_clicked); 
     76                _view.save_message_bar.ok_clicked.connect (on_save_message_bar_ok_clicked); 
     77                _view.save_message_bar.cancel_clicked.connect (on_save_message_bar_cancel_clicked); 
    7578                _view.close_clicked.connect (on_close_clicked); 
    7679                _view.search_bar_view.close_clicked.connect (() => _view.search_bar_view_visible = false); 
     
    101104                { 
    102105                        _view.content_visible = false; 
    103                         _view.error_bar_primary_text = _("Error trying to open ") + file.get_path (); 
    104                         _view.error_bar_secondary_text = e.message; 
     106                        _view.error_message_bar.primary_text = _("Error trying to open ") + file.get_path (); 
     107                        _view.error_message_bar.secondary_text = e.message; 
    105108                        _view.tab_image = TabImage.ERROR; 
    106                         _view.error_bar_visible = true; 
     109                        _view.error_message_bar.visible = true; 
    107110                } 
    108111        } 
     
    126129                                if (e is IOError.WRONG_ETAG) 
    127130                                { 
    128                                         _view.save_bar_primary_text = _("The document was externally changed"); 
    129                                         _view.save_bar_secondary_text = _("Do you want to save the document?"); 
     131                                        _view.save_message_bar.primary_text = _("The document was externally changed"); 
     132                                        _view.save_message_bar.secondary_text = _("Do you want to save the document?"); 
    130133                                        _prev_tab_image = _view.tab_image; 
    131134                                        _view.tab_image = TabImage.WARNING; 
    132                                         _view.save_bar_visible = true; 
     135                                        _view.save_message_bar.visible = true; 
    133136                                } 
    134137                                else 
    135138                                { 
    136                                         _view.error_bar_primary_text = _("Error trying to save ") + _document.path; 
    137                                         _view.error_bar_secondary_text = e.message; 
     139                                        _view.error_message_bar.primary_text = _("Error trying to save ") + _document.path; 
     140                                        _view.error_message_bar.secondary_text = e.message; 
    138141                                        _prev_tab_image = _view.tab_image; 
    139142                                        _view.tab_image = TabImage.ERROR; 
    140                                         _view.error_bar_visible = true; 
     143                                        _view.error_message_bar.visible = true; 
    141144                                } 
    142145                        } 
     
    167170                        catch (GLib.Error e) 
    168171                        { 
    169                                 _view.error_bar_primary_text = _("Error trying to save as ") + File.new_for_uri (document_uri).get_path (); 
    170                                 _view.error_bar_secondary_text = e.message; 
     172                                _view.error_message_bar.primary_text = _("Error trying to save as ") + File.new_for_uri (document_uri).get_path (); 
     173                                _view.error_message_bar.secondary_text = e.message; 
    171174                                _prev_tab_image = _view.tab_image; 
    172175                                _view.tab_image = TabImage.ERROR; 
    173                                 _view.error_bar_visible = true; 
     176                                _view.error_message_bar.visible = true; 
    174177                        } 
    175178                } 
     
    184187                catch (GLib.Error e) 
    185188                { 
    186                         _view.error_bar_primary_text = _("Error trying to print ") + _document.uri; 
    187                         _view.error_bar_secondary_text = e.message; 
     189                        _view.error_message_bar.primary_text = _("Error trying to print ") + _document.uri; 
     190                        _view.error_message_bar.secondary_text = e.message; 
    188191                        _prev_tab_image = _view.tab_image; 
    189192                        _view.tab_image = TabImage.ERROR; 
    190                         _view.error_bar_visible = true; 
     193                        _view.error_message_bar.visible = true; 
    191194                } 
    192195        } 
     
    227230        } 
    228231         
    229         private void on_error_bar_ok_clicked () 
     232        private void on_error_message_bar_ok_clicked () 
    230233        { 
    231234                //Error produced trying to open a document 
     
    233236                        this.remove_document (); 
    234237                _view.tab_image = _prev_tab_image; 
    235                 _view.error_bar_visible = false; 
    236                 _view.grab_focus (); 
    237         } 
    238          
    239         private void on_reload_bar_reload_clicked () 
    240         { 
    241                 _view.tab_image = _prev_tab_image; 
    242                 _view.reload_bar_visible = false; 
     238                _view.error_message_bar.visible = false; 
     239                _view.grab_focus (); 
     240        } 
     241         
     242        private void on_reload_message_bar_ok_clicked () 
     243        { 
     244                _view.tab_image = _prev_tab_image; 
     245                _view.reload_message_bar.visible = false; 
    243246                open (_document.uri); 
    244247                _view.grab_focus (); 
    245248        } 
    246249         
    247         private void on_reload_bar_cancel_clicked () 
    248         { 
    249                 _view.tab_image = _prev_tab_image; 
    250                 _view.reload_bar_visible = false; 
     250        private void on_reload_message_bar_cancel_clicked () 
     251        { 
     252                _view.tab_image = _prev_tab_image; 
     253                _view.reload_message_bar.visible = false; 
    251254                _externally_modified_adviced = true; 
    252255                _view.grab_focus (); 
    253256        } 
    254257         
    255         private void on_save_bar_save_clicked () 
    256         { 
    257                 _view.tab_image = _prev_tab_image; 
    258                 _view.save_bar_visible = false; 
     258        private void on_save_message_bar_ok_clicked () 
     259        { 
     260                _view.tab_image = _prev_tab_image; 
     261                _view.save_message_bar.visible = false; 
    259262                save (true); 
    260263                _view.grab_focus (); 
    261264        } 
    262265         
    263         private void on_save_bar_cancel_clicked () 
    264         { 
    265                 _view.tab_image = _prev_tab_image; 
    266                 _view.save_bar_visible = false; 
     266        private void on_save_message_bar_cancel_clicked () 
     267        { 
     268                _view.tab_image = _prev_tab_image; 
     269                _view.save_message_bar.visible = false; 
    267270                _view.grab_focus (); 
    268271        } 
     
    283286        private void on_focused_in () 
    284287        { 
    285                 if (_view.reload_bar_visible || _externally_modified_adviced) 
     288                if (_view.reload_message_bar.visible || _externally_modified_adviced) 
    286289                        return; 
    287290                 
     
    289292                        return; 
    290293                 
    291                 _view.reload_bar_primary_text = _("The file %s was externally modified").printf (_document.path); 
    292                 _view.reload_bar_secondary_text = _("Do you want to reload the file?"); 
     294                _view.reload_message_bar.primary_text = _("The file %s was externally modified").printf (_document.path); 
     295                _view.reload_message_bar.secondary_text = _("Do you want to reload the file?"); 
    293296                _prev_tab_image = _view.tab_image; 
    294297                _view.tab_image = TabImage.WARNING; 
    295                 _view.reload_bar_visible = true; 
     298                _view.reload_message_bar.visible = true; 
    296299        } 
    297300         
  • libi4uc/i4ucdocumentpageview.vala

    r9c00fa2 r7599359  
    2323public class I4uc.DocumentPageView : Page, DocumentPageViewIface 
    2424{ 
    25         //Error bar 
    26         private InfoBar _error_bar = new InfoBar (); 
    27         private Label _error_bar_primary_label = new Label (""); 
    28         private Label _error_bar_secondary_label = new Label (""); 
    29          
    30         //Reload bar 
    31         private InfoBar _reload_bar = new InfoBar (); 
    32         private Label _reload_bar_primary_label = new Label (""); 
    33         private Label _reload_bar_secondary_label = new Label (""); 
    34          
    35         //Save bar 
    36         private InfoBar _save_bar = new InfoBar (); 
    37         private Label _save_bar_primary_label = new Label (""); 
    38         private Label _save_bar_secondary_label = new Label (""); 
     25        private MessageBar _error_message_bar = new MessageBar (); 
     26        private MessageBar _reload_message_bar = new MessageBar (); 
     27        private MessageBar _save_message_bar = new MessageBar (); 
    3928         
    4029        //Search and Replace bar 
     
    140129        } 
    141130         
    142         //Implementation of error bar properties 
    143         public bool error_bar_visible 
    144         { 
    145                 set { _error_bar.visible = value; } 
    146                 get { return _error_bar.visible; } 
    147         } 
    148          
    149         public string error_bar_primary_text 
    150         { 
    151                 set { _error_bar_primary_label.label = "<b>" + value + "</b>"; } 
    152                 get { return _error_bar_primary_label.label; } 
    153         } 
    154          
    155         public string error_bar_secondary_text 
    156         { 
    157                 set { _error_bar_secondary_label.label = "<small>" + value + "</small>"; } 
    158                 get { return _error_bar_secondary_label.label; } 
    159         } 
    160          
    161         //Implementation of reload bar properties 
    162         public bool reload_bar_visible 
    163         { 
    164                 set { _reload_bar.visible = value; } 
    165                 get { return _reload_bar.visible; } 
    166         } 
    167          
    168         public string reload_bar_primary_text 
    169         { 
    170                 set { _reload_bar_primary_label.label = "<b>" + value + "</b>"; } 
    171                 get { return _reload_bar_primary_label.label; } 
    172         } 
    173          
    174         public string reload_bar_secondary_text 
    175         { 
    176                 set { _reload_bar_secondary_label.label = "<small>" + value + "</small>"; } 
    177                 get { return _reload_bar_secondary_label.label; } 
    178         } 
    179          
    180         //Implementation of save bar properties 
    181         public bool save_bar_visible 
    182         { 
    183                 set { _save_bar.visible = value; } 
    184                 get { return _save_bar.visible; } 
    185         } 
    186          
    187         public string save_bar_primary_text 
    188         { 
    189                 set { _save_bar_primary_label.label = "<b>" + value + "</b>"; } 
    190                 get { return _save_bar_primary_label.label; } 
    191         } 
    192          
    193         public string save_bar_secondary_text 
    194         { 
    195                 set { _save_bar_secondary_label.label = "<small>" + value + "</small>"; } 
    196                 get { return _save_bar_secondary_label.label; } 
    197         } 
     131        public MessageBarIface error_message_bar { get { return _error_message_bar; } } 
     132        public MessageBarIface reload_message_bar { get { return _reload_message_bar; } } 
     133        public MessageBarIface save_message_bar { get { return _save_message_bar; } } 
    198134         
    199135        public SearchBarViewIface search_bar_view { get { return _search_bar_view; } } 
     
    232168                scrolled_window.set_policy (PolicyType.AUTOMATIC, PolicyType.AUTOMATIC); 
    233169                 
    234                 pack_start (_error_bar, false, false, 2); 
    235                 pack_start (_reload_bar, false, false, 2); 
    236                 pack_start (_save_bar, false, false, 2); 
     170                pack_start (_error_message_bar, false, false, 2); 
     171                pack_start (_reload_message_bar, false, false, 2); 
     172                pack_start (_save_message_bar, false, false, 2); 
    237173                pack_start (_search_bar_view, false, false, 2); 
    238174                pack_start (scrolled_window, true, true, 0); 
    239175                 
    240                 _error_bar.response.connect (() => this.error_bar_ok_clicked ()); 
    241                 _reload_bar.response.connect (on_reload_bar_response); 
    242                 _save_bar.response.connect (on_save_bar_response); 
     176                _error_message_bar.response.connect (() => this.error_message_bar.ok_clicked ()); 
     177                _reload_message_bar.response.connect (on_reload_bar_response); 
     178                _save_message_bar.response.connect (on_save_bar_response); 
    243179                _source_buffer.modified_changed.connect (() => this.content_changed ()); 
    244180                _source_buffer.notify["has-selection"].connect (() => this.selection_changed ()); 
     
    375311        private void create_error_bar () 
    376312        { 
    377                 pack_bar (_error_bar, STOCK_DIALOG_ERROR, _error_bar_primary_label, _error_bar_secondary_label); 
    378                  
    379                 _error_bar.can_focus = false; 
    380                 _error_bar.set_message_type (MessageType.ERROR); 
    381                 _error_bar.add_button (STOCK_OK, ResponseType.OK); 
     313                _error_message_bar.set_message_type (MessageType.ERROR); 
     314                _error_message_bar.add_button (STOCK_OK, ResponseType.OK); 
    382315        } 
    383316         
    384317        private void create_reload_bar () 
    385318        { 
    386                 pack_bar (_reload_bar, STOCK_DIALOG_WARNING, _reload_bar_primary_label, _reload_bar_secondary_label); 
    387                  
    388                 _reload_bar.can_focus = false; 
    389                 _reload_bar.set_message_type (MessageType.WARNING); 
    390                 _reload_bar.add_button (STOCK_REFRESH, ResponseType.OK); 
    391                 _reload_bar.add_button (STOCK_CANCEL, ResponseType.CANCEL); 
     319                _reload_message_bar.set_message_type (MessageType.WARNING); 
     320                _reload_message_bar.add_button (STOCK_REFRESH, ResponseType.OK); 
     321                _reload_message_bar.add_button (STOCK_CANCEL, ResponseType.CANCEL); 
    392322        } 
    393323         
     
    395325        { 
    396326                if (response == ResponseType.OK) 
    397                         this.reload_bar_reload_clicked (); 
     327                        this.reload_message_bar.ok_clicked (); 
    398328                 
    399329                if (response == ResponseType.CANCEL) 
    400                         this.reload_bar_cancel_clicked (); 
     330                        this.reload_message_bar.cancel_clicked (); 
    401331        } 
    402332 
    403333        private void create_save_bar () 
    404334        { 
    405                 pack_bar (_save_bar, STOCK_DIALOG_WARNING, _save_bar_primary_label, _save_bar_secondary_label); 
    406                  
    407                 _save_bar.can_focus = false; 
    408                 _save_bar.set_message_type (MessageType.WARNING); 
    409                 _save_bar.add_button (STOCK_SAVE, ResponseType.OK); 
    410                 _save_bar.add_button (STOCK_CANCEL, ResponseType.CANCEL); 
     335                _save_message_bar.set_message_type (MessageType.WARNING); 
     336                _save_message_bar.add_button (STOCK_SAVE, ResponseType.OK); 
     337                _save_message_bar.add_button (STOCK_CANCEL, ResponseType.CANCEL); 
    411338        } 
    412339         
     
    414341        { 
    415342                if (response == ResponseType.OK) 
    416                         this.save_bar_save_clicked (); 
     343                        this.save_message_bar.ok_clicked (); 
    417344                 
    418345                if (response == ResponseType.CANCEL) 
    419                         this.save_bar_cancel_clicked (); 
    420         } 
    421          
    422         private void pack_bar (InfoBar bar, string icon, Label primary_label, Label secondary_label) 
    423         { 
    424                 var image = new Image.from_stock (icon, IconSize.DIALOG); 
    425                  
    426                 primary_label.set_use_markup (true); 
    427                 primary_label.set_line_wrap (true); 
    428                 primary_label.xalign = 0;                
    429                 secondary_label.set_use_markup (true); 
    430                 secondary_label.set_line_wrap (true); 
    431                 secondary_label.xalign = 0;              
    432                  
    433                 var vbox = new VBox (false, 0); 
    434                 vbox.pack_start (primary_label, true, true, 0); 
    435                 vbox.pack_start (secondary_label, true, true, 0); 
    436                  
    437                 var hbox = bar.get_content_area () as HBox; 
    438                 hbox.pack_start (image, false, false, 0); 
    439                 hbox.pack_start (vbox, true, true, 0); 
     346                        this.save_message_bar.cancel_clicked (); 
    440347        } 
    441348} 
  • libi4uc/i4ucdocumentpageviewiface.vala

    rcb212b4 r7599359  
    3737        public abstract string language_id { set; get; } 
    3838         
    39         //Error bar properties 
    40         public abstract bool error_bar_visible { set; get; } 
    41         public abstract string error_bar_primary_text { set; get; } 
    42         public abstract string error_bar_secondary_text { set; get; } 
    43          
    44         //Reload bar properties 
    45         public abstract bool reload_bar_visible { set; get; } 
    46         public abstract string reload_bar_primary_text { set; get; } 
    47         public abstract string reload_bar_secondary_text { set; get; } 
    48          
    49         //Save bar properties 
    50         public abstract bool save_bar_visible { set; get; } 
    51         public abstract string save_bar_primary_text { set; get; } 
    52         public abstract string save_bar_secondary_text { set; get; } 
     39        public abstract MessageBarIface error_message_bar { get; } 
     40        public abstract MessageBarIface reload_message_bar { get; } 
     41        public abstract MessageBarIface save_message_bar { get; } 
    5342         
    5443        //Search and Replace properties 
     
    6554        public signal void selection_changed (); 
    6655        public signal void focused_in (); 
    67         public signal void error_bar_ok_clicked (); 
    68         public signal void reload_bar_reload_clicked (); 
    69         public signal void reload_bar_cancel_clicked (); 
    70         public signal void save_bar_save_clicked (); 
    71         public signal void save_bar_cancel_clicked (); 
    7256         
    7357        //Methods 
Note: See TracChangeset for help on using the changeset viewer.