Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Some suggestions for VisualFBEditor #248

Open
chunmingwang opened this issue Mar 17, 2022 · 82 comments
Open

Some suggestions for VisualFBEditor #248

chunmingwang opened this issue Mar 17, 2022 · 82 comments
Labels
Improvement New feature or request

Comments

@chunmingwang
Copy link
Contributor

Recently, I deeply used VisualFBEditor to make a comprehensive application of bass, which feels great!
However, compared with Visual Basic, some suggestions for VisualFBEditor are as follows. It would be better if it could be implemented.

  1. The code editor is divided into two areas to facilitate viewing and editing definitions and codes.
  2. After the control editor copies and pastes the control, the property becomes the default value, hoping to retain the style of the control when it is copied.
  3. Control editor edit properties at multiple controls are selected, I want to change the properties for all selected controls.
  4. Tag property in the control cannot be used yet. It is useful sometimes.
  5. Control to add the function of ToolTipText.

baseaudio

@XusinboyBekchanov
Copy link
Owner

It looks very cool. Did you draw the histogram by hand?

According to point 5, there is a Hint property, do you mean it?

I'll try to do the rest of the points.

@chunmingwang
Copy link
Contributor Author

Spectrum histogram It's not hand drawn, it's real time audio stream data transfer to bitmap draw to picturebox, the exsample from bass (www.un4seen.com), I coverted it for freebasic.

Thank you for pointing out that Hint is the ToolTipText in Visual Basic

@XusinboyBekchanov
Copy link
Owner

Added: Ability to change the Controls Tag property in the Properties Window:
84ee3b5

Added: Object parameter to Dictionary IndexOfKey And ContainsOfKey functions:
XusinboyBekchanov/MyFbFramework@f752c52

The Tag property is used a lot in the IDE. There you can save not only text, but also objects.

@XusinboyBekchanov
Copy link
Owner

Added: Ability to edit properties of selected multiple controls:
c8c7651

Added: CountOf function to WStringList:
XusinboyBekchanov/MyFbFramework@1855fea

@XusinboyBekchanov
Copy link
Owner

Improved: Copy controls copy all properties:
49bc003

@retsyo
Copy link
Contributor

retsyo commented Mar 22, 2022

mine: save current VFB layout, windows' size on exit

@XusinboyBekchanov
Copy link
Owner

mine: save current VFB layout, windows' size on exit

Added: Saving Width, Height and Maximized state of Main Window on exit:
82b109f

@retsyo
Copy link
Contributor

retsyo commented Mar 23, 2022

more: option to load last opened project/files

@XusinboyBekchanov
Copy link
Owner

There:
image

@retsyo
Copy link
Contributor

retsyo commented Mar 23, 2022

yet another: ctrl+mouse wheel to zoom in/out the text font size in editor

@XusinboyBekchanov
Copy link
Owner

Added: Ctrl + MouseWheel to Edit control:
d5705e9

@XusinboyBekchanov
Copy link
Owner

Improved: The Code editor can be split into two areas:
babc8a2

@chunmingwang
Copy link
Contributor Author

Improved: The Code editor can be split into two areas: babc8a2

suggest to improve if the spliter move bottom out of the edit control, then reset the spliter back to top.

@DavidIceBird
Copy link
Contributor

DavidIceBird commented Apr 7, 2022 via email

@XusinboyBekchanov
Copy link
Owner

suggest to improve if the spliter move bottom out of the edit control, then reset the spliter back to top.

Fixed.

Fixed: If the edit control separator is moved down from the edit control then the separator is moved back to the top:
898d590

Thanks you. This fuction is good.
Now VisualFBEditor ican be split, but relatively rudimentary. I think that different files should be opened in different TAB >windows and linkage mechanisms can be established in different windows in the funture.

I will try this too.

@XusinboyBekchanov
Copy link
Owner

Added: Split vertically to Edit control:
936633f

@chunmingwang
Copy link
Contributor Author

Suggest to delete following exe files.

\Examples\Chart\Chart Example.exe
\Examples\Grid\Grid Example.bas.exe
\Examples\GridData\frmGridDataTest.exe
\Examples\WebBrowser\WebBrowser Example.exe
\Examples\WebBrowser\WebBrowser1.exe

@XusinboyBekchanov
Copy link
Owner

Done.
Deleted: Exe files from Github:
75dba61

@chunmingwang
Copy link
Contributor Author

Add management function to recent tab in frmTemplates.frm
Untitled

@chunmingwang
Copy link
Contributor Author

Add Manifest and Run as adiministrator options for Windows app

Untitled

@XusinboyBekchanov
Copy link
Owner

Add management function to recent tab in frmTemplates.frm

Added: Add, Change, Remove and Clear buttons to New Project Dialog's Recent files tab:
4b72272

@XusinboyBekchanov
Copy link
Owner

Fixed: Run As Administrator Project Properties option:
68beeff

@chunmingwang
Copy link
Contributor Author

Has Manifest not been imported yet?
When compiling, I see that the following line of the RC file has not changed

Manifest disabled should be:

//1 24 "Manifest.xml"

Manifest enabled should be:

1 24 "Manifest.xml"

@XusinboyBekchanov
Copy link
Owner

When you compile, then it changes.

@chunmingwang
Copy link
Contributor Author

How to determine which RC file will changes?

  1. Form code like this
#ifdef __FB_WIN32__
	'#Compile "frmRadio.rc"
#endif

or

#ifdef __FB_WIN32__
	#cmdline "frmRadio.rc"
#endif
  1. Project define RC file as main file

Untitled

@XusinboyBekchanov
Copy link
Owner

Looks at the main resource file first, then a line in the file (no difference with #cmdline or '#Compile).
If the main resource file is specified, no lines are needed in the file.

@chunmingwang
Copy link
Contributor Author

chunmingwang commented Apr 15, 2022

I used the main resource file, delete all in lines RC codes, change Manifest enabled/disabled, the compile RC files always

1 24 "Manifest.xml"

not present:

//1 24 "Manifest.xml"

Is there anything else I have missing?

@chunmingwang
Copy link
Contributor Author

Options setting like this

Untitled

@XusinboyBekchanov
Copy link
Owner

Fixed: Project Properties Manifest option:
e7bc375

@XusinboyBekchanov
Copy link
Owner

I mistakenly counted only with "./"

@chunmingwang
Copy link
Contributor Author

ToolBar to improve the display of icons in design mode.

@XusinboyBekchanov
Copy link
Owner

Here is a drawing of what works:
#363 (comment)

@chunmingwang
Copy link
Contributor Author

chunmingwang commented Sep 1, 2022

Then, the code I added or changed later affected my results. Can you help me check it? Thank you.
MDIForm.zip

Icons cannot display on form editor.
1661991626354
Icons display is normal on run time.
image

@chunmingwang
Copy link
Contributor Author

chunmingwang commented Sep 1, 2022

report another issue found in this example, the TextBox in the MDIChild form cannot change the Font Color and BackColor, please also help to check it, thank you.

@XusinboyBekchanov
Copy link
Owner

Fixed: Finding Resource file name:
5229c9d

Previously, the program only searched the first lines of the main source code to find the name of the resource file. Now searches from the entire main source file. It is also possible to specify the main resource file in the project.

@chunmingwang
Copy link
Contributor Author

Great, Thanks. It's works.

1662005275544

@XusinboyBekchanov
Copy link
Owner

XusinboyBekchanov/MyFbFramework@6eccd09

@XusinboyBekchanov
Copy link
Owner

Fixed: Set Colors in MDI forms

@hustbeef
Copy link
Contributor

hustbeef commented Sep 1, 2022

Toolbar not refresh the color after change to Darkmode .
image

@hustbeef
Copy link
Contributor

hustbeef commented Sep 1, 2022

The distance is too big between two button on toolbar in design mode with High DPI screen. Maybe UnscaleX need add to the location X.
image

@chunmingwang
Copy link
Contributor Author

Great, Thanks. It's works.

report another issue found in this example, the TextBox in the MDIChild form cannot change the Font Color and BackColor, please also help to check it, thank you.

image
image

@XusinboyBekchanov
Copy link
Owner

A very good example.

@chunmingwang
Copy link
Contributor Author

chunmingwang commented Sep 2, 2022

MDIForm.zip

plesase help to chek this: issue found at following codes

h = SendMessage(FClient, WM_MDIGETACTIVE, 0, 0)
If h Then SendMessage(h, WM_CLOSE, 0, 0)

will not raise MDI child window Destroy event

Private Sub MDIChildType.Form_Destroy(ByRef Sender As Control)

@chunmingwang
Copy link
Contributor Author

if MDI child windows showing, MDI main window menu's hot key cannot work

@XusinboyBekchanov
Copy link
Owner

Fixed: MDI Childs accelerator:
XusinboyBekchanov/MyFbFramework@ee70837

@chunmingwang
Copy link
Contributor Author

Fixed: MDI Childs accelerator: XusinboyBekchanov/MyFbFramework@ee70837

if MDI child windows showing, MDI main window menu's hot key cannot work

It Works, Thanks !

@XusinboyBekchanov
Copy link
Owner

will not raise MDI child window Destroy event

Added: HIDE_NO_MAIN_FORM_ON_CLOSE define:
XusinboyBekchanov/MyFbFramework@cc44e0d

Now, when closing non-main forms, they are not hidden, but destroyed.

@chunmingwang
Copy link
Contributor Author

thanks

@XusinboyBekchanov
Copy link
Owner

Added: Split functions on Linux:
8e270b1

@retsyo
Copy link
Contributor

retsyo commented Sep 30, 2022

On the "project properities" windows, if the drop-down list for "optimization level" is clicked, "optimization level" is ticked automatically, and "optimize for fast code", "optimize for small code" and "no oprimization“ are un-ticked

@XusinboyBekchanov
Copy link
Owner

Added: Checking Optimization level option when Selected from Optimization level Dropdown in Project Properties:
014c390

@retsyo
Copy link
Contributor

retsyo commented Oct 1, 2022

suggestion: disable "project" menu if there is no project opened or once all projects have been closed.

current: click "project"-"project properites"-"ok". but I can't close the "project properites" window. at last I find that this happens when I have not opened any project.

And maybe Edit/Search/View/Project/Build/Debug/Run all should be disabled/enabled according to context

@retsyo
Copy link
Contributor

retsyo commented Oct 1, 2022

on "service"-"ComWrapperBuilder"

  1. when I click "service"-"comWrapperBuilder", a dailog appears

  2. I know nothing about the underneath of COM. Can your "ComWrapperBuilder" use VB control without registration just like the article(https://tieba.baidu.com/p/6446334708 and https://blog.csdn.net/weixin_39915505/article/details/111179809 sorry, In Chinese. But google/deepl can translate it) does for ecGraph3D?

  3. can, sorry this actually a question on freebasic, a COM control be packed into the finnal EXE. The the EXE load COM control from disk, and use it without registration? Just like https://tieba.baidu.com/p/6446334708 and https://blog.csdn.net/weixin_39915505/article/details/111179809 says?

111

@retsyo
Copy link
Contributor

retsyo commented Oct 1, 2022

let user set where to find LLVM/llc

on my windows if I set fbc64.exe in service/options as E:\prg\BASIC\fb\FreeBASIC-1.09.0-win64\fbc.exe
then VisualFBEditor try to use E:\prg\BASIC\fb\FreeBASIC-1.09.0-win64\bin\win64\llc.exe even I have set enviroment PATH for llc.exe

so I suggest that user can set where to find LLVM/llc, for example LLVMbin path. If E:\prg\BASIC\fb\FreeBASIC-1.09.0-win64\bin\win64\llc.exe does not exists, then VisualFBEditor try to find llc.exe in LLVMbin, PATH.

@XusinboyBekchanov
Copy link
Owner

  1. when I click "service"-"comWrapperBuilder", a dailog appears

To use this Tool, the SimpleVariantPlus.bi file must be included in one of the project files.

@XusinboyBekchanov
Copy link
Owner

suggestion: disable "project" menu if there is no project opened or once all projects have been closed.

current: click "project"-"project properites"-"ok". but I can't close the "project properites" window. at last I find that this happens when I have not opened any project.

And maybe Edit/Search/View/Project/Build/Debug/Run all should be disabled/enabled according to context

Improved: Enabling and disabling menu and toolbar items:
76041b9

Fixed: ToolBar Enabled property:
XusinboyBekchanov/MyFbFramework@6712a30

@chunmingwang
Copy link
Contributor Author

Dragging and dropping file or files into VFBE
Recommended to perform different opening actions according to different filename extension
Just like the Open (Ctrl+O) function in the current menu

for example
*.vfs is now opened as a Text, it is recommended to open it as a Session
*.vfp is now opened as a Text, it is recommended to open it as a Project

@XusinboyBekchanov
Copy link
Owner

Fixed: Drop files with extensions .vfp, .vfs to IDE:
f5fac05

@chunmingwang
Copy link
Contributor Author

Fixed: Drop files with extensions .vfp, .vfs to IDE: f5fac05

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Improvement New feature or request
Projects
None yet
Development

No branches or pull requests

5 participants