Example #1
0
 def _render(self, formatter, cols, name_pat, size, header, limit):
     #noinspection PyArgumentList
     icon = Icons(self.env)
     icon_dir = icon.icon_location(size)[1]
     files = fnmatch.filter(os.listdir(icon_dir), '%s.png' % name_pat)
     icon_names = [os.path.splitext(p)[0] for p in files]
     if limit:
         displayed_icon_names = reduce_names(icon_names, limit)
     else:
         displayed_icon_names = icon_names
     icon_table = render_table(displayed_icon_names, cols,
                               lambda name: icon._render_icon(formatter,
                                                              name, size))
     if not len(icon_names):
         message = 'No %s icon matches %s' % (SIZE_DESCR[size], name_pat)
     elif len(icon_names) == 1:
         message = 'Showing the only %s icon matching %s' % \
                   (SIZE_DESCR[size], name_pat)
     elif len(displayed_icon_names) == len(icon_names):
         message = 'Showing all %d %s icons matching %s' % \
                   (len(icon_names), SIZE_DESCR[size], name_pat)
     else:
         message = 'Showing %d of %d %s icons matching %s' % \
                   (len(displayed_icon_names), len(icon_names),
                    SIZE_DESCR[size], name_pat)
     return tag.div(tag.p(tag.small(message)) if header else '', icon_table)
Example #2
0
 def _render(self, formatter, cols, name_pat, size, header, limit):
     #noinspection PyArgumentList
     icon = Icons(self.env)
     icon_dir = icon.icon_location(size)[1]
     files = fnmatch.filter(os.listdir(icon_dir), '%s.png' % name_pat)
     icon_names = [os.path.splitext(p)[0] for p in files]
     if limit:
         displayed_icon_names = reduce_names(icon_names, limit)
     else:
         displayed_icon_names = icon_names
     icon_table = render_table(
         displayed_icon_names, cols,
         lambda name: icon._render_icon(formatter, name, size))
     if not len(icon_names):
         message = 'No %s icon matches %s' % (SIZE_DESCR[size], name_pat)
     elif len(icon_names) == 1:
         message = 'Showing the only %s icon matching %s' % \
                   (SIZE_DESCR[size], name_pat)
     elif len(displayed_icon_names) == len(icon_names):
         message = 'Showing all %d %s icons matching %s' % \
                   (len(icon_names), SIZE_DESCR[size], name_pat)
     else:
         message = 'Showing %d of %d %s icons matching %s' % \
                   (len(displayed_icon_names), len(icon_names),
                    SIZE_DESCR[size], name_pat)
     return tag.div(tag.p(tag.small(message)) if header else '', icon_table)
Example #3
0
 def test_95(self):
     # Same as docstring
     names = ['a', 'aa', 'aaa', 'b', 'bb']
     result = reduce_names(names, 0)
     result.sort()
     expect = []
     self.assertEqual(result, expect)
Example #4
0
 def test_50(self):
     icon_dir = FUGUE_ICONS[False]['S']
     files = fnmatch.filter(os.listdir(icon_dir), '*.png')
     names = [os.path.splitext(p)[0] for p in files]
     names.sort()
     expect = names
     result = reduce_names(names, len(names))
     result.sort()
     self.assertEqual(result, expect)
Example #5
0
 def test_51(self):
     icon_dir = FUGUE_ICONS[False]['S']
     files = fnmatch.filter(os.listdir(icon_dir), '*.png')
     names = [os.path.splitext(p)[0] for p in files]
     names.sort()
     keep = 40
     kept = 0
     result = reduce_names(names, keep)
     for name in names:
         if name not in result:
             # print '%s%s' % (' '*8, name)
             pass
         else:
             # print name
             kept += 1
     # print '\nKept %d names' % kept
     self.assertEqual(kept, keep)
Example #6
0
 def test_00(self):
     names = []
     expect = names
     result = reduce_names(names, 0)
     self.assertEqual(result, expect)
Example #7
0
 def test_40(self):
     names = ['a', 'aa', 'ab', 'b', 'bb', 'bc', 'bca']
     result = reduce_names(names, len(names))
     result.sort()
     expect = names
     self.assertEqual(result, expect)
Example #8
0
 def test_47(self):
     names = ['a', 'aa', 'ab', 'b', 'bb', 'bc', 'bca']
     result = reduce_names(names, 0)
     result.sort()
     expect = []
     self.assertEqual(result, expect)
Example #9
0
 def test_32(self):
     names = ['a', 'aa', 'ab']
     result = reduce_names(names, 2)
     result.sort()
     expect = ['a', 'aa']
     self.assertEqual(result, expect)
Example #10
0
 def test_11(self):
     names = ['a']
     result = reduce_names(names, 0)
     expect = []
     self.assertEqual(result, expect)
Example #11
0
 def test_10(self):
     names = ['a']
     result = reduce_names(names, len(names))
     expect = names
     self.assertEqual(result, expect)
Example #12
0
 def test_03(self):
     names = ['']
     expect = names
     result = reduce_names(names, 1)
     self.assertEqual(result, expect)
Example #13
0
 def test_02(self):
     names = ['']
     expect = []
     result = reduce_names(names, 0)
     self.assertEqual(result, expect)