1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
using System;
using Gtk;
using Mono.Unix;
namespace Tomboy.FixedWidth
{
class FixedWidthMenuItem : CheckMenuItem
{
NoteAddin Addin;
bool event_freeze;
public FixedWidthMenuItem (NoteAddin addin)
: base ("<span font_family='monospace'>" +
Catalog.GetString ("_Fixed Width") +
"</span>")
{
((Label) Child).UseUnderline = true;
((Label) Child).UseMarkup = true;
Addin = addin;
Addin.Window.TextMenu.Shown += MenuShown;
ShowAll();
}
protected void MenuShown (object sender, EventArgs e)
{
event_freeze = true;
Active = Addin.Buffer.IsActiveTag ("monospace");
event_freeze = false;
}
protected override void OnActivated ()
{
if (!event_freeze)
Addin.Buffer.ToggleActiveTag ("monospace");
base.OnActivated();
}
protected override void OnDestroyed ()
{
if (Addin.HasWindow)
Addin.Window.TextMenu.Shown -= MenuShown;
base.OnDestroyed();
}
}
}
|