From 03b88c1be35263578269a3b2692fcf9021e52a4b Mon Sep 17 00:00:00 2001
From: Robert Jelic <36573031+NoryiE@users.noreply.github.com>
Date: Wed, 30 Mar 2022 21:47:25 +0200
Subject: [PATCH] Updated Frames (and Screens) (markdown)
---
Frames-(and-Screens).md | 95 ++++++++++++++++++++---------------------
1 file changed, 46 insertions(+), 49 deletions(-)
diff --git a/Frames-(and-Screens).md b/Frames-(and-Screens).md
index 354f627..4a17e50 100644
--- a/Frames-(and-Screens).md
+++ b/Frames-(and-Screens).md
@@ -1,18 +1,15 @@
-Frames are like screens or screens are frames. Frames can be sub objects of screens, while screens cannot be sub objects of frames OR screens. This is the only difference between screens and frames. Everything else is the same.
+Here are all possible functions you can use with frames:
-Here are all possible functions you can use with screens and frames:
-
-# screen.new
-this function creates a new screen
+# CreateFrame
+this function creates a new frame
````lua
-local firstScreen = screen.new("myFirstScreen")
+local mainFrame = CreateFrame("myFirstFrame")
````
**args:** string identifaction id. if you create 2 frames with the same id, the second one will return nil
-**returns:** a new frame object
+**returns:** a new frame object
-For what do i need screens? First, its your entry point for everything you want to create, second if you need multiple 'sub'-windows you create multiple screens
# addFrame
-The same as screen, but it will have a parent frame
+The same as CreateFrame, but it will have a parent frame
````lua
frame:addFrame("myFirstFrame")
````
@@ -20,11 +17,11 @@ frame:addFrame("myFirstFrame")
**returns:** a new frame object
Example:
````lua
-local aScreen = screen.new("myFirstScreen")
-local aFrame = aScreen:addFrame("myFirstFrame")
+local mainFrame = CreateFrame("myFirstFrame")
+local aFrame = mainFrame:addFrame("myFirstSubFrame")
````
# setTitle
-Changes the title from a frame or screen
+Changes the title from a frame
````lua
frame:setTitle("My first Frame!")
````
@@ -32,20 +29,20 @@ frame:setTitle("My first Frame!")
**returns:** the frame object
Example:
````lua
-local aScreen = screen.new("myFirstScreen")
-local aFrame = aScreen:addFrame("myFirstFrame")
+local mainFrame = CreateFrame("myFirstFrame")
+local aFrame = MainFrame:addFrame("myFirstSubFrame")
aFrame:setTitle("My first Frame!")
````
or:
````lua
-local aScreen = screen.new("myFirstScreen")
-local aFrame = aScreen:addFrame("myFirstFrame"):setTitle("My first Frame!")
+local mainFrame = CreateFrame("myFirstFrame")
+local aFrame = mainFrame:addFrame("myFirstSubFrame"):setTitle("My first Frame!")
````
# setTitleAlign
Sets the title alignment
````lua
-local aScreen = screen.new("myFirstScreen"):setTitle("My first Frame!"):setTitleAlign("right")
+local mainFrame = CreateFrame("myFirstFrame"):setTitle("My first Frame!"):setTitleAlign("right")
````
**args:** string text - possible values: "left", "center", "right"
**returns:** the frame object
@@ -55,7 +52,7 @@ local aScreen = screen.new("myFirstScreen"):setTitle("My first Frame!"):setTitle
# setPosition
Changes the position relative to its parent frame
````lua
-local aScreen = screen.new("myFirstScreen"):setPosition(2,3)
+local mainFrame = CreateFrame("myFirstFrame"):setPosition(2,3)
````
**args:** int x, int y
**returns:** the frame object
@@ -65,7 +62,7 @@ local aScreen = screen.new("myFirstScreen"):setPosition(2,3)
# setBackground
Changes the background color from the frame
````lua
-local aScreen = screen.new("myFirstScreen"):setBackground(colors.lightGray)
+local mainFrame = CreateFrame("myFirstFrame"):setBackground(colors.lightGray)
````
**args:** int color
**returns:** the frame object
@@ -73,7 +70,7 @@ local aScreen = screen.new("myFirstScreen"):setBackground(colors.lightGray)
# setForeground
Changes the text color from the frame
````lua
-local aScreen = screen.new("myFirstScreen"):setForeground(colors.black)
+local mainFrame = CreateFrame("myFirstFrame"):setForeground(colors.black)
````
**args:** int color
**returns:** the frame object
@@ -81,7 +78,7 @@ local aScreen = screen.new("myFirstScreen"):setForeground(colors.black)
# setSize
Changes the frame size
````lua
-local aScreen = screen.new("myFirstScreen"):setSize(15,5)
+local mainFrame = CreateFrame("myFirstFrame"):setSize(15,5)
````
**args:** int width, int length
**returns:** the frame object
@@ -89,7 +86,7 @@ local aScreen = screen.new("myFirstScreen"):setSize(15,5)
# showBar
shows/hides the bar on top where you will see the title if its active
````lua
-local aScreen = screen.new("myFirstScreen"):showBar()
+local mainFrame = CreateFrame("myFirstFrame"):showBar()
````
**args:** bool isVisible (no args = true)
**returns:** the frame object
@@ -97,17 +94,17 @@ local aScreen = screen.new("myFirstScreen"):showBar()
# isModifierActive
returns true if user is currently holding a key
````lua
-local aScreen = screen.new("myFirstScreen"):isModifierActive("shift")
+local mainFrame = CreateFrame("myFirstFrame"):isModifierActive("shift")
````
**args:** int or string - int can be any os.queueEvent("key") key, or instead of int you can use the following strings: "shift", "ctrl", "alt"
**returns:** true or false if the user is holding the key down
**Example:**
````lua
-local aScreen = screen.new("myFirstScreen"):setSize(20,8):show()
-local aLabel = aScreen:addLabel("myFirstLabel"):setText("shift inactive")
-aScreen:addButton("myFirstButton"):setText("Click"):onClick(function()
-if(aScreen:isModifierActive("shift")then
+local mainFrame = CreateFrame("myFirstFrame"):setSize(20,8):show()
+local aLabel = mainFrame:addLabel("myFirstLabel"):setText("shift inactive")
+mainFrame:addButton("myFirstButton"):setText("Click"):onClick(function()
+if(mainFrame:isModifierActive("shift")then
aLabel:setText("shift is active yay")
else
aLabel:setText("shift is not active ohno")
@@ -117,7 +114,7 @@ end)
# show
shows the frame on the screen
````lua
-local aScreen = screen.new("myFirstScreen"):show()
+local mainFrame = CreateFrame("myFirstFrame"):show()
````
**args:** -
**returns:** the frame object
@@ -125,22 +122,22 @@ local aScreen = screen.new("myFirstScreen"):show()
# hide
hides the frame
````lua
-local aScreen = screen.new("myFirstScreen"):hide()
+local mainFrame = CreateFrame("myFirstFrame"):hide()
````
**args:** -
**returns:** the frame object
**Example:**
````lua
-local aScreen = screen.new("myFirstScreen"):setSize(20,8):show()
-aScreen:addButton("myFirstButton"):setText("Exit"):onClick(function()
- aScreen:hide()
+local mainFrame = CreateFrame("myFirstFrame"):setSize(20,8):show()
+mainFrame:addButton("myFirstButton"):setText("Exit"):onClick(function()
+ mainFrame:hide()
end)
````
# remove
removes the frame and its children objects completly
````lua
-local aScreen = screen.new("myFirstScreen"):remove()
+local mainFrame = CreateFrame("myFirstFrame"):remove()
````
**args:** -
**returns:** -
@@ -148,9 +145,9 @@ local aScreen = screen.new("myFirstScreen"):remove()
# getObject
returns a created object (arg = id)
````lua
-local aScreen = screen.new("myFirstScreen")
-aScreen:addButton("myFirstButton")
-local aButton = aScreen:getObject("myFirstButton")
+local mainFrame = CreateFrame("myFirstFrame")
+mainFrame:addButton("myFirstButton")
+local aButton = mainFrame:getObject("myFirstButton")
````
**args:** the id of the created object (has to be a child from the frame
**returns:** object or nil
@@ -158,9 +155,9 @@ local aButton = aScreen:getObject("myFirstButton")
# removeObject
removes the object with the id
````lua
-local aScreen = screen.new("myFirstScreen")
-aScreen:addButton("myFirstButton")
-aScreen:removeObject("myFirstButton")
+local mainFrame = CreateFrame("myFirstFrame")
+mainFrame:addButton("myFirstButton")
+mainFrame:removeObject("myFirstButton")
````
**args:** the id of the created object (has to be a child from the frame
**returns:** object or nil
@@ -168,18 +165,18 @@ aScreen:removeObject("myFirstButton")
# setFocusedElement
changes the currently focused element
````lua
-local aScreen = screen.new("myFirstScreen")
-local aButton = aScreen:addButton("myFirstButton")
-aScreen:setFocusedElement(aButton)
+local mainFrame = CreateFrame("myFirstFrame")
+local aButton = mainFrame:addButton("myFirstButton")
+mainFrame:setFocusedElement(aButton)
````
**args:** the object you want to set as focus, has to be a children
**returns:** the frame object
# removeFocusedElement
removes the focus of the currently focused element
````lua
-local aScreen = screen.new("myFirstScreen")
-local aButton = aScreen:addButton("myFirstButton")
-aScreen:removeFocusedElement(aButton)
+local mainFrame = CreateFrame("myFirstFrame")
+local aButton = mainFrame:addButton("myFirstButton")
+mainFrame:removeFocusedElement(aButton)
````
**args:** the object you want to set as focus, has to be a children
**returns:** the frame object
@@ -187,9 +184,9 @@ aScreen:removeFocusedElement(aButton)
# getFocusedElement
gets the currently focused element
````lua
-local aScreen = screen.new("myFirstScreen")
-local aButton = aScreen:addButton("myFirstButton")
-local focusedObject = aScreen:getFocusedElement()
+local mainFrame = CreateFrame("myFirstFrame")
+local aButton = mainFrame:addButton("myFirstButton")
+local focusedObject = mainFrame:getFocusedElement()
````
**args:** -
**returns:** object
@@ -198,7 +195,7 @@ local focusedObject = aScreen:getFocusedElement()
sets if the frame should be moveable or not (to move the frame you need to drag it on the top bar)
````lua
-local aScreen = screen.new("myFirstScreen"):setMoveable(true)
+local mainFrame = CreateFrame("myFirstFrame"):setMoveable(true)
````
**args:** bool
**returns:** object