public ResxEditorView()
        {
            Controller = new ResourceController ();
            HPaned container = new HPaned ();
            container.Add (Controller.ResourceEditorView);

            AttachListeners ();

            Container = container;
            Container.ShowAll ();
        }
Beispiel #2
0
    public MsdnView()
        : base("Msdn View")
    {
        DefaultSize = new Gdk.Size (1024,1024);

        HPaned hb = new HPaned ();

        Store = new NodeStore (typeof (TreeNode));
        WebControl wc = new WebControl ();
        ScrolledWindow sw = new ScrolledWindow ();
        NodeView view = new NodeView (Store);
        view.HeadersVisible = false;
        view.AppendColumn ("Name", new CellRendererText (), "text", 0);
        sw.WidthRequest = 300;
        InitTree ();
        Add (hb);
        hb.Add (sw);
        hb.Add (wc);
        sw.Add (view);

        // Events
        DeleteEvent += delegate {
            Application.Quit ();
        };

        view.NodeSelection.Changed += delegate {
            TreeNode n = (TreeNode) view.NodeSelection.SelectedNode;
            if (n == null)
                return;

            //
            // Fool msdn's code that tries to detect if it
            // is in a frame
            //
            string html = @"
        <frameset>
          <frame src='" + n.Href + @"?frame=true' />
        </frameset>";

            wc.OpenStream (MsdnClient.BaseUrl, "text/html");
            wc.AppendData (html);
            wc.CloseStream ();

        };
        view.RowExpanded += delegate (object o, RowExpandedArgs args) {
            TreeNode n = (TreeNode) Store.GetNode (args.Path);
            n.PopulateChildrenAsync ();
        };
    }