📄 treeshed.pas
字号:
scNever: ComboBox5.ItemIndex:=2;
end;
{ gradient }
ComboBox2.ItemIndex:=Ord(Gradient.Direction);
Shape2.Brush.Color:=Gradient.StartColor;
Shape3.Brush.Color:=Gradient.EndColor;
if Gradient.MidColor=clNone then
Shape6.Brush.Color:=GroupBox1.Color
else
Shape6.Brush.Color:=Gradient.MidColor;
CheckBox7.Enabled:=Gradient.MidColor<>clNone;
{ transparency }
UDTransp.Position:=Transparency;
ComboBox4.ItemIndex:=Ord(ImageAlignment);
ComboBox3.ItemIndex:=Ord(ImageIndex);
Shape1.Brush.Color:=Shadow.Color;
UpDown7.Position:=Shadow.HorizSize;
UpDown8.Position:=Shadow.VertSize;
CBSmooth.Checked:=Shadow.Smooth;
UpDown9.Position:=Shadow.Transparency;
CheckBox1.Checked:=AutoSize;
CheckBox5.Checked:=AutoPosition.Left;
CheckBox6.Checked:=AutoPosition.Top;
Edit3.Enabled:=not AutoSize;
Edit4.Enabled:=not AutoSize;
ScrollBar4.Enabled:=not CheckBox1.Checked;
ScrollBar5.Enabled:=not CheckBox1.Checked;
SetUpDowns;
Changing:=True;
ScrollBar2.Position:=0;
ScrollBar3.Position:=0;
ScrollBar4.Position:=X1-X0;
ScrollBar5.Position:=Y1-Y0;
CheckBox4.Checked:=GradientClip;
CheckBox8.Checked:=Text.ClipText;
if Connections.Count=0 then
CBConnStyle.ItemIndex:=0
else
CBConnStyle.ItemIndex:=Ord(Connections[0].Style);
With CBCursor do
begin
Items.BeginUpdate;
Clear;
GetCursorValues(ProcGetCursors);
ProcGetCursors(TeeMsg_TeeHand);
Items.EndUpdate;
end;
With CBCursor do
if TeeCursorToIdent(Cursor,tmpSt) then
ItemIndex:=Items.IndexOf(DeleteCursorPrefix(tmpSt))
else
ItemIndex:=-1;
UpDown5.Position:=ImageWidth;
UpDown6.Position:=ImageHeight;
CheckImgTransp;
if csDesigning in ComponentState then
Caption:=TreeMsg_EditingMode+Name;
Changing:=False;
end;
end;
Procedure TNodeTreeEditor.SetUpDowns;
Procedure ChangeUpDown(UpDown:TUpDown; Value:Integer);
var tmp : TEdit;
begin
if Abs(Value)<=32767 then
UpDown.Position:=Value
else
begin
tmp:=TEdit(UpDown.Associate);
UpDown.Associate:=nil;
tmp.Text:=TeeStr(Value);
end;
end;
begin
Changing:=True;
if Tree1.Selected.Count>0 then
with Tree1.Selected[0] do
begin
ChangeUpDown(UpDown1,X0);
ChangeUpDown(UpDown2,Y0);
ChangeUpDown(UpDown3,X1);
ChangeUpDown(UpDown4,Y1);
end;
Changing:=False;
end;
procedure TNodeTreeEditor.Shape1MouseUp(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var t : Integer;
tmpColor : TColor;
OldColor : TColor;
begin
With Tree1 do
if Selected.Count>0 then
begin
OldColor:=Selected[0].Shadow.Color;
tmpColor:=EditColor(Self,OldColor);
if tmpColor<>OldColor then
begin
for t:=0 to Selected.Count-1 do
Selected[t].Shadow.Color:=tmpColor;
Shape1.Brush.Color:=tmpColor;
end;
end;
end;
procedure TNodeTreeEditor.CheckBox1Click(Sender: TObject);
var t : Integer;
begin
if not Changing then
begin
With Tree1 do
for t:=0 to Selected.Count-1 do
With Selected[t] do AutoSize:=CheckBox1.Checked;
Edit3.Enabled:=not CheckBox1.Checked;
Edit4.Enabled:=not CheckBox1.Checked;
ScrollBar4.Enabled:=not CheckBox1.Checked;
ScrollBar5.Enabled:=not CheckBox1.Checked;
end;
end;
procedure TNodeTreeEditor.Edit2Change(Sender: TObject);
begin
if not Changing then
With Tree1 do
if Selected.Count>0 then Selected[0].Y0:=UpDown2.Position;
end;
procedure TNodeTreeEditor.Edit1Change(Sender: TObject);
begin
if not Changing then
With Tree1 do
if Selected.Count>0 then Selected[0].X0:=UpDown1.Position;
end;
procedure TNodeTreeEditor.Edit3Change(Sender: TObject);
begin
if not Changing then
With Tree1 do
if Selected.Count>0 then Selected[0].X1:=UpDown3.Position;
end;
procedure TNodeTreeEditor.Edit4Change(Sender: TObject);
begin
if not Changing then
With Tree1 do
if Selected.Count>0 then Selected[0].Y1:=UpDown4.Position;
end;
procedure TNodeTreeEditor.ProcGetCursors(const S: string);
begin
CBCursor.Items.Add(DeleteCursorPrefix(S));
end;
procedure TNodeTreeEditor.FormCreate(Sender: TObject);
begin
Changing:=True;
OldX:=0;
OldY:=0;
TeeTranslateControl(Self);
end;
procedure TNodeTreeEditor.ScrollBar2Change(Sender: TObject);
var t : Integer;
tmp : Integer;
begin
if not Changing then
begin
tmp:=(ScrollBar2.Position-OldX);
With Tree1.Selected do
for t:=0 to Count-1 do
Items[t].MoveRelative(tmp,0,False);
OldX:=ScrollBar2.Position;
SetUpDowns;
end;
end;
procedure TNodeTreeEditor.ScrollBar4Change(Sender: TObject);
var t : Integer;
begin
if not Changing then
begin
With Tree1 do
for t:=0 to Selected.Count-1 do
With Selected[t] do X1:=X0+ScrollBar4.Position;
SetUpDowns;
end;
end;
procedure TNodeTreeEditor.ScrollBar5Change(Sender: TObject);
var t : Integer;
begin
if not Changing then
begin
With Tree1 do
for t:=0 to Selected.Count-1 do
With Selected[t] do Y1:=Y0+ScrollBar5.Position;
SetUpDowns;
end;
end;
procedure TNodeTreeEditor.ScrollBar3Change(Sender: TObject);
var t : Integer;
tmp : Integer;
begin
if not Changing then
begin
tmp:=(ScrollBar3.Position-OldY);
With Tree1.Selected do
for t:=0 to Count-1 do
Items[t].MoveRelative(0,tmp,False);
OldY:=ScrollBar3.Position;
SetUpDowns;
end;
end;
procedure TNodeTreeEditor.CBCursorChange(Sender: TObject);
var tmpCursor : Longint;
t : Integer;
begin
if TeeIdentToCursor(TeeCursorPrefix+
CBCursor.Items[CBCursor.ItemIndex],
tmpCursor) then
With Tree1 do
for t:=0 to Selected.Count-1 do Selected[t].Cursor:=tmpCursor;
end;
procedure TNodeTreeEditor.Button4Click(Sender: TObject);
var t : Integer;
tmp : TColor;
begin
for t:=0 to Tree1.Selected.Count-1 do
With Tree1.Selected[t].Gradient do
begin
tmp:=StartColor;
StartColor:=EndColor;
EndColor:=tmp;
Shape2.Brush.Color:=StartColor;
Shape3.Brush.Color:=EndColor;
end;
end;
procedure TNodeTreeEditor.CheckBox4Click(Sender: TObject);
var t : Integer;
begin
if not Changing then
for t:=0 to Tree1.Selected.Count-1 do
Tree1.Selected[t].GradientClip:=CheckBox4.Checked;
end;
procedure TNodeTreeEditor.Shape4MouseUp(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var tmpColor : TColor;
t : Integer;
OldColor : TColor;
begin
OldColor:=Tree1.Selected[0].Brush.Color;
tmpColor:=EditColor(Self,OldColor);
if tmpColor<>OldColor then
begin
for t:=0 to Tree1.Selected.Count-1 do
begin
Tree1.Selected[t].Brush.Color:=tmpColor;
Tree1.Selected[t].Transparent:=False;
end;
Shape4.Brush.Color:=tmpColor;
CheckBox3.Checked:=False;
end;
end;
procedure TNodeTreeEditor.ComboBox3Change(Sender: TObject);
var t : Integer;
begin
With Tree1 do
for t:=0 to Selected.Count-1 do
Selected[t].ImageIndex:=TTreeNodeImageIndex(ComboBox3.ItemIndex);
Image1Assign(Tree1.Selected[0].GetPicture);
end;
procedure TNodeTreeEditor.CheckBox5Click(Sender: TObject);
var t : Integer;
begin
if not Changing then
With Tree1 do
for t:=0 to Selected.Count-1 do
With Selected[t] do AutoPosition.Left:=CheckBox5.Checked;
end;
procedure TNodeTreeEditor.Edit7Change(Sender: TObject);
var t : Integer;
begin
if not Changing then
With Tree1 do
for t:=0 to Selected.Count-1 do
With Selected[t] do Shadow.HorizSize:=UpDown7.Position;
end;
procedure TNodeTreeEditor.Edit8Change(Sender: TObject);
var t : Integer;
begin
if not Changing then
With Tree1 do
for t:=0 to Selected.Count-1 do
With Selected[t] do Shadow.VertSize:=UpDown8.Position;
end;
procedure TNodeTreeEditor.PageControl1Change(Sender: TObject);
var tmp : TFormTeeText;
begin
if (Sender as TPageControl).ActivePage=TabText then
if TabText.ControlCount=0 then
begin
tmp:=TFormTeeText.Create(Self);
tmp.Tree1:=Tree1;
tmp.Connection1:=nil;
AddFormTo(tmp,TabText{$IFNDEF D4},0{$ENDIF});
tmp.ReAlign; //tom:01/09/2002
end;
end;
procedure TNodeTreeEditor.CheckBox6Click(Sender: TObject);
var t : Integer;
begin
if not Changing then
With Tree1 do
for t:=0 to Selected.Count-1 do
With Selected[t] do AutoPosition.Top:=CheckBox6.Checked;
end;
procedure TNodeTreeEditor.Edit5Change(Sender: TObject);
var t:Integer;
begin
if not Changing then
With Tree1 do
for t:=0 to Selected.Count-1 do
With Selected[t] do
if Sender=Edit5 then ImageWidth:=UpDown5.Position
else ImageHeight:=UpDown6.Position;
end;
procedure TNodeTreeEditor.ComboBox5Change(Sender: TObject);
var t : Integer;
begin
if not Changing then
With Tree1 do
for t:=0 to Selected.Count-1 do
With Selected[t] do
Case ComboBox5.ItemIndex of
0: ShowCross:=scAuto;
1: ShowCross:=scAlways;
2: ShowCross:=scNever;
end;
end;
procedure TNodeTreeEditor.Shape5MouseUp(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var tmpColor : TColor;
t : Integer;
OldColor : TColor;
begin
OldColor:=Tree1.Selected[0].Border.Color;
tmpColor:=EditColor(Self,OldColor);
if tmpColor<>OldColor then
begin
for t:=0 to Tree1.Selected.Count-1 do
Tree1.Selected[t].Border.Color:=tmpColor;
Shape5.Brush.Color:=tmpColor;
end;
end;
procedure TNodeTreeEditor.Shape6MouseUp(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var t : Integer;
tmpColor : TColor;
OldColor : TColor;
begin
With Tree1 do
if Selected.Count>0 then
begin
OldColor:=Selected[0].Gradient.MidColor;
tmpColor:=EditColor(Self,OldColor);
if tmpColor<>OldColor then
begin
for t:=0 to Selected.Count-1 do
Selected[t].Gradient.MidColor:=tmpColor;
Shape6.Brush.Color:=tmpColor;
end;
end;
CheckBox7.Enabled:=True;
end;
procedure TNodeTreeEditor.BBackColorClick(Sender: TObject);
var t : Integer;
begin
With Tree1.Selected do
if Count>0 then
for t:=1 to Count-1 do Items[t].BackColor:=Items[0].BackColor;
end;
procedure TNodeTreeEditor.CheckBox7Click(Sender: TObject);
var t : Integer;
begin
if CheckBox7.Checked then
for t:=0 to Tree1.Selected.Count-1 do
Tree1.Selected[t].Gradient.MidColor:=clNone;
CheckBox7.Enabled:=not CheckBox7.Checked;
if CheckBox7.Checked then Shape6.Brush.Color:=GroupBox1.Color;
end;
procedure TNodeTreeEditor.ETranspChange(Sender: TObject);
var t : Integer;
begin
if Showing then
for t:=0 to Tree1.Selected.Count-1 do
Tree1.Selected[t].Transparency:=UDTransp.Position;
end;
procedure TNodeTreeEditor.CBConnStyleChange(Sender: TObject);
var t : Integer;
tt : Integer;
begin
if not Changing then
With Tree1 do
for t:=0 to Selected.Count-1 do
With Selected[t] do
for tt:=0 to Connections.Count-1 do
Connections[tt].Style:=TTreeConnectionStyle(CBConnStyle.ItemIndex);
end;
procedure TNodeTreeEditor.CheckBox8Click(Sender: TObject);
var t: Integer;
begin
if not Changing then
With Tree1 do
for t:=0 to Selected.Count-1 do Selected[t].Text.ClipText:=CheckBox8.Checked;
end;
procedure TNodeTreeEditor.CBImgTranspClick(Sender: TObject);
var t : Integer;
begin
With Tree1 do
begin
for t:=0 to Selected.Count-1 do
Selected[t].Image.Transparent:=CBImgTransp.Checked;
Invalidate;
end;
end;
procedure TNodeTreeEditor.CBSmoothClick(Sender: TObject);
var t : Integer;
begin
if not Changing then
With Tree1 do
for t:=0 to Selected.Count-1 do
With Selected[t] do Shadow.Smooth:=CBSmooth.Checked;
end;
procedure TNodeTreeEditor.Edit9Change(Sender: TObject);
var t : Integer;
begin
if not Changing then
With Tree1 do
for t:=0 to Selected.Count-1 do
With Selected[t] do Shadow.Transparency:=UpDown9.Position;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -