~jaap.karssenberg/zim/pyzim-0.43-backports

« back to all changes in this revision

Viewing changes to zim/search.py

  • Committer: Jaap Karssenberg
  • Date: 2010-01-17 18:15:48 UTC
  • Revision ID: pardus@cpan.org-20100117181548-znbf7jiswarc35gh
* Fixed issue with remove_link while some other text is selected
* Trigger Find after Search for simple queries
* Allow selecting multiple tags in Task List plugin
* Improved color highlighting in Task list
* Allow negative query in task list, like "not @waiting"

Show diffs side-by-side

added added

removed removed

Lines of Context:
46
46
 
47
47
        # TODO support + and - operators
48
48
 
 
49
        # TODO document data tree of query object
 
50
 
49
51
        def __init__(self, string):
50
52
                self.string = string
51
53
                self.root = self._parse_query(string)
89
91
                #~ print root
90
92
                return root
91
93
 
 
94
        @property
 
95
        def simple_match(self):
 
96
                '''Used to determine a simple matching string to be used
 
97
                in the find method in the pageview. Used in SearchDialog.
 
98
                '''
 
99
                if len(self.root) == 1 and isinstance(self.root[0], tuple) \
 
100
                and self.root[0][0] == 'content':
 
101
                        return self.root[0][1]
 
102
                else:
 
103
                        return None
 
104
 
92
105
        @classmethod
93
106
        def regex(klass, text, case=False):
94
107
                '''Build a regex for a search term, expands wilcards and sets