Author |
Topic |
|
StoshFerhobin
New Member
USA
5 Posts |
Posted - Jan 10 2020 : 1:03:45 PM
|
Hello, I am trying out VA for use with UE4.
I have a few minor issues Id like to fix:
1) Doing CreateDefaultSUbObject auto adds () instead of <> for the type? Cant seem to disable under VA settings->Editor->Insert () and closing })] as then i lose the functionality where i need it otherwise
2) In VS before installing VA, If I had an If (expression) //do this; And I wanted to add brackets I could put a { after (expression) then a } on the line below //dos this;
and it used to indent and fix the code to display" If (expression) { //do this; }
However now it doesnt , how can I renable? |
|
feline
Whole Tomato Software
United Kingdom
19039 Posts |
Posted - Jan 10 2020 : 1:50:10 PM
|
For point 1, do you mean you are accepting the function "CreateDefaultSubObject" from a listbox, and VA is inserting:
CreateDefaultSubObjecy()
but you want VA to insert:
CreateDefaultSubObjecy<>()
and to place the caret between the angle brackets <> ready to type in the template type?
If so, this is something we are looking to add, and UE4 makes it more useful, since this has a lot of template functions:
case=460
However UObject::CreateDefaultSubobject is an interesting example, since it has template and non template overloads. So when you accept the function name from a listbox VA does not know if you want to call the template version or the non template version. So how do we know if we should insert <> before () ?
For point 2, if you just select the lines of code you want to wrap in { }, place the caret at column 1 of the first line, then use Shift + Down Arrow to select entire lines, and then press { once, VA will insert the opening and closing curly brackets for you in one step, and make sure that the code is indented correctly when you do so.
Does this work correctly for you?
The code should still be formatted correctly when adding the curly brackets manually though, since the IDE does this. Which IDE are you using? |
zen is the art of being at one with the two'ness |
|
|
StoshFerhobin
New Member
USA
5 Posts |
Posted - Jan 10 2020 : 1:55:38 PM
|
Thanks for the reply,
So for Step 1 - yes thats what I meant, is the answer then that there is no way to do this? If so is there a way to disable the auto insertions for this and other templates that are broken cases? Happens when using Cast<> as well.
For Step 2- No, that only kind of works..it will highlight the closing bracket for the function you are in if theres no space, and it otherwise clunky, Also the other ways that work when highlighting the sections doesnt indent properly, just surrounds its with {} and does not place first { on new line, or doesnt place last } on new line. Id prefer it just to work the way it used to be default in VS. Is there a way to renable this functionality? This appears to be working again as Vs default was. So nvm on that!
Lastly, For some reason all of my semicolons are being highlited in a goldish color now, I think after i Cntrl+F'd my solution for something else Any idea how to turn this off?
https://i.imgur.com/khQGTlj.png
NVM i reopened Cntrl F and see that a ; was left in there somehow, fixed derp
Thanks! |
Edited by - StoshFerhobin on Jan 10 2020 2:08:16 PM |
|
|
feline
Whole Tomato Software
United Kingdom
19039 Posts |
Posted - Jan 11 2020 : 07:20:08 AM
|
Point 1, currently you can turn off VA inserting brackets, but this will be for all functions you accept from a listbox, so no current work around. In the situation where there are template and non template overloads of the same function, what would you prefer VA to do?
I can see 3 basic options, we insert one of the following:
1) CreateDefaultSubobject| 2) CreateDefaultSubobject(|) 3) CreateDefaultSubobject<|>()
where | is where the caret is placed after accepting the listbox.
For "Cast<>", I didn't realise this was a function, but it turns out it is. Are you calling this directly, or are you calling this as a member function on an object instance?
If you are calling this directly, have you considered using a VA Snippet, perhaps the shortcut "Ca" to insert the code:
Cast<|>()
this is just a work around, but if you call this quite often it should help quite a bit.
https://docs.wholetomato.com/default.asp?W171 |
zen is the art of being at one with the two'ness |
Edited by - feline on Jan 11 2020 07:21:13 AM |
|
|
StoshFerhobin
New Member
USA
5 Posts |
Posted - Jan 14 2020 : 12:53:28 PM
|
Hey Feline
Thanks for the reply,
Those VA snippets help alot. I set it up like #3 And Im not sure how im using Cast, i just remember it happening from time to time, but not everytime.
Im following my first UE4 tutorial and im new to C++
(know Java and C#) |
|
|
|
Topic |
|
|
|