/* * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) version 3. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with the program; if not, see <http://www.gnu.org/licenses/> * * * Authors: * Not Zed <notzed@lostzed.mmc.com.au> * Jeffrey Stedfast <fejj@ximian.com> * * Copyright (C) 1999-2008 Novell, Inc. (www.novell.com) * */ #ifdef HAVE_CONFIG_H #include <config.h> #endif #include <string.h> #include "em-vfolder-context.h" #include "em-vfolder-rule.h" #include "filter/filter-option.h" #include "filter/filter-int.h" #include "em-filter-folder-element.h" static FilterElement *vfolder_new_element(RuleContext *rc, const char *type); static RuleContextClass *parent_class = NULL; static void em_vfolder_context_finalise(GObject *obj) { G_OBJECT_CLASS(parent_class)->finalize(obj); } static void em_vfolder_context_class_init(EMVFolderContextClass *klass) { parent_class = g_type_class_ref(RULE_TYPE_CONTEXT); ((GObjectClass *)klass)->finalize = em_vfolder_context_finalise; ((RuleContextClass *)klass)->new_element = vfolder_new_element; } static void em_vfolder_context_init(EMVFolderContext *vc) { rule_context_add_part_set((RuleContext *) vc, "partset", filter_part_get_type(), rule_context_add_part, rule_context_next_part); rule_context_add_rule_set((RuleContext *) vc, "ruleset", em_vfolder_rule_get_type(), rule_context_add_rule, rule_context_next_rule); ((RuleContext *)vc)->flags = RULE_CONTEXT_THREADING | RULE_CONTEXT_GROUPING; } GType em_vfolder_context_get_type(void) { static GType type = 0; if (!type) { static const GTypeInfo info = { sizeof(EMVFolderContextClass), NULL, /* base_class_init */ NULL, /* base_class_finalize */ (GClassInitFunc) em_vfolder_context_class_init, NULL, /* class_finalize */ NULL, /* class_data */ sizeof(EMVFolderContext), 0, /* n_preallocs */ (GInstanceInitFunc) em_vfolder_context_init, }; type = g_type_register_static(RULE_TYPE_CONTEXT, "EMVFolderContext", &info, 0); } return type; } /** * em_vfolder_context_new: * * Create a new EMVFolderContext object. * * Return value: A new #EMVFolderContext object. **/ EMVFolderContext * em_vfolder_context_new(void) { return (EMVFolderContext *)g_object_new(em_vfolder_context_get_type(), NULL, NULL); } static FilterElement * vfolder_new_element(RuleContext *rc, const char *type) { if (!strcmp(type, "system-flag")) { return (FilterElement *) filter_option_new(); } else if (!strcmp(type, "score")) { return (FilterElement *) filter_int_new_type("score", -3, 3); } else if (!strcmp(type, "folder-curi")) { EMFilterFolderElement *ff = em_filter_folder_element_new (); if (ff) ff->store_camel_uri = TRUE; return (FilterElement *) ff; } else if (!strcmp(type, "folder")) { return (FilterElement *) em_filter_folder_element_new(); } else { return parent_class->new_element(rc, type); } } ranches/2015Q2</option> <option value='branches/2015Q3'>branches/2015Q3</option> <option value='branches/2015Q4'>branches/2015Q4</option> <option value='branches/2016Q1'>branches/2016Q1</option> <option value='branches/2016Q2'>branches/2016Q2</option> <option value='branches/2016Q3'>branches/2016Q3</option> <option value='branches/2016Q4'>branches/2016Q4</option> <option value='branches/2017Q1'>branches/2017Q1</option> <option value='branches/2017Q2'>branches/2017Q2</option> <option value='branches/2017Q3'>branches/2017Q3</option> <option value='branches/2017Q4'>branches/2017Q4</option> <option value='branches/2018Q1'>branches/2018Q1</option> <option value='branches/2018Q2'>branches/2018Q2</option> <option value='branches/2018Q3'>branches/2018Q3</option> <option value='branches/2018Q4'>branches/2018Q4</option> <option value='branches/2019Q1'>branches/2019Q1</option> <option value='branches/2019Q2'>branches/2019Q2</option> <option value='branches/2019Q3'>branches/2019Q3</option> <option value='branches/2019Q4'>branches/2019Q4</option> <option value='branches/2020Q1'>branches/2020Q1</option> <option value='branches/2020Q2'>branches/2020Q2</option> <option value='branches/2020Q3'>branches/2020Q3</option> <option value='branches/2020Q4'>branches/2020Q4</option> <option value='branches/2021Q1'>branches/2021Q1</option> <option value='branches/RELEASE_8_4_0'>branches/RELEASE_8_4_0</option> <option value='branches/RELENG_2_1_0'>branches/RELENG_2_1_0</option> <option value='branches/RELENG_2_2'>branches/RELENG_2_2</option> <option value='branches/RELENG_9_1_0'>branches/RELENG_9_1_0</option> <option value='branches/RELENG_9_2_0'>branches/RELENG_9_2_0</option> <option value='dependabot/npm_and_yarn/devel/electron4/files/eslint-utils-1.4.3'>dependabot/npm_and_yarn/devel/electron4/files/eslint-utils-1.4.3</option> <option value='dependabot/npm_and_yarn/devel/electron4/files/lodash-4.17.15'>dependabot/npm_and_yarn/devel/electron4/files/lodash-4.17.15</option> <option value='dependabot/npm_and_yarn/devel/electron4/files/lodash.merge-4.6.2'>dependabot/npm_and_yarn/devel/electron4/files/lodash.merge-4.6.2</option> <option value='dependabot/npm_and_yarn/devel/electron4/files/lodash.template-4.5.0'>dependabot/npm_and_yarn/devel/electron4/files/lodash.template-4.5.0</option> <option value='dependabot/npm_and_yarn/devel/electron4/files/minimist-1.2.2'>dependabot/npm_and_yarn/devel/electron4/files/minimist-1.2.2</option> <option value='dependabot/npm_and_yarn/devel/electron4/files/mixin-deep-1.3.2'>dependabot/npm_and_yarn/devel/electron4/files/mixin-deep-1.3.2</option> <option value='main' selected='selected'>main</option> <option value='master'>master</option> <option value='svn_head'>svn_head</option> </select> <input type='submit' value='switch'/></form></td></tr> <tr><td class='sub'>FreeBSD Ports (https://github.com/freebsd/freebsd-ports)</td><td class='sub right'></td></tr></table> <table class='tabs'><tr><td> <a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/about/'>about</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/'>summary</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/refs/?id=49b7a7d4a4e27031eeb48b2c26d102a7f8527de9'>refs</a><a class='active' href='/~lantw44/cgit/cgit.cgi/freebsd-ports/log/graphics'>log</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/tree/graphics?id=49b7a7d4a4e27031eeb48b2c26d102a7f8527de9'>tree</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=49b7a7d4a4e27031eeb48b2c26d102a7f8527de9'>commit</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/diff/graphics?id=49b7a7d4a4e27031eeb48b2c26d102a7f8527de9'>diff</a><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/stats/graphics'>stats</a></td><td class='form'><form class='right' method='get' action='/~lantw44/cgit/cgit.cgi/freebsd-ports/log/graphics'> <input type='hidden' name='id' value='49b7a7d4a4e27031eeb48b2c26d102a7f8527de9'/><select name='qt'> <option value='grep'>log msg</option> <option value='author'>author</option> <option value='committer'>committer</option> <option value='range'>range</option> </select> <input class='txt' type='search' size='10' name='q' value=''/> <input type='submit' value='search'/> </form> </td></tr></table> <div class='path'>path: <a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/log/?id=49b7a7d4a4e27031eeb48b2c26d102a7f8527de9'>root</a>/<a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/log/graphics?id=49b7a7d4a4e27031eeb48b2c26d102a7f8527de9'>graphics</a></div><div class='content'><table class='list nowrap'><tr class='nohover'><th></th><th class='left'>Commit message (<a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/log/graphics?id=49b7a7d4a4e27031eeb48b2c26d102a7f8527de9&showmsg=1'>Expand</a>)</th><th class='left'>Author</th><th class='left'>Age</th><th class='left'>Files</th><th class='left'>Lines</th></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=0aad97bb5c24e162fa1f0e0fa87c8654f738ff52'>- Convert to new perl framework</a></td><td>Andrej Zverev</td><td><span title='2013-08-03 02:21:05 +0800'>2013-08-03</span></td><td>10</td><td><span class='deletions'>-10</span>/<span class='insertions'>+20</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=c2068cf57e82cabd0be4bd2994ebebfd8c9b804b'>- Unbreak parallel (-jX) builds by calling submakes correctly</a></td><td>Alexey Dokuchaev</td><td><span title='2013-08-02 11:50:46 +0800'>2013-08-02</span></td><td>1</td><td><span class='deletions'>-11</span>/<span class='insertions'>+22</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=d370d5d7d4947d74cd9ea9454e4268ca151e448b'>Fix build without gcc</a></td><td>Baptiste Daroussin</td><td><span title='2013-08-02 05:38:39 +0800'>2013-08-02</span></td><td>1</td><td><span class='deletions'>-6</span>/<span class='insertions'>+6</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=dc95b2ecfac90b10270994ae175b29b3faaf3b7a'>Remove USE_GCC=any It now builds properly with clang while it doesn't build w...</a></td><td>Baptiste Daroussin</td><td><span title='2013-08-02 05:02:17 +0800'>2013-08-02</span></td><td>1</td><td><span class='deletions'>-6</span>/<span class='insertions'>+1</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=5b2b48cf644a68c7f0b22c803cc705c57f81c8af'>Fix build without gcc</a></td><td>Baptiste Daroussin</td><td><span title='2013-08-01 14:35:28 +0800'>2013-08-01</span></td><td>1</td><td><span class='deletions'>-1</span>/<span class='insertions'>+2</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=71249b3c9b63f7382d91275a0c2d2eaf303a44fe'>Fix build with clang</a></td><td>Baptiste Daroussin</td><td><span title='2013-08-01 13:27:54 +0800'>2013-08-01</span></td><td>1</td><td><span class='deletions'>-0</span>/<span class='insertions'>+2</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=2f4007d4ecdd42e9ffa6fa4a394afa3e2faa2543'>. add license (ZLIB);</a></td><td>Boris Samorodov</td><td><span title='2013-07-31 21:10:57 +0800'>2013-07-31</span></td><td>1</td><td><span class='deletions'>-2</span>/<span class='insertions'>+4</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=9577470cb817a809f6cb2195498639bb4cfac594'>. unbreak build with clang, error:</a></td><td>Boris Samorodov</td><td><span title='2013-07-31 21:03:12 +0800'>2013-07-31</span></td><td>2</td><td><span class='deletions'>-3</span>/<span class='insertions'>+12</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=a5f590e51d3b147b9b5085ac6a2920189b42967a'>The FreeBSD GNOME team presents a Glib and Gtk+ 3 update.</a></td><td>Koop Mast</td><td><span title='2013-07-31 19:57:45 +0800'>2013-07-31</span></td><td>19</td><td><span class='deletions'>-78</span>/<span class='insertions'>+240</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=070ff6326a3ec1ce45e4a81a70998a7f9b61502f'>Minor, last-minute fixes missed in the previous commits.</a></td><td>Alexey Dokuchaev</td><td><span title='2013-07-31 17:18:07 +0800'>2013-07-31</span></td><td>1</td><td><span class='deletions'>-2</span>/<span class='insertions'>+2</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=dd8b700f645ebf03064470679cec4b5c4eeaa765'>Try to properly fix parallel builds instead of marking port as -jX unsafe.</a></td><td>Alexey Dokuchaev</td><td><span title='2013-07-31 15:43:53 +0800'>2013-07-31</span></td><td>2</td><td><span class='deletions'>-5</span>/<span class='insertions'>+24</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=0c32f397115d6a7e639ed1f8b4228848bd5cc96c'>- Convert to new Uses/perl5.mk framework</a></td><td>Andrej Zverev</td><td><span title='2013-07-31 14:54:09 +0800'>2013-07-31</span></td><td>1</td><td><span class='deletions'>-2</span>/<span class='insertions'>+2</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=012ea9678a77aadce656e0b0f73f83d5260bd6a0'>- Fix parallel (-jX) builds, remove jobs unsafe mark</a></td><td>Alexey Dokuchaev</td><td><span title='2013-07-31 12:37:25 +0800'>2013-07-31</span></td><td>2</td><td><span class='deletions'>-3</span>/<span class='insertions'>+39</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=1ea5b1e4ce1ed4128b3be54334d402f4c2c3cab0'>Update to 0.9703</a></td><td>Steven Kreuzer</td><td><span title='2013-07-31 02:28:34 +0800'>2013-07-31</span></td><td>2</td><td><span class='deletions'>-9</span>/<span class='insertions'>+4</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=488a01d2c304f8bc939c64a79299e582982d3f6b'>Trim header</a></td><td>Baptiste Daroussin</td><td><span title='2013-07-30 04:25:33 +0800'>2013-07-30</span></td><td>1</td><td><span class='deletions'>-7</span>/<span class='insertions'>+3</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=b9751d29810370dfcb05fc497a998d77382be1f6'>Remove leading article from COMMENT</a></td><td>Baptiste Daroussin</td><td><span title='2013-07-30 04:23:49 +0800'>2013-07-30</span></td><td>1</td><td><span class='deletions'>-4</span>/<span class='insertions'>+2</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=b9d2535959c6b4931bd25928f1a7262cc8b81219'>Remove now useless MAKE_JOB_SAFE</a></td><td>Baptiste Daroussin</td><td><span title='2013-07-30 04:20:56 +0800'>2013-07-30</span></td><td>1</td><td><span class='deletions'>-8</span>/<span class='insertions'>+4</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=015964fe8e4120d400a10fa2ef9278ec09bd2984'>- Trim Makefile header</a></td><td>Dmitry Marakasov</td><td><span title='2013-07-30 03:38:37 +0800'>2013-07-30</span></td><td>1</td><td><span class='deletions'>-5</span>/<span class='insertions'>+1</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=5d27780bc12c161e3776aea0cac3f2e356a6bb37'>graphics/gifsicle: update to 1.71</a></td><td>William Grzybowski</td><td><span title='2013-07-30 00:25:39 +0800'>2013-07-30</span></td><td>2</td><td><span class='deletions'>-4</span>/<span class='insertions'>+4</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=5dfcada94f9728f0d428a2060aeed6ff256d5468'>- Update to 9.1.5</a></td><td>Pietro Cerutti</td><td><span title='2013-07-29 16:53:29 +0800'>2013-07-29</span></td><td>2</td><td><span class='deletions'>-3</span>/<span class='insertions'>+3</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=0ffc0d521fc85497ecab0d10d6e0e6f9af964db9'>Fix build with recent binutils</a></td><td>Baptiste Daroussin</td><td><span title='2013-07-29 04:40:26 +0800'>2013-07-29</span></td><td>1</td><td><span class='deletions'>-0</span>/<span class='insertions'>+2</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=b47325edb2d93a726b151ae81f7ecd3c183f0565'>- switch simple inline replacement from perl to sed</a></td><td>Andrej Zverev</td><td><span title='2013-07-28 00:06:25 +0800'>2013-07-28</span></td><td>2</td><td><span class='deletions'>-18</span>/<span class='insertions'>+4</span></td></tr> <tr><td class='commitgraph'>* </td><td><a href='/~lantw44/cgit/cgit.cgi/freebsd-ports/commit/graphics?id=413424ee99f55dc8d1d442dfc594daa157055a7b'>- Reset maintainer after no response to mail since Jan 2013</a></td><td>Steve Wills</td><td><span title='2013-07-28 00:06:01 +0800'>2013-07-28</span>