public MainWindow()
        {
            InitializeComponent();

            // Load!

            if (KNUserDefaults.StandardUserDefaults().ObjectForKey("Keys") != null)
            {
                foreach (Dictionary <string, object> dict in (ArrayList)KNUserDefaults.StandardUserDefaults().ObjectForKey("Keys"))
                {
                    keys.Add(new UpdateSigningKey(dict));
                }
            }

            KNTableView keyTable = new KNTableView();

            keyTable.CornerCell = new KNLeopardCornerCell();
            KNCell cell = new KNTextCell();

            ((KNTextCell)cell).IsEditable = true;
            KNTableColumnDelegate del    = null;
            KNHeaderCell          header = new KNLeopardStyleHeaderCell("Name", false, true, System.Drawing.StringAlignment.Near);
            KNTableColumn         col    = new KNTableColumn("name", ref cell, ref header, ref del);

            col.Width = (int)KeyListHost.Width;
            keyTable.AddColumn(col);

            keyTable.TableDelegate             = this;
            keyTable.DataSource                = this;
            keyTable.AlternatingRowBackgrounds = true;

            keyTable.CellPerformedAction += Action;
            keyTable.SelectionChanged    += TableSelectionChanged;

            KeyListHost.Child = keyTable;

            KNLeopardStyleHeaderButton button = new KNLeopardStyleHeaderButton();

            button.Enabled      = false;
            ButtonBarHost.Child = button;

            SUUpdater updater = SUUpdater.SharedUpdater();

            this.AddObserverToKeyPathWithOptions(this, "SelectedKey", KNKeyValueObservingOptions.KNKeyValueObservingOptionInitial, null);
        }
Example #2
0
        public KNTableColumn(string anIdentifier, string aTitle, KNCell aDataCell, KNTableColumnDelegate aDelegate)
        {
            ClipToBounds = true;

            activeCells = new Dictionary<int, KNCell>();
            cellCache = new ArrayList();

            sortPriority = SortPriority.NotUsed;
            sortDirection = SortDirection.Ascending;

            if (aDataCell != null) {
                dataCell = aDataCell;
            } else {
                dataCell = new KNTextCell();
            }

            minSize = 100;
            maxSize = 2000;
            Width = 100;
            userResizable = true;
            HeaderCell = new KNHeaderCell();
            headerCell.Column = this;

            del = aDelegate;

            if (anIdentifier != null) {
                identifier = anIdentifier;
            } else {
                identifier = "";
            }

            KNActionCellDependencyProperty.SetDelegate((DependencyObject)headerCell, this);
            if (aTitle != null) {
                KNCellDependencyProperty.SetObjectValue((DependencyObject)headerCell, aTitle);
            } else {
                KNCellDependencyProperty.SetObjectValue((DependencyObject)headerCell, "Column Title");
            }

            this.AddObserverToKeyPathWithOptions(this, "VerticalOffset", 0, null);
            this.AddObserverToKeyPathWithOptions(this, "RowHeight", 0, null);
            this.AddObserverToKeyPathWithOptions(this, "DataCell", 0, null);

            LayoutCompletely();
        }