Mit diesem Script kann die Farbe des Cursors geändert werden. Es kann ausgewählt werden für welches Farbschema, welche Farbe gesetzt wird.
Zusätzlich kann die Farbe auch zurückgesetzt werden. Hierfür einfach auf die Farbe des gewünschten Schemas klicken.
Es wird ein neuer Menüpunkt unter Ansicht > Cursor-Farbe setzen… erzeugt.
Das Farbschema könnt ihr in den Einstellungen festlegen:
Vielen Dank an Nairolf für die Umsetzung. Ich hab nur die GUI dafür gebaut.
Man bemerke das schöne pinke Fadenkreuz :w00t:
SetCursorColor (1250 Downloads )
/*
* SetCursorColor
*
* Cursor-Farbe je EPLAN-Farbscheme benutzerdefiniert setzen.
*
* ~~~~~~~~~~~~~~~~~ Changelog ~~~~~~~~~~~~~~~~~
* 2011-07-18 Nairolf Programmerstellung
* 2011-08-07 Jonny Wire Erweiterung um GUI
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*/
using System;
using System.Drawing;
using System.Windows.Forms;
using Eplan.EplApi.Base;
using Eplan.EplApi.Scripting;
public partial class frmSetCursorColor : System.Windows.Forms.Form
{
#region Variable
private ColorDialog cd;
private Settings oSettings = new Settings();
private Button btnReset;
private PictureBox pbWhite;
private PictureBox pbGray;
private PictureBox pbBlack;
private Label lblWhite;
private Label lblGray;
private Label lblBlack;
private Button btnClose;
private bool bColorChanged = false;
private Color cSetting = new Color();
#endregion
# region Action
[DeclareAction("SetCursorColor")]
public void Function()
{
frmSetCursorColor fSetCursorColor = new frmSetCursorColor();
fSetCursorColor.ShowDialog();
return;
}
private void SetCursorSetting(string Schema)
{
// Set color to setting
if (cd.ShowDialog() == DialogResult.OK)
{
oSettings.SetNumericSetting("USER.GedViewer.ColorSchema." + Schema + ".Cursor.Red", cd.Color.R, 0);
oSettings.SetNumericSetting("USER.GedViewer.ColorSchema." + Schema + ".Cursor.Green", cd.Color.G, 0);
oSettings.SetNumericSetting("USER.GedViewer.ColorSchema." + Schema + ".Cursor.Blue", cd.Color.B, 0);
// Set color to preview
switch (Schema)
{
case "White":
pbWhite.BackColor = cd.Color;
break;
case "Gray":
pbGray.BackColor = cd.Color;
break;
case "Black":
pbBlack.BackColor = cd.Color;
break;
}
bColorChanged = true;
}
}
private void btnReset_Click(object sender, EventArgs e)
{
// Set default colors
oSettings.SetNumericSetting("USER.GedViewer.ColorSchema.White.Cursor.Red", 128, 0);
oSettings.SetNumericSetting("USER.GedViewer.ColorSchema.White.Cursor.Green", 128, 0);
oSettings.SetNumericSetting("USER.GedViewer.ColorSchema.White.Cursor.Blue", 128, 0);
pbWhite.BackColor = Color.FromArgb(128, 128, 128);
oSettings.SetNumericSetting("USER.GedViewer.ColorSchema.Gray.Cursor.Red", 192, 0);
oSettings.SetNumericSetting("USER.GedViewer.ColorSchema.Gray.Cursor.Green", 0, 0);
oSettings.SetNumericSetting("USER.GedViewer.ColorSchema.Gray.Cursor.Blue", 0, 0);
pbGray.BackColor = Color.FromArgb(192, 0, 0);
oSettings.SetNumericSetting("USER.GedViewer.ColorSchema.Black.Cursor.Red", 255, 0);
oSettings.SetNumericSetting("USER.GedViewer.ColorSchema.Black.Cursor.Green", 255, 0);
oSettings.SetNumericSetting("USER.GedViewer.ColorSchema.Black.Cursor.Blue", 255, 0);
pbBlack.BackColor = Color.FromArgb(255, 255, 255);
bColorChanged = true;
}
private void pbWhite_Click(object sender, EventArgs e)
{
SetCursorSetting("White");
}
private void pbGray_Click(object sender, EventArgs e)
{
SetCursorSetting("Gray");
}
private void pbBlack_Click(object sender, EventArgs e)
{
SetCursorSetting("Black");
}
private void btnClose_Click(object sender, EventArgs e)
{
this.Close();
}
private void frmSetCursorColor_Load(object sender, EventArgs e)
{
// Load colors from settings
// Wthite
cSetting = Color.FromArgb(
oSettings.GetNumericSetting("USER.GedViewer.ColorSchema.White.Cursor.Red", 0),
oSettings.GetNumericSetting("USER.GedViewer.ColorSchema.White.Cursor.Green", 0),
oSettings.GetNumericSetting("USER.GedViewer.ColorSchema.White.Cursor.Blue", 0));
pbWhite.BackColor = cSetting;
// Gray
cSetting = Color.FromArgb(
oSettings.GetNumericSetting("USER.GedViewer.ColorSchema.Gray.Cursor.Red", 0),
oSettings.GetNumericSetting("USER.GedViewer.ColorSchema.Gray.Cursor.Green", 0),
oSettings.GetNumericSetting("USER.GedViewer.ColorSchema.Gray.Cursor.Blue", 0));
pbGray.BackColor = cSetting;
// Black
cSetting = Color.FromArgb(
oSettings.GetNumericSetting("USER.GedViewer.ColorSchema.Black.Cursor.Red", 0),
oSettings.GetNumericSetting("USER.GedViewer.ColorSchema.Black.Cursor.Green", 0),
oSettings.GetNumericSetting("USER.GedViewer.ColorSchema.Black.Cursor.Blue", 0));
pbBlack.BackColor = cSetting;
}
private void frmSetCursorColor_FormClosed(object sender, FormClosedEventArgs e)
{
// Check if color changed
if (bColorChanged)
{
MessageBox.Show("Cursor-Farbschema geändert.\n"
+ "EPLAN muß neu gestartet werden damit die neue Einstellung übernommen wird.",
"SetCursorColor", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
#endregion
#region Menü
[DeclareMenu]
public void MenuFunction()
{
Eplan.EplApi.Gui.Menu oMenu = new Eplan.EplApi.Gui.Menu();
oMenu.AddMenuItem
(
"Cursor-Farbe setzen...",
"SetCursorColor",
"Cursor-Farbe für verschiedene Farbschema setzen",
35178,
1,
false,
false
);
}
#endregion
}
super Sache, ich hab das gleich mal ausprobiert und musste feststellen das sich meine Cursorfarbe leider nicht ändert :sad:
ich habe das skript in 2.0 geladen, unter Ansicht ist auch der Eintrag Cursorfarbe vorhanden und die GUI wird mir auch angezeigt, aber egal was ich hier für Farben einstelle meine cursorfarbe bleibt immer blau :blink:
ich hatte vorher das Skript von Frank probiert http://ww3.cad.de/foren/ubb/Forum467/HTML/004796.shtml kann es sein das hierdurch das andere irgendwie blockiert wird??
obwohl mir unter Dienstprogramme –> Scripte nicht angezeigt wird
Gruß :face:
Marco
Nairolf hat im CAD.de Beitrag auch geschrieben:
Somit einfach nochmal ausführen.
Wichtig ist auch das EPLAN danach neugestartet wird.
Vielleicht hat jemand ne Lösung ohne Neustart?!
hat funktioniert, sogar ohne Neustart, wechselte der Cursor sofort auf meine Lieblingsfarbe PINK :whistle:
Ist ja auch eine schöne Farbe :wub:
Sehr schöne GUI-Erweiterung des Scriptes
(jetzt, da das Buch fertig ist, bleibt wieder für sowas Zeit :whistle: )
@Cursorfarbe:
Pink ist das neue Schwarz in diesem Herbst :angel: