So can I:
- Define different behaviour when pressing a button short or longer than for instance 1 second?
You should define that in your software
- Define different behaviour when pressing a button together with some other button?
If you are emulating keyboard, you can use shift, ctrl etc as in your keyboard. If you will use Mach plugin, you should do some programing.
- Use step jogging and 3 different speeds of contineous jogging without changing speed and mode each time?
That is up to you, how you will define them.
Manuals are your friends

regards
Boris