IceDesign GUI designer

Applications, Games, Tools, User libs and useful stuff coded in PureBasic
User avatar
ChrisR
Enthusiast
Enthusiast
Posts: 666
Joined: Sun Jan 08, 2017 10:27 pm
Location: France

IceDesign GUI designer

Post by ChrisR »

IceDesign

IceDesign is a new Modern GUI Designer to create PureBasic Interface.

It is only available for Windows with the real gadgets captured and drawn, allowing smooth and flicker-free movements.
The containers are operational. It is possible to edit a container and also to edit a container within another container, up to 9 levels. The tabs of the panels or the scrollbars of the ScrollArea are active and available.

Image


Features:
  • DPI Aware. Except the form designer element which stays at 100% and which generates the same exact code for the controls positions/sizes.
  • Light and Dark theme
  • Multi-Language support to help create multi-language apps at the design stage
  • Toolbar with icons and texts or only icons with their tooltips.
  • Create Gadget With the selection rectangle (Lasso), double clic or Drag'n Drop from the Gadgets list
  • Select a Gadget with Left Click or Lasso
  • Multiple Selection by lasso or with Ctrl+Left Click
  • Grouped movement and resizing
  • Update properties with multiple selections or group
  • Cut, Copy, Paste and Clone. Can be done between different levels
  • Group, UnGroup Gadget
  • Align to Left, Center, Right, Top, Middle, Bottom.
  • Resize with Same Width, Height, Same Size
  • Equal Space Horizontal, Vertical
  • Left Doucle Click or use the toolbar button to Open a Container (CanvasContainer, Container, Panel and ScrollArea). Up to 9 levels
  • Select directly a Child Gadget from a Container with Left Triple Click
  • Right Doucle Click or use the toolbar button to Close a Container and go back to the previous level
  • Grid, Grid size and Snap to Grid
  • Contextual menu according to the available options for the current item
  • Add a menu, toolbar or status bar is done via the context menu from the main level
  • Add a new tab or deleting the current tab is done via the context menu from the panel
  • Change the tab of a Panel to see its content without the need to open the Panel
  • Up, Down, Left and Right arrows to Move a Gadget
  • Shift + Up, Down, Left and Right to Resize a Gadget
  • Del Key to Delete the Selected Gadget or Container
  • Use Full or Short Names for Controls
  • Auto rename the Controls Name when the caption is changed
  • Anchor controls with left, right, top and(or) bottom lock when resizing the window
  • Proportional resizing option for controls when resizing the window
  • BindGadgetEvent property to write event procedures in the created code
  • Support for some Windows Controls Styles
  • Full Color Requester with saving custom colors in IceDesign.ini
  • Display an image in background and adjust its transparency
  • Save, Save As or Open IceDesign Form GUI
  • Import IceDesign Form GUI to load templates into the current design
  • The created code is generated and displayed in real time. Note that the code is not generated when the splitter is at the bottom.
  • Preview from the generated and compiled source. Use the Esc key or click on the main window to close the preview.
  • Create the code with multiple options: Copy to Clipboard, Save and open in a new Tab, Save the code As
    • For the code creation, choose between using constants or variables with Prefix and suffix for the variables name.
    • Add the Window name to Variables or Constants name
    • LoadImage or CatchImage.
    • Hexa or RGB for the colors.
    • Define the indentation between a number of spaces or Tab.
    • Include or not Gadget item examples.
    • Include the event loop or the minimum required to run it.
    • The title block can be customized in IceDesign.ini file.
  • Run IceDesign with DPI_Unaware parameter to create a new exe: IceDesign_DPI_Unaware.exe. It will use the automatic resizing of windows based on your scale factor setting, if you prefered.
  • Load IcedDesign with a GUI form passed as a parameter (ex: IceDesign Template.icef)
  • .....

Note: All current PureBasic gadgets including containers (Container, Panel, Scrollarea, Canvas container) are supported except the SplitterGadget for now

kpeters58 wrote: Thu Jun 17, 2021 2:05 am I'll say it with Aretha Franklin: R E S P E C T!

Nice looks, slick, quick, and very intuitive. Just re-built the most complex screen from my best-selling application and it worked fine - no crashes or problems. The code generation needs a few more tweaks, but that was my only real issue. ..
JHPJHP wrote:Your Visual Designer is a great addition to the PureBasic community; the common sense layout and functionality is spot-on.
NB*: Don't take the current lack of comments to mean the community isn't grateful for the work you've done.
JHPJHP wrote:I've been following your progress, really great work; with each new update SweetyVD keeps getting better.
Keep up the great work :!:
FlatEarth wrote:Wow bravo, that's great, I'm waiting to test it ... :D :)
FlatEarth wrote:Your work is amazing! :shock: :shock: If I were you, I would have started pb best designer project right now :D
Hope your project succeeds :wink:
srod wrote:ChrisR, this looks a fantastic project - great looking designer.
srod wrote:Very impressive.
Does that allow you to edit a container within another container say?
chi wrote: Tue Apr 27, 2021 12:24 pm Very nice and intuitive UI! The only thing ... (Done). Anyhow, great work 8)
Thank you guys, it's appreciated 8)


Download:


Buy and get IceDesign GUI Designer
LifeTime User-Based Licence.
Please note that country's tax are not included and the currency exchange rates is not displayed but they are indicated afterwards, at the checkout time.
If you need, read sales Tax on Gumroad

Already purchased, thanks :) to download a new updated version, use the download link included in the receipt email then enter your email address to access to the download link.


IceDesign_Demo.exe
The demo version is limited to 16 gadgets, which should be enough to test and see possibilities and also to build basic interfaces without any further limitation


if anyone wants to donate more (I have been asked), it is always possible to do so on my Paypal Donation page.


The LifeTime User-Based Licence is provided in IceDesign via Setting then the License button.
IceDesign - Terms And Conditions

This program is provided "As IS" without any warranty. The use of IceDesign is at your own Risk.
ChrisR, author of IceDesign is Not responsible for any damage(s) attributed to IceDesign.

The Demo version of this program may be freely distributed.
You may Not decompile, reverse engineer, disassemble, modify or change, the contents of the program.

IceDesign has an user-based licence. This means you can install it on every computer you need.
But you Can't share it between two or more people.

©2021 ChrisR
Enjoy :)
Last edited by ChrisR on Thu Dec 16, 2021 12:06 pm, edited 59 times in total.
User avatar
ChrisR
Enthusiast
Enthusiast
Posts: 666
Joined: Sun Jan 08, 2017 10:27 pm
Location: France

Re: IceDesign

Post by ChrisR »

Align, Same Size, Equal Space...

Image


Here's an animated gif capture of the Import function.

Image

Anchor Demo with Lock Top, Left, Bottom & Right

Image

Use Short Name, Auto rename Control with caption names, Windows Control styles & Multiline

Image

How to add IceDesign as a Tool and add it to the Toolbar

Image
Last edited by ChrisR on Mon Dec 13, 2021 2:20 am, edited 7 times in total.
User avatar
microdevweb
Enthusiast
Enthusiast
Posts: 179
Joined: Fri Jun 13, 2014 9:38 am
Location: Belgique

Re: IceDesign

Post by microdevweb »

Hi CrisR;

Tthat look very nice
Use Pb 5.73 lst and Windows 10

my mother-language isn't english, in advance excuse my mistakes.
loulou2522
Enthusiast
Enthusiast
Posts: 412
Joined: Tue Oct 14, 2014 12:09 pm

Re: IceDesign

Post by loulou2522 »

Hi ChrisR,
Seem to be a great addition, Congratulations.
Have a nice day
FlatEarth

Re: IceDesign

Post by FlatEarth »

Looks nice, your GUI designer :D

Good luck with the further development!
User avatar
ar-s
Enthusiast
Enthusiast
Posts: 334
Joined: Sat Oct 06, 2007 11:20 pm
Location: France

Re: IceDesign

Post by ar-s »

Works great. Thanks
Maybe you shoud add possibilities to maximize the GUI. Here in QHD the windows is small.
~Ar-S~
My Image Hoster for PB users
My webSite (french) with PB apps : LDVMULTIMEDIA
PB - 3.x / 5.7x / 6 - W11 x64 - Ryzen 7 3700x / #Rpi4

Code: Select all

r3p347 : 7ry : un71l d0n3 = 1
User avatar
ChrisR
Enthusiast
Enthusiast
Posts: 666
Joined: Sun Jan 08, 2017 10:27 pm
Location: France

Re: IceDesign

Post by ChrisR »

Thank you for your encouragement :)
ar-s wrote:Works great. Thanks
Maybe you shoud add possibilities to maximize the GUI. Here in QHD the windows is small.
Yes it is planned, for the moment I'm focused on the engine with a minimum interface
and I'm trying to capture any bugs or enhancements to do while it's hot.

To get an idea of the final design, you have to imagine the interface, properties and features of SweetyVD with this engine behind.
The interface may be reviewed in the future with a real property grid, to make it more Pro
On the other hand, the advantage of the SweetyVD interface is to have the main properties at hand in 1 click and without having to Scroll too much.
User avatar
falsam
Enthusiast
Enthusiast
Posts: 627
Joined: Wed Sep 21, 2011 9:11 am
Location: France
Contact:

Re: IceDesign

Post by falsam »

Very good but .... Try inserting a scintilla gadget ;)

➽ Windows 11 64-bit - PB 6.0 x64 - AMD Ryzen 7 - NVIDIA GeForce GTX 1650 Ti

Sorry for my bad english and the Dunning–Kruger effect.
User avatar
ChrisR
Enthusiast
Enthusiast
Posts: 666
Joined: Sun Jan 08, 2017 10:27 pm
Location: France

Re: IceDesign

Post by ChrisR »

Hi Falsam,
Thanks for seeing it. To solve, copy Scintilla.dll in the same folder.
I mainly use the debugger so I hadn't seen it, the dll is in the path.
I'll have to add a pre-check on InitScintilla() or share Scintilla.dll,...

The engine seemed promising, but now, I'm wondering if it's worth the effort...
User avatar
microdevweb
Enthusiast
Enthusiast
Posts: 179
Joined: Fri Jun 13, 2014 9:38 am
Location: Belgique

Re: IceDesign

Post by microdevweb »

Hi Chris,
I tried your software, but i don't understand how make the code into pureBasic ide ?
Use Pb 5.73 lst and Windows 10

my mother-language isn't english, in advance excuse my mistakes.
User avatar
ChrisR
Enthusiast
Enthusiast
Posts: 666
Joined: Sun Jan 08, 2017 10:27 pm
Location: France

Re: IceDesign

Post by ChrisR »

Hi microdevweb,
Here it is only a demo of the engine.
The properties grid, the code generation,... is to be developed.
It can be done based on SweetyVD which is more complete on that.

The demo above is here to show the possibilities of making a modern GUI Designer with real Gadgets, container management, multiple selection, groups, alignement,...
I think it really has a big potential
but there's work to be done and for now, I wonder if my investment is worth it.
User avatar
Flype
Addict
Addict
Posts: 1542
Joined: Tue Jul 22, 2003 5:02 pm
Location: In a long distant galaxy

Re: IceDesign

Post by Flype »

I'm impressed of your work ChrisR. That's very valuable work.

Why wouldnt it be worth the effort ?
No programming language is perfect. There is not even a single best language.
There are only languages well suited or perhaps poorly suited for particular purposes. Herbert Mayer
IdeasVacuum
Always Here
Always Here
Posts: 6396
Joined: Fri Oct 23, 2009 2:33 am
Location: Wales, UK
Contact:

Re: IceDesign

Post by IdeasVacuum »

Hi ChrisR

It's definitely worth it because as of now, we do not have a Designer that properly covers the possibilities of all components and though everyone was happy when the current Designer was first introduced (being way better than the previous one), it has stayed dormant when clearly improvements are needed.

But there are problems.
Firstly, no matter what, it is a Project that requires a lot of hours work.
Secondly, before you know it, everyone is asking for an enhancement or modification and those hours pile up even more.
Thirdly, there needs to be a commitment to maintain the code as PB introduces the occasional new item.
Lastly, although I suspect most PB Users are Windows only (time for a survey?), there seems to be an obligation to support Linux and Mac too.

So, in my view, the marketplace needs to be queried first. There should be a price for the Designer, no one should be putting in that amount of effort without reward.
Last edited by IdeasVacuum on Sun Mar 29, 2020 8:16 pm, edited 1 time in total.
IdeasVacuum
If it sounds simple, you have not grasped the complexity.
User avatar
ChrisR
Enthusiast
Enthusiast
Posts: 666
Joined: Sun Jan 08, 2017 10:27 pm
Location: France

Re: IceDesign

Post by ChrisR »

Hi Flype, IdeasVacuum
Flype wrote:Why wouldnt it be worth the effort ?
I was running out of free time when I wrote it
There's still a lot to be done and didn't see how I could go to the end

I'm sure we could build a nice tool on that base but it would have to be a common project or indeed with a counterpart for the work done
I haven't felt much enthusiasm for a collaborative works but I'm hoping it can change with all the good experimented guys around.
Right now it's confinement for 5 and between telework, exam preparation and school online, it's not more easier to find free time for me.

I fully agree with you IdeasVacuum and on the problems
On my side, I see it, as an additional tool for windows only. Not to replace the old PureForm. Old but good for the Cross-Plateform IDE with the drawn gadgets.
It seems to me difficult to make something more modern for the 3 platforms.
I'm ready to share the source if any guys are interested during this special period. It could be the right time, maybe.
Mohsen

Re: IceDesign

Post by Mohsen »

@ChrisR, congratulations for your new designer.

for Windows only:
I can help to build the environment (like Amitris).
Last edited by Mohsen on Tue Mar 31, 2020 8:08 pm, edited 1 time in total.
Post Reply