Commit Graph

1999 Commits

Author SHA1 Message Date
Klaus Basan
9293989a78 Doxygen comments 2018-11-04 17:42:45 +01:00
Klaus Basan
e727b29753 No "exit" (qFatal) for unknown VATLIB error, just error
Rational: Why shutdown the client in that very case, terminate connection is enough
2018-11-04 17:42:44 +01:00
Klaus Basan
d7380966de Style 2018-11-04 17:42:44 +01:00
Klaus Basan
259aab3c10 Ref T397, Ref T297 split "isInterimPositionUpdateEnabledForServer" into 2 functions and ignore incoming interim positions if disabled 2018-11-04 17:42:44 +01:00
Klaus Basan
e4e39b6579 Added comments 2018-11-04 17:42:44 +01:00
Klaus Basan
cc4aec8f3c Ref T412, added "movedAircraft" and fixed missing relay of proxy signals 2018-11-04 17:42:44 +01:00
Klaus Basan
74ef1e039c Ref T397, Ref T297 dynamic offset times
* calculate avaerage time
* and use that to decide offset time
2018-11-04 17:42:44 +01:00
Klaus Basan
35b8b29d10 Ref T410, preparation and UI adjustments
Foo
2018-11-04 17:42:43 +01:00
Klaus Basan
4a82621a1d Ref T400, swift needs to start even without network connection, especially for mapping tool
* count errors and call "manageSetupAvailability" to update cache availability
* minor adjustments
2018-11-04 17:42:43 +01:00
Roland Winklmeier
1addcf631a Refactor the remote hotkeys to avoid round trips
The previous implementation was hard to follow and maintain. Instead of
doing intentional rounds trips, we use now a two way approach. GUI is
automatically forwarding remote actions by calling "callHotkeyActionRemotely"
through DBus. Core on the other hand, emits a signal "remoteHotkeyAction"
that is processed in a different function in GUI.
On both sides, actions from the same local machine are filtered.

ref T402
2018-11-04 17:42:42 +01:00
Roland Winklmeier
294b854ed8 Adjust to the VATSIM policy to skip the last 5 kHz in 25 kHz spacing
When receiving a radio message, round to the closest frequency.
When sending them, remove the last 5 kHz if existing.

ref T399
2018-11-04 17:42:42 +01:00
Roland Winklmeier
f6ea2a9107 Move CInputManager from singleton to CApplication member
The main reason why CInputManager was singleton is the easy access across
the code. That had the negative side effect that time of destruction was
at a very late stage of the shutdown and could not be controlled by us.
My moving it to CApplication, the access is equally easy (using sApp) and
allows to be cleaned up properly during graceful shutdown.

ref T391
2018-11-04 17:42:42 +01:00
Klaus Basan
705a56b1cb Ref T401, adjusted settings used in components 2018-11-04 17:42:42 +01:00
Klaus Basan
47b12b66cf Ref T367, Ref T400 setup reader improvements
- guards for Qtimer::singleShot
- check empty URLs
- only skip reading if already loaded from web
2018-11-04 17:42:41 +01:00
Klaus Basan
fe99eb261b Ref T367, Ref T400 signal and read handling
* connect this->setupHandlingCompleted directly with reader + renaming
* do not waitForSetup if request already failed
2018-11-04 17:42:41 +01:00
Klaus Basan
9dfc3808c1 Ref T367, Ref T400 global setup flags for web and file reading 2018-11-04 17:42:41 +01:00
Klaus Basan
ffc903de34 Ref T367, Ref T400 style 2018-11-04 17:42:41 +01:00
Klaus Basan
fd9744c73d Ref T397, using receivedPositionFixTsAndGetOffsetTime for normal and interim positions 2018-11-04 17:42:41 +01:00
Klaus Basan
9dd06c4c84 Ref T397, fixed "disable" for fast positions 2018-11-04 17:42:41 +01:00
Klaus Basan
00d859d5b3 Ref T297, style and remarks for T297 2018-11-04 17:42:41 +01:00
Klaus Basan
dec0b12ea2 Ref T397, checks on vector to find root cause NaN/inf issue
* sometimes very large numbers (xxE38) in vector
* sometimes vectors which look correct, but exceed [-1,1]
2018-11-04 17:42:40 +01:00
Roland Winklmeier
832082c5bc Delay creating input devices to when required
Every first call to CInputManager::instance() was automatically creating
the low level input devices. This was not always desired and therefore
creation is now explicit via function.
Unit tests do not need the devices created. In contrast, Windows unit tests
failed since Windows didn't like the Jenkins service childs to allocate
DInput devices.

T391
2018-10-07 16:17:28 +02:00
Klaus Basan
1280359fe1 Style 2018-10-07 16:17:27 +02:00
Roland Winklmeier
c42900f959 Release input devices when application is shutdown
If they are released with the deallocation of CInputManager, we might
run into global deallocation hell.
Also on Windows release all DirectX devices before COM library is closed.

ref T391
2018-10-07 16:17:26 +02:00
Klaus Basan
df08923455 Ref T384, context isOnlineStation 2018-10-05 17:39:59 +02:00
Klaus Basan
7300a2af1f Ref T384, get closest ATC stations online 2018-10-05 17:39:59 +02:00
Klaus Basan
1195eba417 Ref T385, OBS aircraft callsign
* in CAirspaceMonitor::onIcaoCodesReceived we know we deal with aircraft only and explicitly deal with it
* in other cases we can not tell if we deal with aircraft/ATC callsign for sure, we ignore invalid callsigns
2018-10-05 17:39:59 +02:00
Klaus Basan
df4ef3f52d Sending wallop message 2018-10-05 17:39:59 +02:00
Klaus Basan
e82695e6ae Ref T384, style 2018-10-05 17:39:58 +02:00
Roland Winklmeier
ed80bc90a8 Correct the NetworkVatlib ATIS and password regular expressions
The password one was not matching if the integers had multiple digits.
The ATIS one was matching on every random 'z' in any ATIS line.

ref T380
2018-10-05 17:39:58 +02:00
Roland Winklmeier
ebe23a694b Fix GCC7 fallthrough warnings 2018-10-05 17:39:58 +02:00
Roland Winklmeier
c0d9aacbb1 Update to new vatlib 2018-10-05 17:39:58 +02:00
Klaus Basan
ec32e3163b Ref T380, test function and UI (internals) to test ATIS 2018-10-05 17:39:57 +02:00
Klaus Basan
756ee18410 Ref T379, to improve reset models added "setAircraftEnabledFlag" to just set the flag, not sending signals causing removed aircraft 2018-10-05 17:39:57 +02:00
Klaus Basan
2eb1316f80 Ref T372, always store fast position updates 2018-10-05 17:39:57 +02:00
Klaus Basan
5af029467e Ref T362, Ref T348 improved matcher saves removed models (if any) when destructed and improved UI 2018-10-05 17:39:57 +02:00
Klaus Basan
e668be9259 Ref T372, clear also fast position receivers when aircraft is removed 2018-10-05 17:39:56 +02:00
Mat Sutcliffe
62634e1e0e Ref T314 Style: correct parameter name. 2018-10-05 17:39:56 +02:00
Mat Sutcliffe
f42d42487d Ref T314 Change CApplication::m_networkWatchDog from a smart pointer to a raw pointer.
Attempting to manage a worker's lifetime with a smart pointer is a mistake.
It can lead to double-delete or premature-delete bugs, and race conditions.
Workers self-manage their own lifetimes.
2018-10-05 17:39:56 +02:00
Klaus Basan
b5a270dc09 Ref T376, context support for CVoiceSetup 2018-10-05 17:39:55 +02:00
Klaus Basan
a475d12339 Ref T376, voice (vatlib) getter/setter for CVoiceSetup 2018-10-05 17:39:55 +02:00
Klaus Basan
e51bbd1f5d Ref T376, adjusted CServer class ctor 2018-10-05 17:39:55 +02:00
Klaus Basan
b5cf65cefa Ref T376, renamed server settings file 2018-10-05 17:39:55 +02:00
Klaus Basan
c34339cd9b Ref T376, removed former audio settings 2018-10-05 17:39:55 +02:00
Roland Winklmeier
28b404d065 Make Vatsim Voice UDP port configurable and 3290 the default 2018-10-05 17:39:55 +02:00
Roland Winklmeier
28302feea0 Remove unnecessary updating of voice room callsigns
The voice room callsign will be set from the current context values right
before a new connection is made. Therefore all updates in between are not
necessary and can be removed.

ref T354
2018-10-03 03:03:40 +02:00
Roland Winklmeier
321c195f4b Change voice room callsign format to "callsign (userid)"
So far the callsign, was the callsign itself only. However, other VATSIM
clients expect it to include the user id in brackets.

ref T354
2018-10-03 03:03:40 +02:00
Roland Winklmeier
23a1f86834 Connect to remoteHotkeyAction in CContextApplicationProxy::relaySignals
ref T330
2018-10-03 03:03:39 +02:00
Klaus Basan
85f7a37c8b Make sure there are no "illegal" characters in text messages 2018-10-03 03:03:39 +02:00
Klaus Basan
5c165c4fe7 Ref T373, style 2018-09-25 03:47:46 +02:00