Jump to content

GuiBuilderNxt - Reboot [08/18/2016]


jaberwacky
 Share

Recommended Posts

Just select your new control on the form, so it is highlighted (got handles) and click your DELETE button.

Edited by TheSaint

Make sure brain is in gear before opening mouth!
Remember, what is not said, can be just as important as what is said.

Spoiler

What is the Secret Key? Life is like a Donut

If I put effort into communication, I expect you to read properly & fully, or just not comment.
Ignoring those who try to divert conversation with irrelevancies.
If I'm intent on insulting you or being rude, I will be obvious, not ambiguous about it.
I'm only big and bad, to those who have an over-active imagination.

I may have the Artistic Liesense ;) to disagree with you. TheSaint's Toolbox (be advised many downloads are not working due to ISP screwup with my storage)

userbar.png

Link to comment
Share on other sites

Latest update.

1) Added a new setting to show or not show the control when the control is being resized or moved.  There will be a black rectangle representation which will allow you to fine tune the placement of the control.

2) Code now moved to GuiOnEvent mode.  I feel this allows for much more efficient code.  Please report issues.

(Edit: Turns out there is an issue.  I'm working on it.)

3) Settings are saved between sessions now.

4) Menu bar items rearranged per >GUIBuilder Resurrected

5) No progress made on the tab control or other disabled controls.

dl: 33

Edited by jaberwacky
Link to comment
Share on other sites

Worked out some issues from last time.  Made some progress on moving updown controls.

dl: 26

Edited by jaberwacky
Link to comment
Share on other sites

I'm dropping this for now.  The amount of work required to make this complete is a lot.  Also, considering that this isn't SciTE or SciTE4AutoIt related I won't add this to SciTE Customization GUI.  Hopefully where it is at is enough for someone else to take up the mantle.

Edit: What I will add (I hope) is to be able to turn an AutoIt script into a .agf so that it can be opened with GUIBuilder and edited accordingly.  I know that Koda can do this but it actually errors out when I try to import SciTE Customization GUI.  Considering that LazyKat doesn't seem to come around anymore there is probably little chance of having the issue fixed.

Edited by jaberwacky
Link to comment
Share on other sites

4) Menu bar items rearranged per >GUIBuilder Resurrected

That was a version I was not even aware of. :blink:

It should have been posted here in Examples, as many would have missed it and this is where it really belongs anyway.

And now we have a version conflict. :wacko:

@jaberwacky - Thank you greatly for all you've done. :thumbsup:

Maybe you should rename your update to GUIBuilderNew or GUIBuilderNxt or GUIBuilderEx or GUIBuilder15 (as in 2015 ... or even GUIBuilder2015) or something?

Also probably add advice about two v0.9 branches.

You could call yours v1.0 I suppose, but it is not an update to the resurrected version, so that would be wrong in some ways ... unless it is designated as a new beginning, starting at v1.0.

Actually, it would be nice I reckon, to chase down all the alternates and branches and list them here.

Sort of like a homage and reference all in one.

EDIT

I have thought some more on this, and think it would be more ideal to include all GUI creators for AutoIt, found here in the forum, in a topic of their own, with a timeline etc. It would be both historical and informative, plus a great code reference. Maybe even, hopefully, qualify as a sticky. I might start it off, and then others can add what I haven't found, and I can just keep updating the timeline of the first post

Edited by TheSaint

Make sure brain is in gear before opening mouth!
Remember, what is not said, can be just as important as what is said.

Spoiler

What is the Secret Key? Life is like a Donut

If I put effort into communication, I expect you to read properly & fully, or just not comment.
Ignoring those who try to divert conversation with irrelevancies.
If I'm intent on insulting you or being rude, I will be obvious, not ambiguous about it.
I'm only big and bad, to those who have an over-active imagination.

I may have the Artistic Liesense ;) to disagree with you. TheSaint's Toolbox (be advised many downloads are not working due to ISP screwup with my storage)

userbar.png

Link to comment
Share on other sites

I like GuiBuilderNxt.  That's nice.  I think maybe Prototype 1.0? 

If you do the chronological thing then when you get to this latest version, I think I might like to add a little info about how the code works to ease future updates.

I think another update will follow shortly.  I decided to go back to working on this.  I get a little discouraged sometimes.  =O

Edit: Seems I still can't edit my first post.   Just pretend that the name of this thread is now GuiBuilderNxt!

Edited by jaberwacky
Link to comment
Share on other sites

Great.

In case you or other haven't noticed, I created said topic

AutoIt GUI Creators (Designers)

 

which was kindly pinned, and is now the first topic in Example Scripts.

Make sure brain is in gear before opening mouth!
Remember, what is not said, can be just as important as what is said.

Spoiler

What is the Secret Key? Life is like a Donut

If I put effort into communication, I expect you to read properly & fully, or just not comment.
Ignoring those who try to divert conversation with irrelevancies.
If I'm intent on insulting you or being rude, I will be obvious, not ambiguous about it.
I'm only big and bad, to those who have an over-active imagination.

I may have the Artistic Liesense ;) to disagree with you. TheSaint's Toolbox (be advised many downloads are not working due to ISP screwup with my storage)

userbar.png

Link to comment
Share on other sites

  • Moderators

jaberwacky,

Title amended. :)

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png 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 columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to comment
Share on other sites

Alright.  Latest update is here, finally.  It has taken all freakin' day just to get this far.  Ok, changelog, let me see if I can remember everything.

1) Right click context menus to access the properties of a control.  Future update will see more control properties with the ability to choose a style, exStyle, size in pixels (or whatever), location, hidden, visible, ontop, etc.  Same for the form background.

2) Um, .... I know there is something. Oh, rearranged the toolbar menu again.

3) Added an option to wipe the gui clear to the Edit menu.

4) General code structure, bug fixes, efficiency increases, etc.

attachment=46051:GUIBuilderNxt.zip dl: 32

Edit: A few minor issues which I will try to iron out soon.  Ok, believe I've taken care of these issues now.

Future plans:

1) Select and move multiple controls at once.  Double click a group control to move (and maybe resize) the controls contained therein.

2) Something else I got on the burner but can't recall currently.  Will update this when (if) I remember. Edit: I remember, select multiple controls and use arrow keys (or other method?) to snap the selected controls to align to the chosen edge.

Enjoy!

Edited by jaberwacky
Link to comment
Share on other sites

Very good.

Have you given any thought to the idea of Templates?

Basically a set of quick and easy GUI's, probably via a toolbar menu item, that when you select one, it opens up in GUI builder for editing (if wanted) and saving.

You could have something like 6 or so simple default GUI's, ranging from basic to more complex.

You could also take this concept further, and allow users to add/save their own templates.

Make sure brain is in gear before opening mouth!
Remember, what is not said, can be just as important as what is said.

Spoiler

What is the Secret Key? Life is like a Donut

If I put effort into communication, I expect you to read properly & fully, or just not comment.
Ignoring those who try to divert conversation with irrelevancies.
If I'm intent on insulting you or being rude, I will be obvious, not ambiguous about it.
I'm only big and bad, to those who have an over-active imagination.

I may have the Artistic Liesense ;) to disagree with you. TheSaint's Toolbox (be advised many downloads are not working due to ISP screwup with my storage)

userbar.png

Link to comment
Share on other sites

jaberwacky,

Well written and good use of AutoIt constants, well done. I might actually consider giving you a hand during my free time if you don't mind? (No guarantees though)

Edit: Spelling

Edited by guinness

UDF List:

 
_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_ArrayFilter/_ArrayReduce_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 22/04/2018

Link to comment
Share on other sites

@TheSaint I hadn't thought of templates.  Shouldn't be hard to do at all.  Just design some common guis.  Save them as .agf.  Create some toolbar menus to load, save, etc.  I will add this to the roadmap.  One thing, could you show me some examples of a couple of common gui layouts?

@guinness Thanks for the compliment.  That really means a lot to me especially coming from you.  You and anybody else can help out or do anything else to the code when and if you or anybody else feels like it.  I won't complain at all.

Link to comment
Share on other sites

@TheSaint I hadn't thought of templates.  Shouldn't be hard to do at all.  Just design some common guis.  Save them as .agf.  Create some toolbar menus to load, save, etc.  I will add this to the roadmap.  One thing, could you show me some examples of a couple of common gui layouts?

I will see what I can come up with in the next few days, when I get a spare moment or three.

It will require some careful thought, and maybe some input from others, so that we can get an idea of common uses, perhaps.

I am thinking though, of specific configurations to save time.

i.e. Listview template - Listview, Input, Add, Remove, Info & Exit buttons, etc.

Make sure brain is in gear before opening mouth!
Remember, what is not said, can be just as important as what is said.

Spoiler

What is the Secret Key? Life is like a Donut

If I put effort into communication, I expect you to read properly & fully, or just not comment.
Ignoring those who try to divert conversation with irrelevancies.
If I'm intent on insulting you or being rude, I will be obvious, not ambiguous about it.
I'm only big and bad, to those who have an over-active imagination.

I may have the Artistic Liesense ;) to disagree with you. TheSaint's Toolbox (be advised many downloads are not working due to ISP screwup with my storage)

userbar.png

Link to comment
Share on other sites

buggy on my windows 7 64 bits system

- tab control not working

- group control working but when dropping / drawing a tab control in group control program breaks and exits

- unable to resize group control (sometimes i was able to resize, sometimes not)

- only able to add button control all other controls not working

Link to comment
Share on other sites

All of the controls and their attributes are stored in a 3D array.  I kind of want to convert that 3D array into a map.  Otherwise the array will grow into many more dimensions which will be hard to manage.  This will also allow for referencing the controls like: $button2.Name or $Group3.Handle. Anyone think this will be a worthwhile pursuit?

I kind of also am tempted to make an autoitobject version of this script.  Each control will be its own object knowing how to manage its own self.  Then I can start to employ some cool object oriented design patterns such as Factory.  This will eliminate a lot of if else switches which will be pretty much required to deal with each controls own idiosyncracies.  For instance, the updown control won't just move or resize normally.  Nooooo, can't have that, gotta treat it differently than the rest.  Unless I'm just going about this wrong?  What I'm doing is by no means set in stone.  This is all subject to change either by me, by you, or by others.

How about a middle ground.  A map used to store an object like hierarchy.  A button control will have its attributes such as $button.Style, $button.ExtStyle, $button.Width, etc and it will also have functions associated with them thus $button.Move($l, $t, $w, $h)

Edited by jaberwacky
Link to comment
Share on other sites

Latest update.

1) Fixed bugs reported by junkew (I hope).

2) Converted the script over to use maps for the most part.  This actually made for more efficient code.  Eliminated a lot of for loops. 

3) Right click context menus should be consistent now because I invoke the menu manually per some example code found in the helpfile.

4) General bug fixes, improvements, etc.

attachment=46088:GUIBuilderNxt.zip dl: 3

Edited by jaberwacky
Link to comment
Share on other sites

Latest update.  I wanted to release again because I discovered some issues that I introduced when converting over to maps.

1) Made some buggy and incomplete progress on the control context menu.

2) Loading and saving gui definitions and code generation now work again.

attachment=46093:GUIBuilderNxt.zip dl: 17

Edit: I'm using GuiBuilderNxt to layout the control Properties window.  :P

Edited by jaberwacky
Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...