Beispiel #1
0
    def __init__(self, infos):
        self.background_color = 'white'
        self.name = 'Info'
        self.height = 500
        self.width = 320
        
        names_url = [
            infos["url"],
            infos["japanese_title"],
            infos["english_title"]
            ]
        other_tags = [
            "category: " + infos["category"],
            "uploader: " + infos["uploader"],
            "posted: " + infos["posted"],
            "language: " + infos["language"],
            "length: " + infos["length"]
            ]
        review = [
            infos["rating"] + "/5.0",
            infos["number of reviews"] + " reviews",
            infos["favorited"][:-6] + " favorites"
            ]
        names_url = '\n'.join(names_url)
        other_tags = '\n'.join(other_tags)
        review = '\n'.join(review)
        
        taglist = render_taglist_to_text(infos['taglist'])
        taglist_translated = render_taglist_to_text(translate_taglist(infos['taglist']))

        self.add_subview(ui.TextView(text=names_url, editable=False, selectable=True, frame=(0,0,self.width,100)))
        self.add_subview(ui.TextView(text=other_tags, editable=False, frame=(0,100,self.width/2,200)))
        self.add_subview(ui.TextView(text=review, editable=False, frame=(self.width/2,100,self.width/2,200)))
        self.add_subview(ui.TextView(text=taglist, editable=False, frame=(0,200,self.width/2,300)))
        self.add_subview(ui.TextView(text=taglist_translated, editable=False, frame=(self.width/2,200,self.width/2,300)))
Beispiel #2
0
	def __init__(self, frame = None, flex = None, background_color = None, name = None, accessory_keys = True, extras = [], css = None):
		
		if frame: self.frame = frame
		if flex: self.flex = flex
		if background_color: self.background_color = background_color
		if name: self.name = name
		
		self.extras = extras
		self.css = css or self.default_css
		self.proxy_delegate = None
		
		self.enable_links = True
		self.editing = False
		self.margins = (10, 10, 10, 10)
		
		self.link_prefix = 'pythonista-markdownview:relay?content='
		self.debug_prefix = 'pythonista-markdownview:debug?content='
		self.init_postfix = '#pythonista-markdownview-initialize'
		self.in_doc_prefix = ''
		
		self.to_add_to_beginning = ('', -1)
		
		self.backpanel = ui.View()
		self.add_subview(self.backpanel)
		
		# Web fragment is used to find the right scroll position when moving from editing to viewing
		self.web_fragment = ui.WebView()
		self.web_fragment.hidden = True
		self.web_fragment.delegate = MarkdownView.ScrollLoadDelegate()
		self.add_subview(self.web_fragment)

		self.markup = ui.TextView()
		self.add_subview(self.markup)
		self.markup.font = ('<system>', 12)
		
		self.web = ui.WebView()
		self.web.scales_page_to_fit = False 
		self.web.content_mode = ui.CONTENT_TOP_LEFT
		self.add_subview(self.web)
		
		self.web.delegate = self
		self.markup.delegate = self
		
		self.markup.text = ''
		self.update_html()
		self.markup.bounces = False 
		
		# Ghosts are used to determine preferred size
		self.markup_ghost = ui.TextView()
		self.markup_ghost.hidden = True
		#self.add_subview(self.markup_ghost)
		self.web_ghost = ui.WebView()
		self.web_ghost.hidden = True
		#self.add_subview(self.web_ghost)
		
		if accessory_keys:
			self.create_accessory_toolbar()
Beispiel #3
0
    def __init__(self, app):
        self.app = app
        self.transserv = TranslateService(app.rootpath)
        self.logger = logging.getLogger(self.__class__.__name__)

        self.orgtext = ""
        self.restext = ""

        self.name = '翻译'
        self.background_color = '#f1f1f1'
        self.frame = (0, 0, self.app.width, self.app.height)
        self.flex = 'WHLRTB'

        self.closeBtn = ui.ButtonItem()
        self.closeBtn.image = ui.Image.named('iob:close_round_24')
        self.closeBtn.action = self.app.CloseAct
        self.left_button_items = [self.closeBtn]

        self.orgLabel = ui.Label()
        self.orgLabel.text = '原文'
        self.lestenBtn = ui.Button()
        self.orgtextlenLabel = ui.Label()
        self.orgTextView = ui.TextView()

        self.resLabel = ui.Label()
        self.resLabel.text = '译文'
        self.transtimeLabel = ui.Label()
        self.resTextView = ui.TextView()

        # 底部栏
        self.bottomView = ui.View()
        self.translateBtn = ui.Button()
        self.pasteBtn = ui.Button()
        self.cleanBtn = ui.Button()

        # 将按钮加入底部栏
        self.bottomView.add_subview(self.translateBtn)
        self.bottomView.add_subview(self.pasteBtn)
        self.bottomView.add_subview(self.cleanBtn)

        # 将所有视图加入主窗口
        self.add_subview(self.orgLabel)
        self.add_subview(self.lestenBtn)
        self.add_subview(self.orgtextlenLabel)
        self.add_subview(self.orgTextView)
        self.add_subview(self.resLabel)
        self.add_subview(self.transtimeLabel)
        self.add_subview(self.resTextView)
        self.add_subview(self.bottomView)

        self.LoadData()
        self.LoadUI()

        self.LestenningClipbord()
Beispiel #4
0
def _show_documentation(definition):
    reuse = get_config_value('documentation.reuse', True)
    frame = get_config_value('documentation.frame', (630, 110, 730, 350))
    tag = '__blackmamba.show_documentation'
    if not reuse:
        tag += ':{}'.format(definition.full_name)

    manager = overlay.get_manager()

    o = manager.get_overlay(tag)
    if o:
        o.title = definition.name
        o.content_view.text = definition.docstring()
        o.expand()
        o.become_active()
        return

    tv = ui.TextView(text=definition.docstring(),
                     background_color=get_theme_value('background_color'),
                     text_color=get_theme_value('text_color'),
                     font=get_editor_font())
    tv.editable = False

    window_size = ui.get_window_size()
    x = frame[0]
    y = frame[1]
    width = min(window_size[0] - x - 12, frame[2])
    height = min(window_size[1] - y - 12, frame[3])
    manager.present(definition.name, tv, frame=(x, y, width, height), tag=tag)
Beispiel #5
0
 def make_right_side_view(cls, right_frame):
     text_view = ui.TextView(frame=right_frame)
     text_view.alpha = cls.views_alpha
     text_view.alignment = ui.ALIGN_CENTER
     text_view.editable = False
     text_view.text = '\n' + '1234567890 ' * 50
     return text_view
Beispiel #6
0
 def btn_Help(self,
              sender,
              message='Use at your own risk. \nNo error handling!',
              name='Help'):
     self.view_po = ui.View()
     self.view_po.name = name
     self.view_po.width = self.view_po.height = 300
     self.view_po.present('popover',
                          popover_location=(self.view.width / 2,
                                            self.view.height / 2))
     textview = ui.TextView()
     textview.width = 300
     textview.height = 240
     textview.font = ('Courier', 18)
     textview.text = message
     textview.editable = False
     self.view_po.add_subview(textview)
     button = ui.Button()
     button.width = 300
     button.height = 60
     button.x = 0
     button.y = 240
     button.title = 'Cancel'
     button.action = self.btn_Cancel
     self.view_po.add_subview(button)
Beispiel #7
0
    def alerts(self, sender):
        # Retrieve alerts
        alerts = wa.get_alerts(json_w, json_f)
        '''
    Kill scene to cut memory overhead, textview then loads much faster into ui view. Note too that whene textview is loaded via .present() without killing the scene, the scene will lock up after closing the textview window.
    '''
        self.remove_subview(self.scene_view)
        tv = ui.TextView()
        #w, h = ui.get_screen_size()
        #tv.frame = (0, 20, w, h / 1.2)
        tv.frame = self.bounds
        tv.border_color = 'grey'
        tv.border_width = 3
        tv.background_color = ('white')
        tv.text = alerts
        tv.editable = False
        tv.selectable = False

        if py_ver == '2' and is_P6:
            tv.font = ('<system>', 12)
        else:
            tv.font = ('<system>', 9)

        self.closebutton(tv)
        self.add_subview(tv)
Beispiel #8
0
def make_run_view(name):
    v = ui.View(frame=(0, 0, sz[0], sz[1] - banner))
    v.name = 'Run'
    v.background_color = 'white'

    txt = ui.TextView()
    txt.frame = (10, 10, sz[0] - 20, 50)
    txt.editable = False
    txt.text = 'Run {0}'.format(name)
    v.add_subview(txt)

    but = ui.Button('Grab')
    but.title = 'Grab'
    but.frame = (10, 110, 60, 36)
    v.add_subview(but)

    but = ui.Button('Compress')
    but.title = 'Compress'
    but.frame = (80, 110, 90, 36)
    v.add_subview(but)

    but = ui.Button('Process')
    but.title = 'Process'
    but.frame = (180, 110, 70, 36)
    v.add_subview(but)

    but = ui.Button('Send')
    but.title = 'Send'
    but.frame = (260, 110, 50, 36)
    v.add_subview(but)

    return v
    def __init__(self, data_list):
        self.data = data_list
        # create copy title btn
        btn = ui.ButtonItem('Copy Code')
        btn.action = self.copy_code
        self.right_button_items = [btn]

        # create the tableview, set the data_source
        # and delegate to self.
        tv = ui.TableView(name='tv1')
        tv.name = 'tv1'
        tv.data_source = self
        tv.border_width = .5
        tv.delegate = self

        #create textview
        txtv = ui.TextView(name='txtv')
        txtv.font = ('Courier', 14)

        # select the first code block
        tv.selected_row = 0
        txtv.text = self.data[0]

        self.add_subview(txtv)
        self.add_subview(tv)
Beispiel #10
0
    def __init__(self):

        w, h = ui.get_screen_size()
        self.height = h
        self.width = w
        self.frame = (0, 0, w, h)

        self.tv = ui.TextView()
        self.tv.frame = (0, 18, w, h)

        self.tv.font = ('Helvetica Neue', 12)
        self.tv.auto_content_inset = True
        self.tv.background_color = '#282923'
        self.tv.text_color = 'white'
        self.tv.width = w

        # un-comment these two lines to cause a crash:
        #self.full_txt_search_field = ui.TextField()
        # self.add_subview(self.full_txt_search_field)

        self.add_subview(self.tv)

        self.tvo = ObjCInstance(self.tv)
        viewDelegate = SyntaxHighlighter(self.tvo)
        self.tv.delegate = viewDelegate
        self.tv.text = example_text
        self.show_problem()
Beispiel #11
0
 def __init__(self, info, width=None):
     if width:
         self.width = width
     else:
         self.width = 768 - 57 - 16
     self.border_color = '#efeff4'
     self.border_width = 1
     self.frame = (0, 0, self.width, 150)
     self.name = 'comments_view'
     self.info = info
     button_enlarge = ui.Button(
         #action=self.present_enlarged_comments,
         flex='L',
         frame=(self.width - 50 + 8, 75 - 16, 32, 32),
         image=ui.Image.named('iob:arrow_expand_32'),
         name='button_enlarge'
         )
     textview_comments = ui.TextView(
         background_color='white',
         flex='WR',
         frame=(0, 0, self.width - 50, 150),
         font=('<system>', 12),
         editable=False,
         name='textview_comments',
         text=self.get_comments_text()
         )
     line = ui.View(
         background_color='#efeff4',
         flex='L',
         frame=(self.width - 50, 0, 1, 150)
         )
     self.add_subview(textview_comments)
     self.add_subview(button_enlarge)
     self.add_subview(line)
Beispiel #12
0
    def __init__(self, main, *args, **kwargs):
        # undo/redo View
        self.history_view = ui.TextView(text='HISTORY',
                                        frame=(25, 275, 600, 400),
                                        editable=False,
                                        background_color='#dedede')
        main.add_subview(self.history_view)

        # Undo Button
        undo_btn = ui.Button()
        undo_btn.frame = (25, 2, 100, 46)
        undo_btn.background_color = '#686868'
        undo_btn.tint_color = '#000000'
        undo_btn.title = 'undo'
        undo_btn.action = self.undo
        main.add_subview(undo_btn)

        # Redo Button
        redo_btn = ui.Button()
        redo_btn.frame = (127, 2, 100, 46)
        redo_btn.background_color = '#686868'
        redo_btn.tint_color = '#000000'
        redo_btn.title = 'redo'
        redo_btn.action = self.redo
        main.add_subview(redo_btn)

        self.history = []
        self.current_index = len(self.history)
        self.textview = None
Beispiel #13
0
 def make_status_view(cls, status_frame):
     text_view = ui.TextView(frame=status_frame)
     text_view.alpha = cls.views_alpha
     text_view.alignment = ui.ALIGN_CENTER
     text_view.editable = False
     text_view.text = "Status: let the game begin...  It is white's turn to move"
     return text_view
Beispiel #14
0
    def __init__(self, change_set, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.name = 'Preview'
        self.apply_changes = False

        def apply(sender):
            self.apply_changes = True
            self.close()

        button = ui.ButtonItem('Apply', action=apply)
        self.right_button_items = [button]

        textview = ui.TextView(frame=self.bounds, flex='WH')
        textview.editable = False

        diff = _change_set_diff(change_set)
        attributed_string = _diff_to_attributed_string(diff)
        _set_attributed_text(textview, attributed_string)

        self.add_subview(textview)

        def cancel():
            self.close()

        self.handlers = [
            register_key_event_handler(UIEventKeyCode.ESCAPE, cancel),
            register_key_event_handler(UIEventKeyCode.DOT, cancel, modifier=UIKeyModifier.COMMAND),
            register_key_event_handler(UIEventKeyCode.ENTER, lambda: apply(None))
        ]
Beispiel #15
0
    def __init__(self):
        self.bg_color = '#e9f1f1'
        self.name = '正则表达式测试'
        self.copy_button = ui.ButtonItem()
        self.copy_button.title = '复制表达式'
        self.copy_button.action = self.copy_button_tapped
        self.right_button_items = [self.copy_button]
        self.match_count = ui.ButtonItem()
        self.match_count.title = '0'
        self.match_count.tint_color = 'red'
        self.left_button_items = [self.match_count]

        self.expression_input = ui.TextField()
        self.expression_input.frame = (10, 5, w - 70, 40)
        self.expression_input.border_width = 1
        self.expression_input.corner_radius = 6
        self.expression_input.clear_button_mode = 'always'
        self.expression_input.placeholder = '输入表达式'
        self.expression_input.delegate = ExpressionInputDelegate()

        self.match_button = ui.Button()
        self.match_button.image = ui.Image.named('iob:checkmark_circled_256')
        self.match_button.frame = (w - 50, 5, 37, 40)
        self.match_button.action = self.match_button_tapped
        self.match_button.tint_color = '#7cd359'

        self.origin_text = ui.TextView()
        self.origin_text.frame = (10, self.expression_input.y +
                                  self.expression_input.height + 10, w - 20,
                                  350)
        self.origin_text.bg_color = 'white'
        self.origin_text.border_width = 1
        self.origin_text.corner_radius = 6
        self.origin_text.number_of_lines = 0
        self.origin_text.font = ('<System>', 16)

        self.match_text = ui.TextView()
        self.match_text.bg_color = 'white'
        self.match_text.border_width = 1
        self.match_text.corner_radius = 6
        self.match_text.font = ('<System>', 16)
        self.match_text.editable = False
        self.add_subview(self.expression_input)
        self.add_subview(self.match_button)
        self.add_subview(self.origin_text)
        self.add_subview(self.match_text)
Beispiel #16
0
def main():
    tv = ui.TextView(frame=(0, 0, 320, 320))
    b1 = UIBarButtonItem.alloc().initWithTitle_style_target_action_(
        'H', 0, target, 'btnAction').autorelease()
    group = UIBarButtonItemGroup.alloc(
    ).initWithBarButtonItems_representativeItem_([b1], None).autorelease()
    ObjCInstance(tv).inputAssistantItem().trailingBarButtonGroups = [group]
    tv.present('sheet')
Beispiel #17
0
 def create_get_label(self, doll):
     label = ui.TextView()
     label.frame = (160, 170, self.v.width - 190, 40)
     label.text = doll.how_to_get
     label.background_color = (0, 0, 0, 0.5)
     label.tint_color = ('white')
     label.alignment = ui.ALIGN_CENTER
     return label
 def __init__(self, title, text):
     self.text = ui.TextView()
     self.text.text = text
     self.text.flex = 'WH'
     self.text.editable = False
     self.text.font = ('<system>', 16)
     self.add_subview(self.text)
     self.name = title
Beispiel #19
0
 def set_up(self):
     code = ui.TextView()
     code.bg_color = (0, 0, 0, 0)
     code.text_color = TINT_COLOR
     code.font = SET_FONT
     code.editable = False
     self.add_subview(code)
     code.size_to_fit()
     return code
Beispiel #20
0
 def __init__(self, in_date=None):
     self.name = '{0:%B %Y}'.format(in_date)
     self.add_subview(
         ui.TextView(name='text_view', frame=(0, 0, 4096, 4096)))
     self['text_view'].editable = False
     self['text_view'].font = ('Courier', ui.get_screen_size().w / 12.25)
     self['text_view'].text = calendar.TextCalendar().formatmonth(
         in_date.year, in_date.month)
     self.present()
Beispiel #21
0
 def present_enlarged_comments(self, sender):
     text = self['scrollview']['comments_view']['textview_comments'].text
     v = ui.TextView(
         editable=False,
         frame=(0, 0, 600, 800),
         name='comments',
         text=text
         )
     v.present('sheet')
Beispiel #22
0
 def __init__(self, in_date=None):
     self.name = "{0:%B %Y}".format(in_date or datetime.date.today())
     self.add_subview(
         ui.TextView(name="text_view", frame=(0, 0, 4096, 4096)))
     self["text_view"].editable = False
     self["text_view"].font = ("Courier", ui.get_screen_size().w / 12.25)
     self["text_view"].text = calendar.TextCalendar().formatmonth(
         in_date.year, in_date.month)
     self.present()
Beispiel #23
0
    def __init__(self):
        self.present('fullscreen')
        self.background_color = .92, 1.0, .95
        self.keys = []
        self.btn = []

        # 鍵盤の基準位置、幅高さ
        kw = self.width / (len(MKey) + 2)
        kh = self.height * .3
        kx = kw
        ky = self.height * .2

        # 鍵盤の生成
        for idx, (key, conf) in enumerate(MKey.items()):
            btn = ui.Button()

            # 見た目の設定
            btn.background_color = 1.0, 1.08, 1.08
            btn.border_color = .0, .0, .0
            btn.border_width = 1

            # 位置サイズ
            btn.frame = (kx + kw * idx, ky, kw, kh)

            # キー鳴らす設定
            btn.title = key
            btn.action = self.KeyTapped
            self.btn.append(btn)
            self.add_subview(btn)

        # テキストフィールド
        tv = ui.TextView()
        tv.frame = (kx, self.height * .6, kx * len(MKey), self.height * .35)
        tv.editable = False
        self.tv = tv
        self.add_subview(tv)

        # 戻るボタン
        backB = ui.Button()
        backB.background_color = 1.0, .87, .69
        backB.frame = (kx, self.height * .05, self.width * .2,
                       self.height * .05)
        backB.title = '1つ消す'
        backB.action = self.BackTapped
        self.backB = backB
        self.add_subview(backB)

        # 改行ボタン
        retB = ui.Button()
        retB.background_color = 1.0, .87, .69
        retB.frame = (self.width * .8 - kw, self.height * .05, self.width * .2,
                      self.height * .05)
        retB.title = '改行'
        retB.action = self.RetTapped
        self.retB = retB
        self.add_subview(retB)
 def make_text_view(self):
     text_view = ui.TextView(frame=self.bounds, name='text_view')
     text_view.y += 100
     text_view.height -= 100
     text_view.delegate = self
     text_view.text = clipboard.get()
     text_view.autocapitalization_type = ui.AUTOCAPITALIZE_NONE
     text_view.autocorrection_type = False
     text_view.spellchecking_type = False
     return text_view
Beispiel #25
0
 def __init__(self, frame=(0, 0, 600, 400), **kwargs):
     self._undo = UndoStack()
     self._tv = ui.TextView(frame=(0, 0, self.width, self.height),
                            bg_color=(1.0, 1.0, 1.0))
     self._tv.flex = 'WH'
     self.add_subview(self._tv)
     ui.View.__init__(self, **kwargs)
     #ui props
     self.frame = frame
     self._tv.delegate = self
Beispiel #26
0
 def popover(self, msg):
     textview = ui.TextView()
     textview.editable = False
     textview.font = ("AmericanTypewriter", 24)
     textview.alignment = ui.ALIGN_CENTER
     textview.text = msg
     pov = ui.View()
     pov.width = textview.width = 222
     pov.add_subview(textview)
     pov.present("popover")
Beispiel #27
0
def make_det_view(name):
    v = ui.View(frame=(0, 0, sz[0], sz[1] - banner))
    v.name = name
    v.background_color = 'white'

    txt = ui.TextView()
    txt.frame = (10, 10, sz[0] - 20, 100)
    txt.editable = False
    txt.text = 'Detector status not recieved yet...'
    v.add_subview(txt)

    but = ui.Button('Meta')
    but.title = 'Meta'
    but.frame = (10, 110, 60, 36)
    but.action = push_meta_view
    v.add_subview(but)

    but = ui.Button('Start')
    but.title = 'Start'
    but.frame = (80, 110, 60, 36)
    v.add_subview(but)

    but = ui.Button('Stop')
    but.title = 'Stop'
    but.frame = (150, 110, 60, 36)
    v.add_subview(but)

    but = ui.Button('Time')
    but.title = 'Time'
    but.frame = (220, 110, 60, 36)
    but.action = push_time_view
    v.add_subview(but)

    tab = ui.TableView()
    tab.frame = (0, 156, sz[0], sz[1] - 156 - 56 - banner)
    lst = MyTableViewDataSource(['Run 1', 'Run 2'], ['Run 3', 'Run 4'])

    lst.action = edit_run
    tab.data_source = lst
    tab.delegate = lst
    v.add_subview(tab)

    but = ui.Button('Compress All')
    but.title = 'Compress All'
    but.frame = (10, sz[1] - 46 - banner, 140, 36)
    but.action = compress_all
    v.add_subview(but)

    but = ui.Button('Send All')
    but.title = 'Send All'
    but.frame = (160, sz[1] - 46 - banner, 140, 36)
    but.action = send_all
    v.add_subview(but)

    return v
Beispiel #28
0
def main():
    tl = todo_list()

    tv = ui.TextView(font=('Menlo', 16),
        alignment=ui.ALIGN_CENTER,
        editable=False,
        selectable=False)
    tv.text = '\n'.join(tl)
    tv.background_color = (0.85, 0.85, 0.85, 0.6)

    appex.set_widget_view(tv)
Beispiel #29
0
    def infopop(self):
        """
        Modal style pop-up.
        """
        w, h = ui.get_window_size()
        width = round((w * 0.8), 0)
        height = round((h * 0.8 / 1.5), 0)

        if not self.infopopup:
            # Outer
            p = ui.ScrollView()
            p.border_color = '#ccc'
            p.border_width = 1

            p.width = width
            p.height = height
            p.corner_radius = 10

            t = ui.TextView()
            t.width = width
            t.height = height
            t.font = ('<System>', 12)
            t.content_inset = (5, 5, 5, 5)

            b = ui.Button()
            b.action = self.closepop
            b.image = ui.Image.named('iob:ios7_close_outline_24')
            b.width = 24
            b.height = 24
            b.x = (width - 29)
            b.y = 5

            t.editable = False

            t.add_subview(b)

            self.popuptext = t

            p.y = (((h - height) / 2) - 40)
            p.x = ((w - width) / 2)

            p.add_subview(self.popuptext)
            self.infopopup = p
            p.height = 0

        def animate_popup():
            """
            Method to animate the the popup, because its prettier.
            """
            self.infopopup.height = height

        self.infopopup.height = 0
        self.tv.add_subview(self.infopopup)
        ui.animate(animate_popup, 1)
	def __init__(self):
		self.flex = 'WH'
		self.name = 'Swipe/Touch around to generate a hash'
		self.store = ''
		self.count = 0
		self.textview = ui.TextView()
		self.textview.touch_enabled = False
		self.textview.editable = False
		self.textview.flex = 'WH'
		self.add_subview(self.textview)
		self.present()