#include "MetaDataRegistry.hpp" #include #include #include #include "Radio.hpp" #include "models/FrequencyList.hpp" #include "AudioDevice.hpp" #include "Configuration.hpp" #include "models/StationList.hpp" #include "Transceiver.hpp" #include "TransceiverFactory.hpp" #include "WFPalette.hpp" #include "models/IARURegions.hpp" #include "models/DecodeHighlightingModel.hpp" #include "widgets/FrequencyLineEdit.hpp" QItemEditorFactory * item_editor_factory () { static QItemEditorFactory * our_item_editor_factory = new QItemEditorFactory; return our_item_editor_factory; } void register_types () { // types in Radio.hpp are registered in their own translation unit // as they are needed in the wsjtx_udp shared library too // we still have to register the fully qualified names of enum types // used as signal/slot connection arguments since the new Qt 5.5 // Q_ENUM macro only seems to register the unqualified name item_editor_factory ()->registerEditor (qMetaTypeId (), new QStandardItemEditorCreator ()); //auto frequency_delta_type_id = qRegisterMetaType ("FrequencyDelta"); item_editor_factory ()->registerEditor (qMetaTypeId (), new QStandardItemEditorCreator ()); // Frequency list model qRegisterMetaTypeStreamOperators ("Item_v2"); qRegisterMetaTypeStreamOperators ("FrequencyItems_v2"); // defunct old versions qRegisterMetaTypeStreamOperators ("Item"); qRegisterMetaTypeStreamOperators ("FrequencyItems"); // Audio device qRegisterMetaType ("AudioDevice::Channel"); // Configuration qRegisterMetaTypeStreamOperators ("Configuration::DataMode"); qRegisterMetaTypeStreamOperators ("Configuration::Type2MsgGen"); // Station details qRegisterMetaType ("Station"); qRegisterMetaType ("Stations"); qRegisterMetaTypeStreamOperators ("Station"); qRegisterMetaTypeStreamOperators ("Stations"); // Transceiver qRegisterMetaType ("Transceiver::TransceiverState"); // Transceiver factory qRegisterMetaTypeStreamOperators ("TransceiverFactory::DataBits"); qRegisterMetaTypeStreamOperators ("TransceiverFactory::StopBits"); qRegisterMetaTypeStreamOperators ("TransceiverFactory::Handshake"); qRegisterMetaTypeStreamOperators ("TransceiverFactory::PTTMethod"); qRegisterMetaTypeStreamOperators ("TransceiverFactory::TXAudioSource"); qRegisterMetaTypeStreamOperators ("TransceiverFactory::SplitMode"); // Waterfall palette qRegisterMetaTypeStreamOperators ("Colours"); // IARURegions qRegisterMetaTypeStreamOperators ("IARURegions::Region"); // DecodeHighlightingModel qRegisterMetaTypeStreamOperators ("HighlightInfo"); qRegisterMetaTypeStreamOperators ("HighlightItems"); }