jazzyjeff Posted September 19, 2017 Posted September 19, 2017 Wow, thanks Melba for your diligent work on this. It's much appreciated!
Moderators Melba23 Posted September 19, 2017 Author Moderators Posted September 19, 2017 (edited) jazzyjeff, I think I have it sorted - this beta version works with the code you posted: Can you please check it out and confirm that it works for you too. M23 Edited September 20, 2017 by Melba23 Beta code removed robertocm 1 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
jazzyjeff Posted September 19, 2017 Posted September 19, 2017 It works great! Thanks very much. I have the array display and I am then able to edit the cells, where as before I had to have the _arraydisplay line commented out.
Moderators Melba23 Posted September 19, 2017 Author Moderators Posted September 19, 2017 jazzyjeff, Great - I will release a new version soon. Thanks for finding that obscure bug in the UDF - not some thing I had ever thought of testing! M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
Moderators Melba23 Posted September 20, 2017 Author Moderators Posted September 20, 2017 [NEW VERSION] - 20 Sep 17 Changed: An obscure AutoIt "feature" that I discovered some years ago meant that if you had deleted a GUI created by your script and had 2 or more GUIs still present AutoIt would reset the "current" GUI for control creation to a null handle, because it cannot know which GUI the user wishes to use. This meant that when this UDF tried to create the temporary controls used for editing AutoIt no longer knew in which GUI to do so and so nothing happened. The UDF now forces the GUI holding the active ListView to be the "current" GUI for control creation. Thanks to jazzyjeff for reporting the problem. A couple of minor changes to prevent edge case failures. New zip containing UDF, examples and guide in the first post. M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
HurleyShanabarger Posted September 20, 2017 Posted September 20, 2017 (edited) On 15.9.2017 at 2:59 PM, Melba23 said: HurleyShanabarger, You need to set the ListView to use user header colours (add 16 to $iAdded when initialising) and set the required combo data in the $aHdrData array. Open example 6 and make the following changes: Line #49 $iLVIndex_1 = _GUIListViewEx_Init($cLV_1, $aLVArray_1, 0, 0, True, 1 + 8 + 32 + 16) ; 16 added Lines #63-73 ; Set header data Global $aHdrData[][] = [["Tom", "Dick", "Harry", "Fred"], _ ; As colour is enabled, these will replace original titles ["0xFF8080;0x8888FF", "0xFEFEFE;0x000000", "", "0xFFFF00;0x00FF80"], _ ; Col 2 will use default colours ["", "", @TAB & "H1|H2|H3", ""], _ ; Col 2 readonly combo; Col 1 & 3 text [0, 0, 100, 0]] ; Col 2 not resizeable - fixed 100 pixel width ;Global $aHdrData[][] = [[Default, "", "", ""], _ ; ["", Default, "", ""], _ ; ["", "", "", Default], _ ; [0, 0, Default, 0]] _GUIListViewEx_LoadHdrData($iLVIndex_1, $aHdrData) ; basically replacing the simple header with something a little more complex Let me know if you still have problems. M23 Hi Melba, the "combo in a header" function you mentioned let me to think that there whould be actually a combobox in the header with a dropdown option, but I guess that is not what you meant, right? /Edit: have you come across a way to always show a vertical/horizontal scrollbar in a listview, even though there is nothing to scroll? Edited September 20, 2017 by HurleyShanabarger
Moderators Melba23 Posted September 20, 2017 Author Moderators Posted September 20, 2017 HurleyShanabarger, Quote there whould be actually a combobox in the header with a dropdown option, but I guess that is not what you meant That is exactly what I meant - you get a dropdown combo in the header. Run this and Ctrl-Click on "Harry": expandcollapse popup#include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include "GUIListViewEx.au3" Global $iYellow = "0xFFFF00", _ $iLtBlue = "0xCCCCFF", _ $iGreen = "0x00FF00", _ $iBlack = "0x000000", _ $iRed = "0xFF0000", _ $iBlue = "0x0000FF", _ $iWhite = "0xFFFFFF" Global $sRet $hGUI = GUICreate("Combo Header ListView Example", 1000, 510) ; Create ListView $cLV_1 = GUICtrlCreateListView("Zero Column|One Column|Two Column|Three Column", 10, 30, 480, 260, BitOR($LVS_SINGLESEL, $LVS_SHOWSELALWAYS)) _GUICtrlListView_SetExtendedListViewStyle($cLV_1, BitOR($LVS_EX_FULLROWSELECT, $LVS_EX_HEADERDRAGDROP)) For $i = 0 To 3 _GUICtrlListView_SetColumnWidth($cLV_1, $i, 100) Next ; Create array and fill listview Global $aLVArray_1[6][4] For $i = 0 To 5 $sData = "Item " & $i & "-0" $aLVArray_1[$i][0] = $sData For $j = 1 To 3 $sData &= "|SubItem " & $i & "-" & $j $aLVArray_1[$i][$j] = "SubItem " & $i & "-" & $j Next GUICtrlCreateListViewItem($sData, $cLV_1) Next ; Initiate ListView = sort on column click - editable headers - header colours - user colours $iLVIndex_1 = _GUIListViewEx_Init($cLV_1, $aLVArray_1, 0, 0, True, 1 + 8 + 16 + 32) ; Set column edit status _GUIListViewEx_SetEditStatus($iLVIndex_1, "*") ; Default = standard text edit ; Set header data Global $aHdrData[][] = [["Tom", "Dick", "Harry", "Fred"], _ ; As colour is enabled, these will replace original titles ["", "", "", ""], _ ; Default colours ["", "", @TAB & "H1|H2|H3", ""], _ ; Col 2 readonly combo; Col 0, 1 & 3 text [0, 0, 0, 0]] ; All cols resizeable _GUIListViewEx_LoadHdrData($iLVIndex_1, $aHdrData) $cExit = GUICtrlCreateButton("Exit", 880, 470, 110, 30) ; If colours used then this function must be run BEFORE GUISetState _GUIListViewEx_MsgRegister() GUISetState() While 1 $iMsg = GUIGetMsg() Switch $iMsg Case $GUI_EVENT_CLOSE, $cExit Exit EndSwitch _GUIListViewEx_EventMonitor() WEnd You should see a read-only combo appear with the 3 options which can be selected and then appear as the new header title. M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
c0w Posted September 24, 2017 Posted September 24, 2017 (edited) (4021) : ==> Array variable has incorrect number of subscripts or subscript dimension range exceeded.: $aItemData[$i] = $aGLVEx_SrcArray[$iGLVEx_DraggedIndex + 1][$i] $aItemData[$i] = ^ ERROR i get this error when using drag&drop in my own code. Seems to work fine in your examples tho, is it a buggy or am i missing out something? both srcArray and Draggedindex have no values in them. The only UDF-Functions i used are $hLVL = _GUIListViewEx_Init($hList) _GUIListViewEx_SetEditStatus($hLVL, "*") Edited September 24, 2017 by c0w
Moderators Melba23 Posted September 24, 2017 Author Moderators Posted September 24, 2017 c0w, Welcome to the AutoIt forums. Quote Seems to work fine in your examples So it is likely to be your code that is causing the problem. Please post it so I can take a look - see here how to do it. M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
c0w Posted September 24, 2017 Posted September 24, 2017 6 minutes ago, Melba23 said: Please post it so I can take a look - see here how to do it. Func InitListviewEx($hList) $hLVL = _GUIListViewEx_Init($hList) _GUIListViewEx_SetEditStatus($hLVL, "*") EndFunc ;==>InitListviewEx Hey, thanks for the ultra fast response i wrote the function above and simply called it after gui creation. The listbox is created by $List1 = GUICtrlCreateListView("X|Y|Shift|Ctrl|Right|Alt|Sleep", 238, 64, 330, 180) And filled by this function: Func _addCoord() $shiftState = GUICtrlRead($chkHoldShift) If $shiftState = 4 Then $shiftState = 0 $CTRLState = GUICtrlRead($chkHoldCTRL) If $CTRLState = 4 Then $CTRLState = 0 $RclickState = GUICtrlRead($chkRightClick) If $RclickState = 4 Then $RclickState = 0 $altState = GUICtrlRead($chkHoldalt) If $altState = 4 Then $altState = 0 _GUICtrlListView_AddItem($List1, MouseGetPos(0)) _GUICtrlListView_AddSubItem($List1, _GUICtrlListView_GetItemCount($List1) - 1, MouseGetPos(1), 1) _GUICtrlListView_AddSubItem($List1, _GUICtrlListView_GetItemCount($List1) - 1, $shiftState, 2) _GUICtrlListView_AddSubItem($List1, _GUICtrlListView_GetItemCount($List1) - 1, $CTRLState, 3) _GUICtrlListView_AddSubItem($List1, _GUICtrlListView_GetItemCount($List1) - 1, $RclickState, 4) _GUICtrlListView_AddSubItem($List1, _GUICtrlListView_GetItemCount($List1) - 1, $altState, 5) _GUICtrlListView_AddSubItem($List1, _GUICtrlListView_GetItemCount($List1) - 1, GUICtrlRead($inp_WaitAfterClick), 6) EndFunc ;==>_addCoord actually i got 3 listboxes and can be filled in different ways. but it doesnt matter, in most of my tries it crashes. But im having a hard time to read through your code to find where the parameters come from and why they would be empty
Moderators Melba23 Posted September 24, 2017 Author Moderators Posted September 24, 2017 c0w, Please post some runnable code - just posting a few snippets is not going to help me much. I do not need all of the 7000+ lines you no doubt have, just enough to show the problem - which I suspect is because you have not used the _GUIListViewEx_MsgRegister function so that the UDF can do its magic. If I write my own code it will not have errors (I hope) - so you coding a basic GUI and ListView which does not drag/drop will suffice. M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
c0w Posted September 24, 2017 Posted September 24, 2017 Urgh, its hard to pick stuff out of my code to make it small but runnable tbh. i added the _GUIListViewEx_MsgRegister () right before the guisetstate command. am i right with adding _GUIListViewEx_MsgRegister () and then $hLVL = _GUIListViewEx_Init($hList) should enable the drag and drop? so i can maybe debug that myself thanks for the help man
Moderators Melba23 Posted September 24, 2017 Author Moderators Posted September 24, 2017 c0w, It may work, it may not - unless you let me have a runnable script so that I can debug, I really cannot say. I do notice that in the snippets you posted above you are not using the UDF functions to fill your ListView. Once you have initialised your empty ListView (which you last post suggests is what you are doing) than if you do not use the UDF functions (_GUIListViewEx_Insert or _GUIListViewEx_InsertSpec) to add items then the UDF does not recognise them - which once again could give you the problem you are seeing. Can you see why I need some runnable code so that I can help you? This is a complex UDF and you need to use it correctly to get it all working. M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
c0w Posted September 24, 2017 Posted September 24, 2017 well in my tests a saw a similiar outcome, when i did not use your functions to insert on drag and drop it loaded the old functions. ill try to rewrite my script with your funcs and see if its still not working
c0w Posted September 24, 2017 Posted September 24, 2017 Okay i tested it and got no change in behavior at all. I changed the code, that inserts data into the listview to $vData = MouseGetPos(0)&"|"&MouseGetPos(1)&"|"&$shiftState&"|"&$CTRLState&"|"&$RclickState&"|"&$altState&"|"&GUICtrlRead($inp_WaitAfterClick) _GUIListViewEx_Insert($vData) This works just fine, but on drag and drop its still crashes. I found a new info tho, when trying to drag the first item of the list somewhere else i get "I:\Autoit Workdir\1337ClickzBitBucket\GuiListViewEx.au3" (5216) : ==> Array variable has incorrect number of subscripts or subscript dimension range exceeded.: $avArray[$iIndex] = $vInsert If you want to take a deeper look at this at could send you the file per pm, but i dont wanna post it public.
Moderators Melba23 Posted September 24, 2017 Author Moderators Posted September 24, 2017 c0w, By all means PM me the script. M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
Moderators Melba23 Posted September 25, 2017 Author Moderators Posted September 25, 2017 [BUGFIX VERSION] - 25 Sep 17 Fixed: A small bug which only appeared if you were continually emptying a ListView with _GUICtrlListView_DeleteAllItems, which means you need to use _GUIListViewEx_Close and then _GUIListViewEx_Init to reset the UDF. The closed handle was not being deleted correctly which meant that any actions on the reinitialised ListView were likely to fail as the UDF looked at the old data. Apologies. New UDF in the first post. M23 mLipok 1 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
Moderators Melba23 Posted September 25, 2017 Author Moderators Posted September 25, 2017 Hi, A quick word about the problem with c0w's script from a few posts above. As I suspected, he was not using the UDF to add/delete/etc items to the ListViews and so the UDF became confused. The UDF is very much an "all or nothing" affair - once you start using it, you must use it for everything associated with that ListView! However, the debugging did throw up the issue I have just fixed, so thanks to c0w for that! M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
TheXman Posted September 25, 2017 Posted September 25, 2017 (edited) On 16/05/2016 at 0:32 PM, Melba23 said: Here is the UDF, with 6 examples and the guide, in zip format: GUIListViewEx.au3 Post #1 appears to have a link to the updated UDF. Where might I find the referenced zip file that contains the examples and guide? Edited September 25, 2017 by Melba23 Removed dead link CryptoNG UDF: Cryptography API: Next Gen jq UDF: Powerful and Flexible JSON Processor | jqPlayground: An Interactive JSON Processor Xml2Json UDF: Transform XML to JSON | HttpApi UDF: HTTP Server API | Roku Remote: Example Script About Me How To Ask Good Questions On Technical And Scientific Forums (Detailed) | How to Ask Good Technical Questions (Brief) "Any fool can know. The point is to understand." -Albert Einstein "If you think you're a big fish, it's probably because you only swim in small ponds." ~TheXman
Moderators Melba23 Posted September 25, 2017 Author Moderators Posted September 25, 2017 TheXman, Sorry, I uploaded the wrong file - try again now. M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now