Advertisement
Mouamle

Frame, Button

Apr 27th, 2016
375
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 3.76 KB | None | 0 0
  1. --[[
  2.     createButton(
  3.         x - أحداثي x للزر
  4.         y - أحداثي y للزر
  5.         w - عرض الزر
  6.         h - أرتفاع الزر
  7.         text - النص اللي يضهر داخله
  8.         Color - لون مربع الزر
  9.         textColor - لون النص
  10.     )
  11. ]]
  12. function createButton( x, y, w, h, text, Color, textColor )
  13.     xOfset = 0;
  14.     yOfset = 0;
  15.     isVisableX = true;
  16.     local MButton = {
  17.         x = 0, y = 0,
  18.         w = 80, h = 20,
  19.         text = "Button",
  20.         isVisable = isVisableX,
  21.         textColor = tocolor( 236, 240, 241, 255 ),
  22.         Color = tocolor( 231, 76, 60, 150 ),
  23.  
  24.  
  25.         render = function ()
  26.             if ( isVisableX == true ) then
  27.                 dxDrawRectangle( x + xOfset, y + yOfset, w, h, Color )
  28.                 dxDrawText( text, ( (x + xOfset) + (w/2) ) - (string.len(text)*3), ((y + yOfset) - 7) + (h/2)  )
  29.             end
  30.         end,
  31.  
  32.         setVisable = function ( visable )
  33.             isVisableX = visable;
  34.         end,
  35.  
  36.         setTextColor = function ( color )
  37.             textColor = color;
  38.         end,
  39.  
  40.         setTextColorRGBA = function ( r, g, b, a )
  41.             textColor = tocolor( r, g, b, a )
  42.         end,
  43.  
  44.         getText = function ( )
  45.             return text;
  46.         end,
  47.  
  48.         setText = function ( text2 )
  49.             text = text2;
  50.         end,
  51.  
  52.         setColor = function ( Color2 )
  53.             Color = Color2;
  54.         end,
  55.  
  56.         setColorRGBA = function ( r, g, b, a )
  57.             Color = tocolor( r, g, b, a )
  58.         end,
  59.  
  60.         setOfset = function ( ofx, ofy )
  61.             xOfset = ofx;
  62.             yOfset = ofy;
  63.         end,
  64.  
  65.         setX = function (x2) x = x2 end,
  66.         getX = function () return x; end,
  67.  
  68.         setY = function (y2) y = y2 end,
  69.         getY = function () return y; end,
  70.  
  71.         setW = function (w2) w = w2 end,
  72.         getW = function () return w; end,
  73.  
  74.         setH = function (h2) h = h2 end,
  75.         getH = function () return h; end
  76.     }
  77.     local create = function ()
  78.         MButton.x = x; MButton.y = y;
  79.         MButton.w = w; MButton.h = h;
  80.         MButton.text = text; MButton.Color = Color;
  81.         MButton.textColor = textColor;
  82.         return MButton;
  83.     end
  84.  
  85.     return create()
  86. end
  87. --[[
  88.     createFrame(
  89.         x - أحداثي x للأطار
  90.         y - أحداثي y للأطار
  91.         w - عرض الأطار
  92.         h - أرتفاع الأطار
  93.         Title - عنوان الأطار
  94.         Color - لون الأطار
  95.         TitleBarColor - لون شريط العنوان
  96.     )
  97. ]]
  98. function createFrame( x, y, w, h, Title, Color, TitleBarColor )
  99.     MFrame = {
  100.         x = 0, y = 0,
  101.         w = 400, h = 250,
  102.         Title = "Frame",
  103.         Color = tocolor( 120, 120, 120, 150 ),
  104.         Color = tocolor( 120, 120, 120, 255 ),
  105.  
  106.         components = {
  107.  
  108.         },
  109.  
  110.         render = function ()
  111.             dxDrawRectangle( x, y, w, h, Color, false)
  112.             dxDrawRectangle( x, y, w, 15, TitleBarColor, false)
  113.             dxDrawText( Title, x + 5, y )
  114.             for k,v in pairs(MFrame.components) do
  115.                 v.render();
  116.             end
  117.         end,
  118.  
  119.         add = function ( comp )
  120.             comp.setOfset(x, y)
  121.             table.insert(MFrame.components, comp);
  122.         end
  123.  
  124.     }
  125.  
  126.     function create()
  127.         MFrame.x = x; MFrame.y = y;
  128.         MFrame.w = w; MFrame.h = h;
  129.         MFrame.Title = Title;
  130.         MFrame.Color = Color; MFrame.TitleBarColor = TitleBarColor;
  131.         return MFrame;
  132.     end
  133.  
  134.     return create();
  135. end
  136.  
  137.  
  138. local Frame; -- نسوي متغير أساسي للأطار
  139. local b1; -- ومتغير للزر
  140.  
  141. function renderer ( )
  142.     Frame.render(); -- عرض الأطار
  143. end
  144.  
  145. function init()
  146.     ButtonColor = tocolor( 231, 76, 60, 255 ) -- نسوي متغير يعبر عن اللون
  147.     textColor = tocolor( 236, 240, 241, 255 ) -- متغير ثاني يعبر عن لون الخط
  148.     b1 = createButton( 10, 20, 80, 40, "Test Test", color, textColor ) -- أنشاء الزر
  149.  
  150.     FrameColor = tocolor( 231, 76, 60, 120 ) -- نسوي لون للأطار
  151.     Frame = createFrame( 400, 400, 450, 250, "Frame", color, color ); -- أنشاء الأطار
  152.  
  153.     Frame.add(b1) -- أضافة الزر الى الأطار
  154.  
  155.     addEventHandler ( "onClientRender", root, renderer )
  156. end
  157.  
  158. addEventHandler ( "onClientResourceStart", resourceRoot, init )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement