commit-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Commit-gnuradio] [gnuradio] 78/101: Merge remote-tracking branch 'upstr


From: git
Subject: [Commit-gnuradio] [gnuradio] 78/101: Merge remote-tracking branch 'upstream/next' into gtk3
Date: Thu, 16 Mar 2017 14:58:11 +0000 (UTC)

This is an automated email from the git hooks/post-receive script.

jcorgan pushed a commit to branch python3
in repository gnuradio.

commit f7cdfff6a85ce52b1d7c0b5131645fcb77405fe8
Merge: a867a29 af4323d
Author: Sebastian Koslowski <address@hidden>
Date:   Mon Sep 12 14:16:50 2016 -0600

    Merge remote-tracking branch 'upstream/next' into gtk3

 CMakeLists.txt                                     |    5 +-
 cmake/Modules/FindGnuradio.cmake                   |    3 +-
 cmake/Modules/FindQwt.cmake                        |   14 +-
 cmake/Modules/GnuradioConfig.cmake.in              |    1 -
 cmake/msvc/config.h                                |    3 +
 docs/RELEASE-NOTES-3.7.10.1.md                     |   68 +
 docs/doxygen/Doxyfile.in                           |    5 -
 docs/doxygen/other/build_guide.dox                 |    2 -
 docs/doxygen/other/group_defs.dox                  |    1 -
 docs/sphinx/source/index.rst                       |   14 -
 docs/sphinx/source/wxgui.rst                       |    5 -
 docs/sphinx/source/wxgui_blocks.rst                |    7 -
 gnuradio-runtime/include/gnuradio/basic_block.h    |   15 +-
 gnuradio-runtime/lib/CMakeLists.txt                |    2 -
 gnuradio-runtime/lib/scheduler_sts.cc              |   90 -
 gnuradio-runtime/lib/scheduler_sts.h               |   66 -
 gnuradio-runtime/lib/single_threaded_scheduler.cc  |  363 --
 gnuradio-runtime/lib/single_threaded_scheduler.h   |   65 -
 gnuradio-runtime/lib/sys_paths.cc                  |    8 +-
 gnuradio-runtime/lib/top_block_impl.cc             |    4 +-
 gnuradio-runtime/python/gnuradio/__init__.py       |    1 -
 gnuradio-runtime/swig/CMakeLists.txt               |    1 -
 gnuradio-runtime/swig/single_threaded_scheduler.i  |   54 -
 gr-audio/examples/python/CMakeLists.txt            |    1 -
 gr-audio/examples/python/audio_fft.py              |  138 -
 gr-audio/lib/portaudio/portaudio_sink.cc           |    4 +
 gr-audio/lib/portaudio/portaudio_source.cc         |    4 +
 gr-blocks/grc/blocks_block_tree.xml                |    4 +-
 gr-blocks/grc/blocks_message_burst_source.xml      |   58 -
 gr-blocks/grc/blocks_message_sink.xml              |   72 -
 ...age_source.xml => blocks_multiply_const_xx.xml} |   34 +-
 gr-blocks/grc/blocks_pdu_filter.xml                |    5 +-
 gr-blocks/grc/blocks_pdu_remove.xml                |    1 +
 gr-blocks/grc/blocks_pdu_set.xml                   |    2 +
 gr-blocks/include/gnuradio/blocks/CMakeLists.txt   |    3 -
 .../include/gnuradio/blocks/message_burst_source.h |   52 -
 gr-blocks/include/gnuradio/blocks/message_sink.h   |   52 -
 gr-blocks/include/gnuradio/blocks/message_source.h |   54 -
 gr-blocks/include/gnuradio/blocks/pdu_filter.h     |    3 +
 gr-blocks/include/gnuradio/blocks/pdu_remove.h     |    1 +
 gr-blocks/include/gnuradio/blocks/pdu_set.h        |    2 +
 gr-blocks/lib/CMakeLists.txt                       |    3 -
 gr-blocks/lib/message_burst_source_impl.cc         |  149 -
 gr-blocks/lib/message_burst_source_impl.h          |   58 -
 gr-blocks/lib/message_sink_impl.cc                 |  132 -
 gr-blocks/lib/message_sink_impl.h                  |   56 -
 gr-blocks/lib/message_source_impl.cc               |  151 -
 gr-blocks/lib/message_source_impl.h                |   62 -
 gr-blocks/lib/pdu_filter_impl.h                    |    3 +
 gr-blocks/lib/pdu_remove_impl.h                    |    1 +
 gr-blocks/lib/pdu_set_impl.h                       |    2 +
 gr-blocks/lib/tcp_server_sink_impl.cc              |    6 +-
 gr-blocks/python/blocks/qa_message.py              |   31 +-
 gr-blocks/python/blocks/qa_message_tags.py         |   27 -
 gr-blocks/python/grc_gnuradio/README               |    3 -
 gr-blocks/swig/blocks_swig0.i                      |    9 -
 gr-digital/examples/CMakeLists.txt                 |    3 -
 gr-digital/examples/demod/test_corr_and_sync.grc   | 3332 -------------------
 gr-digital/examples/demod/uhd_corr_and_sync_rx.grc | 1677 ----------
 gr-digital/examples/demod/uhd_corr_and_sync_tx.grc | 1619 ---------
 gr-digital/grc/digital_block_tree.xml              |    1 -
 gr-digital/grc/digital_correlate_and_sync_cc.xml   |   36 -
 gr-digital/include/gnuradio/digital/CMakeLists.txt |    1 -
 .../gnuradio/digital/correlate_and_sync_cc.h       |   90 -
 gr-digital/include/gnuradio/digital/glfsr.h        |   22 +-
 .../include/gnuradio/digital/glfsr_source_b.h      |   10 +-
 .../include/gnuradio/digital/glfsr_source_f.h      |   10 +-
 gr-digital/lib/CMakeLists.txt                      |    1 -
 gr-digital/lib/clock_recovery_mm_cc_impl.cc        |    1 +
 gr-digital/lib/clock_recovery_mm_ff_impl.cc        |    1 +
 gr-digital/lib/correlate_and_sync_cc_impl.cc       |  172 -
 gr-digital/lib/correlate_and_sync_cc_impl.h        |   62 -
 gr-digital/lib/glfsr.cc                            |   19 +-
 gr-digital/lib/glfsr_source_b_impl.cc              |   38 +-
 gr-digital/lib/glfsr_source_b_impl.h               |   14 +-
 gr-digital/lib/glfsr_source_f_impl.cc              |   38 +-
 gr-digital/lib/glfsr_source_f_impl.h               |   18 +-
 gr-digital/lib/modulate_vector.cc                  |    4 +-
 gr-digital/lib/pfb_clock_sync_fff_impl.cc          |    2 +-
 gr-digital/python/digital/qa_correlate_and_sync.py |  104 -
 gr-digital/swig/digital_swig.i                     |    5 +-
 gr-dtv/examples/README.dvbs                        |    8 -
 gr-dtv/examples/catv_tx_64qam.grc                  | 1356 +++++++-
 gr-dtv/examples/dvbs2_tx.grc                       |  629 +++-
 gr-dtv/examples/dvbs_tx.grc                        |  792 +++--
 gr-dtv/examples/dvbt_rx_8k.grc                     |  625 +++-
 gr-dtv/examples/dvbt_tx_2k.grc                     | 2893 +++++++++++-----
 gr-dtv/examples/dvbt_tx_8k.grc                     | 2923 +++++++++++-----
 gr-dtv/examples/uhd_atsc_tx.grc                    |    8 +-
 gr-dtv/examples/vv003-cr23.grc                     | 1869 ++++++-----
 gr-dtv/examples/vv009-4kfft.grc                    | 1911 ++++++-----
 gr-dtv/examples/vv018-miso.grc                     | 2191 ++++++------
 gr-dtv/grc/dtv_dvb_bbscrambler_bb.xml              |   10 +-
 gr-dtv/grc/dtv_dvb_bch_bb.xml                      |   10 +-
 gr-dtv/grc/dtv_dvbt2_freqinterleaver_cc.xml        |    4 +-
 gr-dtv/lib/CMakeLists.txt                          |    1 -
 gr-dtv/lib/atsc/atsc_interleaver_impl.cc           |   12 +-
 gr-dtv/lib/dvb/dvb_bbheader_bb_impl.cc             |    7 +-
 gr-dtv/lib/dvbs2/dvbs2_physical_cc_impl.cc         |   18 +-
 .../lib/dvbt/dvbt_bit_inner_deinterleaver_impl.cc  |  176 +-
 .../lib/dvbt/dvbt_bit_inner_deinterleaver_impl.h   |    7 +-
 gr-dtv/lib/dvbt/dvbt_bit_inner_interleaver_impl.cc |  175 +-
 gr-dtv/lib/dvbt/dvbt_bit_inner_interleaver_impl.h  |    7 +-
 gr-dtv/lib/dvbt/dvbt_configure.cc                  |    3 +-
 gr-dtv/lib/dvbt/dvbt_demap_impl.cc                 |   11 +-
 gr-dtv/lib/dvbt/dvbt_energy_dispersal_impl.cc      |    5 +-
 gr-dtv/lib/dvbt/dvbt_inner_coder_impl.cc           |   50 +-
 gr-dtv/lib/dvbt/dvbt_inner_coder_impl.h            |    9 +-
 gr-dtv/lib/dvbt/dvbt_map_impl.cc                   |    9 +-
 gr-dtv/lib/dvbt/dvbt_ofdm_sym_acquisition_impl.cc  |   27 +-
 gr-dtv/lib/dvbt/dvbt_reed_solomon.cc               |  475 ---
 gr-dtv/lib/dvbt/dvbt_reed_solomon.h                |   70 -
 gr-dtv/lib/dvbt/dvbt_reed_solomon_dec_impl.cc      |   72 +-
 gr-dtv/lib/dvbt/dvbt_reed_solomon_dec_impl.h       |   19 +-
 gr-dtv/lib/dvbt/dvbt_reed_solomon_enc_impl.cc      |   59 +-
 gr-dtv/lib/dvbt/dvbt_reed_solomon_enc_impl.h       |   16 +-
 gr-dtv/lib/dvbt/dvbt_reference_signals_impl.cc     |   73 +-
 .../lib/dvbt/dvbt_symbol_inner_interleaver_impl.cc |    9 +-
 gr-dtv/lib/dvbt/dvbt_viterbi_decoder_impl.cc       |   11 +-
 gr-dtv/lib/dvbt2/dvbt2_cellinterleaver_cc_impl.cc  |   11 +-
 gr-dtv/lib/dvbt2/dvbt2_framemapper_cc_impl.cc      |   19 +-
 gr-dtv/lib/dvbt2/dvbt2_interleaver_bb_impl.cc      |   20 +-
 gr-dtv/lib/dvbt2/dvbt2_paprtr_cc_impl.cc           |   41 +-
 gr-dtv/lib/dvbt2/dvbt2_pilotgenerator_cc_impl.cc   |    8 +-
 gr-fec/include/gnuradio/fec/polar_decoder_common.h |    2 +-
 gr-fec/lib/polar_decoder_common.cc                 |    2 +
 gr-qtgui/CMakeLists.txt                            |   30 +-
 gr-qtgui/examples/c++/CMakeLists.txt               |    8 +-
 gr-qtgui/examples/pyqt_const_c.py                  |   62 +-
 gr-qtgui/examples/pyqt_example_c.py                |   59 +-
 gr-qtgui/examples/pyqt_example_f.py                |   59 +-
 gr-qtgui/examples/pyqt_freq_c.py                   |   59 +-
 gr-qtgui/examples/pyqt_freq_f.py                   |   60 +-
 gr-qtgui/examples/pyqt_histogram_f.py              |   73 +-
 gr-qtgui/examples/pyqt_time_c.py                   |   66 +-
 gr-qtgui/examples/pyqt_time_f.py                   |   67 +-
 gr-qtgui/examples/pyqt_time_raster_b.py            |   19 +-
 gr-qtgui/examples/pyqt_time_raster_f.py            |   19 +-
 gr-qtgui/examples/pyqt_waterfall_c.py              |   59 +-
 gr-qtgui/examples/pyqt_waterfall_f.py              |   62 +-
 gr-qtgui/examples/qtgui_tags_viewing.grc           | 2399 +++++++++++---
 gr-qtgui/grc/CMakeLists.txt                        |   27 +-
 gr-qtgui/grc/qtgui_ber_sink_b.xml                  |    2 +-
 gr-qtgui/grc/qtgui_check_box.xml                   |    2 +-
 gr-qtgui/grc/qtgui_chooser.xml                     |    4 +-
 gr-qtgui/grc/qtgui_const_sink_x.xml                |    2 +-
 gr-qtgui/grc/qtgui_edit_box_msg.xml                |    2 +-
 gr-qtgui/grc/qtgui_entry.xml                       |    2 +-
 gr-qtgui/grc/qtgui_freq_sink_x.xml                 |    2 +-
 gr-qtgui/grc/qtgui_histogram_sink_x.xml            |    2 +-
 gr-qtgui/grc/qtgui_label.xml                       |    2 +-
 gr-qtgui/grc/qtgui_number_sink.xml                 |    2 +-
 gr-qtgui/grc/qtgui_push_button.xml                 |    2 +-
 gr-qtgui/grc/qtgui_sink_x.xml                      |    2 +-
 gr-qtgui/grc/qtgui_tab_widget.xml                  |    2 +-
 gr-qtgui/grc/qtgui_time_raster_x.xml               |    2 +-
 gr-qtgui/grc/qtgui_time_sink_x.xml                 |    2 +-
 gr-qtgui/grc/qtgui_vector_sink_f.xml               |    2 +-
 gr-qtgui/grc/qtgui_waterfall_sink_x.xml            |    2 +-
 gr-qtgui/include/QtWidgets/QRegExpValidator        |    9 +
 gr-qtgui/include/gnuradio/qtgui/form_menus.h       |    5 +
 gr-qtgui/lib/CMakeLists.txt                        |   10 +-
 gr-qtgui/lib/SpectrumGUIClass.cc                   |    1 -
 gr-qtgui/lib/const_sink_c_impl.cc                  |    2 +-
 gr-qtgui/lib/edit_box_msg_impl.cc                  |    4 -
 gr-qtgui/lib/freq_sink_c_impl.cc                   |    2 +-
 gr-qtgui/lib/freq_sink_f_impl.cc                   |    2 +-
 gr-qtgui/lib/histogram_sink_f_impl.cc              |    2 +-
 gr-qtgui/lib/sink_c_impl.cc                        |    2 +-
 gr-qtgui/lib/sink_f_impl.cc                        |    2 +-
 gr-qtgui/lib/time_raster_sink_b_impl.cc            |    2 +-
 gr-qtgui/lib/time_raster_sink_f_impl.cc            |    2 +-
 gr-qtgui/lib/time_sink_c_impl.cc                   |    2 +-
 gr-qtgui/lib/time_sink_f_impl.cc                   |    2 +-
 gr-qtgui/lib/vector_sink_f_impl.cc                 |    2 +-
 gr-qtgui/lib/waterfall_sink_c_impl.cc              |    2 +-
 gr-qtgui/lib/waterfall_sink_f_impl.cc              |    2 +-
 gr-qtgui/python/qtgui/CMakeLists.txt               |   10 +-
 .../python/qtgui/{range.py => range.py.cmakein}    |   27 +-
 gr-qtgui/themes/dark.qss                           |    1 -
 gr-trellis/examples/grc/.gitignore                 |    1 +
 .../examples/grc/interference_cancellation.grc     | 3482 +++++++++++++-------
 gr-trellis/examples/grc/pccc.grc                   | 1232 ++++---
 gr-trellis/examples/grc/sccc.grc                   | 1174 ++++---
 gr-trellis/examples/grc/tcm.grc                    | 1268 ++++---
 gr-trellis/examples/grc/turbo_equalization.grc     | 2818 +++++++++-------
 gr-trellis/examples/grc/viterbi_equalization.grc   | 1504 +++++----
 gr-uhd/CMakeLists.txt                              |    1 -
 gr-uhd/apps/CMakeLists.txt                         |   47 +-
 gr-uhd/apps/hf_explorer/README                     |   28 -
 gr-uhd/apps/hf_explorer/hfx.py                     |  755 -----
 gr-uhd/apps/hf_explorer/hfx_help                   |  180 -
 gr-uhd/apps/hf_radio/README.TXT                    |   60 -
 gr-uhd/apps/hf_radio/hfir.sci                      |   59 -
 gr-uhd/apps/hf_radio/input.py                      |   78 -
 gr-uhd/apps/hf_radio/output.py                     |   43 -
 gr-uhd/apps/hf_radio/radio.py                      |  320 --
 gr-uhd/apps/hf_radio/radio.xml                     |  441 ---
 gr-uhd/apps/hf_radio/ssb_taps                      | 1023 ------
 gr-uhd/apps/hf_radio/ssbagc.py                     |   72 -
 gr-uhd/apps/hf_radio/ssbdemod.py                   |  118 -
 gr-uhd/apps/hf_radio/startup.py                    |    1 -
 gr-uhd/apps/hf_radio/ui.py                         |  316 --
 gr-uhd/apps/uhd_fft_wx                             |  348 --
 gr-uhd/apps/uhd_siggen_gui                         |    2 +-
 gr-uhd/examples/python/CMakeLists.txt              |   41 -
 gr-uhd/examples/python/fm_tx4.py                   |  211 --
 gr-uhd/examples/python/fm_tx_2_daughterboards.py   |  216 --
 gr-uhd/examples/python/freq_hopping.py             |  220 --
 gr-uhd/examples/python/max_power.py                |  142 -
 gr-uhd/examples/python/usrp_am_mw_rcv.py           |  316 --
 gr-uhd/examples/python/usrp_nbfm_ptt.py            |  494 ---
 gr-uhd/examples/python/usrp_nbfm_rcv.py            |  384 ---
 gr-uhd/examples/python/usrp_spectrum_sense.py      |  318 --
 gr-uhd/examples/python/usrp_tv_rcv.py              |  446 ---
 gr-uhd/examples/python/usrp_tv_rcv_nogui.py        |  215 --
 gr-uhd/examples/python/usrp_wfm_rcv.py             |  290 --
 gr-uhd/examples/python/usrp_wfm_rcv2_nogui.py      |  157 -
 gr-uhd/examples/python/usrp_wfm_rcv_fmdet.py       |  353 --
 gr-uhd/examples/python/usrp_wfm_rcv_nogui.py       |  179 -
 gr-uhd/examples/python/usrp_wfm_rcv_pll.py         |  350 --
 gr-uhd/examples/python/usrp_wfm_rcv_sca.py         |  407 ---
 gr-uhd/examples/python/usrp_wxapt_rcv.py           |  286 --
 .../gr-newmod/docs/doxygen/doxyxml/doxyindex.py    |   86 +-
 .../modtool/gr-newmod/docs/doxygen/swig_doc.py     |  143 +-
 gr-wxgui/CMakeLists.txt                            |   91 -
 gr-wxgui/README                                    |    1 -
 gr-wxgui/README.gl                                 |   29 -
 gr-wxgui/gr-wxgui.conf                             |   13 -
 gr-wxgui/gr-wxgui.pc.in                            |   11 -
 gr-wxgui/grc/CMakeLists.txt                        |   35 -
 gr-wxgui/grc/__init__.py                           |   22 -
 gr-wxgui/grc/notebook.xml                          |   70 -
 gr-wxgui/grc/panel.py                              |   53 -
 gr-wxgui/grc/top_block_gui.py                      |   87 -
 gr-wxgui/grc/variable_check_box.xml                |   85 -
 gr-wxgui/grc/variable_chooser.xml                  |  123 -
 gr-wxgui/grc/variable_slider.xml                   |  139 -
 gr-wxgui/grc/variable_static_text.xml              |   98 -
 gr-wxgui/grc/variable_text_box.xml                 |  102 -
 gr-wxgui/grc/wxgui_constellationsink2.xml          |  141 -
 gr-wxgui/grc/wxgui_fftsink2.xml                    |  246 --
 gr-wxgui/grc/wxgui_histosink2.xml                  |   79 -
 gr-wxgui/grc/wxgui_numbersink2.xml                 |  194 --
 gr-wxgui/grc/wxgui_scopesink2.xml                  |  187 --
 gr-wxgui/grc/wxgui_termsink.xml                    |   57 -
 gr-wxgui/grc/wxgui_waterfallsink2.xml              |  203 --
 gr-wxgui/include/gnuradio/wxgui/CMakeLists.txt     |   31 -
 gr-wxgui/include/gnuradio/wxgui/api.h              |   33 -
 gr-wxgui/include/gnuradio/wxgui/histo_sink_f.h     |   55 -
 gr-wxgui/include/gnuradio/wxgui/oscope_guts.h      |  131 -
 gr-wxgui/include/gnuradio/wxgui/oscope_sink_f.h    |   53 -
 gr-wxgui/include/gnuradio/wxgui/oscope_sink_x.h    |   91 -
 gr-wxgui/include/gnuradio/wxgui/trigger_mode.h     |   44 -
 gr-wxgui/lib/CMakeLists.txt                        |   98 -
 gr-wxgui/lib/gnuradio-wxgui.rc.in                  |   54 -
 gr-wxgui/lib/histo_sink_f_impl.cc                  |  186 --
 gr-wxgui/lib/histo_sink_f_impl.h                   |   63 -
 gr-wxgui/lib/oscope_guts.cc                        |  439 ---
 gr-wxgui/lib/oscope_sink_f_impl.cc                 |   83 -
 gr-wxgui/lib/oscope_sink_f_impl.h                  |   51 -
 gr-wxgui/lib/oscope_sink_x.cc                      |  161 -
 gr-wxgui/python/wxgui/CMakeLists.txt               |   85 -
 gr-wxgui/python/wxgui/__init__.py                  |   32 -
 gr-wxgui/python/wxgui/common.py                    |  296 --
 gr-wxgui/python/wxgui/const_window.py              |  211 --
 gr-wxgui/python/wxgui/constants.py                 |   76 -
 gr-wxgui/python/wxgui/constsink_gl.py              |  142 -
 gr-wxgui/python/wxgui/fft_window.py                |  412 ---
 gr-wxgui/python/wxgui/fftsink2.py                  |   41 -
 gr-wxgui/python/wxgui/fftsink_gl.py                |  204 --
 gr-wxgui/python/wxgui/fftsink_nongl.py             |  656 ----
 gr-wxgui/python/wxgui/form.py                      |  391 ---
 gr-wxgui/python/wxgui/forms/__init__.py            |  102 -
 gr-wxgui/python/wxgui/forms/converters.py          |  154 -
 gr-wxgui/python/wxgui/forms/forms.py               |  675 ----
 gr-wxgui/python/wxgui/gui.py                       |  135 -
 gr-wxgui/python/wxgui/histo_window.py              |  168 -
 gr-wxgui/python/wxgui/histosink_gl.py              |  113 -
 gr-wxgui/python/wxgui/number_window.py             |  219 --
 gr-wxgui/python/wxgui/numbersink2.py               |  173 -
 gr-wxgui/python/wxgui/plot.py                      | 1834 -----------
 gr-wxgui/python/wxgui/plotter/__init__.py          |   24 -
 gr-wxgui/python/wxgui/plotter/bar_plotter.py       |  150 -
 gr-wxgui/python/wxgui/plotter/channel_plotter.py   |  249 --
 gr-wxgui/python/wxgui/plotter/common.py            |  149 -
 gr-wxgui/python/wxgui/plotter/gltext.py            |  507 ---
 gr-wxgui/python/wxgui/plotter/grid_plotter_base.py |  458 ---
 gr-wxgui/python/wxgui/plotter/plotter_base.py      |  220 --
 gr-wxgui/python/wxgui/plotter/waterfall_plotter.py |  294 --
 gr-wxgui/python/wxgui/powermate.py                 |  448 ---
 gr-wxgui/python/wxgui/pubsub.py                    |  153 -
 gr-wxgui/python/wxgui/scope_window.py              |  691 ----
 gr-wxgui/python/wxgui/scopesink2.py                |   41 -
 gr-wxgui/python/wxgui/scopesink_gl.py              |  239 --
 gr-wxgui/python/wxgui/scopesink_nongl.py           |  654 ----
 gr-wxgui/python/wxgui/slider.py                    |   48 -
 gr-wxgui/python/wxgui/stdgui2.py                   |  107 -
 gr-wxgui/python/wxgui/termsink.py                  |   77 -
 gr-wxgui/python/wxgui/waterfall_window.py          |  328 --
 gr-wxgui/python/wxgui/waterfallsink2.py            |   41 -
 gr-wxgui/python/wxgui/waterfallsink_gl.py          |  176 -
 gr-wxgui/python/wxgui/waterfallsink_nongl.py       |  434 ---
 gr-wxgui/swig/CMakeLists.txt                       |   55 -
 gr-wxgui/swig/wxgui_swig.i                         |   43 -
 grc/blocks/CMakeLists.txt                          |   21 +-
 grc/blocks/options.xml                             |   58 +-
 grc/core/Block.py                                  |    3 +-
 grc/core/Constants.py                              |    3 +-
 grc/core/Param.py                                  |   64 +-
 grc/core/generator/Generator.py                    |    4 -
 grc/core/generator/flow_graph.tmpl                 |   53 +-
 grc/gui/Colors.py                                  |    3 -
 grc/gui/MainWindow.py                              |   21 +-
 314 files changed, 20578 insertions(+), 44791 deletions(-)

diff --cc grc/core/Block.py
index e7e4a82,de1d83e..9a1d72c
--- a/grc/core/Block.py
+++ b/grc/core/Block.py
@@@ -28,23 -22,26 +28,23 @@@ from six.moves import map, rang
  
  from Cheetah.Template import Template
  
 -from .utils import epy_block_io, odict
 +from . import utils
 +
  from . Constants import (
-     BLOCK_FLAG_NEED_QT_GUI, BLOCK_FLAG_NEED_WX_GUI,
+     BLOCK_FLAG_NEED_QT_GUI,
 -    ADVANCED_PARAM_TAB, DEFAULT_PARAM_TAB,
 +    ADVANCED_PARAM_TAB,
      BLOCK_FLAG_THROTTLE, BLOCK_FLAG_DISABLE_BYPASS,
      BLOCK_FLAG_DEPRECATED,
 -    BLOCK_ENABLED, BLOCK_BYPASSED, BLOCK_DISABLED
  )
 -from . Element import Element
 +from . Element import Element, lazy_property
  
  
 -def _get_keys(lst):
 -    return [elem.get_key() for elem in lst]
 -
 -
 -def _get_elem(lst, key):
 -    try:
 -        return lst[_get_keys(lst).index(key)]
 -    except ValueError:
 -        raise ValueError('Key "{}" not found in {}.'.format(key, 
_get_keys(lst)))
 +def _get_elem(iterable, key):
 +    items = list(iterable)
 +    for item in items:
 +        if item.key == key:
 +            return item
 +    return ValueError('Key "{}" not found in {}.'.format(key, items))
  
  
  class Block(Element):
@@@ -245,34 -275,79 +245,33 @@@
                  self.add_error_message("Can't generate this block in mode: {} 
".format(
                                         repr(current_generate_option)))
  
-         check_generate_mode('WX GUI', BLOCK_FLAG_NEED_WX_GUI, ('wx_gui',))
          check_generate_mode('QT GUI', BLOCK_FLAG_NEED_QT_GUI, ('qt_gui', 
'hb_qt_gui'))
 -        if self._epy_reload_error:
 -            
self.get_param('_source_code').add_error_message(str(self._epy_reload_error))
 -
 -    def rewrite(self):
 -        """
 -        Add and remove ports to adjust for the nports.
 -        """
 -        Element.rewrite(self)
 -        # Check and run any custom rewrite function for this block
 -        getattr(self, 'rewrite_' + self._key, lambda: None)()
 -
 -        # Adjust nports, disconnect hidden ports
 -        for ports in (self.get_sources(), self.get_sinks()):
 -            for i, master_port in enumerate(ports):
 -                nports = master_port.get_nports() or 1
 -                num_ports = 1 + len(master_port.get_clones())
 -                if master_port.get_hide():
 -                    for connection in master_port.get_connections():
 -                        self.get_parent().remove_element(connection)
 -                if not nports and num_ports == 1:  # Not a master port and no 
left-over clones
 -                    continue
 -                # Remove excess cloned ports
 -                for port in master_port.get_clones()[nports-1:]:
 -                    # Remove excess connections
 -                    for connection in port.get_connections():
 -                        self.get_parent().remove_element(connection)
 -                    master_port.remove_clone(port)
 -                    ports.remove(port)
 -                # Add more cloned ports
 -                for j in range(num_ports, nports):
 -                    port = master_port.add_clone()
 -                    ports.insert(ports.index(master_port) + j, port)
  
 -            self.back_ofthe_bus(ports)
 -            # Renumber non-message/message ports
 -            domain_specific_port_index = collections.defaultdict(int)
 -            for port in filter(lambda p: p.get_key().isdigit(), ports):
 -                domain = port.get_domain()
 -                port._key = str(domain_specific_port_index[domain])
 -                domain_specific_port_index[domain] += 1
 +    def _validate_var_value(self):
 +        """or variables check the value (only if var_value is used)"""
 +        if self.is_variable and self._var_value != '$value':
 +            value = self._var_value
 +            try:
 +                value = self.get_var_value()
 +                self.parent.evaluate(value)
 +            except Exception as err:
 +                self.add_error_message('Value "{}" cannot be 
evaluated:\n{}'.format(value, err))
  
 -    def port_controller_modify(self, direction):
 -        """
 -        Change the port controller.
 +    ##############################################
 +    # props
 +    ##############################################
  
 -        Args:
 -            direction: +1 or -1
 +    @lazy_property
 +    def is_throtteling(self):
 +        return BLOCK_FLAG_THROTTLE in self.flags
  
 -        Returns:
 -            true for change
 -        """
 -        changed = False
 -        # Concat the nports string from the private nports settings of all 
ports
 -        nports_str = ' '.join([port._nports for port in self.get_ports()])
 -        # Modify all params whose keys appear in the nports string
 -        for param in self.get_params():
 -            if param.is_enum() or param.get_key() not in nports_str:
 -                continue
 -            # Try to increment the port controller by direction
 -            try:
 -                value = param.get_evaluated()
 -                value = value + direction
 -                if 0 < value:
 -                    param.set_value(value)
 -                    changed = True
 -            except:
 -                pass
 -        return changed
 +    @lazy_property
 +    def is_deprecated(self):
 +        return BLOCK_FLAG_DEPRECATED in self.flags
  
 -    def get_doc(self):
 -        platform = self.get_parent().get_parent()
 -        documentation = platform.block_docstrings.get(self._key, {})
 +    @property
 +    def documentation(self):
 +        documentation = self.parent_platform.block_docstrings.get(self.key, 
{})
          from_xml = self._doc.strip()
          if from_xml:
              documentation[''] = from_xml
diff --cc grc/core/Constants.py
index 3941505,edd3442..caf301b
--- a/grc/core/Constants.py
+++ b/grc/core/Constants.py
@@@ -52,25 -48,18 +52,24 @@@ DEFAULT_DOMAIN = GR_STREAM_DOMAI
  BLOCK_FLAG_THROTTLE = 'throttle'
  BLOCK_FLAG_DISABLE_BYPASS = 'disable_bypass'
  BLOCK_FLAG_NEED_QT_GUI = 'need_qt_gui'
- BLOCK_FLAG_NEED_WX_GUI = 'need_wx_gui'
  BLOCK_FLAG_DEPRECATED = 'deprecated'
  
 -# Block States
 -BLOCK_DISABLED = 0
 -BLOCK_ENABLED = 1
 -BLOCK_BYPASSED = 2
 -
  # File creation modes
  TOP_BLOCK_FILE_MODE = stat.S_IRUSR | stat.S_IWUSR | stat.S_IXUSR | 
stat.S_IRGRP | \
                        stat.S_IWGRP | stat.S_IXGRP | stat.S_IROTH
  HIER_BLOCK_FILE_MODE = stat.S_IRUSR | stat.S_IWUSR | stat.S_IRGRP | 
stat.S_IWGRP | stat.S_IROTH
  
 +PARAM_TYPE_NAMES = (
 +    'raw', 'enum',
 +    'complex', 'real', 'float', 'int',
 +    'complex_vector', 'real_vector', 'float_vector', 'int_vector',
 +    'hex', 'string', 'bool',
 +    'file_open', 'file_save', '_multiline', '_multiline_python_external',
 +    'id', 'stream_id',
-     'grid_pos', 'notebook', 'gui_hint',
++    'gui_hint',
 +    'import',
 +)
 +
  # Define types, native python + numpy
  VECTOR_TYPES = (tuple, list, set, numpy.ndarray)
  COMPLEX_TYPES = [complex, numpy.complex, numpy.complex64, numpy.complex128]
diff --cc grc/core/Param.py
index 6d947c3,d0af979..31393b1
--- a/grc/core/Param.py
+++ b/grc/core/Param.py
@@@ -17,19 -17,20 +17,19 @@@ along with this program; if not, write 
  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
  """
  
 +from __future__ import absolute_import
 +
  import ast
 -import weakref
  import re
 +import collections
 +
 +from six.moves import builtins, filter, map, range, zip
  
  from . import Constants
 -from .Constants import VECTOR_TYPES, COMPLEX_TYPES, REAL_TYPES, INT_TYPES
 -from .Element import Element
 -from .utils import odict
 +from .Element import Element, nop_write
  
  # Blacklist certain ids, its not complete, but should help
- ID_BLACKLIST = ['self', 'options', 'gr', 'blks2', 'wxgui', 'wx', 'math', 
'forms', 'firdes'] + dir(builtins)
 -import __builtin__
 -
 -
 -ID_BLACKLIST = ['self', 'options', 'gr', 'blks2', 'math', 'firdes'] + 
dir(__builtin__)
++ID_BLACKLIST = ['self', 'options', 'gr', 'blks2', 'math', 'firdes'] + 
dir(builtins)
  try:
      from gnuradio import gr
      ID_BLACKLIST.extend(attr for attr in dir(gr.top_block()) if not 
attr.startswith('_'))
diff --cc grc/core/generator/flow_graph.tmpl
index fd5546e,0597033..b8913bb
--- a/grc/core/generator/flow_graph.tmpl
+++ b/grc/core/generator/flow_graph.tmpl
@@@ -393,10 -374,10 +374,10 @@@ def main(top_block_cls=$(class_name), o
      def quitting():
          tb.stop()
          tb.wait()
-     qapp.connect(qapp, Qt.SIGNAL("aboutToQuit()"), quitting)
+     qapp.aboutToQuit.connect(quitting)
          #for $m in $monitors
 -    if $m.has_param('en'):
 -        if $m.get_param('en').get_value():
 +    if 'en' in $m.params:
 +        if $m.params['en'].get_value():
              (tb.$m.get_id()).start()
      else:
          sys.stderr.write("Monitor '{0}' does not have an enable ('en') 
parameter.".format("tb.$m.get_id()"))
diff --cc grc/gui/Colors.py
index acc7f22,d322afa..01c461a
--- a/grc/gui/Colors.py
+++ b/grc/gui/Colors.py
@@@ -16,109 -16,35 +16,106 @@@ You should have received a copy of the 
  along with this program; if not, write to the Free Software
  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
  """
 -try:
 -    import pygtk
 -    pygtk.require('2.0')
 -    import gtk
 -
 -    _COLORMAP = gtk.gdk.colormap_get_system() #create all of the colors
 -    def get_color(color_code): return _COLORMAP.alloc_color(color_code, True, 
True)
 -
 -    HIGHLIGHT_COLOR = get_color('#00FFFF')
 -    BORDER_COLOR = get_color('#444444')
 -    # missing blocks stuff
 -    MISSING_BLOCK_BACKGROUND_COLOR = get_color('#FFF2F2')
 -    MISSING_BLOCK_BORDER_COLOR = get_color('red')
 -    #param entry boxes
 -    PARAM_ENTRY_TEXT_COLOR = get_color('black')
 -    ENTRYENUM_CUSTOM_COLOR = get_color('#EEEEEE')
 -    #flow graph color constants
 -    FLOWGRAPH_BACKGROUND_COLOR = get_color('#FFFFFF')
 -    COMMENT_BACKGROUND_COLOR = get_color('#F3F3F3')
 -    FLOWGRAPH_EDGE_COLOR = COMMENT_BACKGROUND_COLOR
 -    #block color constants
 -    BLOCK_ENABLED_COLOR = get_color('#F1ECFF')
 -    BLOCK_DISABLED_COLOR = get_color('#CCCCCC')
 -    BLOCK_BYPASSED_COLOR = get_color('#F4FF81')
 -    #connection color constants
 -    CONNECTION_ENABLED_COLOR = get_color('black')
 -    CONNECTION_DISABLED_COLOR = get_color('#BBBBBB')
 -    CONNECTION_ERROR_COLOR = get_color('red')
 -except:
 -    print 'Unable to import Colors'
 -
 -DEFAULT_DOMAIN_COLOR_CODE = '#777777'
 +
 +from __future__ import absolute_import
 +
 +from gi.repository import Gdk, cairo
 +# import pycairo
 +
 +from . import Constants
 +
 +
 +def _color_parse(color_code):
 +    color = Gdk.RGBA()
 +    color.parse(color_code)
 +    return color
 +
 +
 +def get_color(color_code):
 +    color = _color_parse(color_code)
 +    return color.red, color.green, color.blue, color.alpha
 +    # chars_per_color = 2 if len(color_code) > 4 else 1
 +    # offsets = range(1, 3 * chars_per_color + 1, chars_per_color)
 +    # return tuple(int(color_code[o:o + 2], 16) / 255.0 for o in offsets)
 +
 
+#################################################################################
 +# fg colors
 
+#################################################################################
 +
 +HIGHLIGHT_COLOR = get_color('#00FFFF')
 +BORDER_COLOR = get_color('#616161')
 +BORDER_COLOR_DISABLED = get_color('#888888')
 +FONT_COLOR = get_color('#000000')
 +
 +# Missing blocks stuff
 +MISSING_BLOCK_BACKGROUND_COLOR = get_color('#FFF2F2')
 +MISSING_BLOCK_BORDER_COLOR = get_color('#FF0000')
 +
 +# Flow graph color constants
 +FLOWGRAPH_BACKGROUND_COLOR = get_color('#FFFFFF')
 +COMMENT_BACKGROUND_COLOR = get_color('#F3F3F3')
 +FLOWGRAPH_EDGE_COLOR = COMMENT_BACKGROUND_COLOR
 +
 +# Block color constants
 +BLOCK_ENABLED_COLOR = get_color('#F1ECFF')
 +BLOCK_DISABLED_COLOR = get_color('#CCCCCC')
 +BLOCK_BYPASSED_COLOR = get_color('#F4FF81')
 +
 +# Connection color constants
 +CONNECTION_ENABLED_COLOR = get_color('#000000')
 +CONNECTION_DISABLED_COLOR = get_color('#BBBBBB')
 +CONNECTION_ERROR_COLOR = get_color('#FF0000')
 +
 +DEFAULT_DOMAIN_COLOR = get_color('#777777')
 +
 +
 
+#################################################################################
 +# port colors
 
+#################################################################################
 +
 +PORT_TYPE_TO_COLOR = {key: get_color(color) for name, key, sizeof, color in 
Constants.CORE_TYPES}
 +PORT_TYPE_TO_COLOR.update((key, get_color(color)) for key, (_, color) in 
Constants.ALIAS_TYPES.items())
 +
 +
 
+#################################################################################
 +# param box colors
 
+#################################################################################
 +COMPLEX_COLOR_SPEC = _color_parse('#3399FF')
 +FLOAT_COLOR_SPEC = _color_parse('#FF8C69')
 +INT_COLOR_SPEC = _color_parse('#00FF99')
 +SHORT_COLOR_SPEC = _color_parse('#FFFF66')
 +BYTE_COLOR_SPEC = _color_parse('#FF66FF')
 +
 +ID_COLOR_SPEC = _color_parse('#DDDDDD')
 +WILDCARD_COLOR_SPEC = _color_parse('#FFFFFF')
 +
 +COMPLEX_VECTOR_COLOR_SPEC = _color_parse('#3399AA')
 +FLOAT_VECTOR_COLOR_SPEC = _color_parse('#CC8C69')
 +INT_VECTOR_COLOR_SPEC = _color_parse('#00CC99')
 +SHORT_VECTOR_COLOR_SPEC = _color_parse('#CCCC33')
 +BYTE_VECTOR_COLOR_SPEC = _color_parse('#CC66CC')
 +
 +PARAM_ENTRY_COLORS = {
- 
 +    # Number types
 +    'complex': COMPLEX_COLOR_SPEC,
 +    'real': FLOAT_COLOR_SPEC,
 +    'float': FLOAT_COLOR_SPEC,
 +    'int': INT_COLOR_SPEC,
 +
 +    # Vector types
 +    'complex_vector': COMPLEX_VECTOR_COLOR_SPEC,
 +    'real_vector': FLOAT_VECTOR_COLOR_SPEC,
 +    'float_vector': FLOAT_VECTOR_COLOR_SPEC,
 +    'int_vector': INT_VECTOR_COLOR_SPEC,
 +
 +    # Special
 +    'bool': INT_COLOR_SPEC,
 +    'hex': INT_COLOR_SPEC,
 +    'string': BYTE_VECTOR_COLOR_SPEC,
 +    'id': ID_COLOR_SPEC,
 +    'stream_id': ID_COLOR_SPEC,
-     'grid_pos': INT_VECTOR_COLOR_SPEC,
-     'notebook': INT_VECTOR_COLOR_SPEC,
 +    'raw': WILDCARD_COLOR_SPEC,
 +}
 +
 +PARAM_ENTRY_DEFAULT_COLOR = _color_parse('#FFFFFF')
 +PARAM_ENTRY_ENUM_CUSTOM_COLOR = _color_parse('#EEEEEE')



reply via email to

[Prev in Thread] Current Thread [Next in Thread]