Gnumed.timelinelib.wxgui.dialogs.feedback.controller

Package Gnumed :: Package timelinelib :: Package wxgui :: Package dialogs :: Package feedback :: Module controller |
[frames] | no frames]

# Source Code for Module Gnumed.timelinelib.wxgui.dialogs.feedback.controller

     1  # Copyright (C) 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018  Rickard Lindberg, Roger Lindberg
     2  #
     3  # This file is part of Timeline.
     4  #
     5  # Timeline is free software: you can redistribute it and/or modify
     6  # it under the terms of the GNU General Public License as published by
     7  # the Free Software Foundation, either version 3 of the License, or
     8  # (at your option) any later version.
     9  #
    10  # Timeline is distributed in the hope that it will be useful,
    11  # but WITHOUT ANY WARRANTY; without even the implied warranty of
    12  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    13  # GNU General Public License for more details.
    14  #
    15  # You should have received a copy of the GNU General Public License
    16  # along with Timeline.  If not, see <http://www.gnu.org/licenses/>.
    17
    18
    19  import urllib.parse
    20
    21  from timelinelib.wxgui.framework import Controller
    22
    23
    24 -class FeedbackDialogController(Controller):
    25
    26 -    def on_init(self, webbrowser, info, subject, body):
    27          self.webbrowser = webbrowser
    28          self.view.SetInfoText(info)
    29          self.view.SetToText("thetimelineproj-user@lists.sourceforge.net")
    30          self.view.SetSubjectText(subject)
    31          self.view.SetBodyText(body)
    32
    33 -    def on_default_click(self, event):
    34          attr = self._get_url_attributes()
    35          url = "mailto:%s?subject=%s&body=%s" % (
    36              urllib.parse.quote(attr["to"]),
    37              urllib.parse.quote(attr["subject"]),
    38              urllib.parse.quote(attr["body"]),
    39          )
    40          self.webbrowser.open(url)
    41
    42 -    def on_gmail_click(self, event):
    43          attr = self._get_url_attributes()
    44          url = "https://mail.google.com/mail/?compose=1&view=cm&fs=1&to=%s&su=%s&body=%s" % (
    45              urllib.parse.quote(attr["to"]),
    46              urllib.parse.quote(attr["subject"]),
    47              urllib.parse.quote(attr["body"]),
    48          )
    49          self.webbrowser.open(url)
    50
    51 -    def on_other_click(self, event):
    52          self.view.DisplayInformationMessage(
    53              caption=_("Other email client"),
    54              message=_("Copy and paste this email into your favorite email client and send it from there."))
    55
    56 -    def _get_url_attributes(self):
    57          return {
    58              "to": self.view.GetToText().encode("utf-8"),
    59              "subject": self.view.GetSubjectText().encode("utf-8"),
    60              "body": self.view.GetBodyText().encode("utf-8"),
    61          }
    62