Missing editor features

There are some little annoyances I am feeling with the xojo editor. Am sure that not only myself would be pleased and more productive. If they are there already, please correct me. Am working on a Mac.

1- Tabs
The editor does not accept the TAB key. In visual studio or other IDES, most of the times it is visually appealing to indent the code at a personal preference. In Xojo I have to indent the code by adding spaces. Inserting tabs is more productive and precise. The automatic indenting is not enough.
2-Block search / replace
I usually (in other ides or editors) I select a code block and want to search or replace ONLY in the selected block. Xojo searches and replaces over only on the entire item.
3 - select a vertical block of code
There are options in other editors that allow for selecting a vertical or screen mapped block of code instead of selecting in a text start to text end fashion.
4- apply on leave
In the inspector, some fields only apply the new value if you press enter. Others fields correctly apply the new value when leaving the field, with the mouse or with a tab.
5- Button Focus on web app tab order.
Not precisely an issue with the editor. Actually the editor allows setting a tab order on web buttons, but the tab order don’t work on the live web app. If you tab-tab- and then get to a button, it jumps to the address bar instead of focusing on the button. At least in safari.

1: I doubt that’s going to change. You’re not meant to indent manually (for which I am quite pleased, actually, but that’s me) so I doubt they’d do anything to facilitate it. Where do you find the automatic indenting deficient?

2: Agree completely.

3: Would be nice, but I’d rather they work on other things.

4: I think this is a bug.

5: On a Mac a button won’t get focus unless the proper preference is set in Keyboard -> Shortcuts. When that is set, a button gets focus even in a web app. I just confirmed (very quickly) that it works here so an example project would probably help.

If you haven’t, you should file each one of these as independent Feedback requests if none already exist.

1 - tab is used for autocomplete so unlikely to be dual purposed

2 - Block search / replace - filed already #27328

3 - select a vertical block of code
Like selecting every 3-5 character across set of lines ?
I’ve seen this in various editor but never found a compelling use for it myself
Feel free to insert a feature request

4- apply on leave - bug that should be fixed (or at least improved) in 2015r3 and future
If you still see this occur on certain kind of properties file a bug report

5- Button Focus on web app tab order - not an editor issue at all
Unlike windows where nearly everything can get focus, thats not the case on OS X
Enabled full keyboard support

[quote=226948:@Julio Debroy]4- apply on leave
In the inspector, some fields only apply the new value if you press enter. Others fields correctly apply the new value when leaving the field, with the mouse or with a tab.[/quote]
This would definitely be a bug. Be sure to file a feedback case for the situations where you see this. I know Norman has fixed a lot of them already, so if you haven’t tried 2015r3, you might want to.

[quote=226948:@Julio Debroy]5- Button Focus on web app tab order.
Not precisely an issue with the editor. Actually the editor allows setting a tab order on web buttons, but the tab order don’t work on the live web app. If you tab-tab- and then get to a button, it jumps to the address bar instead of focusing on the button. At least in safari.[/quote]
I don’t believe Safari lets you tab to buttons. Maybe it does if you have Full Keyboard Access turned on?

I’m not sure if these has been addressed, but what I miss are simply shortcuts to improve productivity. I don’t know if are implemented already. If so, please let me know :slight_smile:

I miss something more oriented to common used features.

Is there any shortcut to create a Public/Protected/Private var?
Same goes with Methods. Pressing a key to define the same.
I would like something I define as: “Const MAX_VALUE=255” inside my method to highlight and create a class Const.

Tab: When opening a class in a Tab, alt-click and all properties, methods, everything is expanded.

Back-Fordward tab oriented instead of project oriented ( when locked tabs are in use)

Some predefined class templates. Singletons comes to my mind now.

Global Variable/method/class Name changing: This is a must. Easy way to rename something when refactoring.

Profiler: Get Xojo framework time execution. ( I know this is major work, but worth the investment).

Preferences: Create a user-defined method for setting shortcuts.

GIT: Integrate xojo for working with GIT Clients ( Tower on OSX, GitHub, etc). It’s easy and worth the time.

This just comes to my mind.

Amando

When creating a method or property, type it as private MyMethod (params as type) as type or private MyProp as Type. It will fill in the other fields appropriately.

You can find and replace a global string now with either the Whole Word option or a regular expression.

[quote=226984:@Amando Blasco]I’m not sure if these has been addressed, but what I miss are simply shortcuts to improve productivity. I don’t know if are implemented already. If so, please let me know :slight_smile:
[/quote]
Most of these are not code editor related

Will check the suggestions and will answer later today.

Meanwhile,
Another thing that must be added if not already, is an option for freely placing controls on a form with the mouse. Currently they can be placed somewhere inside a grid, but to fine tune the position you have to enter the coordinates on the inspector or use the arrow keys. It is great to have guides, but I would prefer to place them with the mouse wherever I want.

You can place the controls anywhere you want, but if you don’t want the alignment guidelines to show, hold down Command while dragging the control around.

  • Another nice feature would be to position a group of selected controls using top, left values. Or at least show both the top and left values of the group when positioning them with the arrow keys. (command-arrows?)

  • Disable or ‘Comment’ out a complete class/module/window/folder. Sometimes when I want to work on a class, I want to copy and rename the old version within the IDE. Would be great to right click on a class and disable it so the compiler just ignores it.

… and since 2015R3, the message pane goes away when I run the program.
I use system.debuglog() a lot. So every time after hitting command-R, I need to click the message icon in the IDE causing the IDE hiding the program.

There is no quick right-click for this, but if you want to have a class ignored, click the Advanced tab on the Inspector and uncheck the appropriate targets in the “Include in” section.

Ah, I like that. Never thought of that.
But how about other things? Like a whole container?

Hi Kem. Thanks. I am using this a lot :slight_smile: Thanks!

[quote=226987:@Norman Palardy]Most of these are not code editor related
[/quote]

Yes, you are right. Are IDE features. ( Profiler, Preferences… )

Just in case, I think are good feedback for productivity. Maybe move my message to other thread of create a feedback? I believe some easy changes ( Shortcuts) can be very beneficial and I guess not really difficult to implement and test how it works.

Might be useful. Create a Feedback case for new feature suggestions.

[quote=227001:@Amando Blasco]
Just in case, I think are good feedback for productivity. Maybe move my message to other thread of create a feedback? I believe some easy changes ( Shortcuts) can be very beneficial and I guess not really difficult to implement and test how it works.[/quote]
Creating feedbacks cases if they dont already exist
We dont scour the forums for feature requests or bug reports
Some time you will see us add one based on a forum thread - but its not usual practice

[quote=226948:@Julio Debroy]2-Block search / replace
I usually (in other ides or editors) I select a code block and want to search or replace ONLY in the selected block. Xojo searches and replaces over only on the entire item. [/quote]
Look at OS X Replace feature in the Finder: that is exactly that: you choose the files you want to modify their name and do the replace on them only !

Very nice and useful feature there.

On Xojo IDE: I miss a search in the current code (code in the open object / front window…).

The globl search is valuable too !

Nearly wrong:

example: in the quit dialog, every control can “have the focus”. *

I call this a bug, because… how can you get a default button and have another control with the Focus ring ?

  • I never found a way to permanently reset this feature (to never see it again), even in El Capitan. I saw a screen shot in an OS X book that shows that bug.

What would be a nice thing is to keep each tab with its contents (really locked).

What would be a nice thing is to get the new event in the selected object in the Navigation pane instead of in the base object (say add an Open Object in a ListBox instead of in its Parent window…)
In this case, a Cut and Paste (when you realize after code additions…) will be OK.

[quote=227077:@Emile Schwarz]Look at OS X Replace feature in the Finder: that is exactly that: you choose the files you want to modify their name and do the replace on them only !

Very nice and useful feature there.

On Xojo IDE: I miss a search in the current code (code in the open object / front window…).

The globl search is valuable too ![/quote]

I really miss the ability to find and replace in the current code. In fact, I would probably put that as one of my top productivity killers since moving from RB.

Another one is the fact that the Xojo IDE is too anal. For example, to add a property in Xojo you need to context click the class heading or a sub-heading of the class (Methods / Properties etc…). In RealBasic you could context-click in a lot more places to perform the same action.

I rarely copy / paste the code in TextEdit and make the search / replace there, then I copy/paste the code back into Xojo.