You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
274 lines
9.5 KiB
274 lines
9.5 KiB
using System; |
|
using System.Collections.Generic; |
|
using System.ComponentModel; |
|
using System.Drawing; |
|
using System.Data; |
|
using System.Linq; |
|
using System.Text; |
|
using System.Threading.Tasks; |
|
using System.Windows.Forms; |
|
using DevExpress.XtraEditors; |
|
using KGIS.Plugin.LayerProperty.Interface; |
|
using ESRI.ArcGIS.Display; |
|
using ESRI.ArcGIS.Carto; |
|
using ESRI.ArcGIS.esriSystem; |
|
using ESRI.ArcGIS.ADF; |
|
using KGIS.Plugin.LayerProperty.Utils; |
|
using DevExpress.XtraEditors.Controls; |
|
using stdole; |
|
|
|
namespace KGIS.Plugin.LayerProperty.View.UC_Controls |
|
{ |
|
public partial class UCTextSymbolAtrribute : XtraUserControl, IUCSymbolAtrribute |
|
{ |
|
private PictureEdit m_PictureEdit; |
|
private ISymbol m_Symbol; |
|
private IDoStyleGalleryItem m_DoStyleGalleryItem; |
|
private IStyleGalleryClass m_StyleGalleryClass; |
|
private ITextSymbol m_TextSymbol; |
|
public event System.EventHandler SymbolEdited; |
|
public UCTextSymbolAtrribute() |
|
{ |
|
InitializeComponent(); |
|
} |
|
public bool Init(ref ISymbol symbol) |
|
{ |
|
try |
|
{ |
|
this.m_TextSymbol = null; |
|
this.m_Symbol = null; |
|
this.m_Symbol = symbol; |
|
this.m_StyleGalleryClass = new TextSymbolStyleGalleryClassClass(); |
|
this.m_TextSymbol = (symbol as ITextSymbol); |
|
bool result; |
|
if (this.m_TextSymbol == null) |
|
{ |
|
result = false; |
|
return result; |
|
} |
|
if (this.m_TextSymbol.Color != null) |
|
{ |
|
if (this.m_TextSymbol.Color.NullColor) |
|
{ |
|
this.clrFontColor.Color = ColorTranslator.FromOle(this.m_TextSymbol.Color.RGB); |
|
} |
|
else |
|
{ |
|
this.clrFontColor.Color = Color.Transparent; |
|
} |
|
} |
|
else |
|
{ |
|
this.clrFontColor.Color = Color.Transparent; |
|
} |
|
this.fontEdit2.Text = this.m_TextSymbol.Font.Name; |
|
this.spSize.EditValue = this.m_TextSymbol.Font.Size; |
|
this.chkItalic.Checked = this.m_TextSymbol.Font.Italic; |
|
this.chkUnderline.Checked = this.m_TextSymbol.Font.Underline; |
|
this.chkBold.Checked = this.m_TextSymbol.Font.Bold; |
|
this.PreviewGalleryItem(); |
|
result = true; |
|
return result; |
|
} |
|
catch (Exception ex) |
|
{ |
|
//RdbUtil.AddException(ex); |
|
} |
|
return false; |
|
} |
|
public bool Init(ref IDoStyleGalleryItem symbol) |
|
{ |
|
try |
|
{ |
|
this.m_TextSymbol = null; |
|
this.m_DoStyleGalleryItem = null; |
|
this.m_DoStyleGalleryItem = symbol; |
|
IClone clone = symbol.Item.Item as IClone; |
|
this.m_TextSymbol = (clone.Clone() as ITextSymbol); |
|
bool result; |
|
if (this.m_TextSymbol == null) |
|
{ |
|
result = false; |
|
return result; |
|
} |
|
this.clrFontColor.Color = Converter.FromRGBColor(this.m_TextSymbol.Color as IRgbColor); |
|
this.fontEdit2.Text = this.m_TextSymbol.Font.Name; |
|
this.spSize.EditValue = this.m_TextSymbol.Font.Size; |
|
this.chkItalic.Checked = this.m_TextSymbol.Font.Italic; |
|
this.chkUnderline.Checked = this.m_TextSymbol.Font.Underline; |
|
this.chkBold.Checked = this.m_TextSymbol.Font.Bold; |
|
result = true; |
|
return result; |
|
} |
|
catch (Exception ex) |
|
{ |
|
//RdbUtil.AddException(ex); |
|
} |
|
return false; |
|
} |
|
public void SetPicture(PictureEdit pic) |
|
{ |
|
this.m_PictureEdit = pic; |
|
} |
|
private void clrFillColor_EditValueChanged(object sender, System.EventArgs e) |
|
{ |
|
try |
|
{ |
|
if (this.m_TextSymbol != null) |
|
{ |
|
IColor color = this.m_TextSymbol.Color; |
|
color = Converter.ToRGBColor(this.clrFontColor.Color); |
|
color.Transparency = this.clrFontColor.Color.A; |
|
this.m_TextSymbol.Color = color; |
|
} |
|
this.PreviewGalleryItem(); |
|
if (this.SymbolEdited != null) |
|
{ |
|
this.SymbolEdited(null, null); |
|
} |
|
} |
|
catch (Exception ex) |
|
{ |
|
//RdbUtil.AddException(ex); |
|
} |
|
} |
|
private void PreviewGalleryItem() |
|
{ |
|
try |
|
{ |
|
if (this.m_Symbol != null) |
|
{ |
|
this.m_PictureEdit.Image = StyleGalleryItemView.GetSymbolBitMap(this.m_PictureEdit.Width - 1, this.m_PictureEdit.Height - 1, this.m_StyleGalleryClass, this.m_Symbol); |
|
} |
|
else |
|
{ |
|
if (this.m_DoStyleGalleryItem != null) |
|
{ |
|
this.m_PictureEdit.Image = this.m_DoStyleGalleryItem.StyleGalleryClass.StyleGalleryItemToBmp(this.m_DoStyleGalleryItem, this.m_PictureEdit.Height); |
|
} |
|
} |
|
} |
|
catch (Exception ex) |
|
{ |
|
//RdbUtil.AddException(ex); |
|
} |
|
} |
|
private void spSize_EditValueChanging(object sender, ChangingEventArgs e) |
|
{ |
|
try |
|
{ |
|
if (Convert.ToDouble(e.NewValue) < 0.0) |
|
{ |
|
e.Cancel = true; |
|
} |
|
else |
|
{ |
|
if (this.m_TextSymbol != null) |
|
{ |
|
IFontDisp font = this.m_TextSymbol.Font; |
|
font.Size = Math.Abs(Convert.ToDecimal(e.NewValue)); |
|
this.m_TextSymbol.Font = font; |
|
} |
|
this.PreviewGalleryItem(); |
|
if (this.SymbolEdited != null) |
|
{ |
|
this.SymbolEdited(null, null); |
|
} |
|
} |
|
} |
|
catch (Exception ex) |
|
{ |
|
//RdbUtil.AddException(ex); |
|
} |
|
} |
|
private void fontEdit2_SelectedValueChanged(object sender, System.EventArgs e) |
|
{ |
|
try |
|
{ |
|
if (this.m_TextSymbol != null) |
|
{ |
|
IFontDisp fontDisp = this.m_TextSymbol.Font; |
|
System.Drawing.Font font = new System.Drawing.Font(this.fontEdit2.Text, Math.Abs(Convert.ToSingle(this.spSize.EditValue))); |
|
fontDisp = Converter.ToStdFont(font); |
|
fontDisp.Size = Math.Abs(Convert.ToDecimal(this.spSize.EditValue)); |
|
fontDisp.Italic = this.chkItalic.Checked; |
|
fontDisp.Bold = this.chkBold.Checked; |
|
fontDisp.Underline = this.chkUnderline.Checked; |
|
this.m_TextSymbol.Font = fontDisp; |
|
} |
|
this.PreviewGalleryItem(); |
|
if (this.SymbolEdited != null) |
|
{ |
|
this.SymbolEdited(null, null); |
|
} |
|
} |
|
catch (Exception ex) |
|
{ |
|
//RdbUtil.AddException(ex); |
|
} |
|
} |
|
private void chkBold_CheckedChanged(object sender, System.EventArgs e) |
|
{ |
|
try |
|
{ |
|
if (this.m_TextSymbol != null) |
|
{ |
|
IFontDisp font = this.m_TextSymbol.Font; |
|
font.Bold = this.chkBold.Checked; |
|
this.m_TextSymbol.Font = font; |
|
} |
|
this.PreviewGalleryItem(); |
|
if (this.SymbolEdited != null) |
|
{ |
|
this.SymbolEdited(null, null); |
|
} |
|
} |
|
catch (Exception ex) |
|
{ |
|
//RdbUtil.AddException(ex); |
|
} |
|
} |
|
private void chkItalic_CheckedChanged(object sender, System.EventArgs e) |
|
{ |
|
try |
|
{ |
|
if (this.m_TextSymbol != null) |
|
{ |
|
IFontDisp font = this.m_TextSymbol.Font; |
|
font.Italic = this.chkItalic.Checked; |
|
this.m_TextSymbol.Font = font; |
|
} |
|
this.PreviewGalleryItem(); |
|
if (this.SymbolEdited != null) |
|
{ |
|
this.SymbolEdited(null, null); |
|
} |
|
} |
|
catch (Exception ex) |
|
{ |
|
//RdbUtil.AddException(ex); |
|
} |
|
} |
|
private void chkUnderline_CheckedChanged(object sender, System.EventArgs e) |
|
{ |
|
try |
|
{ |
|
if (this.m_TextSymbol != null) |
|
{ |
|
IFontDisp font = this.m_TextSymbol.Font; |
|
font.Underline = this.chkUnderline.Checked; |
|
this.m_TextSymbol.Font = font; |
|
} |
|
this.PreviewGalleryItem(); |
|
if (this.SymbolEdited != null) |
|
{ |
|
this.SymbolEdited(null, null); |
|
} |
|
} |
|
catch (Exception ex) |
|
{ |
|
//RdbUtil.AddException(ex); |
|
} |
|
} |
|
} |
|
}
|
|
|