Jump to content




Graffiti v1.7.2 - The first IDE for GUIs

api

54 replies to this topic

#1 Encreedem

  • Members
  • 39 posts
  • LocationVirgo Supercluster

Posted 06 July 2013 - 06:27 PM

Graffiti v1.7.2 - The first IDE for GUIs


I'm not sure whether the term "IDE" is correct so I'm just going to explain it using this Wikipedia article:


"A graphical user interface builder (or GUI builder), also known as GUI designer, is a software development tool that simplifies the creation of GUIs by allowing the designer to arrange widgets using a drag-and-drop WYSIWYG editor. Without a GUI builder, a GUI must be built by manually specifying each widget's parameters in code, with no visual feedback until the program is run."


And that's pretty much it! (except for the drag-and-drop part, CC isn't really made for that)
Feel free to post bug reports, suggestions, ideas and questions.

I'm always happy when I'm able to improve this program! :D

Note: I'm not working on this program anymore. It might or might not be incompatible with newer CC versions.

Motivation-o-meter:
A simple bar showing the possibility whether I'm working on this program or school's keeping me busy.

low.............high
| - - - - - - - - - - |
| - - - - - - - - - - |

Features:
  • Create an unlimited amount of windows.
  • Add objects to those windows (see "Supported Objects")!
  • Easily change the design and attributes of each object.
  • Switch between windows using only one function.
  • Use an API to interact with the windows that have been created with the editor.
Supported objects:
  • Button
  • Text
  • Variable
  • ProgressBar
  • Input
  • List
  • CheckBox
  • RadioButton
  • Slider
  • Panel
  • ScrollView
More details are in the instructions below. (currently: "Complete tutorial for Graffiti v1.7")

Download & Changelog
v1.7.2: reMpHkBb

Older versions
Spoiler

Bugs and planned features

Progress
Next (planned) version: 1.8
  • Lots of cleaning
  • Bugfixes: 0%*
* This value will never change.

Screenshots
Spoiler

Videos
Object overview
Spoiler

Editor tutorial/demonstration
Spoiler

Official AddOns and programs which use the API
Warning: I haven't tested these programs with newer versions of Graffiti. Make sure that you have the correct version before using one of them. (No, I don't know which version they need.)
Note to myself: This is obsolete... make some new stuff. Instructions
Partially moved/copied to GitHub.

Complete tutorial for Graffiti v1.7
Spoiler

Graffiti 1.7 paths and object accessing via code
Spoiler

API (1.6+)
Spoiler

API (1.3 - 1.5)
Spoiler

AddOns (1.2+)
Spoiler

Editor (1.1+)
Spoiler

No editor (1.0)
(Not as simple as using the editor but if you insist on using the older version...)
Spoiler

Edited by Encreedem, 01 September 2014 - 07:56 PM.


#2 Zudo

  • Members
  • 800 posts
  • LocationUK

Posted 07 July 2013 - 03:13 AM

How do you input text on a monitor?

#3 Encreedem

  • Members
  • 39 posts
  • LocationVirgo Supercluster

Posted 07 July 2013 - 05:46 AM

View PostZudoHackz, on 07 July 2013 - 03:13 AM, said:

How do you input text on a monitor?

You touch the input-object, go to the computer, write something and press enter. The result gets displayed on the monitor.

#4 Zudo

  • Members
  • 800 posts
  • LocationUK

Posted 08 July 2013 - 03:07 PM

View PostEncreedem, on 07 July 2013 - 05:46 AM, said:

View PostZudoHackz, on 07 July 2013 - 03:13 AM, said:

How do you input text on a monitor?

You touch the input-object, go to the computer, write something and press enter. The result gets displayed on the monitor.

Ok, now what we need is wireless keyboards! :)

#5 Encreedem

  • Members
  • 39 posts
  • LocationVirgo Supercluster

Posted 09 July 2013 - 11:53 AM

View PostZudoHackz, on 08 July 2013 - 03:07 PM, said:

View PostEncreedem, on 07 July 2013 - 05:46 AM, said:

...

Ok, now what we need is wireless keyboards! :)

Indeed! :lol:
I guess all you need are about 40 pressure plates, signs, lots of redstone and a guy who would stand on the Alt-, Ctrl- or Shift-"Key" for you.

#6 Encreedem

  • Members
  • 39 posts
  • LocationVirgo Supercluster

Posted 12 July 2013 - 02:51 PM

Alright guys. I realized that making a program which helps you to create a GUI is nothing great since there are already lots of them in this forum.
However, I haven't seen any programs with a touchscreen-supporting editor so I decided to make my program a bit more unique by adding one.

#7 Zudo

  • Members
  • 800 posts
  • LocationUK

Posted 13 July 2013 - 12:30 AM

Keep working on it! Don't give up because it's already been done!

#8 lesander

  • Members
  • 8 posts
  • LocationThe Netherlands

Posted 13 July 2013 - 10:58 AM

Wouldn't a qwerty keyboard be easier to use?

#9 Hoppip

  • New Members
  • 1 posts

Posted 14 July 2013 - 01:26 AM

This is really nice, very easy to use and I learned a lot of Lua from this. Did you move the screens code to "screens.sav"? I can't find it anywhere in the code!

#10 Encreedem

  • Members
  • 39 posts
  • LocationVirgo Supercluster

Posted 14 July 2013 - 07:01 AM

View PostZudoHackz, on 13 July 2013 - 12:30 AM, said:

Keep working on it! Don't give up because it's already been done!

I don't know what made you think that I would give up on this (I guess my last post sounds a bit depressive) but I can assure you that I'll keep working on this program.


View Postlesander, on 13 July 2013 - 10:58 AM, said:

Wouldn't a qwerty keyboard be easier to use?

Yeah, I forgot that this could cause problems since I'm reading the keys instead of the characters. I found an easy solution for this problem and it will be in the next update.


View PostHoppip, on 14 July 2013 - 01:26 AM, said:

This is really nice, very easy to use and I learned a lot of Lua from this. Did you move the screens code to "screens.sav"? I can't find it anywhere in the code!

Thanks! It's great to hear that it actually helps other people. And yes, you can't use the old way of creating the "screens" anymore. The editor saves everything inside the "screens.sav" file.

#11 Mandrake Fernflower

  • Members
  • 117 posts
  • LocationDark Side of The Moon

Posted 14 July 2013 - 06:23 PM

It looks like a white board or graffiti program. I would just call it Graffiti

#12 Encreedem

  • Members
  • 39 posts
  • LocationVirgo Supercluster

Posted 15 July 2013 - 01:55 AM

View PostMandrake Fernflower, on 14 July 2013 - 06:23 PM, said:

It looks like a white board or graffiti program. I would just call it Graffiti

Sounds interesting. I'll think about it. Thanks for the suggestion!

#13 Encreedem

  • Members
  • 39 posts
  • LocationVirgo Supercluster

Posted 17 July 2013 - 03:45 AM

The next update (1.2) is almost out and I woud be happy to hear some feedback about a new feature: AddOns
Background: My program is great if you want to use it like it is but it has almost no compatibility with other useful programs.
The idea: An AddOn file would contain objects. The user would be able to add the objects to the screen (using the normal editor) and use it like any other object. Basically that means that you can create a program with a GUI without having to make the GUI!
Example: You declare a button in your AddOn-file, the user adds it to the screen and when he touches it then my program will tell the AddOn that the button has been pressed.
Here's an actual example before I the post gets too long: http://pastebin.com/8KBu57Kp

Edit: BTW guys, I've added a video turorial for the editor. The link is in the original post.

#14 pazzesco

  • Members
  • 22 posts

Posted 20 July 2013 - 12:32 PM

A GUI can be half the battle depending on the application, and this looks pretty neat. Keep up the good work!

#15 Encreedem

  • Members
  • 39 posts
  • LocationVirgo Supercluster

Posted 20 July 2013 - 05:01 PM

Thanks man! (or woman, just in case)
I'll keep working on this as long as other people use it.

#16 Encreedem

  • Members
  • 39 posts
  • LocationVirgo Supercluster

Posted 23 July 2013 - 04:47 AM

Graffiti v1.3 is out!
I've added an API and changed the editor a little bit. It's easier to adapt the objects to changes of the screen size now.
Not sure why I added AddOn and API support but I've created a section in the OP where the differences between those 2 features are explained.
Links and details are in the changelog.

Edit: Yay! 1000 views! :lol:

#17 Mitchfizz05

  • Members
  • 125 posts
  • LocationAdelaide, Australia

Posted 25 July 2013 - 04:58 PM

This looks truly amazing!
1+

One quick question though: Does it have to be a GUI for a monitor? Like, without editing the API?

#18 Shnupbups

  • Members
  • 596 posts
  • LocationThat place over there. Y'know. The one where I am.

Posted 25 July 2013 - 05:10 PM

I love this idea and it looks really cool! If there's a computer version with compatibility for left and right clicking, I'll definitely use this!

#19 Encreedem

  • Members
  • 39 posts
  • LocationVirgo Supercluster

Posted 26 July 2013 - 02:52 AM

Yay! Positive feedback :lol:
I've already mentioned in the OP that I didn't even know that advanced computers have touchscreen-support (actually, when I started with this program I had no idea what they were good for) and event handling caused lots of confusion when I experimented with the possible features.
I learned a lot about Lua while writing this program and I think that it wouldn't even be too hard to implement computer-support in the 1.4 update. Although you shouldn't expect support for left and right mouse click handling in the near future.

#20 NeptunasLT

  • Banned
  • 147 posts
  • LocationVilnius,Lithuania

Posted 27 July 2013 - 02:22 PM

Not bad, i kinda Like it and its very helpful and you dont need LUA Skills. :)





1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users