{***************************************************************************}
{ TMS IntraWeb Component Pack Pro                                           }
{ for Delphi & C++Builder                                                   }
{                                                                           }
{ written by TMS Software                                                   }
{            copyright © 2002 - 2007                                        }
{            Email : info@tmssoftware.com                                   }
{            Web : http://www.tmssoftware.com                               }
{                                                                           }
{ The source code is given as is. The author is not responsible             }
{ for any possible damage done due to the use of this code.                 }
{ The component can be freely used in any application. The complete         }
{ source code remains property of the author and may not be distributed,    }
{ published, given or sold in any form as such. No parts of the source      }
{ code can be included in any other component or application without        }
{ written authorization of the author.                                      }
{***************************************************************************}

unit IWAdvSelectorDE;

{$I TMSDEFS.INC}

interface

uses
  Classes, IWAdvSelector, Forms, Graphics
{$IFNDEF LINUX}
  , IWHTMLDE, IWTMSImgDE, IWTMSImg, IWTMSBase
{$ENDIF}
{$IFDEF TMSIW72}
  , IWColor, IWDsnColor
{$ENDIF}

{$IFDEF DELPHI6_LVL}
  , DesignIntf, DesignEditors
{$ELSE}
  , DsgnIntf
{$ENDIF}
  ;


type
  TIWAdvSelectorEditor = class(TDefaultEditor)
  protected
{$IFNDEF DELPHI6_LVL}
    procedure EditProperty(PropertyEditor: TPropertyEditor;
      var Continue, FreeEditor: Boolean); override;
{$ELSE}
    procedure EditProperty(const PropertyEditor: IProperty; var Continue: Boolean); override;
{$ENDIF}
  public
    function GetVerb(index:integer):string; override;
    function GetVerbCount:integer; override;
    procedure ExecuteVerb(Index:integer); override;

  end;

procedure Register;

implementation

uses
  SysUtils, Dialogs;

{$IFDEF DELPHI6_LVL}
procedure TIWAdvSelectorEditor.EditProperty(const PropertyEditor: IProperty; var Continue: Boolean);
{$ELSE}
procedure TIWAdvSelectorEditor.EditProperty(PropertyEditor: TPropertyEditor;
  var Continue, FreeEditor: Boolean);
{$ENDIF}
var
  PropName: string;
begin
  PropName := PropertyEditor.GetName;
  if (CompareText(PropName, 'ITEMS') = 0) then
  begin
    PropertyEditor.Edit;
    Continue := False;
  end;
end;


procedure TIWAdvSelectorEditor.ExecuteVerb(Index: integer);
var
  MySelector: TTIWAdvSelector;
begin
  MySelector := (Component as TTIWAdvSelector);
  case Index of
  0:begin

       with MySelector do
       begin
        ShowSelectedColor := true;
        ShowSelectedItem := false;
        ShowSelectedText := false;
        DropDown.Columns := 8;
        DropDown.GlyphHeight := 15;
        DropDown.GlyphWidth := 15;
        DropDown.ItemHeight := 23;
        DropDown.ItemWidth := 21;
        DropDown.GlyphMarginX := 2;
        DropDown.GlyphMarginY := 2;
       end;

      MySelector.Items.Clear;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := 'Automatic';
        Value := '';
        Hint := 'Automatic';
        Color := clWebBLACK;
        Glyph.FileName := EmptyStr;
        Size := isFull;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Black';
        Color := clWebBLACK;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Brown';
        Color := clWebBROWN;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Olive Green';
        Color := $003333;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Dark Green';
        Color := $003300;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Dark Teal';
        Color := $663300;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Dark Blue';
        Color := clWebNAVY;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Indigo';
        Color := $993333;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Gray-80%';
        Color := $003333;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Dark Red';
        Color := clWebMAROON;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Orange';
        Color := clWebORANGE;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Dark Yellow';
        Color := clWebOLIVE;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Green';
        Color := clWebGREEN;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Teal';
        Color := clWebTEAL;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Blue';
        Color := clWebBLUE;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Blue-Gray';
        Color := $996666;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Gray-50%';
        Color := clWebGRAY;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Red';
        Color := clWebRED;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Light Orange';
        Color := $0099FF;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Lime';
        Color := $00CC99;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Sea Green';
        Color := $669933;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Aqua';
        Color := $CCCC33;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Light Blue';
        Color := $FF6633;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Violet';
        Color := clWebPURPLE;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Gray-40%';
        Color := $999999;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Pink';
        Color := clWebFUCHSIA;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Gold';
        Color := clWebGOLD;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Yellow';
        Color := clWebYELLOW;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Bright Green';
        Color := clWebLIME;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Turquoise';
        Color := clWebCYAN;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Sky Blue';
        Color := clWebSKYBLUE;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Plum';
        Color := $663399;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Gray-25%';
        Color := clWebSILVER;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Rose';
        Color := $CC99FF;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Tan';
        Color := $99CCFF;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Light Yellow';
        Color := $99FFFF;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Light Green';
        Color := $CCFFCC;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Light Turquoise';
        Color := $FFFFCC;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Pale Blue';
        Color := $FFCC99;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'Lavendar';
        Color := $FF99CC;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itColor;
        Text := '';
        Value := '';
        Hint := 'White';
        Color := clWebWHITE;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

    end;

  1:begin

       with MySelector do
       begin
        ShowSelectedColor := false;
        ShowSelectedItem := false;
        ShowSelectedText := true;
        DropDown.Columns := 1;
        DropDown.ItemHeight := 25;
        DropDown.ItemWidth := 180;
       end;

      MySelector.Items.Clear;

      with MySelector.Items.Add do
      begin
        ItemType := itFont;
        Text := 'Arial';
        Value := 'Arial';
        Hint := 'Arial';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itFont;
        Text := 'Comic Sans MS';
        Value := 'Comic Sans MS';
        Hint := 'Comic Sans MS';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itFont;
        Text := 'Courier New';
        Value := 'Courier New';
        Hint := 'Courier New';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itFont;
        Text := 'Tahoma';
        Value := 'Tahoma';
        Hint := 'Tahoma';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itFont;
        Text := 'Times New Roman';
        Value := 'Times New Roman';
        Hint := 'Times New Roman';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itFont;
        Text := 'Verdana';
        Value := 'Verdana';
        Hint := 'Verdana';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itFont;
        Text := 'Webdings';
        Value := '';
        Hint := 'Webdings';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;
    end;
  2:begin
       with MySelector do
       begin
       Font.Size := 12;
        ShowSelectedColor := false;
        ShowSelectedItem := false;
        ShowSelectedText := true;
        DropDown.Columns := 4;
        DropDown.GlyphHeight := 15;
        DropDown.GlyphWidth := 15;
        DropDown.ItemHeight := 23;
        DropDown.ItemWidth := 21;
        DropDown.GlyphMarginX := 2;
        DropDown.GlyphMarginY := 2;
       end;

      MySelector.Items.Clear;

      with MySelector.Items.Add do
      begin
        ItemType := itCustom;
        Text := '€';
        Value := '€';
        Hint := '';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itCustom;
        Text := '£';
        Value := '£';
        Hint := '';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itCustom;
        Text := '$';
        Value := '$';
        Hint := '';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itCustom;
        Text := '¥';
        Value := '¥';
        Hint := '';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itCustom;
        Text := '©';
        Value := '©';
        Hint := '';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itCustom;
        Text := '®';
        Value := '®';
        Hint := '';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itCustom;
        Text := '™';
        Value := '™';
        Hint := '';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itCustom;
        Text := '½';
        Value := '½';
        Hint := '';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itCustom;
        Text := '¼';
        Value := '¼';
        Hint := '';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itCustom;
        Text := '¾';
        Value := '¾';
        Hint := '';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itCustom;
        Text := '&#171;';
        Value := '&#171;';
        Hint := '';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itCustom;
        Text := '&#187;';
        Value := '&#187;';
        Hint := '';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itCustom;
        Text := '±';
        Value := '±';
        Hint := '';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itCustom;
        Text := 'Ø';
        Value := 'Ø';
        Hint := '';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itCustom;
        Text := '‰';
        Value := '‰';
        Hint := '';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itCustom;
        Text := '÷';
        Value := '÷';
        Hint := '';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itCustom;
        Text := '¡';
        Value := '¡';
        Hint := '';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itCustom;
        Text := '¿';
        Value := '¿';
        Hint := '';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itCustom;
        Text := '²';
        Value := '²';
        Hint := '';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;

      with MySelector.Items.Add do
      begin
        ItemType := itCustom;
        Text := '³';
        Value := '³';
        Hint := '';
        Color := clNone;
        Glyph.FileName := EmptyStr;
        Size := isNormal;
      end;


    end;
  3:begin
       with MySelector do
       begin
            Font.Color := clWebBlack;
            BorderWidth := 1;
            BorderColor := clNone;

            BackColor := clWebLIGHTCYAN;
            BackColorTo := clWebLIGHTSTEELBLUE;
            BackColorGradientDirection := gdVertical;

            DownBorderColor := clWebSTEELBLUE;
            DownColor := clWebLIGHTSTEELBLUE;
            DownColorTo := clWebLIGHTSTEELBLUE;
            DownColorGradientDirection := gdVertical;

            HotBorderColor := clWebSTEELBLUE;
            HotColor := clWebAZURE;
            HotColorTo := clWebAZURE;
            HotColorGradientDirection := gdVertical;

            DropDown.BackColor := clWebAZURE;
            DropDown.BackColorTo := clWebWHITE;
            DropDown.CaptionColor := clBtnFace;
            DropDown.CaptionColorTo := clNone;
            DropDown.CaptionForeColor := clWebBLACK;
            DropDown.CaptionDragGripColor := clInactiveBorder;
      end;
    end;
  4:begin
       with MySelector do
       begin
            Font.Color := clWebBLACK;

            BorderWidth := 1;
            BorderColor := clNone;

            BackColor := clWebALICEBLUE;
            BackColorTo := clWebLIGHTSKYBLUE;
            BackColorGradientDirection := gdVertical;

            DownBorderColor := clWebLIGHTSTEELBLUE;
            DownColor := clWebYELLOW;
            DownColorTo := clWebORANGE;
            DownColorGradientDirection := gdVertical;

            HotBorderColor := clWebLIGHTSTEELBLUE;
            HotColor := clWebGOLD;
            HotColorTo := clWebORANGE;
            HotColorGradientDirection := gdVertical;

            DropDown.BackColor := clWebAZURE;
            DropDown.BackColorTo := clWebWHITE;
            DropDown.CaptionColor := clWebDEEPSKYBLUE;
            DropDown.CaptionColorTo := clWebNAVY;
            DropDown.CaptionForeColor := clWebWHITE;
            DropDown.CaptionDragGripColor := clWebNAVY;
        end;
    end;
  5:begin
       with MySelector do
       begin
            Font.Color := clWebBLACK;

            BorderWidth := 1;
            BorderColor := clNone;

            BackColor :=  clBtnFace;
            BackColorTo :=  clBtnFace;
            BackColorGradientDirection := gdVertical;

            DownBorderColor := clInactiveCaption;
            DownColor := clInactiveCaptionText;
            DownColorTo := clInactiveCaptionText;
            DownColorGradientDirection := gdVertical;

            HotBorderColor := clInactiveCaption;
            HotColor := clInactiveCaptionText;
            HotColorTo := clInactiveCaptionText;
            HotColorGradientDirection := gdVertical;

            DropDown.BackColor := clWebWHITESMOKE;
            DropDown.BackColorTo := clNone;
            DropDown.CaptionColor := clBtnFace;
            DropDown.CaptionColorTo := clNone;
            DropDown.CaptionForeColor := clWebBLACK;
            DropDown.CaptionDragGripColor := clInactiveBorder;
        end;
    end;
  6:begin
       with MySelector do
       begin
            Font.Color := clWebBLACK;

            BorderWidth := 1;
            BorderColor := clNone;

            BackColor :=  clWebALICEBLUE;
            BackColorTo :=  clWebLIGHTSTEELBLUE;
            BackColorGradientDirection := gdVertical;

            DownBorderColor := clWebSTEELBLUE;
            DownColor := clWebGHOSTWHITE;
            DownColorTo := clWebWHITESMOKE;
            DownColorGradientDirection := gdVertical;

            HotBorderColor := clWebSTEELBLUE;
            HotColor := clWebGHOSTWHITE;
            HotColorTo := clWebWHITESMOKE;
            HotColorGradientDirection := gdVertical;

            DropDown.BackColor := clWebALICEBLUE;
            DropDown.BackColorTo := clWebWHITE;
            DropDown.CaptionColor := clWebALICEBLUE;
            DropDown.CaptionColorTo := clWebLIGHTSTEELBLUE;
            DropDown.CaptionForeColor := clWebBLACK;
            DropDown.CaptionDragGripColor := clWebBLACK;
       end;
    end;
    7:begin
       with MySelector do
       begin
            Font.Color := clWebLIMEGREEN;

            BorderWidth := 1;
            BorderColor := clNone;

            BackColor :=  clWebHONEYDEW;
            BackColorTo :=  clNone;
            BackColorGradientDirection := gdVertical;

            DownBorderColor := clWebBLACK;
            DownColor := clWebGRAY;
            DownColorTo := clNone;
            DownColorGradientDirection := gdVertical;

            HotBorderColor := clWebBLACK;
            HotColor := clWebHONEYDEW;
            HotColorTo := clNone;
            HotColorGradientDirection := gdVertical;

            DropDown.BackColor := clWebHONEYDEW;
            DropDown.BackColorTo := clNone;
            DropDown.CaptionColor := clWebHONEYDEW;
            DropDown.CaptionColorTo := clNone;
            DropDown.CaptionForeColor := clWebLIMEGREEN;
            DropDown.CaptionDragGripColor := clWebLIMEGREEN;
         end;
     end;
   8:begin
       with MySelector do
       begin
            Font.Color := clWebDARKRED;

            BorderWidth := 1;
            BorderColor := clNone;

            BackColor :=  clWebGOLD;
            BackColorTo :=  clWebSANDYBROWN;
            BackColorGradientDirection := gdVertical;

            DownBorderColor := clWebINDIANRED;
            DownColor := clWebSEASHELL;
            DownColorTo := clWebLIGHTSALMON;
            DownColorGradientDirection := gdVertical;

            HotBorderColor := clWebINDIANRED;
            HotColor := clWebSANDYBROWN;
            HotColorTo := clWebTAN;
            HotColorGradientDirection := gdVertical;

            DropDown.BackColor := clWebSEASHELL;
            DropDown.BackColorTo := clWebLIGHTSALMON;
            DropDown.CaptionColor := clWebGOLD;
            DropDown.CaptionColorTo := clWebSANDYBROWN;
            DropDown.CaptionForeColor := clWebDARKRED;
            DropDown.CaptionDragGripColor := clWebDARKRED;
       end;
    end;
    9:begin
       with MySelector do
       begin
            Font.Color := clWebWHITE;

            BorderWidth := 1;
            BorderColor := clNone;

            BackColor :=  clWebROYALBLUE;
            BackColorTo :=  clWebMIDNIGHTBLUE;
            BackColorGradientDirection := gdVertical;

            DownBorderColor := clWebWHITE;
            DownColor := clWebBLACK;
            DownColorTo := clNone;
            DownColorGradientDirection := gdVertical;

            HotBorderColor := clWebWHITE;
            HotColor := clWebMEDIUMBLUE;
            HotColorTo := clWebBLACK;
            HotColorGradientDirection := gdVertical;

            DropDown.BackColor := clWebROYALBLUE;
            DropDown.BackColorTo := clNone;
            DropDown.CaptionColor := clWebROYALBLUE;
            DropDown.CaptionColorTo := clWebMIDNIGHTBLUE;
            DropDown.CaptionForeColor := clWebWHITE;
            DropDown.CaptionDragGripColor := clWebWHITE;
       end;
    end;
    10:begin
       with MySelector do
       begin
            Font.Color := clWebSLATEGRAY;

            BorderWidth := 1;
            BorderColor := clNone;

            BackColor :=  clInactiveCaptionText;
            BackColorTo :=  clWebWHITE;
            BackColorGradientDirection := gdVertical;

            DownBorderColor := clWebGRAY;
            DownColor := clWebWHITESMOKE;
            DownColorTo := clWebWHITE;
            DownColorGradientDirection := gdVertical;

            HotBorderColor := clWebSLATEGRAY;
            HotColor := clInactiveCaptionText;
            HotColorTo := clWebWHITE;
            HotColorGradientDirection := gdVertical;

            DropDown.BackColor := clWebWHITE;
            DropDown.BackColorTo := clInactiveCaptionText;
            DropDown.CaptionColor := clInactiveCaptionText;
            DropDown.CaptionColorTo := clWebWHITE;
            DropDown.CaptionForeColor := clWebSLATEGRAY;
            DropDown.CaptionDragGripColor := clWebSLATEGRAY;
       end;
    end;
  end;
  Designer.Modified;
end;

function TIWAdvSelectorEditor.GetVerb(index: integer): string;
begin
  case index of
  0:Result := '&Color selector';
  1:Result := '&Font selector';
  2:Result := '&Symbol selector';
  3:Result := 'Standard style';
  4:Result := 'Office 2003 style';
  5:Result := 'XP style';
  6:Result := 'Hotmail style';
  7:Result := 'Terminal Green';
  8:Result := 'Endless Summer';
  9:Result := 'Deep Space';
  10:Result := 'Arctic';

  end;
end;

function TIWAdvSelectorEditor.GetVerbCount: integer;
begin
  Result := 11;
end;


procedure Register;
begin
  {$IFDEF TMSIW72}
  RegisterPropertyEditor(TypeInfo(TIWColor), TAdvSelectorDropDown, '', TIWColorEditor);
  RegisterPropertyEditor(TypeInfo(TIWColor), TAdvSelectorItem, '', TIWColorEditor);
  {$ENDIF}
  RegisterComponentEditor(TTIWAdvSelector,TIWAdvSelectorEditor);
end;

end.
