DialogDesign0R V1.84

Applications, Games, Tools, User libs and useful stuff coded in PureBasic
User avatar
HeX0R
Addict
Addict
Posts: 980
Joined: Mon Sep 20, 2004 7:12 am
Location: Hell

Re: DialogDesign0R V1.81

Post by HeX0R »

ChrisR wrote: Fri Nov 18, 2022 11:58 pm But I didn't do it, like 90% of the guys. I didn't go through the 10 pages of the topic either :wink:
My feedbacks are in no way negative, it's not me otherwise, they are constructive even if I mess up.

I had seen the option "Save Names/IDs to additional file", but I didn't know what it meant. Without seeing the link with saving in a ready to use *.pb file.
Good that the option is already there since a long time :)
No worries, I understand exactly what you mean.
I thought pretty long about how to integrate that functionality as intuitive AND as flexible as possible.
Sure, I could have named it simply "save pbi source code also", but DD is not only used for purebasic!

The main purpose was the flexibility.
I sometimes (for bigger projects) add the dialog.xml and don't need any additional source code to integrate
Then, for smaller projects, I simply add the created *.pbi and I'm done.
There are also projects, where I don't need the dialog being integrated in the *.pbi file, but are using it only to be sure, all constants have been perfectly defined.

But all that is project dependant, so, whenever I have to change something in that dialog, I want DD to KNOW already, how it should be handled this time.
And since DD doesn't store anything else, I had to integrate that info into the xml itself.
Therefore, the dialogs own settings are always set in the preferences of the dialog element.
Whereas your prefered settings (used, whenever you start a new dialog) are stored in DDs preferences.

It is not that intuitive, I agree, but I thought if users got that once, they know it forever.
Therefore I accepted that workflow.
ChrisR wrote: Fri Nov 18, 2022 11:58 pm For "Show XML in the Editor (F7)" as part of the "Advanced Tool (F12)", I had seen it and used.
My request was to have a direct access, via a toolbar button, to access it directly without going through "Advanced Tool". As written in the help file, this might be the most interesting functionality. Also F7, F8, F9 shortcuts does not work here unless I use it wrong.
The shortcuts (F7...F9) are for advanced users only (I rarely need them myself).
And they are part of the Advanced TOOL dialog (only), which you can open with F12, or the icon on the top right of DD
In the Advanced Tool Dialog, there are also already the toolbar icons (o.k. they are at the bottom, not on top) you are looking for.
The error here is, that F7...F9 are bind to the main dialog, that is irritating and wrong, I'll fix it.
Until then, please use the toolbar buttons of the Advanced Tool.
ChrisR wrote: Fri Nov 18, 2022 11:58 pm Did you reproduce the copy/paste bug, written on my previous post ?
No, because, frankly speaking, I didn't understand it :D
The problem here is:
When you delete the <hbox> all children will be deleted, which means, what you've copied previously is no longer there.
You have two possibilities:
1.) create a new window, and move the panel to that (deleting the first one)
2.) use the advanced tools, open with F12, press F7 (which doesn't work for now, so press imagebutton "Show XML in the Editor (F7)"), remove the hbox element, and press the icon on the right of the tool box (load back into dd)
ChrisR wrote: Fri Nov 18, 2022 11:58 pm Can you enlighten me on how to use identifier name (eg: #DD_GADGET_button_1 = "button 1") in the event loop vs EventGadet(), no worries when using IDs. I'm still learning.
Just for your information, the templates are completely flexible!
There is also a template editor, so just change it to your needs.
In that case here (using names), I simply wanted to make sure, that all Gadgetnames are defined somewhere, to have a list (like an enumeration of constants), where you can see quickly, which names are defined.
Remember: the dialog is not always part of that *.pbi file, you maybe can't look into the dialog itself here!
And constants do not need any resources!
Another advantage is, you can use PureBasics auto-complete functionality with those constants, in case you forgot how an item is named.
(Which only makes sense, if they have meaningful names, not like button_1, text_2, ...)
hoangdiemtinh wrote: Sat Nov 19, 2022 8:59 am @Hex0r,
I translated to Vietnamese Language. Please add into the next your release.
Great!
Thank you so much!
It will be integrated in the upcoming release!
User avatar
ChrisR
Addict
Addict
Posts: 1127
Joined: Sun Jan 08, 2017 10:27 pm
Location: France

Re: DialogDesign0R V1.81

Post by ChrisR »

Thank you for all these explanations HeXOR.
For my the copy/paste issue, I understand, thanks for the workarounds. However it should not crash. In my tool, I go through another list for cut/copy/paste/clone, so it remains available even after deletion.
I continued to test DialogDesign0R, it requires a little learning for the virtual boxes,... but it is very complete, congratulations for this nice tool :)
User avatar
HeX0R
Addict
Addict
Posts: 980
Joined: Mon Sep 20, 2004 7:12 am
Location: Hell

Re: DialogDesign0R V1.82

Post by HeX0R »

V1.82 (only Source for now, binaries will follow after a few days)
  • Fixed: Crash, when trying to paste an element, which had been cut previously from a no longer existing node
  • Fixed:When option "use IDs instead of Names" was activated, windows had only an ID. But you can't open a window with no name
  • Fixed: the temporary file ids were not always unique
  • Fixed: F7...F9 are now only usable in the debug dialog
  • Added: When you set the focus on a preview window, move the mouse over a gadget and press F10, it will be selected in DD and the preview dialog (not possible for virtual containers!).
    That should improve handling of very long dialogs
  • Added: A plausibility check. It will not prevent you from saving, but there might be some comments in the log
  • Added: New Icon on top: "cascade all dialogs (SHIFT+F11)".
    When you lost some of your dialogs (on a switched off monitor e.g.) you can bring all of them to your main monitor
  • Added: Vietnamese Language, thanks to hoangdiemtinh
  • Changed: Users are no longer bothered when they close large dialogs to which they had not made any changes
My idea with the multi-language-support is postponed for the time being, that needs more investigation
hoangdiemtinh
User
User
Posts: 29
Joined: Wed Nov 16, 2022 1:51 pm

Re: DialogDesign0R V1.82

Post by hoangdiemtinh »

@Hex0r,
I updated the DD Vietnamese Language to DD v1.82. Please add into the next your release.
.
File Vietnamese Language for Dialog Design0R: http://bit.ly/3EqJ8ff
SHA1: D55B66E4F8FC517C1993F0923E91D5F09F331F90
User avatar
HeX0R
Addict
Addict
Posts: 980
Joined: Mon Sep 20, 2004 7:12 am
Location: Hell

Re: DialogDesign0R V1.82

Post by HeX0R »

Done!
Just redownload it.
storck
User
User
Posts: 83
Joined: Sat Oct 18, 2003 4:56 pm
Location: Sweden

Re: DialogDesign0R V1.82

Post by storck »

Hi!

I arrived late to the party. @Hex0r: Thank you for a great tool!

// Storck
User avatar
ChrisR
Addict
Addict
Posts: 1127
Joined: Sun Jan 08, 2017 10:27 pm
Location: France

Re: DialogDesign0R V1.82

Post by ChrisR »

Thanks for the update HeX0R,
What I tested Crash paste deleted node, F7, F8, cascade all dialogs, looks good.
F10 to select a Gadget in a preview window is a great addition. In the following, it could be good to have the Del shortcut active also on the preview and a sub-menu on right-clic with cut,copy,paste and del.
User avatar
tj1010
Enthusiast
Enthusiast
Posts: 621
Joined: Mon Feb 25, 2013 5:51 pm
Location: US or Estonia
Contact:

Re: DialogDesign0R V1.82

Post by tj1010 »

Just used this on another big project. It's saved me a lot of hours on UI/UX scale troubleshooting... At this point probably at least a week in accumulated total hours...

BTW for new PB users: Just open the dd.PBP in PB and create exe to build a portable exe from latest source

Bugs(1.82):
  1. Invisible, Width, Height in XML after they are unticked and cleared sometimes, and after save too
  2. black/yellow parent-select block out in tree is random sometimes with locking out children nodes
  3. Refresh seems to render window even after clicking hide all windows, but it closes them automatically; keeps it open when you click show window again
  4. T00L PB XML field keeps old XML in it till you clear it. Adding current XML to bottom of old; this can catch users off guard pretty easily when they are quickly shifting through windows
  5. SpiderBASIC 2.40 Final shows a lot of random behavior with dialog lib when you use the spacing field. It corrupted multiboxes in random ways when I tried to use big spacing. This is a SB issue, and maybe PB too, but this tool exposes it easily..
This code may help some people:

Code: Select all

Procedure UIChange()
  ExamineDesktops()
  ResizeWindow(DialogWindow(#Dialog),0,0,DesktopWidth(0),DesktopHeight(0))
  RefreshDialog(#Dialog)
EndProcedure
BindEvent(#PB_Event_SizeDesktop,@UIChange())
The truth hurts.
User avatar
HeX0R
Addict
Addict
Posts: 980
Joined: Mon Sep 20, 2004 7:12 am
Location: Hell

Re: DialogDesign0R V1.82

Post by HeX0R »

I have some difficulties understanding your bug report?!
  1. Sorry, but I don't really understand what you want to tell me here
  2. black/yellow? parent-select block? Are you talking about the multicopy mode now? You know, that the colors depend then on the theme you are using?
    Could you share a picture maybe?
  3. With "refresh" you mean what exactly? Pressing F5? The F5-button has a tool tipp, where it says: "Refresh/Show this dialog"
  4. o.k., that is the first thing I understand, and you are right, that should be changed
  5. I don't use SB, I've installed the Demo once in the past and checked which attributes can be used.
    It is not heavily tested, I must admit
    Do you know if the latest SB Demo is based on 2.40? Then I can try it
User avatar
tj1010
Enthusiast
Enthusiast
Posts: 621
Joined: Mon Feb 25, 2013 5:51 pm
Location: US or Estonia
Contact:

Re: DialogDesign0R V1.82

Post by tj1010 »

#1 looks like some cache bug where old field values are kept; like removing width and height and the old values still being used
#2 The tree on the left; default settings; elements randomly go yellow text black background and I have to click the parent a few times to be able to select child elements again
#3 has to do with hide windows not totally hiding window; the window appears and is closed sometimes in a flickering manner while Editor is in focus
#4 This project was in SB, but I'll use it for PB again soon and give a report. Spacing causes overlaps and causes unpredictable behavior in dialog rendering; likely happens in PB too
The truth hurts.
User avatar
HeX0R
Addict
Addict
Posts: 980
Joined: Mon Sep 20, 2004 7:12 am
Location: Hell

Re: DialogDesign0R V1.82

Post by HeX0R »

A1: I never came accross that phenomenon and have no idea what could cause that, I'm afraid.
If you find, by any chance, some procedure to recreate it I'd be happy to fix it.
A2: I think you (somehow) enabled multi copy mode by accident, which is when pressing F3 or activating the multi copy icon on top
In general, that had been introduced for MacOS users, because drag&drop is not working there.
And since a tree gadget doesn't support multi item selections I came-up with a different possibility, which is now different front- and backcolor for selected items.
A3: Same as A1, would help to see that somehow in action, in a captured small video e.g.
A4: I'd need to know the dialog and which spacing you've extended to start analysing.
User avatar
bembulak
Enthusiast
Enthusiast
Posts: 572
Joined: Mon Mar 06, 2006 3:53 pm
Location: Austria

Re: DialogDesign0R V1.82

Post by bembulak »

Hello heX0R,

a little feedback:
  • I use dd quite a lot, and it's a great help. Thank you for the effort!
  • I've got it working flawlessly on macOS X - if you want the binary for hosting, drop me a line.
  • Unfortunately, I was not successful with compiling on Linux (tested on two machines. Manjaro with recent updates and Fedora 36). I have to do further investigations, but presently PB complains about "not found functions" with _GTK_*. Seems like native GKT*-calls are unresolved, and I'll have to look which Libs are missing. Example programs and my self-written stuff works, though.
Thanks again!
cheers,

bembulak
User avatar
HeX0R
Addict
Addict
Posts: 980
Joined: Mon Sep 20, 2004 7:12 am
Location: Hell

Re: DialogDesign0R V1.82

Post by HeX0R »

See comment in DDesign0r_v02.pb:

Code: Select all

;Linux:
;you should enable the qt subsystem, the whole dialogs doesn't seem to be handled very good under GTK
;bad thing is, drag'n drop is currently not working for qt subsystem!
I've given up on gtk, that produces only rubbish

If some Linux guru can help, see in DD_OSfixes.pbi the empty procedures:
DoTreeAutoScroll(Gadget, yPos, SelectedIndex)
and
GetTreeItemBelowCursor(Gadget, x, y)

Regarding MacOS:
I would be more interested in the changes you did to the source code, instead of hosting the binary
User avatar
bembulak
Enthusiast
Enthusiast
Posts: 572
Joined: Mon Mar 06, 2006 3:53 pm
Location: Austria

Re: DialogDesign0R V1.82

Post by bembulak »

HeX0R wrote: Tue Dec 06, 2022 4:26 pm ...

Regarding MacOS:
I would be more interested in the changes you did to the source code, instead of hosting the binary
:D
None. It worked out of the box. Downloaded source today, opened the project file and selected the 64bit Target. Just hat to give it a proper name (ending with *.app). Compiled in a couple of seconds.
2015 spring, Intel, OS 12.6.1, Monterey. PureBasic 6.00 LTS, XCode 14.1 (14B47b)
cheers,

bembulak
User avatar
HeX0R
Addict
Addict
Posts: 980
Joined: Mon Sep 20, 2004 7:12 am
Location: Hell

Re: DialogDesign0R V1.82

Post by HeX0R »

Wasn't it somehow complicated to add the resources to this app?
In the past I had a VM running with MacOS, but that thing was so incredible slow, that I've deleted it.
Would you mind sharing the *.pbp file then?
I'll add one for linux anyway, so why not a project file for MacOS also
Post Reply