コード例 #1
0
        private void SetInputInfo(bool isEditable)
        {
            if (m_metadata.IOSpec.Input.Count > 0)
            {
                //set columns in input and output views
                Gtk.NodeStore inputStore = new Gtk.NodeStore(typeof(IOItemNode));

                Gtk.CellRendererText textRenderer = new Gtk.CellRendererText();

                //inputs
                this.inputView.AppendColumn("Input", textRenderer, "text", 0);
                this.inputView.AppendColumn(CreateInputMappingColumnWithComboBox(inputStore, "Mapped to"));
                this.inputView.AppendColumn("Type", textRenderer, "text", 2);

                //prepare input and output store
                foreach (IOItem item in m_metadata.IOSpec.Input.Values)
                {
                    inputStore.AddNode(new IOItemNode(item));
                }

                inputView.NodeStore = inputStore;

                //disables/enables the controls
                inputView.Sensitive = isEditable;

                inputView.HoverSelection         = true;
                inputView.NodeSelection.Changed += SelectionHandleChanged;
            }
            else
            {
                inputView.Visible = false;
            }
        }
コード例 #2
0
 public NodeView(NodeStore store) : base(IntPtr.Zero)
 {
     IntPtr[]     names = { GLib.Marshaller.StringToPtrGStrdup("model") };
     GLib.Value[] vals  = { new GLib.Value(store) };
     CreateNativeObject(names, vals, 0);
     this.store = store;
 }
コード例 #3
0
ファイル: ListStoreMapping.cs プロジェクト: langpavel/LPS-old
 public ListStoreMapping()
 {
     store_types = new List<GType>();
     callbacks = new List<GetStoreValueCallback>();
     store_types.Add((GType)typeof(DataRow));
     ColumnsStore = new NodeStore(typeof(ConfigurableColumn));
 }
コード例 #4
0
 private void ReloadKeyListView()
 {
     mKeyCollection = new Gtk.NodeStore(typeof(KeyNode));
     try {
         foreach (var key in mAgent.GetAllKeys())
         {
             mKeyCollection.AddNode(new KeyNode(key));
         }
         mKeyNodeView.NodeStore = mKeyCollection;
         //mKeyNodeView.ShowAll ();
         //mKeyNodeView.ColumnsAutosize ();
         // TODO show different error messages for specific exceptions
         // should also do something besides MessageBox so that this control
         // can be integrated into other applications
     } catch (Exception) {
         // TODO - fix strings
         var messageDialog =
             new Gtk.MessageDialog(null, Gtk.DialogFlags.Modal,
                                   Gtk.MessageType.Error, Gtk.ButtonsType.Close,
                                   "failed" /*Strings.errListKeysFailed*/);
         messageDialog.Run();
         messageDialog.Destroy();
     }
     UpdateVisibility();
     UpdateButtonStates();
 }
コード例 #5
0
ファイル: LessonOverviewView.cs プロジェクト: mru00/vocab
        public LessonOverviewView(Gtk.NodeStore store)
        {
            this.Build();

            nodeview3.NodeStore = store;

//			TreeViewColumn cl = new TreeViewColumn("Lesson", new Gtk.CellRendererSpin (), "text", 0);
//			cl.Resizable = true;
//			cl.Reorderable = true;

            CellRenderer r = new Gtk.CellRendererText();
            //r.Mode = CellRendererMode.Editable;
            TreeViewColumn cd = new TreeViewColumn("Description", r, "text", 1);

            cd.Resizable   = true;
            cd.Reorderable = true;



            TreeViewColumn cn = new TreeViewColumn("Number of Entries", new Gtk.CellRendererText(), "text", 2);

            cn.Resizable   = true;
            cn.Reorderable = true;

            //nodeview3.AppendColumn (cl);
            nodeview3.AppendColumn(cd);
            nodeview3.AppendColumn(cn);


            CanEditRemove = false;
            ShowAll();
        }
コード例 #6
0
ファイル: NodeView.cs プロジェクト: ystk/debian-gtk-sharp2
		public NodeView (NodeStore store) : base (IntPtr.Zero)
		{
			string[] names = { "model" };
			GLib.Value[] vals =  { new GLib.Value (store) };
			CreateNativeObject (names, vals);
			vals [0].Dispose ();
			this.store = store;
		}
コード例 #7
0
        public void NativeCallback(IntPtr tree_column, IntPtr cell, IntPtr tree_model, IntPtr iter_ptr, IntPtr data)
        {
            TreeViewColumn col      = (Gtk.TreeViewColumn)GLib.Object.GetObject(tree_column);
            CellRenderer   renderer = (Gtk.CellRenderer)GLib.Object.GetObject(cell);
            NodeStore      store    = (NodeStore)GLib.Object.GetObject(tree_model);
            TreeIter       iter     = TreeIter.New(iter_ptr);

            managed(col, renderer, store.GetNode(iter));
        }
コード例 #8
0
ファイル: Browser.cs プロジェクト: egon-sim/egon_gui
        public Gtk.NodeStore generateStore()
        {
            Gtk.NodeStore store = new Gtk.NodeStore(typeof(SimEntry));

            foreach (Simulator s in this.server.listSims()) {
                store.AddNode(new SimEntry(s));
            }
            return store;
        }
コード例 #9
0
 internal ProjectView()
 {
     componentNodeStore = new NodeStore (typeof (GenericNode));
     componentNodeView = new NodeView (componentNodeStore);
     componentNodeView.AppendColumn ("Project Tree", new CellRendererText (),"text", 0);
     componentScrolledWindow = new ScrolledWindow ();
     componentScrolledWindow.Add (componentNodeView);
     componentNodeView.NodeSelection.Mode = SelectionMode.Single;
     componentNodeView.NodeSelection.Changed += new EventHandler (OnSelectionChanged);
 }
コード例 #10
0
ファイル: FolderListGui.cs プロジェクト: revenz/iMeta
        public FolderListGui(string Title, string Description, string[] Folders)
        {
            this.Build ();

            this.Folders = Folders;
            this.label12.Text = Description;
            this.Title = Title;

            NodeStore store = new NodeStore(typeof(StringNode));
            foreach(string folder in Folders)
                store.AddNode(new StringNode(){ Value = folder});
            nodeview1.NodeStore = store;
            nodeview1.AppendColumn("Folder", new Gtk.CellRendererText (), "text", 0);

            buttonOk.Clicked += delegate {
                // get the folders
                List<string> nodes = new List<string>();
                var enumerator = store.GetEnumerator();
                while(enumerator.MoveNext())
                {
                    string folder = ((StringNode)enumerator.Current).Value;
                    if(folder.EndsWith(System.IO.Path.DirectorySeparatorChar.ToString()))
                        folder = folder.Substring(0, folder.Length - 1);
                    nodes.Add(folder);
                }
                this.Folders = nodes.ToArray();
                this.DialogResult = ResponseType.Ok;
                this.Destroy();
            };
            buttonCancel.Clicked += delegate{
                this.DialogResult = ResponseType.Cancel;
                this.Destroy();
            };

            btnAdd.Clicked += delegate {
                using(Gtk.FileChooserDialog fc = new Gtk.FileChooserDialog("Choose the Folder to scan.",
                          	                    						    this,
                                                                            FileChooserAction.SelectFolder,
                                                                            "Cancel", ResponseType.Cancel,
                                                     				 	    "Open", ResponseType.Accept)){
                    fc.LocalOnly = false;
                    if (fc.Run() == (int)ResponseType.Accept)
                    {
                        store.AddNode(new StringNode(){ Value = fc.Filename});
                    }
                    //Don't forget to call Destroy() or the FileChooserDialog window won't get closed.
                    fc.Destroy();
                }
            };

            btnRemove.Clicked += delegate {
                foreach(var node in nodeview1.NodeSelection.SelectedNodes)
                    store.RemoveNode(node);
            };
        }
コード例 #11
0
 private Gtk.NodeStore getStore(List <Stavka> lista)
 {
     if (store == null)
     {
         store = new Gtk.NodeStore(typeof(StavkePrimkeTreeNode));
         foreach (Stavka s in lista)
         {
             store.AddNode(new StavkePrimkeTreeNode(s));
         }
     }
     return(store);
 }
コード例 #12
0
ファイル: ActorNode.cs プロジェクト: revenz/iMeta
        public static KeyValuePair<string, string>[] GetActors(NodeStore Store)
        {
            List<KeyValuePair<string, string>> actors = new List<KeyValuePair<string,string>>();

            var enumerator = Store.GetEnumerator();
            while(enumerator.MoveNext())
            {
                var actor = (ActorNode)enumerator.Current;
                if(!String.IsNullOrWhiteSpace(actor.Name.Trim()))
                    actors.Add(new KeyValuePair<string, string>(actor.Name, actor.Role));
            }
            return actors.ToArray();
        }
コード例 #13
0
 private Gtk.NodeStore getStore()
 {
     if (store == null)
     {
         store = new Gtk.NodeStore(typeof(PrijevoznikTreeNode));
         List <Prijevoznik> listaPrijevoznici = Prijevoznik.DohvatiPrijevoznike();
         foreach (Prijevoznik p in listaPrijevoznici)
         {
             store.AddNode(new PrijevoznikTreeNode(p));
         }
     }
     return(store);
 }
コード例 #14
0
 private Gtk.NodeStore getStore()
 {
     if (store == null)
     {
         store = new Gtk.NodeStore(typeof(ZaposlenikTreeNode));
         List <Zaposlenik> listaZaposlenici = Zaposlenik.DohvatiZaposlenike();
         foreach (Zaposlenik z in listaZaposlenici)
         {
             store.AddNode(new ZaposlenikTreeNode(z));
         }
     }
     return(store);
 }
コード例 #15
0
 private Gtk.NodeStore getStore()
 {
     if (store == null)
     {
         store = new Gtk.NodeStore(typeof(PrimkaTreeNode));
         List <Primka> listaPrimki = Primka.DohvatiPrimke();
         foreach (Primka p in listaPrimki)
         {
             store.AddNode(new PrimkaTreeNode(p));
         }
     }
     return(store);
 }
コード例 #16
0
 private Gtk.NodeStore getStore()
 {
     if (store == null)
     {
         store = new Gtk.NodeStore(typeof(OtpremnicaTreeNode));
         List <Otpremnica> listaOtpremnica = Otpremnica.DohvatiOtpremnice();
         foreach (Otpremnica o in listaOtpremnica)
         {
             store.AddNode(new OtpremnicaTreeNode(o));
         }
     }
     return(store);
 }
コード例 #17
0
 private Gtk.NodeStore getStore()
 {
     if (store == null)
     {
         store = new Gtk.NodeStore(typeof(KategorijaTreeNode));
         List <Kategorija> listaKategorije = Kategorija.Dohvati();
         foreach (Kategorija k in listaKategorije)
         {
             store.AddNode(new KategorijaTreeNode(k));
         }
     }
     return(store);
 }
コード例 #18
0
 private Gtk.NodeStore getStore()
 {
     if (store == null)
     {
         store = new Gtk.NodeStore(typeof(ArtiklTreeNode));
         List <Artikl> listaArtikli = Artikl.DohvatiArtikle();
         foreach (Artikl a in listaArtikli)
         {
             store.AddNode(new ArtiklTreeNode(a));
         }
     }
     return(store);
 }
コード例 #19
0
 private Gtk.NodeStore getStore()
 {
     if (store == null)
     {
         store = new Gtk.NodeStore(typeof(DobavljacTreeNode));
         List <Dobavljac> listaDobavljaci = Dobavljac.DohvatiDobavljace();
         foreach (Dobavljac d in listaDobavljaci)
         {
             store.AddNode(new DobavljacTreeNode(d));
         }
     }
     return(store);
 }
コード例 #20
0
        public CellEditor()
        {
            this.Build();
            this.CellStore = new Gtk.NodeStore(typeof(CellNode));

            this.nvCells.AppendColumn("Name", new Gtk.CellRendererText(), "text", 0);
            this.nvCells.NodeStore = this.CellStore;

            Pango.FontDescription font = new Pango.FontDescription();
            font.Family = "Dotum";
            font.Size   = 12;
            font.Weight = Pango.Weight.Bold;
            this.lblName.ModifyFont(font);
        }
コード例 #21
0
        public MainWindow() : base(Gtk.WindowType.Toplevel)
        {
            Build();

            if (Directory.Exists(Configuration.DesignFormatsPath))
            {
                string[] files = Directory.GetFiles(Configuration.DesignFormatsPath, "*.dll");
                foreach (string f in files)
                {
                    Assembly a     = Assembly.LoadFile(f);
                    Type[]   types = a.GetTypes();
                    foreach (Type t in types)
                    {
                        if (t.GetInterface("IDesignFormat") != null)
                        {
                            object[] customAttributes = t.GetCustomAttributes(typeof(DesignFormatAttribute), false);
                            if (customAttributes.Length == 1)
                            {
                                DesignFormatAttribute dfa = (DesignFormatAttribute)customAttributes[0];
                                log.InfoFormat("Loaded design format {0}", dfa.Name);

                                DesignFormat df = new DesignFormat(
                                    dfa.Name,
                                    dfa.Description,
                                    dfa.FileExtensions,
                                    dfa.fileHeader,
                                    (IDesignFormat)Activator.CreateInstance(t));

                                FileManager.AvailableFormats.Add(df);
                            }
                        }
                    }
                }
            }

            pesView.DoubleBuffered = true;
            pesView.AppendColumn("Display", new Gtk.CellRendererPixbuf(), "pixbuf", 0);
            pesView.AppendColumn("Name", new Gtk.CellRendererText(), "text", 1);
            pesView.ShowAll();
            pesView.HeadersVisible  = true;
            pesView.BorderWidth     = 2;
            pesView.EnableGridLines = TreeViewGridLines.Horizontal;
            pesStore = new Gtk.NodeStore(typeof(PesFile));

            index = FileManager.OpenIndexFile(Configuration.IndexFilePath);

            FileManager.RefreshIndexFile(ref index);

            loadDisplay();
        }
コード例 #22
0
        public RenderingQueueWindow(RenderingQueue renderingQueue)
            : base(WindowType.Toplevel)
        {
            this.Build ();

            title_Label.ModifyFont(FontHelpers.ScaleFontSize(title_Label, 1.4));

            // Adding queue event handlers
            mRenderingQueue = renderingQueue;
            mRenderingQueue.QueueProgressMessageReport += HandleRenderingQueueProgressMessageReport;
            mRenderingQueue.ItemAdded += HandleRenderingQueueItemAdded;
            mRenderingQueue.ItemIndexChanged += HandleRenderingQueueItemIndexChanged;
            mRenderingQueue.ItemRemoved += HandleRenderingQueueItemRemoved;
            mRenderingQueue.BeforeItemProcessingStarted += HandleRenderingQueueBeforeItemProcessingStarted;
            mRenderingQueue.AfterItemProcessingFinished += HandleRenderingQueueAfterItemProcessingFinished;
            mRenderingQueue.ThreadStarted += HandleRenderingQueueThreadStarted;
            mRenderingQueue.ThreadStopped += HandleRenderingQueueThreadStopped;
            mRenderingQueue.QueueEmpty += HandleRenderingQueueQueueEmpty;
            mRenderingQueue.ItemRendering += HandleRenderingQueueItemRendering;

            // Creating status icon

            string icon_res;
            if (System.Environment.OSVersion.Platform == PlatformID.Unix)
                icon_res = "CatEye.UI.Gtk.res.svg-inkscape.cateye-small.svg";
            else
            {
                // Windows, I hope.
                icon_res = "CatEye.UI.Gtk.res.png.cateye-small-16x16.png";
            }

            mProcessingStatusIcon = new StatusIcon(Gdk.Pixbuf.LoadFromResource(icon_res));
            mProcessingStatusIcon.Visible = false;	// In Windows status icon appears visible by default
            mProcessingStatusIcon.Activate += HandleProcessingStatusIconActivate;

            // Preparing queue list
            mQueueNodeStore = new NodeStore(typeof(RenderingTaskTreeNode));
            queue_nodeview.NodeStore = mQueueNodeStore;

            queue_nodeview.AppendColumn("Source", new CellRendererText(), "text", 0);
            queue_nodeview.AppendColumn("Destination", new CellRendererText(), "text", 1);

            expander1.Expanded = false;
            queue_GtkLabel.Markup = "<b>Queue (" + mRenderingQueue.Queue.Length + " left)</b>";
        }
コード例 #23
0
        private void LoadLastCampaigns()
        {
            lblState.Text = "Loading...";

            Thread oThread = new Thread(new ThreadStart(delegate() {
                try{
                    nodeviewTable.Hide();

                    int[] ids = api.GetCampaigns();

                    Gtk.NodeStore store = new Gtk.NodeStore(typeof(CampaignTreeNode));
                    foreach (int i in ids)
                    {
                        store.AddNode(new CampaignTreeNode(i, getStatName(i)));
                    }

                    Gtk.NodeView view = new Gtk.NodeView(store);

                    nodeviewTable.NodeStore = view.NodeStore;

                    nodeviewTable.AppendColumn("Id", new Gtk.CellRendererText(), "text", 0);
                    nodeviewTable.AppendColumn("Name", new Gtk.CellRendererText(), "text", 1);

                    lblTableTitle.Text = "Last Campaigns";
                    nodeviewTable.NodeSelection.Changed += new System.EventHandler(OnNodeviewTableChange);

                    nodeviewTable.Show();
                }catch (Exception ex) {
                    MessageDialog msg = new MessageDialog(this, DialogFlags.Modal, MessageType.Error, ButtonsType.Close, ex.Message);
                    msg.Title         = "Error";

                    ResponseType response = (ResponseType)msg.Run();
                    if (response == ResponseType.Close || response == ResponseType.DeleteEvent)
                    {
                        msg.Destroy();
                    }
                }
                lblState.Text = "Ready";
            }));

            oThread.Start();
        }
コード例 #24
0
        public static NodeStore getFicheNodeStoreFromIdOperation(int idOperation)
        {
            NodeStore ficheNodeStore = new NodeStore (typeof(FicheNodeTree));

            ConnectionBdd.open ();
            // On cherche la matière entrante correspondante à l'operation
            string requeteSql = "SELECT id_matiere FROM concerne WHERE id_operation=" + idOperation.ToString () + " AND in_out='in'";
            ConnectionBdd.executeRequeteSql (requeteSql);
            ConnectionBdd.data.Read ();
            int idMatiere = (int)ConnectionBdd.data ["id_matiere"];
            ConnectionBdd.close ();
            // On cherche l'operation qui a produite la matiere entrante
            ConnectionBdd.open ();
            requeteSql = "SELECT id_operation FROM concerne WHERE id_matiere=" + idMatiere + " AND in_out='out'";
            ConnectionBdd.executeRequeteSql (requeteSql);
            ConnectionBdd.data.Read ();
            int idOperationPrecedant = (int)ConnectionBdd.data ["id_operation"];
            ConnectionBdd.close();
            // On récupere les fiches en attente d'une operation
            ConnectionBdd.open();
            requeteSql = "SELECT effectue.id_operation, effectue.horodate, effectue.numero_tracabilite, personne.prenom, personne.nom, operation.libelle_operation, effectue.id_fiche " +
                "FROM effectue " +
                "JOIN personne ON personne.id = effectue.id_personne " +
                "JOIN operation ON effectue.id_operation = operation.id " +
                "WHERE effectue.id_operation >=" + idOperationPrecedant.ToString () + " " +
                "GROUP BY effectue.numero_tracabilite " +
                "HAVING COUNT( * ) =1";
            ConnectionBdd.executeRequeteSql (requeteSql);
            while (ConnectionBdd.data.Read()) {
                ficheNodeStore.AddNode(new FicheNodeTree(
                    (int)ConnectionBdd.data["id_operation"],
                    ConnectionBdd.data["horodate"].ToString(),
                    (String)ConnectionBdd.data["numero_tracabilite"],
                    (String)ConnectionBdd.data["prenom"],
                    (String)ConnectionBdd.data["nom"],
                    (String)ConnectionBdd.data["libelle_operation"],
                    (int)ConnectionBdd.data["id_fiche"]
                ));
            }
            ConnectionBdd.close ();
            return ficheNodeStore;
        }
コード例 #25
0
ファイル: ComponentInfoPanel.cs プロジェクト: thbin/TraceLab
        private void SetIOInfo()
        {
            //set columns in input and output views
            Gtk.NodeStore inputStore  = new Gtk.NodeStore(typeof(IOItemNode));
            Gtk.NodeStore outputStore = new Gtk.NodeStore(typeof(IOItemNode));

            Gtk.CellRendererText textRenderer = new Gtk.CellRendererText();

            //inputs
            TreeViewColumn mappedToColumn = CreateInputMappingColumnWithComboBox(inputStore);

            this.inputView.AppendColumn("Input", textRenderer, "text", 0);
            this.inputView.AppendColumn(mappedToColumn);
            this.inputView.AppendColumn("Type", textRenderer, "text", 2);

            //outputs
            Gtk.CellRendererText editableTextRenderer = new CellRendererText();
            editableTextRenderer.Editable = true;
            editableTextRenderer.Edited  += delegate(object o, EditedArgs args) {
                IOItemNode n = (IOItemNode)outputStore.GetNode(new TreePath(args.Path));
                n.MappedTo = args.NewText;
            };

            this.outputView.AppendColumn("Output", textRenderer, "text", 0);
            this.outputView.AppendColumn("Output as", editableTextRenderer, "text", 1);
            this.outputView.AppendColumn("Type", textRenderer, "text", 2);

            //prepare input and output store
            foreach (IOItem item in m_metadata.IOSpec.Input.Values)
            {
                inputStore.AddNode(new IOItemNode(item));
            }

            foreach (IOItem item in m_metadata.IOSpec.Output.Values)
            {
                outputStore.AddNode(new IOItemNode(item));
            }

            inputView.NodeStore  = inputStore;
            outputView.NodeStore = outputStore;
        }
コード例 #26
0
        private void SetOutputInfo(bool isEditable)
        {
            if (m_metadata.IOSpec.Output.Count > 0)
            {
                //set columns in input and output views
                Gtk.NodeStore outputStore = new Gtk.NodeStore(typeof(IOItemNode));

                Gtk.CellRendererText textRenderer = new Gtk.CellRendererText();

                Gtk.CellRendererText editableTextRenderer = new CellRendererText();
                editableTextRenderer.Editable = isEditable;
                editableTextRenderer.Edited  += delegate(object o, EditedArgs args) {
                    IOItemNode n = (IOItemNode)outputStore.GetNode(new TreePath(args.Path));
                    n.MappedTo = args.NewText;
                    RefreshIOHighlightInExperiment(n.MappedTo);
                };

                this.outputView.AppendColumn("Output", textRenderer, "text", 0);
                this.outputView.AppendColumn("Output as", editableTextRenderer, "text", 1);
                this.outputView.AppendColumn("Type", textRenderer, "text", 2);

                foreach (IOItem item in m_metadata.IOSpec.Output.Values)
                {
                    outputStore.AddNode(new IOItemNode(item));
                }

                outputView.NodeStore = outputStore;

                //disables/enables the controls
                outputView.Sensitive = isEditable;

                outputView.HoverSelection         = true;
                outputView.NodeSelection.Changed += SelectionHandleChanged;
            }
            else
            {
                outputView.Visible = false;
            }
        }
コード例 #27
0
    public void buildHashTable()
    {
        textview7.Buffer.Text = Semantico.erroresSemanticos;
        string typeString = "", lista = "";

        NodeStore store = new Gtk.NodeStore(typeof(MyTreeNode));

        foreach (var item in Semantico.tablaHash)
        {
            switch (item.Value.tipo)
            {
            case TipoNodo.integer:
                typeString = "Int";
                break;

            case TipoNodo.float_number:
                typeString = "Float";
                break;

            case TipoNodo.boolean:
                typeString = "Boolean";
                break;
            }
            lista = "";
            item.Value.lista.ForEach(element =>
            {
                lista += element.ToString() + " ";
            });
            store.AddNode(new MyTreeNode(item.Value.nombre, item.Value.location, lista, typeString, item.Value.valor.ToString()));
        }

        nodeview1.NodeStore = store;
        nodeview1.AppendColumn("Nombre", new Gtk.CellRendererText(), "text", 0);
        nodeview1.AppendColumn("Locación", new Gtk.CellRendererText(), "text", 1);
        nodeview1.AppendColumn("Lineas", new Gtk.CellRendererText(), "text", 2);
        nodeview1.AppendColumn("Tipo", new Gtk.CellRendererText(), "text", 3);
        nodeview1.AppendColumn("Valor", new Gtk.CellRendererText(), "text", 4);
    }
コード例 #28
0
        private void SetIOInfo() 
        {
            //set columns in input and output views
            Gtk.NodeStore inputStore = new Gtk.NodeStore(typeof(IOItemNode));
            Gtk.NodeStore outputStore = new Gtk.NodeStore(typeof(IOItemNode));
            
            Gtk.CellRendererText textRenderer = new Gtk.CellRendererText();

            //inputs
            TreeViewColumn mappedToColumn = CreateInputMappingColumnWithComboBox(inputStore);
            this.inputView.AppendColumn("Input", textRenderer, "text", 0);
            this.inputView.AppendColumn(mappedToColumn);
            this.inputView.AppendColumn("Type", textRenderer, "text", 2);

            //outputs
            Gtk.CellRendererText editableTextRenderer = new CellRendererText();
            editableTextRenderer.Editable = true;
            editableTextRenderer.Edited += delegate(object o, EditedArgs args) {
                IOItemNode n = (IOItemNode)outputStore.GetNode (new TreePath (args.Path));
                n.MappedTo = args.NewText;
            };

            this.outputView.AppendColumn("Output", textRenderer, "text", 0);
            this.outputView.AppendColumn("Output as", editableTextRenderer, "text", 1);
            this.outputView.AppendColumn("Type", textRenderer, "text", 2);
            
            //prepare input and output store
            foreach(IOItem item in m_metadata.IOSpec.Input.Values) {
                inputStore.AddNode(new IOItemNode(item));
            }
            
            foreach(IOItem item in m_metadata.IOSpec.Output.Values) {
                outputStore.AddNode(new IOItemNode(item));
            }
            
            inputView.NodeStore = inputStore;
            outputView.NodeStore = outputStore;
        }
コード例 #29
0
ファイル: MovieEditor.cs プロジェクト: revenz/iMeta
        public MovieEditor(iMetaLibrary.Metadata.MovieMeta Meta)
        {
            this.Build ();
            this.Meta = Meta;
            #region setup the actors datagrid
            store = new NodeStore(typeof(ActorNode));

            CellRendererText nameRender = new CellRendererText(){ Editable = true, };
            nameRender.Edited += delegate(object o, EditedArgs args) {
                // update the text
                ActorNode node = (ActorNode)store.GetNode(new Gtk.TreePath(args.Path));
                node.Name = args.NewText;
            };
            nvActors.AppendColumn("Name", nameRender, "text", 0);
            CellRendererText roleRender = new CellRendererText(){ Editable = true, };
            roleRender.Edited += delegate(object o, EditedArgs args) {
                // update the text
                ActorNode node = (ActorNode)store.GetNode(new Gtk.TreePath(args.Path));
                node.Role = args.NewText;
            };
            nvActors.AppendColumn("Role", roleRender, "text", 1);

            nvActors.NodeStore = store;

            btnActorsRemove.Clicked += delegate
            {
                ActorNode node = nvActors.NodeSelection.SelectedNode as ActorNode;
                if(node != null)
                    store.RemoveNode(node);
            };
            btnActorsAdd.Clicked += delegate {
                var node = new ActorNode();
                store.AddNode(node);
                nvActors.NodeSelection.SelectNode(node);
                int _n = 0;
                var enumerator = store.GetEnumerator();
                while(enumerator.MoveNext()) _n++;
                nvActors.ScrollToCell(new TreePath(new int[] {_n-1}), null, false, 0, 0);
            };
            #endregion

            if(Meta.Actors != null){
                foreach(var actor in Meta.Actors)
                    store.AddNode(new ActorNode() { Name = actor.Key, Role = actor.Value});
            }

            txtTitle.Text = Meta.Title ?? "";
            txtSortTitle.Text = Meta.SortTitle ?? "";
            txtSet.Text = Meta.Set ?? "";
            txtTagline.Text = Meta.TagLine ?? "";
            txtGenres.Text = String.Join(", ", Meta.Genres ?? new string[] {});
            txtDirectors.Text = String.Join(", ", Meta.Directors ?? new string[] {});
            txtWriters.Text = String.Join(", ", Meta.Writers ?? new string[] {});
            txtTrailer.Text = Meta.Trailer ?? "";
            txtImdbId.Text = Meta.Id ?? "";
            txtMpaa.Text = Meta.Mpaa ?? "";
            txtReleaseDate.Text = Meta.ReleaseDate > new DateTime(1850, 1,1) ? Meta.ReleaseDate.ToString("yyyy-MM-dd") : "";
            txtPlot.Buffer.Text = Meta.Plot ?? "";
            numRuntime.Value = Meta.Runtime / 60; // convert seconds to minutes
            ratingwidget.Value = (int)Meta.Rating;

            Poster = GuiHelper.ImageToPixbuf(Meta.LoadThumbnail(290, 1000));

            //ratingwidget.Visible  = false;

            buttonOk.Clicked += delegate {
                Save ();
            };

            eventPoster.ButtonPressEvent +=	delegate{
                BrowseForNewPoster();
            };
        }
コード例 #30
0
ファイル: MainWindow.cs プロジェクト: ncjones/AddressBookDemo
 private NodeStore CreateContactNodeStore()
 {
     var store = new Gtk.NodeStore(typeof(ContactTreeNode));
     foreach (var contact in this.contactService.getAllContacts()) {
         store.AddNode(new ContactTreeNode(contact));
     }
     return store;
 }
コード例 #31
0
ファイル: AreasWindow.cs プロジェクト: omarkhd/gymk
        private void FillNodeView()
        {
            NodeStore store = new NodeStore(typeof (Area));

            AreaModel m = new AreaModel();
            IDataReader reader = m.GetAll();

            Area a = null;
            while(reader.Read())
            {
                a = new Area();
                a.Id = (long) reader["Id"];
                a.Name = (string) reader["Name"];
                store.AddNode(a);
            }

            this.AreasNodeView.NodeStore = store;
            this.AreasNodeView.ShowAll();
        }
コード例 #32
0
ファイル: PacksWindow.cs プロジェクト: omarkhd/gymk
        private void FillNodeView()
        {
            NodeStore store = new NodeStore(typeof(Pack));
            PackModel m = new PackModel();
            IDataReader reader = m.GetAll();
            Pack p = null;
            while(reader.Read())
            {
                p = new Pack();
                p.Id = (long) reader["Id"];
                p.Name = (string) reader["Name"];
                p.Price = (float) reader["Price"];
                p.Membership = (float) reader["Membership"];
                p.Areas = new LinkedList<long>();
                store.AddNode(p);
            }

            this.PacksNodeView.NodeStore = store;
            this.PacksNodeView.ShowAll();
        }
コード例 #33
0
 private void refreshNodeView(List <Stavka> lista)
 {
     this.store = null;
     this.outStavke.NodeStore = getStore(lista);
 }
コード例 #34
0
ファイル: Intercom.cs プロジェクト: peter-gregory/ClockRadio
        private void LoadPhones()
        {
            NodeStore store = new NodeStore(typeof(SipListNode));

            try {
                FileStream file = new FileStream("sip.txt", FileMode.OpenOrCreate);
                StreamReader reader = new StreamReader(file);
                string line = reader.ReadLine();
                while (line != null) {
                    line = reader.ReadLine();
                    string[] parts = line.Split(',');
                    store.AddNode(new SipListNode(parts[0].Trim(), "", parts[1].Trim(), ""));
                }
                reader.Close();
                reader.Dispose();
                file.Close();
                file.Dispose();

            } catch (Exception ex) {
                Console.WriteLine(ex.Source);
                Console.WriteLine(ex.StackTrace);
            }

            nodeSip.NodeStore = store;
            nodeSip.ColumnsAutosize();
        }
コード例 #35
0
ファイル: ProjectDialog.cs プロジェクト: jbowwww/JGL
        /// <summary>
        /// Initializes a new instance of the <see cref="DynamicCodeTests.UI.ProjectPreferencesDialog"/> class.
        /// </summary>
        public ProjectDialog(Window parent, Project project)
        {
            Project = project;

            XML gxml = new XML("CodeWindow.glade", "ProjectDialog", null);
            gxml.Autoconnect(this);
            GtkDialog = nbPreferences.Toplevel as Dialog;
            //			GtkDialog.Reparent(parent as Widget);
            GtkDialog.Modal = GtkDialog.DestroyWithParent = true;

            storeReferencePaths = new NodeStore(typeof(Project.ReferencePathTreeNode));
            nvReferencePaths = new NodeView(storeReferencePaths);
            swReferencePaths.Add(nvReferencePaths);
            nvReferencePaths.AppendColumn("Reference Path", new CellRendererText(), "text", 0);

            Update();
        }
コード例 #36
0
ファイル: SeqConfigDialog.cs プロジェクト: Onkeliroh/DSA
        /// <summary>
        /// Setups the nodeview.
        /// </summary>
        private void SetupNodeView()
        {
            nvSequenceOptionsStore = new NodeStore (typeof(SequenceOperationTreeNode));

            nvSequenceOptions.NodeStore = nvSequenceOptionsStore;
            nvSequenceOptions.AppendColumn (new TreeViewColumn ("Time", new CellRendererText (), "text", 0));
            nvSequenceOptions.AppendColumn (new TreeViewColumn ("Duration", new CellRendererText (), "text", 1));
            nvSequenceOptions.AppendColumn (new TreeViewColumn ("State", new CellRendererText (), "text", 2));

            nvSequenceOptions.ButtonPressEvent += new ButtonPressEventHandler (OnSequenceOptionsButtonPress);
            nvSequenceOptions.KeyPressEvent += new KeyPressEventHandler (OnSequenceOptionsKeyPress);
            nvSequenceOptions.RowActivated += (o, args) => {
                var node = ((o as NodeView).NodeSelection.SelectedNode as SequenceOperationTreeNode);
                ActiveNode = node;
                sbDays.Value = node.SeqOp.Duration.Days;
                sbHours.Value = node.SeqOp.Duration.Hours;
                sbMinutes.Value = node.SeqOp.Duration.Minutes;
                sbSeconds.Value = node.SeqOp.Duration.Seconds;
                sbMilliSec.Value = node.SeqOp.Duration.Milliseconds;
                cbState.Active = (node.SeqOp.State == DPinState.HIGH) ? 0 : 1;

                btnRemoveOperation.Sensitive = true;

                SwitchToApplyBtn ();
            };

            nvSequenceOptions.Show ();
        }
コード例 #37
0
		/// <summary>
		/// Inicializa los controles del panel del asistente.
		/// </summary>
		/// <param name="imagesStore">
		/// El almacén de imagenes creado en el paso anterior, para que las
		/// imagenes sean seleccionables en la vista de previsualización.
		/// </param>
		private void InitializeWidgets(ListStore imagesStore)
		{
			NodeStore store = new NodeStore(typeof(BitmapProcessNode));
			processesView =  new NodeView(store);			
			
			processesView.ShowExpanders = false;
			
			processesView.RulesHint = true;
			
			processesView.NodeSelection.Changed += OnProcessesSelectionChanged;
			
			processesView.AppendColumn("Algoritmo", 
			                           new CellRendererText(),
			                           "text",0);
			
			processesView.AppendColumn("Parámetros",
			                           new CellRendererText(),
			                           "text",1);		
			
			bitmapsProcessSW.Add(processesView);
			
			originIA = new ImageArea();
			processedIA = new ImageArea();

			originIA.ImageMode = ImageAreaMode.Zoom;
			processedIA.ImageMode = ImageAreaMode.Zoom;
					
			originFrame.Add(originIA);
			processedFrame.Add(processedIA);
			
			imagesTV.Model = imagesStore;
			
			imagesTV.AppendColumn("Imagen",new CellRendererText(),"text",1);
			
			imagesTV.Selection.Changed += OnImagesTVSelectionChanged;
		
			LoadDefaults();
			
		}
コード例 #38
0
ファイル: MembersWindow.cs プロジェクト: omarkhd/gymk
        private void FillNodeView(IDataReader reader)
        {
            NodeStore store = new NodeStore(typeof(Client));
            Client c = null;

            while(reader.Read())
            {
                c = new Client();
                c.Id = (long) reader["Id"];
                c.Name = (string) reader["Name"];
                c.Surname = (string) reader["Surname"];
                c.Address = (string) reader["Address"];
                c.PhoneNumber = (string) reader["PhoneNumber"];
                c.Email = (string) reader["Email"];

                store.AddNode(c);
            }

            this.MembersNodeView.NodeStore = store;
            this.MembersNodeView.ShowAll();
        }
コード例 #39
0
		private void InitializeWidgets()
		{
			unassistedProcessBtn.Sensitive = true;
			
			handwritingArea = new RasterHandWritingArea();
			handwritingArea.SmoothingMode = SmoothingMode.AntiAlias;
			handwritingArea.LineStyle = new Pen(Color.Black, 3);
			
			handwritingArea.ButtonPressEvent += 
				new ButtonPressEventHandler(OnHandwritingAreaButtonPress);
			
			unassistedImagePlaceholder.Add(handwritingArea);
			
			segmentationStore = new NodeStore(typeof(SegmentedNode));
		}	
コード例 #40
0
        // END HERZUM BUG FIX: alignment input-output TLAB-255
        private void SetInputInfo(bool isEditable)
        {
            Gdk.Color colorBack;
            if (m_metadata.IOSpec.Input.Count > 0)
            {
                //set columns in input and output views
                Gtk.NodeStore inputStore = new Gtk.NodeStore(typeof(IOItemNode));

                Gtk.CellRendererText textRenderer = new Gtk.CellRendererText();

                // HERZUM SPRINT 4.2: TLAB-226
                // HERZUM SPRINT 5: TLAB-242
                colorBack = new  Gdk.Color(245, 245, 245);
                textRenderer.CellBackgroundGdk = colorBack;
                // END HERZUM SPRINT 5: TLAB-242
                //textRenderer.CellBackground = "grey";
                // END HERZUM SPRINT 4.2: TLAB-226

                //inputs
                // HERZUM BUG FIX: alignment input-output TLAB-255
                //HERZUM SPRINT 5.4 TLAB-241;
                t_Input           = this.inputView.AppendColumn(Convert.ToChar(187) + " Input", textRenderer, "text", 0);
                t_Input.Resizable = true;
                //END HERZUM SPRINT 5.4 TLAB-241
                t_InputMapped           = CreateInputMappingColumnWithComboBox(inputStore, "Mapped to");
                t_InputMapped.Resizable = true;
                inputView.AppendColumn(t_InputMapped);
                t_InputType           = this.inputView.AppendColumn("Type", textRenderer, "text", 2);
                t_InputType.Resizable = true;
                //END HERZUM BUG FIX TLAB-255

                //prepare input and output store
                // HERZUM BUG FIX: alignment input-output TLAB-255
                int currentLengthInput       = 0;
                int currentLengthInputMapped = 0;
                foreach (IOItem item in m_metadata.IOSpec.Input.Values)
                {
                    inputStore.AddNode(new IOItemNode(item));
                    currentLengthInput       = item.IOItemDefinition.Name.Length;
                    currentLengthInputMapped = item.MappedTo.Length;
                    if (currentLengthInput > maxLengthInput)
                    {
                        maxLengthInput = currentLengthInput;
                    }
                    if (currentLengthInputMapped > maxLengthInputMapped)
                    {
                        maxLengthInputMapped = currentLengthInputMapped;
                    }
                }
                // END HERZUM BUG FIX: alignment input-output TLAB-255

                inputView.NodeStore = inputStore;

                //disables/enables the controls
                inputView.Sensitive = isEditable;

                inputView.HoverSelection         = true;
                inputView.NodeSelection.Changed += SelectionHandleChanged;
            }
            else
            {
                inputView.Visible = false;
            }
        }
コード例 #41
0
ファイル: ConfigWindow.cs プロジェクト: omarkhd/gymk
        private void FillNodeView()
        {
            NodeStore store = new NodeStore(typeof(User));
            User u = null;
            UserModel model = new UserModel();
            System.Data.IDataReader reader = model.GetAll();

            while(reader.Read())
            {
                u = new User();
                u.Id = (long) reader["Id"];
                u.Name = (string) reader["Name"];
                u.Alias = (string) reader["Alias"];
                u.Password = (string) reader["Password"];
                u.Active = (bool) reader["Active"];
                u.Admin = (bool) reader["Admin"];

                store.AddNode(u);
            }

            this.UsersNodeView.NodeStore = store;
            this.UsersNodeView.ShowAll();
        }
コード例 #42
0
		protected void InitializeWidgets()
		{
			store = new NodeStore(typeof(SegmentedNode));
			
			// Creamos el NodeView, podría hacerse en el fichero de Glade,
			// aunque alguna razón habría por la que se hizo así.
			treeview=new NodeView(store);
			treeview.RulesHint = true;
			
			treeview.ShowExpanders = true;
			treeview.AppendColumn ("Imagen", 
			                       new CellRendererText (), 
			                       "text", 0);
			
			CellRendererText cellRenderer = new CellRendererText();
			cellRenderer.Xalign = 0.5f;
			treeview.AppendColumn ("Etiqueta", cellRenderer, "text", 1);
			treeview.AppendColumn ("Posición", 
			                       new CellRendererText (), 
			                       "text", 2);
			
			scrolledtree.Add(treeview);
			
			foreach (TreeViewColumn col in treeview) 
			{
				col.Sizing = TreeViewColumnSizing.Autosize;
			}
			
			
			
			// Asignamos el evento para cuando se produzca la selección de un
			// nodo en el árbol.
			treeview.NodeSelection.Changed += OnTreeviewSelectionChanged;
						
			treeview.ButtonPressEvent += 
				new ButtonPressEventHandler(OnTreeviewButtonPress);
			
			imageAreaOriginal = new ImageArea();
			imageAreaOriginal.ImageMode = ImageAreaMode.Zoom;
				
			frameOriginal.Add(imageAreaOriginal);
			
			
			imageAreaNode=new ImageArea();
			imageAreaNode.ImageMode=ImageAreaMode.Zoom;			
			frameNodeActual.Add(imageAreaNode);
			
			learnImageItem.Image = ImageResources.LoadImage("database16");
		}
コード例 #43
0
ファイル: NodeView.cs プロジェクト: nuxleus/gtk-sharp
 public NodeView(NodeStore store)
     : base(store == null ? null : store.Adapter)
 {
     this.store = store;
 }
コード例 #44
0
		/// <summary>
		/// Initializes the child widgets of the widget.
		/// </summary>
		private void InitializeWidgets()
		{
			syntacticalCoverModel = 
				new NodeStore(typeof(SyntacticalCoverNode));
			
			syntacticalCoverTree = new NodeView(syntacticalCoverModel);
			syntacticalCoverTree.RulesHint = true;
			
			syntacticalCoverTree.AppendColumn("Elemento de análisis",
			                                  new CellRendererText(),
			                                  "markup" ,0);
			
			syntacticalCoverTree.RowActivated+= 
				new RowActivatedHandler(OnSyntacticalCoverTreeRowActivated);
			
			syntacticalCoverTree.Selection.Changed +=
				new EventHandler(OnSyntacticalCoverTreeSelectionChanged);
			
			//syntacticalCoverTree.ShowExpanders = false;
			
			syntacticalTreePlaceholder.Add(syntacticalCoverTree);
			
			
			remainingItemsStore = new ListStore(typeof(Gdk.Pixbuf),
			                                    typeof(string),
			                                    typeof(Token));
			remainingItemsIconView.Model = remainingItemsStore;
			
			remainingItemsIconView.PixbufColumn =0;
			remainingItemsIconView.TextColumn = 1;
			
			originalImageArea = new  ImageArea();
			originalImageArea.ImageMode = ImageAreaMode.Zoom;
			
			synImageOriginalPlaceholder.Add(originalImageArea);
			
			originalImageArea.ShowAll();
		}
コード例 #45
0
        private void SetOutputInfo(bool isEditable) 
        {
            if(m_metadata.IOSpec.Output.Count > 0)
            {
                //set columns in input and output views
                Gtk.NodeStore outputStore = new Gtk.NodeStore(typeof(IOItemNode));
                
                Gtk.CellRendererText textRenderer = new Gtk.CellRendererText();

                Gtk.CellRendererText editableTextRenderer = new CellRendererText();
                editableTextRenderer.Editable = isEditable;
                editableTextRenderer.Edited += delegate(object o, EditedArgs args) {
                    IOItemNode n = (IOItemNode)outputStore.GetNode (new TreePath (args.Path));
                    n.MappedTo = args.NewText;
                    RefreshIOHighlightInExperiment(n.MappedTo);
                };
                
                this.outputView.AppendColumn("Output", textRenderer, "text", 0);
                this.outputView.AppendColumn("Output as", editableTextRenderer, "text", 1);
                this.outputView.AppendColumn("Type", textRenderer, "text", 2);

                foreach(IOItem item in m_metadata.IOSpec.Output.Values) 
                {
                    outputStore.AddNode(new IOItemNode(item));
                }

                outputView.NodeStore = outputStore;
                
                //disables/enables the controls
                outputView.Sensitive = isEditable;

                outputView.HoverSelection = true;
                outputView.NodeSelection.Changed += SelectionHandleChanged;
            }
            else
            {
                outputView.Visible = false;
            }
        }
コード例 #46
0
        private void SetInputInfo(bool isEditable) 
        {
            if(m_metadata.IOSpec.Input.Count > 0)
            {
                //set columns in input and output views
                Gtk.NodeStore inputStore = new Gtk.NodeStore(typeof(IOItemNode));

                Gtk.CellRendererText textRenderer = new Gtk.CellRendererText();

                //inputs
                this.inputView.AppendColumn("Input", textRenderer, "text", 0);
                this.inputView.AppendColumn(CreateInputMappingColumnWithComboBox(inputStore, "Mapped to"));
                this.inputView.AppendColumn("Type", textRenderer, "text", 2);

                //prepare input and output store
                foreach(IOItem item in m_metadata.IOSpec.Input.Values) 
                {
                    inputStore.AddNode(new IOItemNode(item));
                }

                inputView.NodeStore = inputStore;

                //disables/enables the controls
                inputView.Sensitive = isEditable;

                inputView.HoverSelection = true;
                inputView.NodeSelection.Changed += SelectionHandleChanged;
            }
            else
            {
                inputView.Visible = false;
            }
        }
コード例 #47
0
 public DependencyNodeStoreManager(Gtk.NodeStore _node_store)
 {
     NodeStore = _node_store;
     nodes     = new Dictionary <int, T> ();
 }
コード例 #48
0
        /// <summary>
        /// Creates the input mapping column with combo box.
        /// TODO improve the input mapping combo box:
        /// 1. it doesn't set values until combo box loses focus within table view confirm change - Edited event is raised only then
        /// 2. there is no indication that the field can be modified - render combo box always, OR show some icon that it can be modified
        /// </summary>
        /// <returns>
        /// The input mapping column with combo box.
        /// </returns>
        /// <param name='inputStore'>
        /// Input store.
        /// </param>
        private TreeViewColumn CreateInputMappingColumnWithComboBox(NodeStore inputStore, string columntTitle)
        {
            Gtk.CellRendererCombo comboRenderer = new Gtk.CellRendererCombo();
            
            comboRenderer.HasEntry = false;
            comboRenderer.Mode = CellRendererMode.Editable;
            comboRenderer.TextColumn = 0;
            comboRenderer.Editable = true;

            ListStore comboBoxStore = new ListStore (typeof(string));
            comboRenderer.Model = comboBoxStore;

            //when user activates combo box, refresh combobox store with available input mapping per node
            comboRenderer.EditingStarted += delegate (object o, EditingStartedArgs args) 
            {
                comboBoxStore.Clear ();
                IOItemNode currentItem = (IOItemNode)inputStore.GetNode (new TreePath (args.Path));
                ExperimentNode currentNode = m_component.ExperimentNode;
                string currentType = currentItem.Type;
                InputMappings availableInputMappingsPerNode = new InputMappings (currentNode.Owner);
                if (currentNode != null && availableInputMappingsPerNode.ContainsMappingsForNode (currentNode)) {
                    foreach (string incomingOutput in availableInputMappingsPerNode [currentNode].Keys) {
                        if (string.Equals (currentType, availableInputMappingsPerNode [currentNode] [incomingOutput])) {
                            comboBoxStore.AppendValues (Mono.Unix.Catalog.GetString (incomingOutput));
                        }
                    }
                }
            };

            //when edition has been completed set current item node with proper mapping
            comboRenderer.Edited += delegate (object o, EditedArgs args) {
                IOItemNode n = (IOItemNode)inputStore.GetNode (new TreePath (args.Path));
                n.MappedTo = args.NewText;
                RefreshIOHighlightInExperiment(n.MappedTo);
            };

            //finally create the column with above combo renderer
            var mappedToColumn = new TreeViewColumn ();
            mappedToColumn.Title = columntTitle;
            mappedToColumn.PackStart (comboRenderer, true);

            //this method sets the text view to current mapping, when combo box is not active
            mappedToColumn.SetCellDataFunc (comboRenderer, delegate (TreeViewColumn tree_column, CellRenderer cell, ITreeNode node) {
                IOItemNode currentItem = (IOItemNode)node;
                comboRenderer.Text = currentItem.MappedTo;
            });

            return mappedToColumn;
        }
コード例 #49
0
ファイル: NodeView.cs プロジェクト: shana/gtk-sharp
 public NodeView(NodeStore store) : base(store == null ? null : store.Adapter)
 {
     this.store = store;
 }
コード例 #50
0
 private void refreshNodeView()
 {
     this.store = null;
     this.nodeview1.NodeStore = getStore();
 }
コード例 #51
0
ファイル: EpisodesEditorGui.cs プロジェクト: revenz/iMeta
        public EpisodesEditorGui(iMetaLibrary.Metadata.TvFileMeta Meta)
        {
            this.Build ();

            this.Meta = Meta;

            this.buttonOk.Clicked += HandleButtonOkhandleClicked;

            string tbnFile = Meta.Filename.Substring(0, Meta.Filename.LastIndexOf(".")+1) + "tbn";
            if (System.IO.File.Exists(tbnFile))
            {
                using(System.Drawing.Image image = System.Drawing.Image.FromFile(tbnFile))
                {
                    imgThumbnail.Pixbuf = GuiHelper.ImageToPixbufIcon(image, 320, 240);
                }
                //UsingTbnFile = true;
            }
            else
            {
                //picThumbnail.Image = Resources.noposter;
            }

            store = new NodeStore(typeof(TvEpisodeNode));

            //List<iMetaLibrary.Metadata.TvEpisodeMeta> episodes = new List<iMetaLibrary.Metadata.TvEpisodeMeta>();
            bool first = true;
            foreach (iMetaLibrary.Metadata.TvEpisodeMeta episode in Meta.Episodes)
            {
                //episodes.Add(episode.Clone());
                iMetaLibrary.Metadata.TvEpisodeMeta epmeta = episode.Clone();
                if(first)
                {
                    episodeEditor.Initialize(epmeta);
                    first = false;
                }
                store.AddNode(new TvEpisodeNode(epmeta));
            }
			nvEpisodeList.NodeStore = store;

            nvEpisodeList.AppendColumn("Episode", new Gtk.CellRendererText (), "text", 0);

            nvEpisodeList.NodeSelection.Changed += delegate(object o, System.EventArgs args) {

                Gtk.NodeSelection selection = (Gtk.NodeSelection) o;
                TvEpisodeNode node = (TvEpisodeNode) selection.SelectedNode;
                // check selection hasnt changed
                if (node == SelectedEpisodeNode)
                    return;
                // check if current data in episode editor is valid
                if (!episodeEditor.IsValid())
                {
                    nvEpisodeList.NodeSelection.SelectNode(SelectedEpisodeNode);
                    return;
                }
                else // if valid saved the data to the meta object
                {
                    episodeEditor.Save();
                    // this reassignment to itself forces the listbox to revalidate it and updates the text in the listbox if change, otherwise it doesnt update
                    //lstEpisodes.Items[SelectedEpisodeIndex] = lstEpisodes.Items[SelectedEpisodeIndex];
                }
                // update selected epsiode index
                SelectedEpisodeNode = node;
                // initialize the newly selected episode data
                episodeEditor.Initialize(node.Meta);
            };
コード例 #52
0
ファイル: ComponentInfoPanel.cs プロジェクト: CoEST/TraceLab
        // END HERZUM BUG FIX: alignment input-output TLAB-255
        private void SetInputInfo(bool isEditable) 
        {
            Gdk.Color colorBack;
            if(m_metadata.IOSpec.Input.Count > 0)
            {
                //set columns in input and output views
                Gtk.NodeStore inputStore = new Gtk.NodeStore(typeof(IOItemNode));

                Gtk.CellRendererText textRenderer = new Gtk.CellRendererText();

                // HERZUM SPRINT 4.2: TLAB-226
                // HERZUM SPRINT 5: TLAB-242
                colorBack = new  Gdk.Color (245, 245, 245);
                textRenderer.CellBackgroundGdk = colorBack;
                // END HERZUM SPRINT 5: TLAB-242
                //textRenderer.CellBackground = "grey";
                // END HERZUM SPRINT 4.2: TLAB-226

                //inputs
                // HERZUM BUG FIX: alignment input-output TLAB-255
                //HERZUM SPRINT 5.4 TLAB-241;
                t_Input = this.inputView.AppendColumn( Convert.ToChar (187) + " Input", textRenderer, "text", 0);
                t_Input.Resizable = true;
                //END HERZUM SPRINT 5.4 TLAB-241
                t_InputMapped=CreateInputMappingColumnWithComboBox (inputStore, "Mapped to");
                t_InputMapped.Resizable = true;
                inputView.AppendColumn(t_InputMapped);
                t_InputType=this.inputView.AppendColumn("Type", textRenderer, "text", 2);
                t_InputType.Resizable = true;
                //END HERZUM BUG FIX TLAB-255

                //prepare input and output store
                // HERZUM BUG FIX: alignment input-output TLAB-255
                int currentLengthInput=0;
                int currentLengthInputMapped=0;
                foreach(IOItem item in m_metadata.IOSpec.Input.Values) 
                {
                    inputStore.AddNode(new IOItemNode(item));
                    currentLengthInput = item.IOItemDefinition.Name.Length;
                    currentLengthInputMapped = item.MappedTo.Length;
                    if (currentLengthInput>maxLengthInput)
                        maxLengthInput = currentLengthInput;
                    if (currentLengthInputMapped > maxLengthInputMapped)
                        maxLengthInputMapped = currentLengthInputMapped;
                }
                // END HERZUM BUG FIX: alignment input-output TLAB-255

                inputView.NodeStore = inputStore;

                //disables/enables the controls
                inputView.Sensitive = isEditable;

                inputView.HoverSelection = true;
                inputView.NodeSelection.Changed += SelectionHandleChanged;
            }
            else
            {
                inputView.Visible = false;
            }
        }
コード例 #53
0
ファイル: ComponentInfoPanel.cs プロジェクト: CoEST/TraceLab
        // END HERZUM BUG FIX: alignment input-output TLAB-255
        private void SetOutputInfo(bool isEditable) 
        {
            if(m_metadata.IOSpec.Output.Count > 0)
            {
                //set columns in input and output views
                Gtk.NodeStore outputStore = new Gtk.NodeStore(typeof(IOItemNode));
                Gtk.CellRendererText textRenderer = new Gtk.CellRendererText();

                Gtk.CellRendererText editableTextRenderer = new CellRendererText();
                editableTextRenderer.Editable = isEditable;
                editableTextRenderer.Edited += delegate(object o, EditedArgs args) {
                    IOItemNode n = (IOItemNode)outputStore.GetNode (new TreePath (args.Path));
                    n.MappedTo = args.NewText;
                    RefreshIOHighlightInExperiment(n.MappedTo);
                };

                // HERZUM SPRINT 4.2: TLAB-226
                //textRenderer.CellBackground = "grey";
                // HERZUM SPRINT 5: TLAB-242
                Gdk.Color colorBack = new  Gdk.Color (245, 245, 245);
                textRenderer.CellBackgroundGdk = colorBack;
                // END HERZUM SPRINT 5: TLAB-242
                // END HERZUM SPRINT 4.2: TLAB-226 

                // HERZUM BUG FIX: alignment input-output TLAB-255
                //HERZUM SPRINT 5.4 TLAB-241
                t_Output = this.outputView.AppendColumn(Convert.ToChar(171) + " Output", textRenderer, "text", 0);
                t_Output.Resizable = true;
                //END HERZUM SPRINT 5.4 TLAB-241
                t_OutputAs=this.outputView.AppendColumn("Output as", editableTextRenderer, "text", 1);
                t_OutputAs.Resizable = true;
                t_OutputType=this.outputView.AppendColumn("Type", textRenderer, "text", 2);
                t_OutputType.Resizable = true;
                // END HERZUM BUG FIX: alignment input-output TLAB-255

                int currentLengthOutput;
                int currentLengthOutputAs;
                foreach(IOItem item in m_metadata.IOSpec.Output.Values) 
                {
                    outputStore.AddNode(new IOItemNode(item));
                    // HERZUM BUG FIX: alignment input-output TLAB-255
                    currentLengthOutput = item.IOItemDefinition.Name.Length;
                    currentLengthOutputAs = item.MappedTo.Length;
                    if (currentLengthOutput>maxLengthOutput)
                        maxLengthOutput = currentLengthOutput;
                    if (currentLengthOutputAs>maxLengthOutputAs)
                        maxLengthOutputAs = currentLengthOutputAs;
                    // END HERZUM BUG FIX: alignment input-output TLAB-255
                }

                outputView.NodeStore = outputStore;
                
                //disables/enables the controls
                outputView.Sensitive = isEditable;

                outputView.HoverSelection = true;
                outputView.NodeSelection.Changed += SelectionHandleChanged;
            }
            else
            {
                outputView.Visible = false;
            }
        }
コード例 #54
0
        // END HERZUM BUG FIX: alignment input-output TLAB-255
        private void SetOutputInfo(bool isEditable)
        {
            if (m_metadata.IOSpec.Output.Count > 0)
            {
                //set columns in input and output views
                Gtk.NodeStore        outputStore  = new Gtk.NodeStore(typeof(IOItemNode));
                Gtk.CellRendererText textRenderer = new Gtk.CellRendererText();

                Gtk.CellRendererText editableTextRenderer = new CellRendererText();
                editableTextRenderer.Editable = isEditable;
                editableTextRenderer.Edited  += delegate(object o, EditedArgs args) {
                    IOItemNode n = (IOItemNode)outputStore.GetNode(new TreePath(args.Path));
                    n.MappedTo = args.NewText;
                    RefreshIOHighlightInExperiment(n.MappedTo);
                };

                // HERZUM SPRINT 4.2: TLAB-226
                //textRenderer.CellBackground = "grey";
                // HERZUM SPRINT 5: TLAB-242
                Gdk.Color colorBack = new  Gdk.Color(245, 245, 245);
                textRenderer.CellBackgroundGdk = colorBack;
                // END HERZUM SPRINT 5: TLAB-242
                // END HERZUM SPRINT 4.2: TLAB-226

                // HERZUM BUG FIX: alignment input-output TLAB-255
                //HERZUM SPRINT 5.4 TLAB-241
                t_Output           = this.outputView.AppendColumn(Convert.ToChar(171) + " Output", textRenderer, "text", 0);
                t_Output.Resizable = true;
                //END HERZUM SPRINT 5.4 TLAB-241
                t_OutputAs             = this.outputView.AppendColumn("Output as", editableTextRenderer, "text", 1);
                t_OutputAs.Resizable   = true;
                t_OutputType           = this.outputView.AppendColumn("Type", textRenderer, "text", 2);
                t_OutputType.Resizable = true;
                // END HERZUM BUG FIX: alignment input-output TLAB-255

                int currentLengthOutput;
                int currentLengthOutputAs;
                foreach (IOItem item in m_metadata.IOSpec.Output.Values)
                {
                    outputStore.AddNode(new IOItemNode(item));
                    // HERZUM BUG FIX: alignment input-output TLAB-255
                    currentLengthOutput   = item.IOItemDefinition.Name.Length;
                    currentLengthOutputAs = item.MappedTo.Length;
                    if (currentLengthOutput > maxLengthOutput)
                    {
                        maxLengthOutput = currentLengthOutput;
                    }
                    if (currentLengthOutputAs > maxLengthOutputAs)
                    {
                        maxLengthOutputAs = currentLengthOutputAs;
                    }
                    // END HERZUM BUG FIX: alignment input-output TLAB-255
                }

                outputView.NodeStore = outputStore;

                //disables/enables the controls
                outputView.Sensitive = isEditable;

                outputView.HoverSelection         = true;
                outputView.NodeSelection.Changed += SelectionHandleChanged;
            }
            else
            {
                outputView.Visible = false;
            }
        }
コード例 #55
0
        public void NewStore ()
        {
            institutions = Institution.FindAllOrderedByName ();

            store = new Gtk.NodeStore (typeof(InstitutionNode));

            foreach (Institution i in institutions)
                store.AddNode (new InstitutionNode (i));
            if (institutions.Length > 0)
                institutionNodeView.NodeSelection.SelectPath(new Gtk.TreePath("0"));
            total.Text = institutions.Length.ToString () + " " + Catalog.GetString("records");
        }