home *** CD-ROM | disk | FTP | other *** search
/ Game Level Design / GLDesign.bin / Software / UnrealEngine2Runtime / UE2Runtime-22262001_Demo.exe / GUI / Classes / GUIStyles.uc < prev    next >
Text File  |  2003-06-30  |  3KB  |  91 lines

  1. // ====================================================================
  2. //  Class:  GUI.GUIStyles
  3. //
  4. //    The GUIStyle is an object that is used to describe common visible
  5. //  components of the interface.
  6. //
  7. //  Written by Joe Wilcox
  8. //  (c) 2002, Epic Games, Inc.  All Rights Reserved
  9. // ====================================================================
  10.  
  11. class GUIStyles extends GUI
  12.     Native;
  13.  
  14. cpptext
  15. {
  16.         void Draw(UCanvas* Canvas, BYTE MenuState, FLOAT Left, FLOAT Top, FLOAT Width, FLOAT Height);
  17.         void DrawText(UCanvas* Canvas, BYTE MenuState, FLOAT Left, FLOAT Top, FLOAT Width, FLOAT Height, BYTE Just, const TCHAR* Text);
  18.         void TextSize(UCanvas* Canvas, BYTE MenuState, const TCHAR* Test, INT& XL, INT& YL);
  19. }
  20.  
  21. var        string                KeyName;            // This is the name of the style used for lookup
  22. var        EMenuRenderStyle    RStyles[5];            // The render styles for each state
  23. var        Material            Images[5];            // This array holds 1 material for each state (Blurry, Watched, Focused, Pressed, Disabled)
  24. var        eImgStyle            ImgStyle[5];        // How should each image for each state be drawed
  25. var        Color                FontColors[5];        // This array holds 1 font color for each state
  26. var        Color                ImgColors[5];        // This array holds 1 image color for each state
  27. var        GUIFont                Fonts[5];            // Holds the fonts for each state
  28. var        int                    BorderOffsets[4];    // How thick is the border
  29. var        string                FontNames[5];        // Holds the names of the 5 fonts to use
  30.  
  31. // Set by Controller
  32. var    bool                    bRegistered;        // Used as Default only. Tells if Controller has this style registered.
  33.  
  34. // the OnDraw delegate Can be used to draw.  Return true to skip the default draw method
  35.  
  36. delegate bool OnDraw(Canvas Canvas, eMenuState MenuState, float left, float top, float width, float height);
  37. delegate bool OnDrawText(Canvas Canvas, eMenuState MenuState, float left, float top, float width, float height, eTextAlign Align, string Text);
  38.  
  39. native function Draw(Canvas Canvas, eMenuState MenuState, float left, float top, float width, float height);
  40. native function DrawText(Canvas Canvas, eMenuState MenuState, float left, float top, float width, float height, eTextAlign Align, string Text);
  41.  
  42. event Initialize()
  43. {
  44.     local int i;
  45.  
  46.     // Preset all the data if needed
  47.  
  48.     for (i=0;i<5;i++)
  49.     {
  50.         Fonts[i] = Controller.GetMenuFont(FontNames[i]);
  51.     }
  52. }
  53.  
  54. defaultproperties
  55. {
  56.     RStyles(0)=MSTY_Normal;
  57.     RStyles(1)=MSTY_Normal;
  58.     RStyles(2)=MSTY_Normal;
  59.     RStyles(3)=MSTY_Normal;
  60.     RStyles(4)=MSTY_Normal;
  61.  
  62.     ImgStyle(0)=ISTY_Stretched
  63.     ImgStyle(1)=ISTY_Stretched
  64.     ImgStyle(2)=ISTY_Stretched
  65.     ImgStyle(3)=ISTY_Stretched
  66.     ImgStyle(4)=ISTY_Stretched
  67.  
  68.     ImgColors(0)=(R=255,G=255,B=255,A=255)
  69.     ImgColors(1)=(R=255,G=255,B=255,A=255)
  70.     ImgColors(2)=(R=255,G=255,B=255,A=255)
  71.     ImgColors(3)=(R=255,G=255,B=255,A=255)
  72.     ImgColors(4)=(R=128,G=128,B=128,A=255)
  73.  
  74.     FontColors(0)=(R=255,G=255,B=255,A=255)
  75.     FontColors(1)=(R=255,G=255,B=255,A=255)
  76.     FontColors(2)=(R=255,G=255,B=255,A=255)
  77.     FontColors(3)=(R=255,G=255,B=255,A=255)
  78.     FontColors(4)=(R=128,G=128,B=128,A=255)
  79.  
  80.     FontNames(0)="MenuFont"
  81.     FontNames(1)="MenuFont"
  82.     FontNames(2)="MenuFont"
  83.     FontNames(3)="MenuFont"
  84.     FontNames(4)="MenuFont"
  85.  
  86.     BorderOffsets(0)=9
  87.     BorderOffsets(1)=9
  88.     BorderOffsets(2)=9
  89.     BorderOffsets(3)=9
  90.  
  91. }