How to make use of Markups Core 'Callout' EditMode - autodesk-forge

I am attempting to replicate the BIM 360's Design Review Editor's callout tool (the most useful tool of them all) within my Forge app, but I can't seem to get the callouts edit mode from the Markups Core extension to work properly. When I change the editMode to 'callout', it seems to only create the text box at the end of the callout. So far, I've only been able to get this to work via a clumsy chain of eventListeners latched to the svg element that:
1. listen for the 'mouseup' event while drawing cloud,
2. switch editMode to arrow,
3. fire off a 'mousedown' event to begin new arrow,
4. listen for 'mouseup' event while drawing arrow,
5. switch editMode to callout,
6. switch editMode back to cloud when test has been entered.
Not only is it very clumsy, but it also ends up looking absolutely horrible!
Does anyone know how to activate this tool properly, or if it's meant to work exactly as it does?
It really is a shame that we have to reinvent the wheel on so many of these tool that are implemented in BIM360... and used to be part of the Markups extension, but are now gone.
I'm really not a graphical interface developer, and if I have to become one, it will be years before I finish this app and my company can make use of it.

You're using the callout tool from MarkupsCore properly. Unfortunately, the tool only generates the text box as you've observed. It does not generate the "cloud" rectangle and connecting line as in BIM360.

Related

Auto-filling web forms

I have to create video-tutorial as help. We have a document with help, but customer want video.
I have found chrome extensions for this purpose - Screencastify (https://www.screencastify.com) for recording chrome tab contenct. It is cool that this tool highlight user clicks.
The best trouble is filling forms. I can't find any tool, or chrome extension or something, whitch is able to fill fluently forms. When I am filling forms, i make some typing errors and typing is not fluent - video tutorial looks unprofesionall and chaotic.
I have tried UI Vision RPA (https://ui.vision/), but this tool does not simulate user click (yes with some extension, but before simulation user click screen becomes green for a while), but there are no highlighted clicked position.
Is there a tool that can simulate a smooth form fill according to a prepared script or a macro - basically something like an auto-run UI test, such as a keyboard shortcut that is able to simulate mouse clicks and fluently write defined form content?
There are lot of ways to do it. All below three allow record and play back.
1. VBA macros in excel,
2. Automated test tools and frameworks like Selenium
3. RPA tools like WinAutomation or automation anywhere etc.
Once you record, you can go to recorded script, correct any spelling mistakes, add any pauses needed, start your screen recorder and play back the script.

Catching back and home keys

After I set up my new project with libGDX v1.3.1 i am stuck with something that should be easy. In my main class which extends game I have:
Gdx.input.setCatchBackKey(true);
but I cannot get any response from this (in render method):
if(Gdx.input.isButtonPressed(Keys.BACK)){
this.dispose();
}
It like nothing was pressed, although I can see that the button was pressed in logCat console.
I need to mention that I was using the exact same code until libGDX version 1.0.0 (or the first one with gradle).
Note: i have also tried implementing InputProcessor and then setting the input processor. Result was the same.
And for the home button: using Gdx.input.setCatchMenuKey(true); is not working.
Use isKeyPressed instead of isButtonPressed. Buttons only refers to the three mouse buttons on a desktop game. Everything on Android is a Key (or Peripheral).
You mentioned "home button" but the code you posted is for the menu button. There is no way to catch the home button unless you make your manifest declare your app as a launcher replacement, in which case, the home button will always open your app, even when it's closed, and the user will have no easy way to get to the home screen. And libgdx doesn't have that functionality built in, since that would be weird. You would have to implement it yourself in your manifest and main Activity.
Also, disposing of this, whatever this is, sounds dangerous to do from the input handler. You could be about to render stuff and cause a crash. But I'm not sure where you're trying to use it from. Maybe it's OK.

Adobe Air - Starling/Feathers - Text Input without OS level hooks (aka StageText)?

Long story short, I seem to always be running into unpredictable StageText functionality in Adobe AIR applications. I want to avoid triggering the OS native input fields and emulate that functionality in a Feathers/Actionscript component directly.
I've incorporated an on-screen keyboard purely in Feathers and implemented a Button subclass that acts like a basic text input. When the user clicks the button, the on-screen keyboard is displayed and hardware keyboard KEYUP's are intercepted and used to dynamically update the button label attribute.
That all works well enough, but of course I have no flashing cursor or text selectability in my current rudimentary widget. I can continue along my current path and manually implement the rest of what I need, but wanted to ask if anyone has seen or implemented a 'native acting' non-native text input widget in the Feathers/Starling/Actionscript tech stack? (Google seems to say no, but I'm hoping that's wrong. Surely I'm not the only one that thinks AIR's StageText is... troublesome... at best)
I changed my rudimentary widget from a Button subclass to a TextInput with editor factory returning a custom flash.text.TextField that has it's SoftKeyboardEvent.SOFT_KEYBOARD_ACTIVATING being nixed via preventDefault().
I now have most of what I wanted from my basic text input functionality in that I now have a text widget I can click in and select text and have all the simple cursor functionality I was missing. This still prevents the flaky native-softkeyboard interaction so I think this might suffice.

using PopUpManager in a Flex 4.5 Mobile App

This is more of a best practices question rater than something technical.
I'm working on a mobile app using the Flex 4.5 SDK and I'm trying to figure out the best way to handle notification windows. In most cases these windows will be alerting the user to when something goes wrong. Ex: bad login, no data, cannot resolve server.
I'm using a singleton design pattern, I have a Requests class that handles server calls. Most popups will be originating from this class (IOErrorEvents from my loader being used to access the API). Since this class is a singleton and is used from all Views inside the app it is not aware of applications current view. I'm also not sure having this class keep track of the current view and having it push popups on top of it would be best practice.
I'm hoping that I can use PopUpManager to keep track of where to add popups and what popups are currently on the stage. Though all examples I've seen online about this show static Components being used in a views Declarations tag.
I'm really just looking for any examples or input on how you would solve this problem. Any help would be greatly appreciated!
I had the same problem, and sorted it by making an Alert popup component that you can call from anywhere in the code base, and it will pop up in the currently active window. It also has an always visible scrollbar text area which is handy
http://bbishop.org/blog/?p=502
It works for a view navigator application, but if your using a tabbed navigator application, you can add a call for that, or simply change the code to
mainTabbedNavigator = FlexGlobals.topLevelApplication.tabbedNavigator;
currentTab = mainTabbedNavigator.selectedNavigator as ViewNavigator;

How to disable/hide an error in Flash Builder 4

When writing code sometimes those red error icons pop up on the left side. Most of the time they are on point, but sometimes they are wrong. How can I hide them. They annoy me too much.
The red ones are proper errors, I am concerned about that they should actually be "wrong". The yellow (or orange) ones are warnings which can be hidden by using proper AS3 syntax.
Rob
By default when you save your code in process of editing Flash Builder performs rebuilding of your project and if you have some errors in file (unfinished lines for example) it shows them as red markers.
If you want to control build process manually you can go to the Project menu and deselect Build Automatically. Now you can invoke build process manually to show error markers when you want. Just go to the same Project menu and select Build project. You can even assign keyboard shortcut for this operation.
Hope this helps!