本文整理汇总了C#中Sandbox.Graphics.GUI.MyGuiControlMultilineText类的典型用法代码示例。如果您正苦于以下问题:C# MyGuiControlMultilineText类的具体用法?C# MyGuiControlMultilineText怎么用?C# MyGuiControlMultilineText使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
MyGuiControlMultilineText类属于Sandbox.Graphics.GUI命名空间,在下文中一共展示了MyGuiControlMultilineText类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。
示例1: ParseText
//implementation without RegularExpressions
public static void ParseText(string text, ref MyGuiControlMultilineText label)
{
try
{
var substrings = text.Split(']');
foreach (var substring in substrings)
{
var textAndMarkup = substring.Split('[');
if (textAndMarkup.Length == 2)
{
label.AppendText(textAndMarkup[0]);
var indexOfSpace = textAndMarkup[1].IndexOf(' ');
if (indexOfSpace != -1)
{
label.AppendLink(textAndMarkup[1].Substring(0, indexOfSpace), textAndMarkup[1].Substring(indexOfSpace + 1));
}
else
{
System.Diagnostics.Debug.Assert(false);
label.AppendText(textAndMarkup[1]);
}
} else {
label.AppendText(substring);
}
}
}
catch
{
}
}
开发者ID:2asoft,项目名称:SpaceEngineers,代码行数:31,代码来源:MyWikiMarkupParser.cs
示例2: ParseMarkup
private static void ParseMarkup(MyGuiControlMultilineText label, string markup)
{
var s = m_markupRegex.Match(markup);
if (s.Value.Contains('|'))
{
var sub = s.Value.Substring(5);
var split = sub.Split('|');
var match = m_digitsRegex.Matches(split[1]);
int width, height;
if(int.TryParse(match[0].Value, out width) && int.TryParse(match[1].Value, out height))
label.AppendImage(split[0], MyGuiManager.GetNormalizedSizeFromScreenSize(new VRageMath.Vector2(width, height)), Vector4.One);
}
else
label.AppendLink(s.Value.Substring(0, s.Value.IndexOf(' ')), s.Value.Substring(s.Value.IndexOf(' ') + 1));
}
开发者ID:fluxit,项目名称:SpaceEngineers,代码行数:15,代码来源:MyWikiMarkupParser.cs
示例3: MyHudControlChat
public MyHudControlChat(Vector2 position, Vector2 size)
{
m_chatMultilineControl = new MyGuiControlMultilineText(
position: position,
size: size,
backgroundColor: null,
font: MyFontEnum.White,
textScale: 0.7f,
textAlign: MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_BOTTOM,
contents: null,
drawScrollbar: false,
textBoxAlign: MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_BOTTOM);
//m_chatMultilineControl.BackgroundTexture = MyGuiConstants.TEXTURE_MESSAGEBOX_BACKGROUND_BLUE.Texture;
m_chatMultilineControl.OriginAlign = MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_BOTTOM;
Elements.Add(m_chatMultilineControl);
}
开发者ID:leandro1129,项目名称:SpaceEngineers,代码行数:17,代码来源:MyHudControlChat.cs
示例4: Init
public void Init(IMyGuiControlsParent controlsParent)
{
m_playerList = (MyGuiControlListbox)controlsParent.Controls.GetControlByName("PlayerListbox");
m_factionList = (MyGuiControlListbox)controlsParent.Controls.GetControlByName("FactionListbox");
m_chatHistory = (MyGuiControlMultilineText)controlsParent.Controls.GetControlByName("ChatHistory");
m_chatbox = (MyGuiControlTextbox)controlsParent.Controls.GetControlByName("Chatbox");
m_playerList.ItemsSelected += m_playerList_ItemsSelected;
m_playerList.MultiSelect = false;
m_factionList.ItemsSelected += m_factionList_ItemsSelected;
m_factionList.MultiSelect = false;
m_sendButton = (MyGuiControlButton)controlsParent.Controls.GetControlByName("SendButton");
m_sendButton.ButtonClicked += m_sendButton_ButtonClicked;
m_chatbox.TextChanged += m_chatbox_TextChanged;
m_chatbox.EnterPressed += m_chatbox_EnterPressed;
if (MySession.Static.LocalCharacter != null)
{
MySession.Static.ChatSystem.PlayerMessageReceived += MyChatSystem_PlayerMessageReceived;
MySession.Static.ChatSystem.FactionMessageReceived += MyChatSystem_FactionMessageReceived;
MySession.Static.ChatSystem.GlobalMessageReceived += MyChatSystem_GlobalMessageReceived;
MySession.Static.ChatSystem.FactionHistoryDeleted += ChatSystem_FactionHistoryDeleted;
MySession.Static.ChatSystem.PlayerHistoryDeleted += ChatSystem_PlayerHistoryDeleted;
}
MySession.Static.Players.PlayersChanged += Players_PlayersChanged;
RefreshLists();
m_chatbox.SetText(m_emptyText);
m_sendButton.Enabled = false;
if (MyMultiplayer.Static != null)
{
MyMultiplayer.Static.ChatMessageReceived += Multiplayer_ChatMessageReceived;
}
m_closed = false;
}
开发者ID:rem02,项目名称:SpaceEngineers,代码行数:45,代码来源:MyTerminalChatController.cs
示例5: ParseText
public static void ParseText(string text, ref MyGuiControlMultilineText label)
{
try
{
var texts = m_splitRegex.Split(text);
var matches = m_splitRegex.Matches(text);
for (int i = 0; i < matches.Count || i < texts.Count(); i++)
{
if (i < texts.Count())
label.AppendText(m_stringCache.Clear().Append(texts[i]));
if (i < matches.Count)
ParseMarkup(label, matches[i].Value);
}
}
catch
{
}
}
开发者ID:fluxit,项目名称:SpaceEngineers,代码行数:18,代码来源:MyWikiMarkupParser.cs
示例6: RecreateControls
public override void RecreateControls(bool constructor)
{
base.RecreateControls(constructor);
var layout = new MyLayoutTable(this);
layout.SetColumnWidthsNormalized(50, 250, 150, 250, 50);
layout.SetRowHeightsNormalized(50, 450, 30, 50);
m_mainLabel = new MyGuiControlLabel(text: MyTexts.GetString(MySpaceTexts.GuiScenarioDescription), originAlign: MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_CENTER);
layout.AddWithSize(m_mainLabel, MyAlignH.Left, MyAlignV.Center, 0, 1, colSpan: 3);
//BRIEFING:
m_descriptionBox = new MyGuiControlMultilineText(
position: new Vector2(0.0f, 0.0f),
size: new Vector2(0.2f, 0.2f),
textBoxAlign: MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_TOP,
selectable: false);
layout.AddWithSize(m_descriptionBox, MyAlignH.Left, MyAlignV.Top, 1, 1, rowSpan: 1, colSpan: 3);
m_okButton = new MyGuiControlButton(text: MyTexts.Get(MyCommonTexts.Ok), visualStyle: MyGuiControlButtonStyleEnum.Rectangular, highlightType: MyGuiControlHighlightType.WHEN_ACTIVE,
size: new Vector2(200, 48f) / MyGuiConstants.GUI_OPTIMAL_SIZE, onButtonClick: OnOkClicked);
layout.AddWithSize(m_okButton, MyAlignH.Left, MyAlignV.Top, 2, 2);
}
开发者ID:Chrus,项目名称:SpaceEngineers,代码行数:21,代码来源:MyGuiScreenBriefing.cs
示例7: Draw
public void Draw(MyGuiControlMultilineText control)
{
if (Visible)
{
if (IsDirty)
{
control.Clear();
control.AppendText(CameraName);
control.AppendLine();
control.AppendText(ShipName);
IsDirty = false;
}
}
else
{
if (IsDirty)
{
control.Clear();
IsDirty = false;
}
}
}
开发者ID:ChristianHeinz71,项目名称:SpaceEngineers,代码行数:23,代码来源:MyHudCameraInfo.cs
示例8: AddMultilineText
protected MyGuiControlMultilineText AddMultilineText(Vector2? size = null, Vector2? offset = null, float textScale = 1.0f, bool selectable = false)
{
Vector2 textboxSize = size ?? this.Size ?? new Vector2(0.5f, 0.5f);
MyGuiControlMultilineText textbox = new MyGuiControlMultilineText(
position: offset ?? Vector2.Zero,
size: textboxSize,
//backgroundColor: m_defaultColor,
//textScale: this.m_scale * textScale,
textAlign: MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_TOP,
textBoxAlign: MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_TOP,
selectable: selectable,
font: MyFontEnum.Blue);
//textbox.BackgroundTexture = MyGuiConstants.TEXTURE_NEWS_BACKGROUND;
//textbox.TextSize = new Vector2(0.2f, 0.2f);
return textbox;
}
开发者ID:leandro1129,项目名称:SpaceEngineers,代码行数:18,代码来源:MyGuiScreenScenario.cs
示例9: CreateTextField
protected void CreateTextField()
{
var textPosition = new Vector2(-0.325f, -0.175f) + m_offset;
var textSize = new Vector2(0.175f, 0.175f);
var padding = new Vector2(0.005f, 0f);
var textBackgroundPanel = AddCompositePanel(MyGuiConstants.TEXTURE_RECTANGLE_DARK, textPosition, textSize, MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_TOP);
m_textField = new MyGuiControlMultilineText();
m_textField = AddMultilineText(offset: textPosition + padding, textScale: m_textScale, size: textSize - padding);
RefreshTextField();
}
开发者ID:fluxit,项目名称:SpaceEngineers,代码行数:13,代码来源:MyGuiDetailScreenScript.cs
示例10: SelectAll
public void SelectAll(MyGuiControlMultilineText sender)
{
m_startIndex = 0;
m_endIndex = sender.Text.Length;
sender.CarriagePositionIndex = sender.Text.Length;
}
开发者ID:leandro1129,项目名称:SpaceEngineers,代码行数:6,代码来源:MyGuiControlMultilineText.cs
示例11: ComputeLineDataFromString
private MultilineData ComputeLineDataFromString(string value)
{
MultilineData ret;
ret.data = value;
MyGuiControlMultilineText textBox = new MyGuiControlMultilineText(size: new Vector2(QuestlogSize.X * 0.92f, 1), drawScrollbar: false);
textBox.Visible = false;
textBox.TextScale = 0.9f;
textBox.AppendText(value);
ret.lines = textBox.NumberOfRows;
return ret;
}
开发者ID:2asoft,项目名称:SpaceEngineers,代码行数:13,代码来源:MyHudQuestlog.cs
示例12: Init
public void Init(IMyGuiControlsParent controlsParent)
{
m_controlsParent = controlsParent;
RefreshUserInfo();
m_tableFactions = (MyGuiControlTable)controlsParent.Controls.GetControlByName("FactionsTable");
m_tableFactions.SetColumnComparison(0, (a, b) => ((StringBuilder)a.UserData).CompareToIgnoreCase((StringBuilder)b.UserData));
m_tableFactions.SetColumnComparison(1, (a, b) => ((StringBuilder)a.UserData).CompareToIgnoreCase((StringBuilder)b.UserData));
m_tableFactions.ItemSelected += OnFactionsTableItemSelected;
RefreshTableFactions();
m_tableFactions.SortByColumn(1);
m_buttonCreate = (MyGuiControlButton)controlsParent.Controls.GetControlByName("buttonCreate");
m_buttonJoin = (MyGuiControlButton)controlsParent.Controls.GetControlByName("buttonJoin");
m_buttonCancelJoin = (MyGuiControlButton)controlsParent.Controls.GetControlByName("buttonCancelJoin");
m_buttonLeave = (MyGuiControlButton)controlsParent.Controls.GetControlByName("buttonLeave");
m_buttonSendPeace = (MyGuiControlButton)controlsParent.Controls.GetControlByName("buttonSendPeace");
m_buttonCancelPeace = (MyGuiControlButton)controlsParent.Controls.GetControlByName("buttonCancelPeace");
m_buttonAcceptPeace = (MyGuiControlButton)controlsParent.Controls.GetControlByName("buttonAcceptPeace");
m_buttonMakeEnemy = (MyGuiControlButton)controlsParent.Controls.GetControlByName("buttonEnemy");
m_buttonCreate.ShowTooltipWhenDisabled = true;
m_buttonCreate.TextEnum = MySpaceTexts.TerminalTab_Factions_Create;
m_buttonJoin.TextEnum = MySpaceTexts.TerminalTab_Factions_Join;
m_buttonCancelJoin.TextEnum = MySpaceTexts.TerminalTab_Factions_CancelJoin;
m_buttonLeave.TextEnum = MySpaceTexts.TerminalTab_Factions_Leave;
m_buttonSendPeace.TextEnum = MySpaceTexts.TerminalTab_Factions_Friend;
m_buttonCancelPeace.TextEnum = MySpaceTexts.TerminalTab_Factions_CancelPeaceRequest;
m_buttonAcceptPeace.TextEnum = MySpaceTexts.TerminalTab_Factions_AcceptPeaceRequest;
m_buttonMakeEnemy.TextEnum = MySpaceTexts.TerminalTab_Factions_Enemy;
m_buttonJoin.SetToolTip(MySpaceTexts.TerminalTab_Factions_JoinToolTip);
m_buttonSendPeace.SetToolTip(MySpaceTexts.TerminalTab_Factions_FriendToolTip);
m_buttonCreate.ButtonClicked += OnCreateClicked;
m_buttonJoin.ButtonClicked += OnJoinClicked;
m_buttonCancelJoin.ButtonClicked += OnCancelJoinClicked;
m_buttonLeave.ButtonClicked += OnLeaveClicked;
m_buttonSendPeace.ButtonClicked += OnFriendClicked;
m_buttonCancelPeace.ButtonClicked += OnCancelPeaceRequestClicked;
m_buttonAcceptPeace.ButtonClicked += OnAcceptFriendClicked;
m_buttonMakeEnemy.ButtonClicked += OnEnemyClicked;
// RIGHT SIDE
m_labelFactionName = (MyGuiControlLabel)controlsParent.Controls.GetControlByName("labelFactionName");
m_labelFactionDesc = (MyGuiControlLabel)controlsParent.Controls.GetControlByName("labelFactionDesc");
m_labelFactionPriv = (MyGuiControlLabel)controlsParent.Controls.GetControlByName("labelFactionPrivate");
m_labelMembers = (MyGuiControlLabel)controlsParent.Controls.GetControlByName("labelFactionMembers");
m_labelAutoAcceptMember = (MyGuiControlLabel)controlsParent.Controls.GetControlByName("labelFactionMembersAcceptEveryone");
m_labelAutoAcceptPeace = (MyGuiControlLabel)controlsParent.Controls.GetControlByName("labelFactionMembersAcceptPeace");
m_labelFactionDesc.Text = MyTexts.Get(MySpaceTexts.TerminalTab_Factions_CreateFactionDescription).ToString();
m_labelFactionPriv.Text = MyTexts.Get(MySpaceTexts.TerminalTab_Factions_Private).ToString();
m_labelMembers.Text = MyTexts.Get(MySpaceTexts.TerminalTab_Factions_Members).ToString();
m_labelAutoAcceptMember.Text = MyTexts.Get(MySpaceTexts.TerminalTab_Factions_AutoAccept).ToString();
m_labelAutoAcceptPeace.Text = MyTexts.Get(MySpaceTexts.TerminalTab_Factions_AutoAcceptRequest).ToString();
m_labelAutoAcceptMember.SetToolTip(MySpaceTexts.TerminalTab_Factions_AutoAcceptToolTip);
m_labelAutoAcceptPeace.SetToolTip(MySpaceTexts.TerminalTab_Factions_AutoAcceptRequestToolTip);
m_textFactionDesc = (MyGuiControlMultilineText)controlsParent.Controls.GetControlByName("textFactionDesc");
m_textFactionPriv = (MyGuiControlMultilineText)controlsParent.Controls.GetControlByName("textFactionPrivate");
m_textFactionDesc.BackgroundTexture = MyGuiConstants.TEXTURE_HIGHLIGHT_DARK;
m_textFactionPriv.BackgroundTexture = MyGuiConstants.TEXTURE_HIGHLIGHT_DARK;
m_tableMembers = (MyGuiControlTable)controlsParent.Controls.GetControlByName("tableMembers");
m_tableMembers.SetColumnComparison(1, (a, b) => ((int)((MyMemberComparerEnum)a.UserData)).CompareTo((int)((MyMemberComparerEnum)b.UserData)));
m_tableMembers.ItemSelected += OnTableItemSelected;
m_checkAutoAcceptMember = (MyGuiControlCheckbox)controlsParent.Controls.GetControlByName("checkFactionMembersAcceptEveryone");
m_checkAutoAcceptPeace = (MyGuiControlCheckbox)controlsParent.Controls.GetControlByName("checkFactionMembersAcceptPeace");
m_checkAutoAcceptMember.SetToolTip(MySpaceTexts.TerminalTab_Factions_AutoAcceptToolTip);
m_checkAutoAcceptPeace.SetToolTip(MySpaceTexts.TerminalTab_Factions_AutoAcceptRequestToolTip);
m_checkAutoAcceptMember.IsCheckedChanged += OnAutoAcceptChanged;
m_checkAutoAcceptPeace.IsCheckedChanged += OnAutoAcceptChanged;
m_buttonEdit = (MyGuiControlButton)controlsParent.Controls.GetControlByName("buttonEdit");
m_buttonPromote = (MyGuiControlButton)controlsParent.Controls.GetControlByName("buttonPromote");
m_buttonKick = (MyGuiControlButton)controlsParent.Controls.GetControlByName("buttonKick");
m_buttonAcceptJoin = (MyGuiControlButton)controlsParent.Controls.GetControlByName("buttonAcceptJoin");
m_buttonDemote = (MyGuiControlButton)controlsParent.Controls.GetControlByName("buttonDemote");
m_buttonAddNpc = (MyGuiControlButton)controlsParent.Controls.GetControlByName("buttonAddNpc");
m_buttonEdit.TextEnum = MyCommonTexts.Edit;
m_buttonPromote.TextEnum = MyCommonTexts.Promote;
m_buttonKick.TextEnum = MyCommonTexts.Kick;
m_buttonAcceptJoin.TextEnum = MyCommonTexts.Accept;
m_buttonDemote.TextEnum = MyCommonTexts.Demote;
m_buttonAddNpc.TextEnum = MySpaceTexts.AddNpcToFaction;
m_buttonAddNpc.SetToolTip(MySpaceTexts.AddNpcToFactionHelp);
m_buttonEdit.ButtonClicked += OnCreateClicked;
m_buttonPromote.ButtonClicked += OnPromotePlayerClicked;
m_buttonKick.ButtonClicked += OnKickPlayerClicked;
m_buttonAcceptJoin.ButtonClicked += OnAcceptJoinClicked;
//.........这里部分代码省略.........
开发者ID:stanhebben,项目名称:SpaceEngineers,代码行数:101,代码来源:MyTerminalFactionController.cs
示例13: AddMultilineText
protected virtual MyGuiControlMultilineText AddMultilineText(Vector2? size = null, Vector2? offset = null, float textScale = 1.0f, bool selectable = false, MyGuiDrawAlignEnum textAlign = MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_TOP, MyGuiDrawAlignEnum textBoxAlign = MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_TOP)
{
Vector2 textboxSize = size ?? this.Size ?? new Vector2(1.2f, 0.5f);
MyGuiControlMultilineText textbox = null;
if (m_enableEdit)
{
textbox = new MyGuiControlMultilineEditableText(
position: textboxSize / 2.0f + (offset ?? Vector2.Zero),
size: textboxSize,
backgroundColor: Color.White.ToVector4(),
textAlign: textAlign,
textBoxAlign: textBoxAlign,
font: MyFontEnum.White);
}
else
{
textbox = new MyGuiControlMultilineText(
position: textboxSize / 2.0f + (offset ?? Vector2.Zero),
size: textboxSize,
backgroundColor: Color.White.ToVector4(),
textAlign: textAlign,
textBoxAlign: textBoxAlign,
selectable: m_enableEdit,
font: MyFontEnum.White);
}
Controls.Add(textbox);
return textbox;
}
开发者ID:stanhebben,项目名称:SpaceEngineers,代码行数:31,代码来源:MyGuiScreenText.cs
示例14: CreateFactionsPageControls
//.........这里部分代码省略.........
{
OriginAlign = MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_TOP,
Position = new Vector2(-0.05f, top),
Size = new Vector2(0.5f, 0.69f),
Name = "compositeFaction"
};
left += spacingH;
top += spacingV;
var factionNamePanel = new MyGuiControlPanel()
{
OriginAlign = MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_TOP,
Position = new Vector2(left, top),
Size = new Vector2(factionComposite.Size.X - 0.012f, 0.035f),
BackgroundTexture = MyGuiConstants.TEXTURE_HIGHLIGHT_DARK,
Name = "panelFactionName"
};
var factionName = new MyGuiControlLabel(
originAlign: MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_TOP,
position: new Vector2(left + spacingH, top),
size: factionNamePanel.Size - new Vector2(0.01f, 0.01f)
) { Name = "labelFactionName" };
top += factionsLabel.Size.Y + (2f * spacingV);
var size = factionNamePanel.Size - new Vector2(0.14f, 0.01f);
var factionDescLabel = new MyGuiControlLabel(
originAlign: MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_TOP,
position: new Vector2(left, top),
size: factionNamePanel.Size - new Vector2(0.01f, 0.01f)
) { Name = "labelFactionDesc" };
top += factionDescLabel.Size.Y + spacingV;
var factionDesc = new MyGuiControlMultilineText(
textBoxAlign: MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_TOP,
textAlign: MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_TOP,
textScale: MyGuiConstants.TOOL_TIP_TEXT_SCALE,
position: new Vector2(left, top),
size: new Vector2(size.X, 0.08f)
)
{
OriginAlign = MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_TOP,
Name = "textFactionDesc",
};
top += factionDesc.Size.Y + 2f * spacingV;
var factionPrivateLabel = new MyGuiControlLabel(
originAlign: MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_TOP,
position: new Vector2(left, top),
size: factionNamePanel.Size - new Vector2(0.01f, 0.01f)
) { Name = "labelFactionPrivate" };
top += factionPrivateLabel.Size.Y + spacingV;
var factionPrivate = new MyGuiControlMultilineText(
textBoxAlign: MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_TOP,
textAlign: MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_TOP,
textScale: MyGuiConstants.TOOL_TIP_TEXT_SCALE,
position: new Vector2(left, top),
size: new Vector2(size.X, 0.08f)
)
{
OriginAlign = MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_TOP,
Name = "textFactionPrivate",
};
top += factionDesc.Size.Y + 0.0275f;
开发者ID:Chrus,项目名称:SpaceEngineers,代码行数:66,代码来源:MyGuiScreenTerminal.cs
示例15: PasteText
public void PasteText(MyGuiControlMultilineText sender)
{
//First we erase the selection
EraseText(sender);
var prefix = sender.Text.ToString().Substring(0, sender.CarriagePositionIndex);
var suffix = sender.Text.ToString().Substring(sender.CarriagePositionIndex);
Thread myth;
myth = new Thread(new System.Threading.ThreadStart(PasteFromClipboard));
myth.ApartmentState = ApartmentState.STA;
myth.Start();
//We have to wait for the thread to end to make sure we got the text
myth.Join();
sender.Text = new StringBuilder(prefix).Append(Regex.Replace(ClipboardText, "\r\n", " \n")).Append(suffix);
sender.CarriagePositionIndex = prefix.Length + ClipboardText.Length;
Reset(sender);
}
开发者ID:leandro1129,项目名称:SpaceEngineers,代码行数:19,代码来源:MyGuiControlMultilineText.cs
示例16: CutText
public void CutText(MyGuiControlMultilineText sender)
{
//First off, we have to copy
CopyText(sender);
//Then we cut the text away from the form
EraseText(sender);
}
开发者ID:leandro1129,项目名称:SpaceEngineers,代码行数:8,代码来源:MyGuiControlMultilineText.cs
示例17: CopyText
public void CopyText(MyGuiControlMultilineText sender)
{
ClipboardText = Regex.Replace(sender.Text.ToString().Substring(Start, Length), "\n", "\r\n");
Thread myth;
myth = new Thread(new System.Threading.ThreadStart(CopyToClipboard));
myth.ApartmentState = ApartmentState.STA;
myth.Start();
}
开发者ID:leandro1129,项目名称:SpaceEngineers,代码行数:8,代码来源:MyGuiControlMultilineText.cs
示例18: EraseText
public void EraseText(MyGuiControlMultilineText sender)
{
if (Start == End)
return;
StringBuilder prefix = new StringBuilder(sender.Text.ToString().Substring(0, Start));
StringBuilder suffix = new StringBuilder(sender.Text.ToString().Substring(End));
sender.CarriagePositionIndex = Start;
sender.Text = prefix.Append(suffix);
}
开发者ID:leandro1129,项目名称:SpaceEngineers,代码行数:9,代码来源:MyGuiControlMultilineText.cs
示例19: RecreateControls
public override void RecreateControls(bool constructor)
{
base.RecreateControls(constructor);
m_toolbarControl = new MyGuiControlToolbar();
m_toolbarControl.Position = new Vector2(0.5f, 0.99f);
m_toolbarControl.OriginAlign = MyGuiDrawAlignEnum.HORISONTAL_CENTER_AND_VERTICAL_BOTTOM;
m_toolbarControl.IsActiveControl = false;
Elements.Add(m_toolbarControl);
m_textScale = MyGuiConstants.HUD_TEXT_SCALE * MyGuiManager.LanguageTextScale;
var style = new MyGuiControlBlockInfo.MyControlBlockInfoStyle()
{
BlockNameLabelFont = MyFontEnum.White,
EnableBlockTypeLabel = true,
ComponentsLabelText = MySpaceTexts.HudBlockInfo_Components,
ComponentsLabelFont = MyFontEnum.Blue,
InstalledRequiredLabelText = MySpaceTexts.HudBlockInfo_Installed_Required,
InstalledRequiredLabelFont = MyFontEnum.Blue,
RequiredLabelText = MyCommonTexts.HudBlockInfo_Required,
IntegrityLabelFont = MyFontEnum.White,
IntegrityBackgroundColor = new Vector4(78 / 255.0f, 116 / 255.0f, 137 / 255.0f, 1.0f),
IntegrityForegroundColor = new Vector4(0.5f, 0.1f, 0.1f, 1),
IntegrityForegroundColorOverCritical = new Vector4(118 / 255.0f, 166 / 255.0f, 192 / 255.0f, 1.0f),
LeftColumnBackgroundColor = new Vector4(46 / 255.0f, 76 / 255.0f, 94 / 255.0f, 1.0f),
TitleBackgroundColor = new Vector4(72 / 255.0f, 109 / 255.0f, 130 / 255.0f, 1.0f),
ComponentLineMissingFont = MyFontEnum.Red,
ComponentLineAllMountedFont = MyFontEnum.White,
ComponentLineAllInstalledFont = MyFontEnum.Blue,
ComponentLineDefaultFont = MyFontEnum.White,
ComponentLineDefaultColor = new Vector4(0.6f, 0.6f, 0.6f, 1f),
ShowAvailableComponents = false,
EnableBlockTypePanel = true,
};
m_blockInfo = new MyGuiControlBlockInfo(style);
m_blockInfo.IsActiveControl = false;
Controls.Add(m_blockInfo);
m_questlogControl = new MyGuiControlQuestlog(new Vector2(20f, 20f));
m_questlogControl.IsActiveControl = false;
m_questlogControl.RecreateControls();
Controls.Add(m_questlogControl);
m_chatControl = new MyHudControlChat(MyHud.Chat, Vector2.Zero, new Vector2(0.4f, 0.28f), visibleLinesCount: 12);
Elements.Add(m_chatControl);
m_cameraInfoMultilineControl = new MyGuiControlMultilineText(
position: Vector2.Zero,
size: new Vector2(0.4f, 0.25f),
backgroundColor: null,
font: MyFontEnum.White,
textScale: 0.7f,
textAlign: MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_BOTTOM,
contents: null,
drawScrollbar: false,
textBoxAlign: MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_BOTTOM);
m_cameraInfoMultilineControl.OriginAlign = MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_BOTTOM;
Elements.Add(m_cameraInfoMultilineControl);
m_rotatingWheelControl = new MyGuiControlRotatingWheel(position: new Vector2(0.5f, 0.85f));
Controls.Add(m_rotatingWheelControl);
Vector2 buildModePosition = new Vector2(0.5f, 0.02f);
buildModePosition = MyGuiScreenHudBase.ConvertHudToNormalizedGuiPosition(ref buildModePosition);
m_buildModeLabel = new MyGuiControlLabel(
position: buildModePosition,
originAlign: MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_TOP,
font: MyFontEnum.White,
text: MyTexts.GetString(MyCommonTexts.Hud_BuildMode));
Controls.Add(m_buildModeLabel);
m_blocksLeft = new MyGuiControlLabel(
position: new Vector2(0.238f, 0.89f),
originAlign: MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_BOTTOM,
font: MyFontEnum.White,
text: MyHud.BlocksLeft.GetStringBuilder().ToString()
);
Controls.Add(m_blocksLeft);
m_relayNotification = new MyGuiControlLabel(new Vector2(1, 0), font: MyFontEnum.White, originAlign: MyGuiDrawAlignEnum.HORISONTAL_RIGHT_AND_VERTICAL_TOP);
m_relayNotification.TextEnum = MyCommonTexts.Multiplayer_IndirectConnection;
m_relayNotification.Visible = false;
Controls.Add(m_relayNotification);
var offset = new Vector2(0, m_relayNotification.Size.Y);
m_noMsgSentNotification = new MyGuiControlLabel(new Vector2(1, 0) + offset, font: MyFontEnum.Debug, text: MyTexts.GetString(MyCommonTexts.Multiplayer_LastMsg), originAlign: MyGuiDrawAlignEnum.HORISONTAL_RIGHT_AND_VERTICAL_TOP);
m_noMsgSentNotification.Visible = false;
Controls.Add(m_noMsgSentNotification);
offset += new Vector2(0, m_noMsgSentNotification.Size.Y);
m_noConnectionNotification = new MyGuiControlLabel(new Vector2(1, 0) + offset, font: MyFontEnum.Red, originAlign: MyGuiDrawAlignEnum.HORISONTAL_RIGHT_AND_VERTICAL_TOP);
m_noConnectionNotification.TextEnum = MyCommonTexts.Multiplayer_NoConnection;
m_noConnectionNotification.Visible = false;
Controls.Add(m_noConnectionNotification);
m_serverSavingNotification = new MyGuiControlLabel(new Vector2(1, 0) + offset, font: MyFontEnum.White, originAlign: MyGuiDrawAlignEnum.HORISONTAL_RIGHT_AND_VERTICAL_TOP);
m_serverSavingNotification.TextEnum = MyCommonTexts.SavingPleaseWait;
m_serverSavingNotification.Visible = false;
Controls.Add(m_serverSavingNotification);
MyHud.ReloadTexts();
//.........这里部分代码省略.........
开发者ID:2asoft,项目名称:SpaceEngineers,代码行数:101,代码来源:MyGuiScreenHudSpace.cs
示例20: RecreateControls
public override void RecreateControls(bool constructor)
{
//This is probably very wrong!
m_screenScale = (MyGuiManager.GetHudSize().X / MyGuiManager.GetHudSize().Y) / MyGuiConstants.SAFE_ASPECT_RATIO;
m_size = new Vector2(m_screenScale, 0.5f);
base.RecreateControls(constructor);
Vector4 consoleTextColor = new Vector4(1, 1, 0, 1);
float consoleTextScale = 1f;
m_commandLine = new MyGuiControlTextbox
(
position: new Vector2(0, 0.25f),
textColor: consoleTextColor
);
m_commandLine.Position -= new Vector2(0, m_commandLine.Size.Y + m_margin.Y/2);
m_commandLine.Size = new Vector2(m_screenScale, m_commandLine.Size.Y) - 2 * m_margin;
m_commandLine.ColorMask = new Vector4(0, 0, 0, 0.5f);
m_commandLine.VisualStyle = MyGuiControlTextboxStyleEnum.Debug;
m_commandLine.TextChanged += commandLine_TextChanged;
m_commandLine.Name = "CommandLine";
m_autoComplete = new MyGuiControlContextMenu();
m_autoComplete.ItemClicked += autoComplete_ItemClicked;
m_autoComplete.Deactivate();
m_autoComplete.OriginAlign = MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_TOP;
m_autoComplete.ColorMask = new Vector4(0, 0, 0, .5f);
m_autoComplete.AllowKeyboardNavigation = true;
m_autoComplete.Name = "AutoComplete";
m_displayScreen = new MyGuiControlMultilineText
(
position: new Vector2(-0.5f * m_screenScale, -0.25f) + m_margin,
size: new Vector2(m_screenScale, 0.5f - m_commandLine.Size.Y) - 2 * m_margin,
font: MyFontEnum.Debug,
textAlign: MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_TOP,
textBoxAlign: MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_TOP,
selectable: true
);
m_displayScreen.TextColor = Color.Yellow;
m_displayScreen.TextScale = consoleTextScale;
m_displayScreen.OriginAlign = MyGuiDrawAlignEnum.HORISONTAL_LEFT_AND_VERTICAL_TOP;
m_displayScreen.Text = MyConsole.DisplayScreen;
m_displayScreen.ColorMask = new Vector4(0, 0, 0, .5f);
m_displayScreen.Name = "DisplayScreen";
Controls.Add(m_displayScreen);
Controls.Add(m_commandLine);
Controls.Add(m_autoComplete);
}
开发者ID:2asoft,项目名称:SpaceEngineers,代码行数:54,代码来源:MyGuiScreenConsole.cs
注:本文中的Sandbox.Graphics.GUI.MyGuiControlMultilineText类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论