fgmapping 1.2.0 → 1.2.1

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG CHANGED
@@ -1,3 +1,5 @@
1
+ v1.2.1 corrected alt display in popup of tracks - restructured reading of flightgear data to make is more responsive - added application icon
2
+
1
3
  v1.2.0 Added setting of Radio Manager Waypoints in Flightgear
2
4
 
3
5
  v1.1.3 better z-order for display-elements, -added error handling for http connection losses
@@ -2,11 +2,11 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = %q{fgmapping}
5
- s.version = "1.2.0"
5
+ s.version = "1.2.1"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["Michael Meltner"]
9
- s.date = %q{2010-06-17}
9
+ s.date = %q{2010-06-21}
10
10
  s.default_executable = %q{flightgear-mapping}
11
11
  s.description = %q{Flightgear live mapping}
12
12
  s.email = %q{mmeltner @nospamplease@ gmail.com}
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  ** Form generated from reading ui file 'hud-widget.ui'
3
3
  **
4
- ** Created: Do. Jun 17 17:42:25 2010
4
+ ** Created: Mo. Jun 21 22:46:54 2010
5
5
  ** by: Qt User Interface Compiler version 4.6.2
6
6
  **
7
7
  ** WARNING! All changes made in this file will be lost when recompiling ui file!
@@ -55,6 +55,8 @@ COLOROFFSET_DEG = 240.0
55
55
 
56
56
  MINSPEED = 0.3 # minimum speed required for heading marker to appear, in m/s
57
57
  FS_READ_INTERVAL = 100 # enter GUI refresh loop every 100ms
58
+ LOOPSLEEPINTERVAL = (0.95 * FS_READ_INTERVAL / 1000) # spend 95% of time sleeping to prevent
59
+ # threads from starving. Time is in seconds!
58
60
  TICKSTOSKIP = 20
59
61
  AUTOSAVE_INTERVAL = 10 * 60 * 1000 # autosave interval for tracks
60
62
  HOVER_TIMER = 2000 # time until HUD widget disappears
@@ -128,6 +130,7 @@ class MainDlg < Qt::Widget
128
130
  @mytrack_current=-1
129
131
  @prev_track_node = nil
130
132
  @posnode = Node.new(1, Time.now, @lon, @lat)
133
+ @tempposnode = Node.new(1, Time.now, @lon, @lat)
131
134
 
132
135
  @node = Node.new(1, Time.now, @lon, @lat, 0, @zoom)
133
136
  @rot = 0
@@ -167,10 +170,13 @@ class MainDlg < Qt::Widget
167
170
  end
168
171
  end
169
172
  puts "Map Directory located here: \"#{$MAPSHOME}\""
173
+
174
+ readFlightgear()
170
175
  end
171
176
 
172
177
  def get_data(path)
173
- r=@fs_ans.detect do |f|
178
+ # check from end to get most recent position
179
+ r=@fs_ans.reverse.detect do |f|
174
180
  f.include?(path)
175
181
  end
176
182
  r =~ /-?\d+\.\d+/
@@ -661,6 +667,40 @@ class MainDlg < Qt::Widget
661
667
  end
662
668
  end
663
669
 
670
+ def readFlightgear
671
+ Thread.new do
672
+ while true
673
+ if @fs_socket.nil? then
674
+ sleep 1
675
+ else
676
+ begin
677
+ @queryMutex.synchronize {
678
+ @fs_queries.each do |q|
679
+ @fs_socket.print("get " + q + "\r\n")
680
+ s=""
681
+ while select([@fs_socket], nil, nil, 0.3) do
682
+ s += @fs_socket.read(1)
683
+ # check for end of line characterized by this string: "\r\n/>"
684
+ # break if s[-4..-1] == "\r\n/>" and s.include?(q)
685
+ end
686
+ if s.include?(q) then
687
+ @fs_ans << s.split("\n")
688
+ @fs_ans.flatten!
689
+ end
690
+ end
691
+ }
692
+ rescue
693
+ puts "Warning: Can not communicate with Flightsimulator. Is Telnet interface configured?"
694
+ @scene.removeItem(@rose)
695
+ @scene.removeItem(@pointer)
696
+ @fs_socket = nil
697
+ @hud = nil
698
+ end
699
+ end
700
+ end #while
701
+ end # Thread
702
+ end
703
+
664
704
  def wakeupTimer()
665
705
  # p "wakeup in"
666
706
  # have to do centering every time as QT will not scroll to scene coordinates which have no elements placed there yet
@@ -671,7 +711,13 @@ class MainDlg < Qt::Widget
671
711
  end
672
712
 
673
713
  @wakeupCounter += 1
674
- return if @wakeupCounter <= TICKSTOSKIP
714
+ if @wakeupCounter <= TICKSTOSKIP then
715
+ # trick to prevent threads from getting just tiny slices of time to execute
716
+ # inside the main event loop of QT
717
+ sleep LOOPSLEEPINTERVAL
718
+ return
719
+ end
720
+
675
721
  @wakeupCounter = 0
676
722
 
677
723
  if @fs_socket.nil? then
@@ -683,104 +729,86 @@ class MainDlg < Qt::Widget
683
729
  puts "Non-critical socket error: #{$!}"
684
730
  end
685
731
  else
686
- begin
687
- @queryMutex.synchronize {
688
- @fs_queries.each do |q|
689
- @fs_socket.print("get " + q + "\r\n")
690
- s=""
691
- while select([@fs_socket], nil, nil, 0.3) do
692
- s += @fs_socket.read(1)
693
- # check for end of line characterized by this string: "\r\n/>"
694
- break if s[-4..-1] == "\r\n/>" and s.include?(q)
695
- end
696
- if s.include?(q) then
697
- @fs_ans << s.split("\n")
698
- @fs_ans.flatten!
699
- end
732
+ #ap @fs_ans
733
+ if @fs_ans.length>0 then # check if any answer has been received yet.
734
+ if !@hud.nil? then
735
+ @tempposnode.lon = get_data("/position/longitude-deg")
736
+ @tempposnode.lat = get_data("/position/latitude-deg")
737
+ @rot = get_data("/orientation/heading-deg")
738
+ @alt = get_data("/position/altitude-ft")
739
+ @speed = get_data("/velocities/groundspeed-kt")
740
+ # protect against invalid data
741
+ if !(@tempposnode.lon and @tempposnode.lat and @rot and @alt and @speed) then
742
+ @fs_ans=[]
743
+ return
700
744
  end
701
- }
702
- rescue
703
- puts "Warning: Can not communicate with Flightsimulator. Is Telnet interface configured?"
704
- @scene.removeItem(@rose)
705
- @scene.removeItem(@pointer)
706
- @fs_socket = nil
707
- @hud = nil
708
- else # rescue
709
- #ap @fs_ans
710
- if @fs_ans.length>0 then # check if any answer has been received yet.
711
- if !@hud.nil? then
712
- @posnode.lon = get_data("/position/longitude-deg")
713
- @posnode.lat = get_data("/position/latitude-deg")
714
- @rot = get_data("/orientation/heading-deg")
715
- @alt = get_data("/position/altitude-ft")
716
- speed = get_data("/velocities/groundspeed-kt") * 1.852
717
- # protect against bug in Flightsim, speed ofter zero if returned
718
- @speed = speed if speed > 0
719
- @hud_widget.w.lBlat.setText("%2.3f°" % @posnode.lat)
720
- @hud_widget.w.lBlon.setText("%2.3f°" % @posnode.lon)
721
- conversion = @metricUnit ? 1 : 0.54
722
- @hud_widget.w.lBspeed.setText("%3.1f" % (@speed*conversion) + (@metricUnit ? " km/h" : "kt"))
723
- @hud_widget.w.lBheading.setText("%3.1f°" % (@rot))
724
- conversion = @metricUnit ? 3.281 : 1
725
- @hud_widget.w.lBalt.setText("%3.1f" % (@alt/conversion) + (@metricUnit ? "m" : "ft"))
726
- mainnode_x=@node.toxtile
727
- mainnode_y=@node.toytile
728
- @rose.setPos((@posnode.toxtile - mainnode_x) * 256, (@posnode.toytile - mainnode_y) * 256)
729
-
730
- @pointer.setTransform(Qt::Transform.new.scale(SCALE_SVG,SCALE_SVG).rotate(@rot+180.0) \
731
- .translate(-@pointer_offsetx, -@pointer_offsetx))
732
- @pointer.setPos((@posnode.toxtile - mainnode_x) * 256 ,(@posnode.toytile - mainnode_y) * 256)
733
-
734
- to_x = mainnode_x
735
- to_y = mainnode_y
736
- to_lon = @node.lon
737
- to_lat = @node.lat
738
- if !@w.cBtoorigin.isChecked and !@waypoints.currentwp.nil? then
739
- if !@waypoints.nodes[@waypoints.currentwp-1].nil? then
740
- to_x = @waypoints.nodes[@waypoints.currentwp-1].toxtile
741
- to_y = @waypoints.nodes[@waypoints.currentwp-1].toytile
742
- to_lon = @waypoints.nodes[@waypoints.currentwp-1].lon
743
- to_lat = @waypoints.nodes[@waypoints.currentwp-1].lat
744
- end
745
+ @posnode = @tempposnode.dup
746
+
747
+ @speed = @speed * 1.852
748
+ @hud_widget.w.lBlat.setText("%2.3f°" % @posnode.lat)
749
+ @hud_widget.w.lBlon.setText("%2.3f°" % @posnode.lon)
750
+ conversion = @metricUnit ? 1 : 0.54
751
+ @hud_widget.w.lBspeed.setText("%3.1f" % (@speed*conversion) + (@metricUnit ? " km/h" : "kt"))
752
+ @hud_widget.w.lBheading.setText("%3.1f°" % (@rot))
753
+ conversion = @metricUnit ? 3.281 : 1
754
+ @hud_widget.w.lBalt.setText("%3.1f" % (@alt/conversion) + (@metricUnit ? "m" : "ft"))
755
+ mainnode_x=@node.toxtile
756
+ mainnode_y=@node.toytile
757
+ @rose.setPos((@posnode.toxtile - mainnode_x) * 256, (@posnode.toytile - mainnode_y) * 256)
758
+
759
+ @pointer.setTransform(Qt::Transform.new.scale(SCALE_SVG,SCALE_SVG).rotate(@rot+180.0) \
760
+ .translate(-@pointer_offsetx, -@pointer_offsetx))
761
+ @pointer.setPos((@posnode.toxtile - mainnode_x) * 256 ,(@posnode.toytile - mainnode_y) * 256)
762
+
763
+ to_x = mainnode_x
764
+ to_y = mainnode_y
765
+ to_lon = @node.lon
766
+ to_lat = @node.lat
767
+ if !@w.cBtoorigin.isChecked and !@waypoints.currentwp.nil? then
768
+ if !@waypoints.nodes[@waypoints.currentwp-1].nil? then
769
+ to_x = @waypoints.nodes[@waypoints.currentwp-1].toxtile
770
+ to_y = @waypoints.nodes[@waypoints.currentwp-1].toytile
771
+ to_lon = @waypoints.nodes[@waypoints.currentwp-1].lon
772
+ to_lat = @waypoints.nodes[@waypoints.currentwp-1].lat
745
773
  end
746
- @pointertoorigin.setTransform(Qt::Transform.new.scale(SCALE_SVG,SCALE_SVG).rotateRadians(Math::PI / 2 + \
747
- Math.atan2((@posnode.toytile - to_y), (@posnode.toxtile - to_x))) \
748
- .translate(-@pointertoorigin_offsetx, -@pointertoorigin_offsetx))
749
- @pointertoorigin.setPos((@posnode.toxtile - mainnode_x) * 256 ,(@posnode.toytile - mainnode_y) * 256)
750
-
751
- @hud_widget.w.lBdistance.text = @posnode.distanceto_str(to_lon, to_lat)
752
-
753
- if @w.cBautocenter.isChecked then
754
- @offset_x = @posnode.toxtile - mainnode_x
755
- @offset_y = @posnode.toytile - mainnode_y
756
- movemap(@node)
774
+ end
775
+ @pointertoorigin.setTransform(Qt::Transform.new.scale(SCALE_SVG,SCALE_SVG).rotateRadians(Math::PI / 2 + \
776
+ Math.atan2((@posnode.toytile - to_y), (@posnode.toxtile - to_x))) \
777
+ .translate(-@pointertoorigin_offsetx, -@pointertoorigin_offsetx))
778
+ @pointertoorigin.setPos((@posnode.toxtile - mainnode_x) * 256 ,(@posnode.toytile - mainnode_y) * 256)
779
+
780
+ @hud_widget.w.lBdistance.text = @posnode.distanceto_str(to_lon, to_lat)
781
+
782
+ if @w.cBautocenter.isChecked then
783
+ @offset_x = @posnode.toxtile - mainnode_x
784
+ @offset_y = @posnode.toytile - mainnode_y
785
+ movemap(@node)
786
+ end
787
+ if @mytrack_current >= 0 and @w.pBrecordTrack.isChecked then
788
+ if @mytracks[@mytrack_current].nil? then
789
+ @mytracks[@mytrack_current] = Way.new(1, 'user', Time.now, nextcolor)
790
+ @linepen.setColor(Qt::Color.new(@mytracks[@mytrack_current].color))
791
+ @prev_track_node = false
757
792
  end
758
- if @mytrack_current >= 0 and @w.pBrecordTrack.isChecked then
759
- if @mytracks[@mytrack_current].nil? then
760
- @mytracks[@mytrack_current] = Way.new(1, 'user', Time.now, nextcolor)
761
- @linepen.setColor(Qt::Color.new(@mytracks[@mytrack_current].color))
762
- @prev_track_node = false
763
- end
764
- @mytracks[@mytrack_current] << Node.new(nil, Time.now, @posnode.lon, @posnode.lat, @alt)
765
- n = @mytracks[@mytrack_current].nodes.last
766
- n.speed = @speed
767
- if !@prev_track_node then
768
- @tckpath = Qt::PainterPath.new(Qt::PointF.new((n.toxtile - mainnode_x) * 256, (n.toytile - mainnode_y) * 256))
769
- @mytracks[@mytrack_current].path=TrackGraphicsPathItem.new(@mytracks[@mytrack_current])
770
- @mytracks[@mytrack_current].path.setPath(@tckpath)
771
- @mytracks[@mytrack_current].path.setZValue(Z_VALUE_TRACK)
772
- @mytracks[@mytrack_current].path.setPen(@linepen)
773
- @scene.addItem(@mytracks[@mytrack_current].path)
774
- @prev_track_node = true
775
- else
776
- @tckpath.lineTo((n.toxtile - mainnode_x) * 256, (n.toytile - mainnode_y) * 256)
777
- @mytracks[@mytrack_current].path.setPath(@tckpath)
778
- end
793
+ @mytracks[@mytrack_current] << Node.new(nil, Time.now, @posnode.lon, @posnode.lat, @alt / 3.281)
794
+ n = @mytracks[@mytrack_current].nodes.last
795
+ n.speed = @speed
796
+ if !@prev_track_node then
797
+ @tckpath = Qt::PainterPath.new(Qt::PointF.new((n.toxtile - mainnode_x) * 256, (n.toytile - mainnode_y) * 256))
798
+ @mytracks[@mytrack_current].path=TrackGraphicsPathItem.new(@mytracks[@mytrack_current])
799
+ @mytracks[@mytrack_current].path.setPath(@tckpath)
800
+ @mytracks[@mytrack_current].path.setZValue(Z_VALUE_TRACK)
801
+ @mytracks[@mytrack_current].path.setPen(@linepen)
802
+ @scene.addItem(@mytracks[@mytrack_current].path)
803
+ @prev_track_node = true
804
+ else
805
+ @tckpath.lineTo((n.toxtile - mainnode_x) * 256, (n.toytile - mainnode_y) * 256)
806
+ @mytracks[@mytrack_current].path.setPath(@tckpath)
779
807
  end
780
-
781
- end # if !@hud.nil?
782
- end # if @fs_ans.length>0
783
- end # rescue
808
+ end
809
+
810
+ end # if !@hud.nil?
811
+ end # if @fs_ans.length>0
784
812
  @fs_ans=[]
785
813
  end # socket nil
786
814
  end
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  ** Form generated from reading ui file 'main-dlg.ui'
3
3
  **
4
- ** Created: Do. Jun 17 17:42:25 2010
4
+ ** Created: Mo. Jun 21 22:46:54 2010
5
5
  ** by: Qt User Interface Compiler version 4.6.2
6
6
  **
7
7
  ** WARNING! All changes made in this file will be lost when recompiling ui file!
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  ** Form generated from reading ui file 'nodeinfo-widget.ui'
3
3
  **
4
- ** Created: Mo. Jun 14 18:03:14 2010
4
+ ** Created: Mo. Jun 21 22:46:54 2010
5
5
  ** by: Qt User Interface Compiler version 4.6.2
6
6
  **
7
7
  ** WARNING! All changes made in this file will be lost when recompiling ui file!
@@ -1,7 +1,7 @@
1
1
  #****************************************************************************
2
2
  #** Ruby Resource object code
3
3
  #**
4
- #** Created: Do. Jun 17 17:42:25 2010
4
+ #** Created: Mo. Jun 21 22:46:54 2010
5
5
  #** by: The Ruby Resource Compiler for Qt version 4.6.2
6
6
  #**
7
7
  #** WARNING! All changes made in this file will be lost!
@@ -21,7 +21,7 @@ class QCleanupResources__dest_class__
21
21
  end
22
22
 
23
23
  @@qt_resource_data = [
24
- # /home/chief/develop/ruby/fgmap/flag-blue.png
24
+ # /home/chief/dev/fg-map/develop/flag-blue.png
25
25
  0x0,0x0,0x9,0xfd,
26
26
  0x89,
27
27
  0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0,
@@ -184,7 +184,7 @@ class QCleanupResources__dest_class__
184
184
  0x72,0x65,0x0,0x0,0x78,0xda,0x2b,0x2f,0x2f,0xd7,0xcb,0xcc,0xcb,0x2e,0x4e,0x4e,
185
185
  0x2c,0x48,0xd5,0xcb,0x2f,0x4a,0x7,0x0,0x36,0xd8,0x6,0x58,0x10,0x53,0xca,0x5c,
186
186
  0x0,0x0,0x0,0x0,0x49,0x45,0x4e,0x44,0xae,0x42,0x60,0x82,
187
- # /home/chief/develop/ruby/fgmap/vor.svg
187
+ # /home/chief/dev/fg-map/develop/vor.svg
188
188
  0x0,0x1,0x23,0x81,
189
189
  0x3c,
190
190
  0x3f,0x78,0x6d,0x6c,0x20,0x76,0x65,0x72,0x73,0x69,0x6f,0x6e,0x3d,0x22,0x31,0x2e,
@@ -4852,7 +4852,7 @@ class QCleanupResources__dest_class__
4852
4852
  0x20,0x20,0x20,0x20,0x3c,0x2f,0x67,0x3e,0xa,0x20,0x20,0x20,0x20,0x3c,0x2f,0x67,
4853
4853
  0x3e,0xa,0x20,0x20,0x3c,0x2f,0x67,0x3e,0xa,0x3c,0x2f,0x73,0x76,0x67,0x3e,0xa,
4854
4854
 
4855
- # /home/chief/develop/ruby/fgmap/wpttemp-red.png
4855
+ # /home/chief/dev/fg-map/develop/wpttemp-red.png
4856
4856
  0x0,0x0,0x4,0xe7,
4857
4857
  0x89,
4858
4858
  0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0,
@@ -4934,7 +4934,98 @@ class QCleanupResources__dest_class__
4934
4934
  0x65,0x59,0x10,0x42,0xe0,0x70,0x38,0x50,0x57,0x57,0x17,0x16,0xd2,0xdd,0xdd,0x8d,
4935
4935
  0xff,0x0,0x69,0xa0,0xd9,0x7,0xbe,0x3e,0xff,0xc9,0x0,0x0,0x0,0x0,0x49,0x45,
4936
4936
  0x4e,0x44,0xae,0x42,0x60,0x82,
4937
- # /home/chief/develop/ruby/fgmap/rose.svg
4937
+ # /home/chief/dev/fg-map/develop/vor.png
4938
+ 0x0,0x0,0x5,0x7c,
4939
+ 0x89,
4940
+ 0x50,0x4e,0x47,0xd,0xa,0x1a,0xa,0x0,0x0,0x0,0xd,0x49,0x48,0x44,0x52,0x0,
4941
+ 0x0,0x0,0x30,0x0,0x0,0x0,0x30,0x8,0x6,0x0,0x0,0x0,0x57,0x2,0xf9,0x87,
4942
+ 0x0,0x0,0x0,0x1,0x73,0x52,0x47,0x42,0x0,0xae,0xce,0x1c,0xe9,0x0,0x0,0x0,
4943
+ 0x6,0x62,0x4b,0x47,0x44,0x0,0xff,0x0,0xff,0x0,0xff,0xa0,0xbd,0xa7,0x93,0x0,
4944
+ 0x0,0x0,0x9,0x70,0x48,0x59,0x73,0x0,0x0,0xb,0x13,0x0,0x0,0xb,0x13,0x1,
4945
+ 0x0,0x9a,0x9c,0x18,0x0,0x0,0x0,0x7,0x74,0x49,0x4d,0x45,0x7,0xda,0x6,0x15,
4946
+ 0x14,0x29,0x1,0xbf,0x98,0x63,0x35,0x0,0x0,0x0,0x19,0x74,0x45,0x58,0x74,0x43,
4947
+ 0x6f,0x6d,0x6d,0x65,0x6e,0x74,0x0,0x43,0x72,0x65,0x61,0x74,0x65,0x64,0x20,0x77,
4948
+ 0x69,0x74,0x68,0x20,0x47,0x49,0x4d,0x50,0x57,0x81,0xe,0x17,0x0,0x0,0x4,0xd7,
4949
+ 0x49,0x44,0x41,0x54,0x68,0xde,0xed,0x9a,0x7b,0x68,0xd5,0x65,0x18,0xc7,0x3f,0xdf,
4950
+ 0xb3,0xad,0xcd,0xe1,0xbc,0xcc,0x46,0xd3,0xb4,0xd6,0xc5,0x9d,0x36,0x6a,0x18,0x4c,
4951
+ 0xa7,0x74,0x41,0xcc,0x44,0x8d,0x8a,0x28,0x4c,0x89,0x22,0xd1,0x58,0x92,0x4,0x45,
4952
+ 0x99,0x44,0x74,0x13,0x49,0x84,0x22,0xb,0x24,0xc2,0x3f,0xec,0x8a,0x56,0xae,0x90,
4953
+ 0xb4,0x45,0x24,0x41,0x44,0x65,0x17,0xd7,0xd5,0x9c,0x19,0x95,0x2c,0x43,0x5,0x6d,
4954
+ 0xca,0x6a,0xd7,0xa7,0x7f,0x9e,0x43,0x87,0xd3,0x39,0xfb,0xbd,0xe7,0x9c,0xed,0xd4,
4955
+ 0x60,0x3f,0x18,0xbf,0xf7,0xf7,0x9e,0xf7,0xf6,0xbc,0xcf,0xf3,0x7c,0xdf,0xef,0xf3,
4956
+ 0xbc,0x93,0x99,0x31,0x92,0x9f,0x18,0x23,0xfc,0x19,0x15,0xe0,0xbf,0x7e,0x8a,0x87,
4957
+ 0x63,0x50,0x49,0x97,0x3,0x33,0x80,0x29,0x40,0x19,0xd0,0x7,0xfc,0x9,0xb4,0x3,
4958
+ 0x5f,0x9a,0xd9,0xfe,0xff,0x9d,0x6,0x24,0xad,0x90,0xd4,0x26,0xe9,0x7b,0x60,0xb,
4959
+ 0x30,0x1e,0xd8,0xd,0x9c,0xf,0xf4,0x3,0x9f,0x1,0x4b,0x80,0x6d,0x92,0xe,0x4a,
4960
+ 0xda,0x23,0xa9,0x36,0xef,0x89,0xcd,0x2c,0xaf,0x3f,0x60,0x2d,0xd0,0xd,0x7c,0xb,
4961
+ 0xd4,0x78,0xdd,0x1c,0xa0,0xc8,0xcb,0x9b,0x81,0x65,0x5e,0xbe,0x2c,0xa9,0xdf,0x62,
4962
+ 0xe0,0x24,0x70,0x2,0xa8,0xcf,0x79,0xfe,0x3c,0x16,0x7e,0x1,0x60,0xc0,0x8b,0xfe,
4963
+ 0x5d,0x91,0xa1,0x5d,0x51,0x86,0xfa,0x52,0x7f,0xcb,0xcd,0xeb,0xf7,0x5c,0xd6,0x11,
4964
+ 0xcb,0xd1,0x5c,0x36,0x3,0x9f,0x0,0x37,0x1,0x93,0x5d,0x93,0xa7,0x32,0x68,0xb8,
4965
+ 0x3f,0x43,0x7d,0x77,0x62,0x38,0xa0,0x13,0xb8,0x43,0x52,0x9f,0xa4,0xc5,0x92,0x8a,
4966
+ 0x87,0xc5,0x84,0xdc,0xae,0xdb,0x80,0xf,0x92,0xea,0x56,0x3,0xb1,0x3c,0x34,0x79,
4967
+ 0x29,0x70,0x6b,0xd2,0x77,0x17,0xb0,0x61,0xc8,0x4d,0x8,0xa8,0x6,0x3e,0x4,0x56,
4968
+ 0x0,0xb5,0xf9,0xfa,0x4e,0x86,0x39,0x4,0xcc,0x2,0x5e,0x1,0x9e,0x1d,0x32,0x1,
4969
+ 0x1c,0xa,0xf7,0x2,0x6b,0x87,0x63,0xe1,0x69,0xe6,0x8b,0x1,0x9f,0x2,0x6b,0xa2,
4970
+ 0xb4,0x1b,0x3a,0xe0,0x63,0xc0,0x36,0x37,0xa1,0xe2,0x2,0x8,0x70,0x6,0x30,0x15,
4971
+ 0xf8,0x11,0x38,0x37,0x2f,0x1,0x80,0x72,0xe0,0xf3,0x42,0xec,0x7c,0xb2,0x29,0xf9,
4972
+ 0xfb,0x6c,0xa0,0x3d,0x67,0x14,0x92,0x14,0x73,0xac,0x9e,0x24,0x69,0x72,0xa1,0xe8,
4973
+ 0x81,0xfd,0x43,0x91,0xe7,0x0,0xd3,0x25,0xad,0xcc,0x9,0x85,0x7c,0x7,0xbe,0x1,
4974
+ 0xa6,0x3,0x1b,0xb,0xac,0x85,0x3a,0xe0,0xd,0x2f,0x5b,0xa6,0x76,0x1a,0x2c,0x1e,
4975
+ 0x90,0x74,0x4,0x98,0x6f,0x66,0xdf,0x5,0x68,0x4a,0xee,0x70,0xbd,0x92,0xca,0xfd,
4976
+ 0x5b,0x69,0x9a,0xf7,0xf9,0xc9,0x5d,0x62,0x66,0x3d,0x81,0xe7,0xce,0x6b,0x6e,0xc6,
4977
+ 0x1b,0xff,0xf5,0x5b,0x84,0x0,0x6,0x8c,0x31,0xb3,0xbf,0x2,0xc8,0xdb,0x95,0xc0,
4978
+ 0x51,0xa0,0x8,0x68,0x6,0xe,0x1,0x25,0x29,0x4d,0x7b,0x9c,0xe0,0x3d,0x5,0x54,
4979
+ 0x1,0x13,0x80,0x97,0xcd,0xac,0x23,0x62,0xfc,0x59,0xc0,0x47,0x66,0x56,0x12,0xcc,
4980
+ 0x46,0x25,0x3d,0xe3,0xe8,0xd3,0x1d,0xb0,0x49,0xd,0x40,0xa7,0x99,0x6d,0x91,0x74,
4981
+ 0xc,0x58,0xef,0xb0,0x5b,0x9a,0xd2,0xae,0xcb,0x17,0xbf,0x8,0x58,0x5,0x3c,0x9,
4982
+ 0xd4,0x0,0x1d,0x11,0x3e,0xb1,0x57,0x52,0x87,0xa4,0x69,0x66,0x76,0x38,0xc8,0x7,
4983
+ 0x80,0x93,0x59,0xd8,0xeb,0x4a,0xe0,0x12,0xa0,0x29,0x8a,0xd3,0x0,0x15,0xc0,0x9,
4984
+ 0x2f,0x37,0x3,0xb3,0x3,0xe7,0xb8,0xb,0x78,0x24,0x1b,0x14,0x1a,0x2f,0xe9,0xba,
4985
+ 0x40,0xe0,0xe8,0x7,0x4e,0x1,0x6f,0x2,0xf1,0x88,0xb6,0x5d,0xc0,0x7a,0x49,0x4f,
4986
+ 0x3,0xc7,0x3,0x7d,0xa0,0x4,0xa8,0xf4,0x18,0x23,0x38,0x1e,0xe8,0x34,0xb3,0x9d,
4987
+ 0x81,0x2,0x1c,0x3,0xde,0x6,0x76,0x0,0xa7,0x23,0xcc,0xa1,0xdf,0xa9,0xc2,0xc5,
4988
+ 0xc0,0x55,0x2e,0x50,0x14,0xac,0xf6,0x9a,0xd9,0xba,0x34,0x26,0x49,0x26,0x75,0xc5,
4989
+ 0x81,0x43,0x5e,0x2e,0xe,0x50,0xef,0x32,0xa7,0xd6,0x63,0xd3,0xfc,0x36,0x3,0x98,
4990
+ 0x96,0x4a,0x9,0x80,0x1b,0xbc,0x4f,0x3c,0xf0,0x30,0xad,0x2,0xde,0x9,0x35,0xa1,
4991
+ 0x89,0xc0,0x54,0x49,0x2f,0x1,0xf3,0x3,0x34,0xd0,0x8,0x3c,0x67,0x66,0xa7,0x53,
4992
+ 0x54,0x3f,0xf,0xd8,0xe7,0x24,0xb0,0x3c,0xa5,0xcf,0x17,0xe,0xa9,0xd5,0x1,0xe3,
4993
+ 0x3f,0xe0,0x51,0x5e,0x49,0xa8,0x6,0xea,0x1d,0x19,0xea,0x80,0xca,0x80,0x1d,0x6a,
4994
+ 0x6,0xe,0x27,0x60,0x39,0xa9,0x7e,0xa2,0x23,0xd9,0x8d,0x69,0xfa,0x5c,0xed,0x1a,
4995
+ 0x68,0x8,0x18,0x3f,0xe,0xcc,0x5,0x5a,0x83,0xb8,0x90,0x4b,0x7a,0x34,0xb,0x14,
4996
+ 0xba,0x6,0x38,0x2,0x3c,0x9c,0x29,0x2,0x4b,0x69,0x3f,0x16,0x78,0xdd,0x7d,0xa6,
4997
+ 0x3e,0x8b,0x79,0x76,0x5,0x99,0x90,0x99,0xf5,0x2,0x55,0x92,0x16,0x4,0x3a,0x71,
4998
+ 0x25,0x70,0x3d,0xb0,0x3a,0x53,0x4,0x96,0x72,0x6a,0x2f,0xf5,0x43,0x6d,0x87,0xc3,
4999
+ 0x6a,0x24,0xa,0x49,0x5a,0x95,0x6d,0x56,0xa2,0x7,0x78,0x3f,0x50,0x80,0x52,0x3f,
5000
+ 0xf0,0xee,0x94,0xd4,0x1e,0x81,0x28,0x3,0xc0,0x26,0x33,0xbb,0x5,0x18,0x17,0x92,
5001
+ 0x19,0xf1,0xd,0xed,0x5,0xf6,0x67,0x23,0xc0,0x6e,0xe0,0xf6,0x40,0x1,0x6,0x80,
5002
+ 0x49,0x66,0xd6,0x2,0x54,0x4b,0x8a,0xf,0xb2,0x9b,0x5b,0x81,0xad,0xfe,0x39,0xc6,
5003
+ 0xfb,0x12,0xa0,0xb5,0x7b,0x92,0xfa,0x45,0x73,0x21,0x49,0x15,0x6e,0xd7,0x8d,0x66,
5004
+ 0xf6,0x43,0xc4,0x4,0x4b,0x3c,0xc0,0xff,0xc5,0x83,0x91,0xbb,0x3d,0x89,0x95,0x8a,
5005
+ 0x1a,0xdd,0xc0,0x79,0xee,0xd8,0x67,0x2,0xb5,0xc0,0x43,0x66,0xf6,0x55,0xc4,0xf8,
5006
+ 0xb,0x81,0x16,0x33,0x2b,0xcf,0x96,0xcc,0x75,0x3b,0x99,0x1b,0x8,0x3c,0x31,0x8b,
5007
+ 0xcc,0xac,0x3f,0xf1,0x8e,0x62,0xaf,0x51,0xfe,0x92,0xd4,0x7e,0xd,0x50,0x67,0x66,
5008
+ 0xcb,0xb3,0x8d,0x7,0x16,0x2,0xef,0x2,0x67,0x1,0xb7,0x15,0x38,0x1e,0xa8,0x2,
5009
+ 0xee,0x8f,0x8a,0x7,0x62,0x11,0xce,0xd3,0xa,0x2c,0x0,0x5e,0x0,0xe,0x14,0x38,
5010
+ 0x6f,0x7b,0x1c,0xe8,0x94,0x74,0x10,0x58,0x97,0x51,0x3b,0x51,0x17,0x1c,0x92,0x1a,
5011
+ 0xdc,0xfe,0x2e,0x2c,0x74,0xe6,0x59,0xd2,0x14,0xe0,0x27,0x33,0x2b,0xcb,0x39,0xb9,
5012
+ 0x6b,0x66,0x5f,0x3,0x2d,0x92,0x36,0x49,0x2a,0xcd,0x2a,0x6b,0x96,0xfb,0xc2,0x2b,
5013
+ 0x25,0x95,0x3a,0x8c,0xcf,0xcc,0x3b,0x33,0xe7,0x7c,0xe5,0x67,0xe0,0xe6,0x2,0xfa,
5014
+ 0xc0,0x76,0xe0,0x89,0xa8,0x93,0x3d,0x9b,0x1,0x67,0x2,0x1f,0xfb,0xbb,0x6c,0x18,
5015
+ 0x17,0x5e,0xe,0xdc,0xe7,0xb1,0x45,0xd1,0x90,0x66,0xa7,0xdd,0xa1,0xdb,0x80,0xb7,
5016
+ 0x12,0x99,0x67,0xe0,0x8a,0x3c,0x17,0x7c,0x4e,0x82,0xd0,0x79,0x12,0xe0,0x0,0xb0,
5017
+ 0xb,0x98,0x30,0xd4,0xb9,0xd1,0x84,0xc3,0x37,0x3a,0x11,0x7b,0x1e,0xb8,0x36,0x1d,
5018
+ 0x47,0xcf,0x52,0x80,0x71,0x4e,0xad,0xe7,0x1,0xad,0xc0,0xe3,0x9e,0xb1,0x18,0xbe,
5019
+ 0xfb,0x1,0xcf,0x95,0x2e,0x75,0x3a,0xbc,0x67,0xb0,0xbb,0x0,0x7,0x8a,0xb4,0xf5,
5020
+ 0x49,0x65,0x73,0x9e,0xd3,0x54,0xb0,0xb,0x8e,0xa4,0xc3,0xe6,0x5e,0xe0,0xf,0xa7,
5021
+ 0xe,0xc5,0x9,0xa7,0x4f,0x6a,0xf3,0x28,0xb0,0xc8,0xcb,0x35,0x49,0xf5,0x73,0x3d,
5022
+ 0x8e,0xfe,0x15,0x98,0x9d,0xab,0x5f,0xd,0x65,0x36,0x79,0xb9,0x5f,0x54,0x98,0x2f,
5023
+ 0x6c,0x83,0xa7,0x6,0x5f,0x5,0x1e,0x74,0xba,0xfd,0x9e,0xdf,0xc6,0x98,0x47,0x6a,
5024
+ 0xf1,0x7c,0xe7,0xd6,0x70,0xdc,0xd4,0x4b,0x6a,0xf2,0x88,0xeb,0x22,0xbf,0xc1,0xe9,
5025
+ 0xf1,0x9d,0xde,0x7,0xec,0x34,0xb3,0xdf,0x86,0x6c,0xae,0xd1,0x7f,0x35,0x18,0x15,
5026
+ 0x60,0x54,0x80,0x91,0xfd,0xfc,0xd,0xb7,0xa7,0x37,0xa3,0xe5,0x4f,0xd,0x38,0x0,
5027
+ 0x0,0x0,0x0,0x49,0x45,0x4e,0x44,0xae,0x42,0x60,0x82,
5028
+ # /home/chief/dev/fg-map/develop/rose.svg
4938
5029
  0x0,0x0,0xd,0x19,
4939
5030
  0x3c,
4940
5031
  0x3f,0x78,0x6d,0x6c,0x20,0x76,0x65,0x72,0x73,0x69,0x6f,0x6e,0x3d,0x22,0x31,0x2e,
@@ -5170,6 +5261,11 @@ class QCleanupResources__dest_class__
5170
5261
  0xf,0xee,0x28,0x27,
5171
5262
  0x0,0x77,
5172
5263
  0x0,0x70,0x0,0x74,0x0,0x74,0x0,0x65,0x0,0x6d,0x0,0x70,0x0,0x2d,0x0,0x72,0x0,0x65,0x0,0x64,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67,
5264
+ # vor.png
5265
+ 0x0,0x7,
5266
+ 0xd,0x65,0x57,0xa7,
5267
+ 0x0,0x76,
5268
+ 0x0,0x6f,0x0,0x72,0x0,0x2e,0x0,0x70,0x0,0x6e,0x0,0x67,
5173
5269
  # rose.svg
5174
5270
  0x0,0x8,
5175
5271
  0x6,0x98,0x55,0xe7,
@@ -5181,11 +5277,13 @@ class QCleanupResources__dest_class__
5181
5277
  # :
5182
5278
  0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x1,
5183
5279
  # :/icons
5184
- 0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x4,0x0,0x0,0x0,0x2,
5280
+ 0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x5,0x0,0x0,0x0,0x2,
5185
5281
  # :/icons/rose.svg
5186
- 0x0,0x0,0x0,0x68,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x1,0x32,0x71,
5282
+ 0x0,0x0,0x0,0x7c,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x1,0x37,0xf1,
5187
5283
  # :/icons/flag-blue.png
5188
5284
  0x0,0x0,0x0,0x10,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x0,
5285
+ # :/icons/vor.png
5286
+ 0x0,0x0,0x0,0x68,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x1,0x32,0x71,
5189
5287
  # :/icons/vor.svg
5190
5288
  0x0,0x0,0x0,0x30,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0xa,0x1,
5191
5289
  # :/icons/wpttemp-red.png
@@ -24,6 +24,7 @@ require "Qt4"
24
24
  require "main-dlg-impl.rb"
25
25
 
26
26
  a = Qt::Application.new(ARGV)
27
+ a.setWindowIcon(Qt::Icon.new(":/icons/vor.png"))
27
28
  u = Qt::MainWindow.new
28
29
 
29
30
  w = MainDlg.new(u, ARGV[0])
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 1
7
7
  - 2
8
- - 0
9
- version: 1.2.0
8
+ - 1
9
+ version: 1.2.1
10
10
  platform: ruby
11
11
  authors:
12
12
  - Michael Meltner
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2010-06-17 00:00:00 +02:00
17
+ date: 2010-06-21 00:00:00 +02:00
18
18
  default_executable:
19
19
  dependencies: []
20
20