本文整理汇总了C#中Xwt.Widget.GetType方法的典型用法代码示例。如果您正苦于以下问题:C# Widget.GetType方法的具体用法?C# Widget.GetType怎么用?C# Widget.GetType使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Xwt.Widget
的用法示例。
在下文中一共展示了Widget.GetType方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ApplyStyle
/// <summary>Apply the specified selector (style) to the specified widget</summary>
/// <param name="Widget">The widget that should "got" the style</param>
/// <param name="Pattern">The specified selector with the desired style</param>
public void ApplyStyle(Widget Widget, string Pattern)
{
if (Widget.GetType() == typeof(Label)) { ApplyStyle((Label)Widget, Pattern); return; }
if (Widget.GetType() == typeof(Box)) { ApplyStyle((Box)Widget, Pattern); return; }
Selector Selector = CSS[Pattern];
if (Selector.Declarations["background-color"].Value != "inherit")
Widget.BackgroundColor =
Utilities.GetXwtColor(
Selector.Declarations["background-color"].Value
);
if (Selector.Declarations["font-family"].Value != "inherit")
Widget.Font = Font.FromName(
Selector.Declarations["font-family"].Value
);
Widget.Visible = Selector.Declarations["display"].Value != "none";
}
示例2: LoadFile
/// <summary>Load the file in the VE</summary>
/// <param name="URL">The URL of the file</param>
/// <param name="FS">The filesystem of the file</param>
/// <param name="plugin">The VE plugin, which will be used to load this file</param>
/// <param name="AllowEdit">Allow editing the file</param>
public void LoadFile(string URL, IFSPlugin FS, IVEPlugin plugin, bool AllowEdit)
{
//check for external editor
try{
if (Settings.Default.UseExternalEditor && AllowEdit || Settings.Default.UseExternalViewer && !AllowEdit && URL.StartsWith("file:")){
CanBeShowed = false;
if (AllowEdit){
ExecuteProgram(Settings.Default.ExternalEditor.Replace("$", "\"" + URL));
}
else{
ExecuteProgram(Settings.Default.ExternalViewer.Replace("$", "\"" + URL));
}
return;
}
}
catch (Exception ex) { MessageDialog.ShowError(Localizator.GetString("CantRunEXE"), ex.Message); CanBeShowed = false; return; }
FileNameForTitle = URL.Substring(URL.LastIndexOf(FS.DirSeparator, StringComparison.Ordinal) + 1);
IsEditor = AllowEdit;
if(AllowEdit)
Title = string.Format(Localizator.GetString("FCETitle"), FileNameForTitle);
else
Title = string.Format(Localizator.GetString("FCVTitle"), FileNameForTitle);
FileProcessDialog ProgressDialog = new FileProcessDialog();
string ProgressInitialText = String.Format(Localizator.GetString("FCVELoadingMsg"),URL);
ProgressDialog.lblStatus.Text = ProgressInitialText;
FS.ProgressChanged += d => { ProgressDialog.pbrProgress.Fraction = (d >= 0 && d <= 1) ? d : ProgressDialog.pbrProgress.Fraction; Xwt.Application.MainLoop.DispatchPendingEvents(); };
FS.StatusChanged += d => { ProgressDialog.lblStatus.Text = ProgressInitialText + "\n" + d; Xwt.Application.MainLoop.DispatchPendingEvents(); };
ProgressDialog.cmdCancel.Clicked += (o, ea) => { CanBeShowed = false; ProgressDialog.Close(); };
ProgressDialog.Show();
Xwt.Application.MainLoop.DispatchPendingEvents();
if (!CanBeShowed) return;
try {
Plugin = plugin;
Plugin.ReadOnly = !AllowEdit;
Plugin.OpenFile(URL, FS);
Plugin.ShowToolbar = Settings.Default.VE_ShowToolbar;
Plugin.Stylist = s;
mnuFormat.SubMenu = Plugin.FormatMenu;
bool Mode = AllowEdit;
if (!Plugin.CanEdit && AllowEdit)
{
MessageDialog.ShowWarning(String.Format(Localizator.GetString("FCVEpluginro1"), Plugin.Name + " " + Plugin.Version), Localizator.GetString("FCVEpluginro2"));
Mode = false;
}
FSPlugin = FS;
PluginBody = Plugin.Body;
SetVEMode(Mode);
}
catch (Exception ex)
{
MessageDialog.ShowWarning(ex.Message);
if(PluginBody.GetType() == typeof(Spinner)) { ProgressDialog.Close(); CanBeShowed = false; return;}
}
BuildLayout();
ProgressDialog.Close();
}
示例3: Stylize
/// <summary>Enable theming of the widget</summary>
/// <param name="Widget">The widget that needs to be themized</param>
/// <param name="Selector">The selector pattern</param>
public void Stylize(Widget Widget, string Selector = "Widget")
{
if (!semaphore) {
semaphore = true;
Stylize(Widget, Selector); //apply default style for all widgets
try {
Stylize(Widget, Widget.GetType().ToString().Substring(Widget.GetType().ToString().IndexOf('.') + 1)); //apply default style for the widget type
}
catch { Console.WriteLine("NOTICE: No style is set for widgets of type " + Widget.GetType().ToString().Substring(Widget.GetType().ToString().IndexOf('.') + 1)); }
semaphore = false;
}
ApplyStyle(Widget, Selector);
Widget.MouseEntered+=(o,ea)=> ApplyStyle(Widget, Selector + ":hover");
Widget.MouseExited+=(o,ea)=>
{
ApplyStyle(Widget, Selector);
if (Widget.HasFocus)
ApplyStyle(Widget, Selector + ":focus");
};
Widget.ButtonPressed+=(o,ea)=> ApplyStyle(Widget, Selector + ":active");
Widget.GotFocus+=(o,ea)=> ApplyStyle(Widget, Selector + ":focus");
Widget.LostFocus += (o, ea) => ApplyStyle(Widget, Selector);
Widget.ButtonReleased+=(o,ea)=>
{
ApplyStyle(Widget, Selector);
if (Widget.HasFocus)
ApplyStyle(Widget, Selector + ":focus");
};
}