mac setup: prevent annoying window flash by only creating the server selection list once
This commit is contained in:
parent
bec9be1cf7
commit
990d1c3231
|
@ -219,43 +219,54 @@ namespace SparkleShare {
|
||||||
NSFontTraitMask.Condensed, 0, 11),
|
NSFontTraitMask.Condensed, 0, 11),
|
||||||
};
|
};
|
||||||
|
|
||||||
TableView = new NSTableView () {
|
if (TableView == null) {
|
||||||
Frame = new RectangleF (0, 0, 0, 0),
|
TableView = new NSTableView () {
|
||||||
RowHeight = 34,
|
Frame = new RectangleF (0, 0, 0, 0),
|
||||||
IntercellSpacing = new SizeF (8, 12),
|
RowHeight = 34,
|
||||||
HeaderView = null,
|
IntercellSpacing = new SizeF (8, 12),
|
||||||
Delegate = new SparkleTableViewDelegate ()
|
HeaderView = null,
|
||||||
};
|
Delegate = new SparkleTableViewDelegate ()
|
||||||
|
};
|
||||||
|
|
||||||
ScrollView = new NSScrollView () {
|
ScrollView = new NSScrollView () {
|
||||||
Frame = new RectangleF (190, Frame.Height - 280, 408, 185),
|
Frame = new RectangleF (190, Frame.Height - 280, 408, 185),
|
||||||
DocumentView = TableView,
|
DocumentView = TableView,
|
||||||
HasVerticalScroller = true,
|
HasVerticalScroller = true,
|
||||||
BorderType = NSBorderType.BezelBorder
|
BorderType = NSBorderType.BezelBorder
|
||||||
};
|
};
|
||||||
|
|
||||||
IconColumn = new NSTableColumn () {
|
IconColumn = new NSTableColumn () {
|
||||||
Width = 36,
|
Width = 36,
|
||||||
HeaderToolTip = "Icon",
|
HeaderToolTip = "Icon",
|
||||||
DataCell = new NSImageCell () { ImageAlignment = NSImageAlignment.Right }
|
DataCell = new NSImageCell () { ImageAlignment = NSImageAlignment.Right }
|
||||||
};
|
};
|
||||||
|
|
||||||
DescriptionColumn = new NSTableColumn () {
|
DescriptionColumn = new NSTableColumn () {
|
||||||
Width = 350,
|
Width = 350,
|
||||||
HeaderToolTip = "Description",
|
HeaderToolTip = "Description",
|
||||||
Editable = false
|
Editable = false
|
||||||
};
|
};
|
||||||
|
|
||||||
DescriptionColumn.DataCell.Font = NSFontManager.SharedFontManager.FontWithFamily ("Lucida Grande",
|
DescriptionColumn.DataCell.Font = NSFontManager.SharedFontManager.FontWithFamily ("Lucida Grande",
|
||||||
NSFontTraitMask.Condensed, 0, 11);
|
NSFontTraitMask.Condensed, 0, 11);
|
||||||
|
|
||||||
TableView.AddColumn (IconColumn);
|
TableView.AddColumn (IconColumn);
|
||||||
TableView.AddColumn (DescriptionColumn);
|
TableView.AddColumn (DescriptionColumn);
|
||||||
|
|
||||||
DataSource = new SparkleDataSource (Controller.Plugins);
|
DataSource = new SparkleDataSource (Controller.Plugins);
|
||||||
|
|
||||||
TableView.DataSource = DataSource;
|
TableView.DataSource = DataSource;
|
||||||
TableView.ReloadData ();
|
TableView.ReloadData ();
|
||||||
|
|
||||||
|
|
||||||
|
TableView.SelectRow (Controller.SelectedPluginIndex, false);
|
||||||
|
TableView.ScrollRowToVisible (Controller.SelectedPluginIndex);
|
||||||
|
|
||||||
|
(TableView.Delegate as SparkleTableViewDelegate).SelectionChanged += delegate {
|
||||||
|
Controller.SelectedPluginChanged (TableView.SelectedRow);
|
||||||
|
Controller.CheckAddPage (AddressTextField.StringValue, PathTextField.StringValue, TableView.SelectedRow);
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
HistoryCheckButton = new NSButton () {
|
HistoryCheckButton = new NSButton () {
|
||||||
Frame = new RectangleF (190, Frame.Height - 400, 300, 18),
|
Frame = new RectangleF (190, Frame.Height - 400, 300, 18),
|
||||||
|
@ -291,8 +302,6 @@ namespace SparkleShare {
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
TableView.SelectRow (Controller.SelectedPluginIndex, false);
|
|
||||||
TableView.ScrollRowToVisible (Controller.SelectedPluginIndex);
|
|
||||||
|
|
||||||
(AddressTextField.Delegate as SparkleTextFieldDelegate).StringValueChanged += delegate {
|
(AddressTextField.Delegate as SparkleTextFieldDelegate).StringValueChanged += delegate {
|
||||||
Controller.CheckAddPage (AddressTextField.StringValue, PathTextField.StringValue, TableView.SelectedRow);
|
Controller.CheckAddPage (AddressTextField.StringValue, PathTextField.StringValue, TableView.SelectedRow);
|
||||||
|
@ -302,10 +311,6 @@ namespace SparkleShare {
|
||||||
Controller.CheckAddPage (AddressTextField.StringValue, PathTextField.StringValue, TableView.SelectedRow);
|
Controller.CheckAddPage (AddressTextField.StringValue, PathTextField.StringValue, TableView.SelectedRow);
|
||||||
};
|
};
|
||||||
|
|
||||||
(TableView.Delegate as SparkleTableViewDelegate).SelectionChanged += delegate {
|
|
||||||
Controller.SelectedPluginChanged (TableView.SelectedRow);
|
|
||||||
Controller.CheckAddPage (AddressTextField.StringValue, PathTextField.StringValue, TableView.SelectedRow);
|
|
||||||
};
|
|
||||||
|
|
||||||
HistoryCheckButton.Activated += delegate {
|
HistoryCheckButton.Activated += delegate {
|
||||||
Controller.HistoryItemChanged (HistoryCheckButton.State == NSCellStateValue.On);
|
Controller.HistoryItemChanged (HistoryCheckButton.State == NSCellStateValue.On);
|
||||||
|
@ -323,7 +328,6 @@ namespace SparkleShare {
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
ContentView.AddSubview (ScrollView);
|
ContentView.AddSubview (ScrollView);
|
||||||
ContentView.AddSubview (AddressLabel);
|
ContentView.AddSubview (AddressLabel);
|
||||||
ContentView.AddSubview (AddressTextField);
|
ContentView.AddSubview (AddressTextField);
|
||||||
|
|
Loading…
Reference in a new issue