~ubuntu-branches/ubuntu/natty/smuxi/natty

« back to all changes in this revision

Viewing changes to src/Frontend-GNOME-IRC/IrcGroupChatView.cs

  • Committer: Bazaar Package Importer
  • Author(s): Mirco Bauer
  • Date: 2010-01-11 22:47:12 UTC
  • mto: (4.2.5 sid) (1.1.4 upstream) (15.1.1 sid)
  • mto: This revision was merged to the branch mainline in revision 13.
  • Revision ID: james.westby@ubuntu.com-20100111224712-cdvx3vondz2g08vg
ImportĀ upstreamĀ versionĀ 0.7

Show diffs side-by-side

added added

removed removed

Lines of Context:
41
41
        private static readonly log4net.ILog _Logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
42
42
#endif
43
43
        private static readonly string       _LibraryTextDomain = "smuxi-frontend-gnome-irc";
44
 
        //private IrcGroupChatModel  _IrcGroupChatModel; 
45
44
        private IrcProtocolManager _IrcProtocolManager;
46
 
        
 
45
 
47
46
        public IrcGroupChatView(GroupChatModel groupChat) : base(groupChat)
48
47
        {
49
48
            Trace.Call(groupChat);
50
 
            
51
 
            //_IrcGroupChatModel = ircGroupChat;
 
49
 
52
50
            _IrcProtocolManager = (IrcProtocolManager) groupChat.ProtocolManager;
53
51
            
54
52
            if (PersonMenu != null) {
89
87
                Gtk.ImageMenuItem query_item = new Gtk.ImageMenuItem(_("Query"));
90
88
                query_item.Activated += new EventHandler(_OnUserListMenuQueryActivated);
91
89
                PersonMenu.Append(query_item);
92
 
                
 
90
 
93
91
                Gtk.ImageMenuItem whois_item = new Gtk.ImageMenuItem(_("Whois"));
94
92
                whois_item.Activated += _OnUserListMenuWhoisActivated;
95
93
                PersonMenu.Append(whois_item);
 
94
 
 
95
                Gtk.Menu ctcp_menu = new Gtk.Menu();
 
96
                Gtk.MenuItem ctcp_item = new Gtk.MenuItem(_("CTCP"));
 
97
                ctcp_item.Submenu = ctcp_menu;
 
98
 
 
99
                Gtk.MenuItem ctcp_ping_item = new Gtk.MenuItem(_("Ping"));
 
100
                ctcp_ping_item.Activated += _OnUserListMenuCtcpPingActivated;
 
101
                ctcp_menu.Append(ctcp_ping_item);
 
102
 
 
103
                Gtk.MenuItem ctcp_version_item = new Gtk.MenuItem(_("Version"));
 
104
                ctcp_version_item.Activated += _OnUserListMenuCtcpVersionActivated;
 
105
                ctcp_menu.Append(ctcp_version_item);
 
106
 
 
107
                Gtk.MenuItem ctcp_time_item = new Gtk.MenuItem(_("Time"));
 
108
                ctcp_time_item.Activated += _OnUserListMenuCtcpTimeActivated;
 
109
                ctcp_menu.Append(ctcp_time_item);
 
110
 
 
111
                Gtk.MenuItem ctcp_finger_item = new Gtk.MenuItem(_("Finger"));
 
112
                ctcp_finger_item.Activated += _OnUserListMenuCtcpFingerActivated;
 
113
                ctcp_menu.Append(ctcp_finger_item);
 
114
 
 
115
                ctcp_menu.ShowAll();
 
116
                PersonMenu.Append(ctcp_item);
96
117
            }
97
118
            
98
119
            if (PersonTreeView != null) {
110
131
                PersonTreeView.MoveColumnAfter(IdentityNameColumn, column);
111
132
            }
112
133
        }
113
 
        
114
 
        public override void Close()
115
 
        {
116
 
            Trace.Call();
117
 
            
118
 
            base.Close();
119
 
            
120
 
            _IrcProtocolManager.CommandPart(new CommandModel(Frontend.FrontendManager,
121
 
                                                      ChatModel,
122
 
                                                      ChatModel.ID));
123
 
        }
124
 
        
 
134
 
125
135
        private void _RenderIrcGroupPersonMode(Gtk.TreeViewColumn column,
126
136
                                               Gtk.CellRenderer cellr,
127
137
                                               Gtk.TreeModel model, Gtk.TreeIter iter)
341
351
                );
342
352
            }
343
353
        }
 
354
 
 
355
        private void _OnUserListMenuCtcpPingActivated(object sender, EventArgs e)
 
356
        {
 
357
            Trace.Call(sender, e);
 
358
 
 
359
            IList<PersonModel> persons = GetSelectedPersons();
 
360
            if (persons == null) {
 
361
                return;
 
362
            }
 
363
 
 
364
            foreach (PersonModel person in persons) {
 
365
                _IrcProtocolManager.CommandPing(
 
366
                    new CommandModel(
 
367
                        Frontend.FrontendManager,
 
368
                        ChatModel,
 
369
                        person.ID
 
370
                    )
 
371
                );
 
372
            }
 
373
        }
 
374
 
 
375
        private void _OnUserListMenuCtcpVersionActivated(object sender, EventArgs e)
 
376
        {
 
377
            Trace.Call(sender, e);
 
378
 
 
379
            IList<PersonModel> persons = GetSelectedPersons();
 
380
            if (persons == null) {
 
381
                return;
 
382
            }
 
383
 
 
384
            foreach (PersonModel person in persons) {
 
385
                _IrcProtocolManager.CommandVersion(
 
386
                    new CommandModel(
 
387
                        Frontend.FrontendManager,
 
388
                        ChatModel,
 
389
                        person.ID
 
390
                    )
 
391
                );
 
392
            }
 
393
        }
 
394
 
 
395
        private void _OnUserListMenuCtcpTimeActivated(object sender, EventArgs e)
 
396
        {
 
397
            Trace.Call(sender, e);
 
398
 
 
399
            IList<PersonModel> persons = GetSelectedPersons();
 
400
            if (persons == null) {
 
401
                return;
 
402
            }
 
403
 
 
404
            foreach (PersonModel person in persons) {
 
405
                _IrcProtocolManager.CommandTime(
 
406
                    new CommandModel(
 
407
                        Frontend.FrontendManager,
 
408
                        ChatModel,
 
409
                        person.ID
 
410
                    )
 
411
                );
 
412
            }
 
413
        }
 
414
 
 
415
        private void _OnUserListMenuCtcpFingerActivated(object sender, EventArgs e)
 
416
        {
 
417
            Trace.Call(sender, e);
 
418
 
 
419
            IList<PersonModel> persons = GetSelectedPersons();
 
420
            if (persons == null) {
 
421
                return;
 
422
            }
 
423
 
 
424
            foreach (PersonModel person in persons) {
 
425
                _IrcProtocolManager.CommandFinger(
 
426
                    new CommandModel(
 
427
                        Frontend.FrontendManager,
 
428
                        ChatModel,
 
429
                        person.ID
 
430
                    )
 
431
                );
 
432
            }
 
433
        }
344
434
        
345
435
        private void _OnUserListMenuWhoisActivated(object sender, EventArgs e)
346
436
        {