Ruby on Rails / Желтые карты для проблем Ruby Plugin - PullRequest
1 голос
/ 23 апреля 2009

Хорошо, я прочитал комментарии к плагину, а также документы, и мне еще предстоит найти ответ, как это сделать. Вот моя проблема: я хочу использовать: info_window_tabs и опцию: icon, но я не знаю, в каком формате передавать мою информацию. Согласно документации следующий код должен быть правильным. Вот мой код:

        @mapper.overlay_init(GMarker.new([map.lat, map.lng],
        :title => map.name,
        :info_window_tabs => [
            {:tab => "HTML", :content => @marker_html}, 
            {:tab => "Attachments", :content => "stuff"}],
        :icon => {
                :image => "../images/icon.png"
                 }))

Readme и документацию можно посмотреть здесь.

И соответствующий файл ruby, с которым я пытаюсь взаимодействовать, включая комментарии автора, можно посмотреть здесь.

Я перепробовал канал #rubyonrails в IRC, а также написал письмо автору напрямую и сообщил о проблеме на GitHub. Это действительно вопрос синтаксиса.

Спасибо!

1 Ответ

1 голос
/ 23 апреля 2009

Хорошо, так что я наконец-то понял это. Вот как ты это делаешь; : icon принимает переменную GIcon, а: info_window_tabs принимает массив GInfoWindowTabs. Вот как вы можете объявить каждый с плагином.

Объявить GIcon

    @mapper.icon_global_init(GIcon.new(:image => "../images/civil.png",
       :icon_anchor => GPoint.new(0,0),   
       :shadow => "../images/shadow.png",
       :shadow_size => GSize.new(37,32),
       :info_window_anchor => GPoint.new(9,2)), "civil_icon")

    @civil_icon = Variable.new("civil_icon")

Объявить GInfoWindowTab

    @tab1 = GInfoWindowTab.new('Tab 1 Label', 'HTML for inside of tab1')
    @tab2 = GInfoWindowTab.new('Tab 2 Label', 'HTML for inside of tab2')

    @window_tabs = [@tab1, @tab2]

Тогда в вашей декларации GMarker просто сделайте следующее:

    @mapper.overlay_init(GMarker.new([map.lat, map.lng], 
            :title => map.name,
            :icon => @civil_icon,
            :max_width => 300,
            :info_window_tabs => @window_tabs))

И все готово.

...