diff options
author | ExMix <ExMix@Youris-MacBook-Pro.local> | 2013-05-23 16:59:15 +0400 |
---|---|---|
committer | Alex Zolotarev <alex@maps.me> | 2015-09-23 01:55:54 +0300 |
commit | 5550066445abe8b3cbc9498882e9d3cde8a64bb3 (patch) | |
tree | 5d93972755fc490e4340e1bd9c2d8997764758d5 /qt | |
parent | d69bd26e8b027b563dd38ed1527c1d51f57017dc (diff) |
new balloon integration
Diffstat (limited to 'qt')
-rw-r--r-- | qt/draw_widget.cpp | 36 | ||||
-rw-r--r-- | qt/draw_widget.hpp | 2 |
2 files changed, 18 insertions, 20 deletions
diff --git a/qt/draw_widget.cpp b/qt/draw_widget.cpp index 05064af001..3022483af7 100644 --- a/qt/draw_widget.cpp +++ b/qt/draw_widget.cpp @@ -71,8 +71,6 @@ namespace qt //m_redrawInterval(100), m_pScale(0) { - //m_timer = new QTimer(this); - //connect(m_timer, SIGNAL(timeout()), this, SLOT(ScaleTimerElapsed())); } DrawWidget::~DrawWidget() @@ -276,6 +274,9 @@ namespace qt void DrawWidget::resizeGL(int w, int h) { + if (m_bookmarkBalloon) + m_bookmarkBalloon->onScreenSize(w, h); + m_framework->OnSize(w, h); m_framework->Invalidate(); @@ -348,7 +349,7 @@ namespace qt case Framework::BOOKMARK: { const Bookmark * bookmark = m_framework->GetBmCategory(bm.first)->GetBookmark(bm.second); - ActivatePopup(bookmark->GetOrg(), bookmark->GetName(), IMAGE_ARROW); + ActivatePopup(bookmark->GetOrg(), bookmark->GetName(), "", IMAGE_ARROW); return; } @@ -372,7 +373,10 @@ namespace qt DiactivatePopup(); } - void DrawWidget::ActivatePopup(m2::PointD const & pivot, string const & name, PopupImageIndexT index) + void DrawWidget::ActivatePopup(m2::PointD const & pivot, + string const & name, + string const & type, + PopupImageIndexT index) { BookmarkBalloon * balloon = GetBookmarkBalloon(); @@ -380,19 +384,20 @@ namespace qt balloon->setImage(m_images[index]); balloon->setGlbPivot(pivot); - balloon->setBookmarkName(name); - balloon->setIsVisible(true); + balloon->setBookmarkCaption(name, type); + balloon->showAnimated(); m_framework->Invalidate(); } void DrawWidget::ActivatePopupWithAdressInfo(m2::PointD const & pivot, Framework::AddressInfo const & addrInfo) { - string name = addrInfo.FormatPinText(); - if (name.empty()) + string name = addrInfo.GetPinName(); + string type = addrInfo.GetPinType(); + if (name.empty() && type.empty()) name = m_framework->GetStringsBundle().GetString("dropped_pin"); - ActivatePopup(pivot, name, IMAGE_PLUS); + ActivatePopup(pivot, name, type, IMAGE_PLUS); m_framework->DrawPlacemark(pivot); m_framework->Invalidate(); @@ -402,7 +407,7 @@ namespace qt { BookmarkBalloon * balloon = GetBookmarkBalloon(); - balloon->setIsVisible(false); + balloon->hide(); m_framework->DisablePlacemark(); m_framework->Invalidate(); } @@ -414,15 +419,7 @@ namespace qt bp.m_position = graphics::EPosAbove; bp.m_depth = graphics::maxDepth; bp.m_pivot = m2::PointD(0.0, 0.0); - bp.m_text = "Bookmark"; - bp.m_textMarginLeft = 10; - bp.m_textMarginTop = 7; - bp.m_textMarginRight = 10; - bp.m_textMarginBottom = 10; - bp.m_imageMarginLeft = 0; - bp.m_imageMarginTop = 7; - bp.m_imageMarginRight = 10; - bp.m_imageMarginBottom = 10; + bp.m_mainText = "Bookmark"; bp.m_framework = m_framework.get(); m_bookmarkBalloon.reset(new BookmarkBalloon(bp)); @@ -432,6 +429,7 @@ namespace qt //m_bookmarkBalloon->setOnClickListener(bind(&DrawWidget::OnBalloonClick, this, _1)); m_framework->GetGuiController()->AddElement(m_bookmarkBalloon); + m_bookmarkBalloon->onScreenSize(width(), height()); } BookmarkBalloon * DrawWidget::GetBookmarkBalloon() diff --git a/qt/draw_widget.hpp b/qt/draw_widget.hpp index f9c6d669c7..14fd2a69a1 100644 --- a/qt/draw_widget.hpp +++ b/qt/draw_widget.hpp @@ -112,7 +112,7 @@ namespace qt typedef graphics::Image::Info ImageT; ImageT m_images[2]; enum PopupImageIndexT { IMAGE_PLUS = 0, IMAGE_ARROW = 1 }; - void ActivatePopup(m2::PointD const & pivot, string const & name, PopupImageIndexT index); + void ActivatePopup(m2::PointD const & pivot, string const & name, string const & type, PopupImageIndexT index); void ActivatePopupWithAdressInfo(m2::PointD const & pivot, Framework::AddressInfo const & addrInfo); void DiactivatePopup(); |