My Gui

Monkey Archive Forums/Monkey Projects/My Gui

chrisc2977(Posted 2013) [#1]
Hi all, this is how my latest gui module is coming along. Many new features and I hope you like the way it looks. When this is ready I will be releasing if for free for those who would use it:)



Example and beta download
http://www.challenger-arts.com/monkey-modules/mygui

Main Features
* Based on an image atlas so it can be easily changed to look different and use different fonts
* All items can be whatever size you want
* Ability to draw custom content inside a window
* Really really easy to use
* Fast
* Setup different screens and draw them individually
* Option to have items pinned to a location in their window
* Option to have objects resize in proportion to the window
* Infinite sub menus
* Infinite parenting

Elements done so far
* Windows
* Buttons
* Menu, sub menus and tick menus
* Img Buttons
* Tickboxes and Radio boxes
* Dropdown and Dropdown Items
* MsgBox
* Sliders
* Scrollbars


Let me know what you think!


Why0Why(Posted 2013) [#2]
Looks awesome! I think this is one area Monkey really needs some help: a basic GUI that meets most needs and this looks like it would do the trick.


Beaker(Posted 2013) [#3]
Looks really good. I have a question: it looks very useful for desktop apps, but how difficult would it be to setup for mobile phone apps that don't have any windows/menus and have bigger radio buttons etc? I've not seen any examples for this or JungleGUI that really work that well on mobile devices. Really nice work tho.


DruggedBunny(Posted 2013) [#4]
Really nice, in looks *and* feel.


ziggy(Posted 2013) [#5]
@Beaker: I've released an App to the Google Play store that used jungle gui and it's working (and scaling and everything) propperly. More about this soon, as I plan to use it as the main library for a large set of small apps.
Back on topic: The look of this gui is great! I hope to give it a try soon


chrisc2977(Posted 2013) [#6]
Thanks everyone :D
Yeah this would be fine for a mobile, elements do not have to be inside a window. Elements can be made any size. If you wanted a bigger font its just one statement. Also can be skinned to fit in with a theme. Its all made to be simple so that even I can use it lol :)


AndroidAndy(Posted 2013) [#7]
@chris - This is really nice work, liked it from the first version you did last year and it is better than ever. Not sure if you noticed, but when you drag the "Scaleable Window 1", around looks like the window background gets drawn first because you get a flickering 1 pixel white border around the borders of the "Windowed Menu" component. Same thing happens with the "Parented Window" if you move it (for example) right up to the left edge of the "Scaleable Window 1" and then move drag the lot around the full viewport. I was running at about 60fps in IE8 so it might not be as noticeable at higher frame rates.


StoneFaceEXE(Posted 2013) [#8]
"One Method to update and draw"
So you update the window when OnRender() happens? I though that would make a lot of lags and is not quite the right way.


chrisc2977(Posted 2013) [#9]
@stoneface
Yeah that's the way it is currently, I thought it would be faster then looping through the same objects twice?
If this is bad form and potentialy cause probs I can always change that and easily put the update stuff into a seperate loop?


Salmakis(Posted 2013) [#10]
I wrote some guis in Blitzmax and in C# and i think its really the best to perform the updates only when a render happens.

for OpenGL stuff for example is it the best to only rebuild FBO´s or VBO´s when it going to be drawn, not when some value is changing, because this cann cause some very useless work. (dunno what your gui is using but at all i think its more intelligent to update a gui when it is drawn)


Beaker(Posted 2013) [#11]
User input definitely should be in OnUpdate().


Skn3(Posted 2013) [#12]
Looking nice :D


chrisc2977(Posted 2013) [#13]
Update 24/5/13
Added: Labels (inc optional boarder and align)
Added: MsgBox (inc Optional 1 or 2 Buttons and ability to know which button was clicked)
Added: Tick boxes in menu
Added: Window Order (can be always behind, always infront or default variable)
Changed: Seperated out draw and update into different methods
Changed: Fixed elements flickering when their window was moved
Changed: Added an example window drawing custom content


AndroidAndy(Posted 2013) [#14]
@Chris - Awesome GUI Goodness! When I click on the title bar and just hold the mouse left mouse button down with no drag, the window moves right one down one :).


chrisc2977(Posted 2013) [#15]
@AndroidAndy
Cheers bud, Sliders next I think :)
I am not experiencing this problem, is your internet window at 100% zoom?


AndroidAndy(Posted 2013) [#16]
@Chris - Yes I was at 100% zoom, I just tried it again and I don't see the problem. That makes me think it was some sequence of clicking and moving around that probably got your tracking variables out of whack? If it happens again I will try to give you steps to recreate.


Rushino(Posted 2013) [#17]
Nice GUI chris! Definitivly going on the right track. :)


semar(Posted 2013) [#18]
Very nice indeed.

Is there also an input text box ? I've seen it in a screen shot, but not in your Flash example. If yes, does it also accept text from a clipboard (ala copy & paste) ?

Do you have a release date ? I'm really interested on your Gui.

Regards,
Sergio.


chrisc2977(Posted 2013) [#19]
Hi Sergio,
I have not yet done text boxes or fields, they are on the to do list however :)
I've just finished scroll bars and sliders. And done a far better example. I will put it up hopefully tonight.
As for a release date probably a few weeks.. Hopefully lol


chrisc2977(Posted 2013) [#20]
Update 29/5/13
Added: Sliders
Added: Vertical and Horizontal scrollbars

Updated: I have redone the flash example to show off 3 different skins, individual window bg colour and also an in game menu example added.

Flash Example




AndroidAndy(Posted 2013) [#21]
@Chris - You've outdone yourself... AGAIN! Sweet and GUI, love it. Were the scroll bars supposed to scroll something or just there to demonstrate the bar only?


chrisc2977(Posted 2013) [#22]
@Andy
Thank you :) The scrollbars don't do anything in the example, they are just for show.


AndroidAndy(Posted 2013) [#23]
@Chris - This is really good stuff, keep the eye candy coming, MonkeyCoders are going to eat this up, yum!


Why0Why(Posted 2013) [#24]
Wow, that looks and feels great. It seems to be running more smoothly than the last demo I tried.


Gerry Quinn(Posted 2013) [#25]
It looks very good. One thing I think would be useful for mobile devices in particular is an option to have sliders move immediately to a point along their track when you click on it. It is easier than dragging.

I have made my own buttons and menus etc., but I would be inclined to switch to something like this for its unified nice appearance.


chrisc2977(Posted 2013) [#26]
Update 1/6/13
Added: Listboxes

Updated: I have changed the behavior of the Sliders and scrollbars to accept a click to 'Jump' to that location (Thanks to Gerry's good suggestion)

... Slowly but surely getting there :)


SLotman(Posted 2013) [#27]
I think I found a bug? I just click (and keep the button down) on your example on the "parented window" (desktop example) and it starts to move to the right by itself.

Sliders are also moving strangely, not following the mouse cursor correctly.


AndroidAndy(Posted 2013) [#28]
@SLotman - I found that same thing in a previous release, but when I closed the browser and reloaded I couldn't reproduce. Try to remember how you got to that point, close the browser, restart and see if you can reproduce it.

@Chris - Great addition with the listboxes, do you figure this could evolve into a proper grid control with multi-columns, headers, and such?


AndroidAndy(Posted 2013) [#29]
@SLotman - Chris had mentioned that maybe the browser zoom was not at 100%, this was not the case when I had the problem, however I tried to change the zoom and that DOES recreate the effect. So the effect is the same as when the browser is zoomed in or out, so the question is what is causing the problem to occur when the zoom is at 100%? Of course if you can find out the sequence that reproduces the problem then it could be fixed, but so far I can't reproduce it.


chrisc2977(Posted 2013) [#30]
@Andy - I recon a spreadsheet style object wont be too difficult, Im thinking an array of textfields within a container and have scrollbars appear if it is bigger than the container.


AndroidAndy(Posted 2013) [#31]
@Chris - A spreadsheet style object would be icing on the cake.

Could a drop list with a larger set of items be scrolled like your new list control?

Really nice work, gets better with each new iteration!


AndroidAndy(Posted 2013) [#32]
@Chris & @SLotman - Just tested again and I see the problem of the windows and sliders moving on their own with the mouse down and browser at 100%. I tried closing reopening, zoom reset to 100% nothing fixed the problem, this was in IE9. Tried in Firefox and did not see the problem, but at other times IE9 is fine, so I am not sure what triggers the problem.


chrisc2977(Posted 2013) [#33]
I have been messing about with the way its all drawn and I recon i can increase the fps by about 20-30+, but would require me to recode (copy and paste) alot of it. Do you think it is worth it?
(I bodged about with the current example on flash and the FPS went from 40-67, and I have a few more ideas to speed it up...


AndroidAndy(Posted 2013) [#34]
@Chris - I always get a solid 60 to 61 FPS on IE9, but generally speeding up the redraw is worth it. The reason I think speed is important is because it gives you some room to add more features that may impact the redraw speed and thus gives you a little room to play.


Gerry Quinn(Posted 2013) [#35]
That said, it's a GUI. If it's going to be mainly used for setting game options, displaying helpfiles and such, 20 fps would be more than sufficient.

If you can speed it up without too much pain, it's always good - but if it's fast enough, the value of extra speed is limited.


SLotman(Posted 2013) [#36]
Ah yes, it's a browser zoom problem. Setting zoom to 100% fixed the demos - my new laptop is 1080p, so I leave the browser at 110% for better reading ^_^

When I first read it, I though the SWF wasn't zoomed to 100% - didn't think it was something within the browser :)


C10B(Posted 2013) [#37]
Hi, is there a text entry component?
What about a dropdown list?
Thanks


chrisc2977(Posted 2013) [#38]
@C10B - There will be text fields and text areas added and the dropdown will feature a scroll :)

I have made some progress speeding it up quite a lot. I use an old netbook to really test if it can run on slow computers :)
Test was with 1Window, 1Tickbox, 1Button, 1Slider, 1Scrollbar and 3 Radios.
Results:
Html: Old method: 62fps New method: 128fps
Flash: Old method: 10fps New method: 40fps

I have discovered a strange bug however that is frustrating the pants off me!
Its only on html and only if any of the windows is bigger than around 6500 pixels square it drops the fps to exactly 60?! Even when I resize the window 'ingame' It jumps back up to around 125fps then drops to exactly 60 if I make it too big?! There is no further drop if I make multiple windows too big either, Agh!


AndroidAndy(Posted 2013) [#39]
@Chris - Impressive speed enhancements I still consistently get 60-62 fps on the flash example. Did you post the new version? 60fps is still good for the html version, but I understand the desire to find strange bugs :)


chrisc2977(Posted 2013) [#40]
Sorry, should have said, I haven't posted the new version up yet :)


Raph(Posted 2013) [#41]
I am still using ChallengerGUI for a little project, and I noticed that it doesn't allow ImageButtons to be scaled. I wanted to be able to use the module for resolution independent work where I scale the buttons to always be a percentage of the screen size.

Unlike with the "constructed" GUI elements, changing the W and H properties clips the image instead. So I made a few little changes:

I commented out these two lines:



And I changed the draw routine thus:



I don't think I changed anything else. Seems to work so far.

There doesn't seem to be a way to make thicker scroll bars either, I may hack that in next...


chrisc2977(Posted 2013) [#42]
Hi Raph, sorry I want in time with the new mygui :) I should b back to it soon, I have just moved house!
Thanks for posting that change, I can confirm that both those issues are gone in mygui.


Rushino(Posted 2013) [#43]
What the progress on this ?


chrisc2977(Posted 2013) [#44]
Been moving house :) Should be all setup soon!


Rushino(Posted 2013) [#45]
Oh! Alright :)


Raph(Posted 2013) [#46]
Another minor fix.

If you see this bug report over here: http://monkeycoder.co.nz/Community/posts.php?topic=5645 You'll see that TouchDown() does not function as I would expect when using touch or pen on Windows 7 or 8 under GLFW or HTML5. It only fires when you move the touch.

ChallengerGUI is built on TouchDown(). This means that when using touch in GLFW on say, a Win8 tablet, you have to double-click all the buttons.

This makes it so that you can just tap. It's a small change in the CheckClick method.



I haven't gone through all the (many!) other places that query TouchDown, but be aware that it is likely that a lot of stuff won't work quite right with touch.


jondecker76(Posted 2013) [#47]
Is this available for download yet?


chrisc2977(Posted 2013) [#48]
Afraid not, I have been neglecting my computer for a while now as been renovating the house, but I will be starting the again... now :)


computercoder(Posted 2013) [#49]
I hear that. I took almost a 2 year neglect of any side project programming in favor of renovating my house. It's just finally settled enough that I can code side projects again :P


Why0Why(Posted 2013) [#50]
I have been finishing my basement, so my house is taking programming time away for me too.


chrisc2977(Posted 2013) [#51]
Just a quick update, I have changed things up slightly, Now you have to add a 'Screen' and then add any gui elements you want to that Screen. You can have multiple screens if you wish and it has the ability to transition between screens.
I have also coded couple of screen transitions already :)
MyGui.OpenScreen(MyScreen)
MyGui.FadeToScreen(MyScreen)
MyGui.SlideToScreen(MyScreen)

Im not putting a demo up yet, but they seems to work.


computercoder(Posted 2013) [#52]
Thats a very reasonable way to handle it (and mimics what other products do as well - like WinForms group controls via a Form). Good work, and keep the progress going :)

Will be interesting to see this work when you get it all ready!


rIKmAN(Posted 2013) [#53]
Looking forward to giving the new demo a try, got a project in mind for this now that you have added screens and the ability to have gadgets without requiring a window.

Keep up the good work! :)


Paul - Taiphoz(Posted 2013) [#54]
Given there is a Native UI for Apple, and a Native UI for Android, and windows, I am wondering if it would not be possible to write a UI module that leverages these native api's

Failing that, it might be an idea to FAKE a native UI with native theme's, would allow for a single UI module and the ability to theme it for a specific target via #IF TARGET calls to get in the correct theme.

just a thought.


chrisc2977(Posted 2013) [#55]
@Taiphoz
I agree that the first suggestion would be amazing and the best possible solution, but im afraid I am not that good :) and have nowhere near the skill level to do this :)

As for the second, that is the current goal really, MyGui can be easily skinned by editing a single image to look like anything you want (good for themed games and ui's alike), also you can set font, and all elements can be resized etc. With my latest adition of 'Screens' and different Screen transitions I had mobile users in mind, to make it feel a bit more native :)

Maybe I will put up a quick example set to try and show off its diversity soon.

Thanks for all the feedback, really helps :)


chrisc2977(Posted 2013) [#56]
Minimising a window now slides the window into its titlebar instead of just disappearing (can easily toggle off)

maximising a window now 'grows'/'shrinks' it to fullscreen/original size instead of just appearing (again can be toggled)

Closing a window now fades it away instead of disappearing (also toggleable).

Adjusted sliders with the option of having steps.


chrisc2977(Posted 2013) [#57]
I have Added 'slide buttons' now (like the on/off slidy things found on mobiles)

Now I'm fighting with dropdowns and menus, making their item block scrollable if they go outside their parents canvas area :)


AndroidAndy(Posted 2013) [#58]
@Chris - Were you planning, or have you already put these new features in the demo so we could take a look? As always, change and improvements are good to hear about, could give you more feedback after spending some tactile time with the new features :) Cheers!


chrisc2977(Posted 2013) [#59]
As Requested Here is an example with the new changes
Please bear in mind this is a WIP and speed enhancments are to come!


http://www.challenger-arts.com/monkey-modules/mygui/


computercoder(Posted 2013) [#60]
Nice work so far! It's making good progress... keep it up :)


rIKmAN(Posted 2013) [#61]
That looks great!


ordigdug(Posted 2013) [#62]
Coming along nicely :)


AndroidAndy(Posted 2013) [#63]
Very impressive! I did notice on the window example the drop in speed down to 30 fps versus the old demo that was reporting 50-60 fps. I like that you are seemingly merging the "desktop" and "mobile" controls into a single base.

One of the common controls that is useful in both platforms is a panel and spliter. I suppose a panel could be derived from a window, splitters are another story. Did you already implement tabs or did I just imagine that?

You might want to take a look at Sencha Touch and Sencha ExtJs for further inspiration :). Great to see the improvements and actually play with them a bit, for a WIP it all ran really well.


Why0Why(Posted 2013) [#64]
Impressive! I am looking forward to using it.


Raph(Posted 2014) [#65]
Any progress on this? Am weighing whether or not to switch systems...


chrisc2977(Posted 2014) [#66]
Coming along slowly, will be doing some more today... Its been a while, my apologies :)


chrisc2977(Posted 2014) [#67]



Nearly ready for beta release :)
A few things to add at a later date, but the bulk of it is working!

Just typing up some documentation and some examples and then will put up for download/testing :)


chrisc2977(Posted 2014) [#68]
Ready for your feedback :)

http://www.challenger-arts.com/monkey-modules/mygui/


Why0Why(Posted 2014) [#69]
Wow! Looking really nice. Definitely something that Monkey needs.


nikoniko(Posted 2014) [#70]
Does it support UTF8 charset for keyboard input/ display output?

Do you have WP8/IOS7/Android4 skins yet?


chrisc2977(Posted 2014) [#71]
Mygui has keyboard support (Althou I forgotten to add 'showkeyboard' for the benifit of mobile.
And Ive just realise that some of the text field in the example dont work with flash (fine in html :()

With regard to skins, I may add more, but feel free to knock one togethet, it is all one one atlas.png so easy to modify and create your own.


nikoniko(Posted 2014) [#72]
297chrisc wrote:
And Ive just realise that some of the text field in the example dont work with flash (fine in html :()


I didn't find working example in the archive. Did you do it specially?

I want to test input fields selection by Tab key.


chrisc2977(Posted 2014) [#73]
Example is on my website:
http://www.challenger-arts.com/monkey-modules/mygui/
Its a flash example with a few sections, just click on the textbox Button. (you can also download the module on the same page).
I havent yet implemented tabbing between Elements, but this is something that will be implemented soonish, along with a 'setfocus' method


AndroidAndy(Posted 2014) [#74]
@Chris - This just keeps getting better, excellent enhancements! The tabbing and setfocus would really add a lot of functionality at least for keyboard usage. Couldn't find any issues outside of the text field that you noted already. Did you ever consider the possibility of adding multiple columns and column headers to the scrolling list control? Is there an long term vision of where this could go in terms of additional controls?


nikoniko(Posted 2014) [#75]
You may have to manually change the (“) as they copy/paste wrong)


Could you put html copy of pdf to exclude this action?


nikoniko(Posted 2014) [#76]
-


nikoniko(Posted 2014) [#77]
@297chrisc:

Could I use another bitmap fonts either fontmachine?


chrisc2977(Posted 2014) [#78]
I have fixed the textfield and have nearly done tabbing. Will hopefully put the update out tonight.

I have coded it all using fontmachine, so would be pain to change that now, but you can use whatever font you like as long as it was create using font machine. A few fonts are included in the themes folder.


chrisc2977(Posted 2014) [#79]
Tabbing done and textfield fixed. Example and download updated.

http://www.challenger-arts.com/monkey-modules/mygui/


nikoniko(Posted 2014) [#80]
297chrisc wrote:
Tabbing done and textfield fixed. Example and download updated.


Well. Shift-Tab is usually for back order tabbing.


chrisc2977(Posted 2014) [#81]
Fair enough, easily done. I couldnt decide between esc or shift-tab :)
If no-one objects to this I will change for next update.

I am currently working on a file operation window, implemented as a separate include (as it used os module). for use with the glfw target.

Commands so far are:

Import mygui.fileoperations

Gui_FileOperation.LoadFile(Extension:String)
Gui_FileOperation.SaveFile(Extension:String, DefaultName:String)



and once the user hits the save/Open button there will be a command to get the path that the user has chosen.





Goodlookinguy(Posted 2014) [#82]
I was skimming through the source code. I want to recommend some things that might make the code cleaner.
I found this in mygui_textboxes.monkey
If CursorOn = 1 Then
	CursorOn = 0
Else
	CursorOn = 1
End If

If CursorOn is 1 or 0, then it should be a Bool type. That way you can compact this code to...
CursorOn = Not CursorOn

Also, if it's a Bool type, then you can change lines like this
If CursorOn = 1 Or KeyIsdown = 1 Then

To look like this (it reads more like a human)
If CursorOn Or KeyIsdown Then



AndroidAndy(Posted 2014) [#83]
@Chris - Just FYI the tabs don't work in IE9, but works nice in FireFox. Wouldn't think there would be a difference, but with IE you never know what you are going to get. Never tried on a touch device would a tab from a virtual keyboard work there in the same way?


chrisc2977(Posted 2014) [#84]
@GoodLookingGuy
You can read my code?! Wow, thats something I cant do half the time :) - Once finished I will try to go through it and clean it up. Thanks for the suggestion!

@AndroidAndy
Hmph, bloody InternetExplorer!
It looks like Internet explorer is 'stealing' the tab keyhit and not giving it to the flash window. Any Ideas anyone? I think my code is ok....

I havent tried anything on mobile devices yet, in theory everything should work the same, including keyhits/char codes. I am going to have to do an AutoFit Version (Find/Replace TouchX With VTouchX etc)

Thanks for all the testing etc!


Goodlookinguy(Posted 2014) [#85]
Learning to read other people's code is a skill acquired over years (plus, it's not that bad. I know bad and this is not that). But yeah, there are a handful of locations that need a slight tuneup/refactor. Other than that if it works why change it.


Samah(Posted 2014) [#86]
Far out, this is actually REALLY good! I should have been following it more...
Good work! :D


nikoniko(Posted 2014) [#87]
297chrisc wrote:
Any Ideas anyone? I think my code is ok....


Your code is Ok. Monkey-2-flash isn't for this case. Tabbed fields are required tabEnbabled property On/True.Monkey-2-flash hasn't those fields/objects so flash in IE passes tab key pressing.

Look this example http://www.actionscript.org/resources/articles/900/1/Keyboard-events-on-stage-are-not-working-why/Page1.html

Tabbing works fine in IE too.

It's not very important for flash now but need more test for other platforms.


jondecker76(Posted 2014) [#88]
297Chrisc:

This is some excellent work.
I would pay a decent bounty (and escrow the funds) if you were to add the following:

- Some type of simple data grid (where other GUI elements could be nested inside each cell)
- Charting functionality (similar to http://www.jqwidgets.com/jquery-widgets-demo/demos/jqxchart/index.htm where each chart can have multiple pens and plot types)

Also, could you put up an HTML5 demo so it could be compared to your flash demo?

Thanks


chrisc2977(Posted 2014) [#89]
File Operations nearly finished :)

I will definitely be doing a grid element and also element pinning to a window/screen side.
As for charts, they look VERY scary... I will give it a go.

HTML5 Example
http://www.challenger-arts.com/html5/mygui/


nikoniko(Posted 2014) [#90]
297chrisc
Please, add click to button by SPACE keystroke.


jondecker76(Posted 2014) [#91]
297chrisc: do you have an email you can be reached at to discuss bounty proposals?

Thanks for putting up the HTML5 demo


chrisc2977(Posted 2014) [#92]
Update!

* Space and Enter now work as a mouseclick when tabbing
* Back Order tabbing is now Shift+Tab NOT Escape
* Added Gui File operations!!
* Updated all examples, documentation and download

FileOperations Video: http://www.challenger-arts.com/monkey-modules/mygui/mygui-video/
Flash/Html Examples: http://www.challenger-arts.com/monkey-modules/mygui/
Module Download: http://www.challenger-arts.com/wp-content/uploads/MyGui-Module.zip


@jondecker76
Thank you for the kind offer, but payment is not required :) it is my gift to the community lol.
Although when its finished I may add a 'Buy me a coffee' voluntary donation button :)


jondecker76(Posted 2014) [#93]
Is the source to your demo available?


chrisc2977(Posted 2014) [#94]
The source to the FileOperations video is in the examples folder.
The source for the main example is embarrassingly messy :s, but I can include it in the next update if you want?

I have made a bit of headway on a table element (in which you can set individual cells to be tickboxes, textfields or dropdowns) - but I have a mamoth shift at work now (48hr+) so unless I have a free couple of hours at work the next update wont be for a few days.


chrisc2977(Posted 2014) [#95]
Update

Changed the way tabbing works - using arrows and menus/dropdowns etc
Added Tables - Includes headers,textfields,dropdowns and tick cells
Added Charts - Bar,Line,Scatter and pie

The flash/html examples have been updated. Download also updated.
http://www.challenger-arts.com/monkey-modules/mygui/


Goodlookinguy(Posted 2014) [#96]
That's very impressive. Hey, another chart type you may want to add is a radar chart. Those are prominent in displaying stats (weaknesses and strengths).


nikoniko(Posted 2014) [#97]
Goodlookinguy wrote:
That's very impressive.



Really! Grid is awesome! Add sorting of columns and images in the cells, please :)


chrisc2977(Posted 2014) [#98]
I am debating changing the definition of Elements from:
Global mytickbox:Gui
To
Global mytickbox:Gui_Tickbox

This would be slightly more typing when declaring, but would mean my code would be simpler/tidier and I Could add Element specific fields and methods...

Thoughts?


AndroidAndy(Posted 2014) [#99]
@Chris - This is a great idea, but I am not a big fan of the "_" underscore. Is there some way you could refer to the Sencha design of ExtJs? It has a well thought out standard naming convention, here is a link with a list of all their gui components in condensed form:

http://www.delphifaq.com/faq/javascript/extjs/f3555.shtml

Cheers!


jondecker76(Posted 2014) [#100]
Awesome progress. Going to install the module now and check things out

I also think it's a good idea for different GUI elements to have their own classname and specific features


jondecker76(Posted 2014) [#101]
After getting to play around a bit, I have a feature request for the tables

Would it be possible to:
A) set a column as invisible (to store a private key for a relational database)
B) Make rows selectable, as in this jqwidgets example: http://www.jqwidgets.com/jquery-widgets-demo/demos/jqxgrid/index.htm#demos/jqxgrid/createremoveupdatedata.htm

If I could have this functionality, I would be able to port my existing code over from JQuery/JQWidgets over to Monkey/MyGui
Thanks!