//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
-// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#ifndef ATC_DIALOG_HXX
#define ATC_DIALOG_HXX
#include <simgear/compiler.h>
+#include <vector>
+#include <map>
+
#include "ATC.hxx"
+SG_USING_STD(vector);
+SG_USING_STD(map);
+
+class NewGUI;
+
// ATCMenuEntry - an encapsulation of an entry in the ATC dialog
struct ATCMenuEntry {
void Init();
+ void Update(double dt);
+
void PopupDialog();
- void add_entry( string station, string transmission, string menutext, atc_type type, int code);
+ void PopupCallback(int);
- void remove_entry( const string &station, const string &trans, atc_type type );
+ void add_entry( const string& station, const string& transmission, const string& menutext, atc_type type, int code);
+ void remove_entry( const string &station, const string &trans, atc_type type );
+
void remove_entry( const string &station, int code, atc_type type );
+ // query the database whether the transmission is already registered;
bool trans_reg( const string &station, const string &trans, atc_type type );
+ // query the database whether the transmission is already registered;
bool trans_reg( const string &station, int code, atc_type type );
// Display a frequency search dialog for nearby stations
// Display the comm ATC frequencies for airport ident
// where ident is a valid ICAO code.
- void FreqDisplay(string ident);
+ void FreqDisplay(string& ident);
private:
int freq;
bool reset;
+ bool _callbackPending;
+ double _callbackTimer;
+ double _callbackWait;
+ FGATC* _callbackPtr;
+ int _callbackCode;
+
+ NewGUI *_gui;
};
extern FGATCDialog *current_atcdialog;