private void RenderViewerIcon(TreeViewColumn column, CellRenderer cell, TreeModel model, TreeIter iter)
        {
            WorkspaceUnit workspaceUnit = (WorkspaceUnit)model.GetValue(iter, 2);

            if (!workspaceUnit.Type.IsPrimitive && workspaceUnit.Type != String.Empty.GetType())
            {
                bool success = false;
                CellRendererPixbuf renderer = (CellRendererPixbuf)cell;
                renderer.Visible = true;

                try
                {
                    success = WorkspaceViewerLoader.CheckIfEditorExists(workspaceUnit.Type);
                }
                catch (Exception) {}

                if (success)
                {
                    renderer.Pixbuf = s_workspaceViewerIcon;
                }
                else
                {
                    renderer.Pixbuf = s_noViewerIcon;
                }
            }
            else
            {
                cell.Visible = false;
            }
        }
Beispiel #2
0
        private void tracesList_MouseDoubleClick(object sender, MouseButtonEventArgs e)
        {
            var grid = sender as DataGrid;

            if (grid != null)
            {
                var unit = grid.SelectedItem as WpfWorkspaceUnitWrapper;
                if (unit != null && unit.Type != null && unit.Data != null)
                {
                    //also first try to display it with wpf method, and eventually fallback to windows form display
                    var displaysFuncs = new WorkspaceViewerLoader.DisplayEditor[]
                    {
                        DisplayWPFWindow,
                        WorkspaceViewerLoader.DisplayWindowsFormEditor
                    };

                    string error = String.Empty;

                    //try find first wpf specific gui, and then default gui
                    if (!WorkspaceViewerLoader.LoadViewer(unit.Data, unit.FriendlyUnitName, WorkspaceUIAssemblyExtensions.Extensions, displaysFuncs, out error))
                    {
                        NLog.LogManager.GetCurrentClassLogger().Warn(error);
                        MessageBox.Show(error);
                    }
                }
            }
        }
        // END HERZUM SPRINT 3: TLAB-86

        private void HandleRowActivated(object source, RowActivatedArgs args)
        {
            TreeIter item;

            if (m_treeView.Selection.GetSelected(out item))
            {
                WorkspaceUnit unit = (WorkspaceUnit)m_treeView.Model.GetValue(item, 0);

                //prepare display funtions
                //first try to display it with GTK, and eventually fallback to windows form display
                var displaysFuncs = new WorkspaceViewerLoader.DisplayEditor[]
                {
                    DisplayGTKWindow,
                    WorkspaceViewerLoader.DisplayWindowsFormEditor
                };

                String error;
                if (!WorkspaceViewerLoader.LoadViewer(unit.Data, unit.FriendlyUnitName,
                                                      WorkspaceUIAssemblyExtensions.Extensions, displaysFuncs,
                                                      out error))
                {
                    NLog.LogManager.GetCurrentClassLogger().Warn(error);
                }
            }
        }
Beispiel #4
0
        private void HandleRowActivated(object source, RowActivatedArgs args)
        {
            TreeIter item;

            if (m_treeView.Selection.GetSelected(out item))
            {
                WorkspaceUnit unit = (WorkspaceUnit)m_treeView.Model.GetValue(item, 0);

                String error;
                if (!WorkspaceViewerLoader.LoadViewer(unit.Data, unit.FriendlyUnitName, out error))
                {
                    NLog.LogManager.GetCurrentClassLogger().Warn(error);
                }
            }
        }