summaryrefslogtreecommitdiffstats
path: root/zarb-ml/mageia-discuss/20101201
diff options
context:
space:
mode:
authorNicolas Vigier <boklm@mageia.org>2013-04-14 13:46:12 +0000
committerNicolas Vigier <boklm@mageia.org>2013-04-14 13:46:12 +0000
commit1be510f9529cb082f802408b472a77d074b394c0 (patch)
treeb175f9d5fcb107576dabc768e7bd04d4a3e491a0 /zarb-ml/mageia-discuss/20101201
parentfa5098cf210b23ab4f419913e28af7b1b07dafb2 (diff)
downloadarchives-master.tar
archives-master.tar.gz
archives-master.tar.bz2
archives-master.tar.xz
archives-master.zip
Add zarb MLs html archivesHEADmaster
Diffstat (limited to 'zarb-ml/mageia-discuss/20101201')
-rw-r--r--zarb-ml/mageia-discuss/20101201/003141.html180
-rw-r--r--zarb-ml/mageia-discuss/20101201/003143.html73
-rw-r--r--zarb-ml/mageia-discuss/20101201/003144.html124
-rw-r--r--zarb-ml/mageia-discuss/20101201/003145.html97
-rw-r--r--zarb-ml/mageia-discuss/20101201/003146.html69
-rw-r--r--zarb-ml/mageia-discuss/20101201/003147.html81
-rw-r--r--zarb-ml/mageia-discuss/20101201/003148.html70
-rw-r--r--zarb-ml/mageia-discuss/20101201/003149.html73
-rw-r--r--zarb-ml/mageia-discuss/20101201/003150.html96
-rw-r--r--zarb-ml/mageia-discuss/20101201/003151.html74
-rw-r--r--zarb-ml/mageia-discuss/20101201/003152.html86
-rw-r--r--zarb-ml/mageia-discuss/20101201/003153.html76
-rw-r--r--zarb-ml/mageia-discuss/20101201/author.html107
-rw-r--r--zarb-ml/mageia-discuss/20101201/date.html107
l---------zarb-ml/mageia-discuss/20101201/index.html1
-rw-r--r--zarb-ml/mageia-discuss/20101201/subject.html107
-rw-r--r--zarb-ml/mageia-discuss/20101201/thread.html125
17 files changed, 1546 insertions, 0 deletions
diff --git a/zarb-ml/mageia-discuss/20101201/003141.html b/zarb-ml/mageia-discuss/20101201/003141.html
new file mode 100644
index 000000000..b4b86a6ad
--- /dev/null
+++ b/zarb-ml/mageia-discuss/20101201/003141.html
@@ -0,0 +1,180 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML>
+ <HEAD>
+ <TITLE> [Mageia-discuss] Logo proposals discussion
+ </TITLE>
+ <LINK REL="Index" HREF="index.html" >
+ <LINK REL="made" HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%20Logo%20proposals%20discussion&In-Reply-To=%3CBAY126-W204B765F132853098B1AD893260%40phx.gbl%3E">
+ <META NAME="robots" CONTENT="index,nofollow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+
+ <LINK REL="Next" HREF="003145.html">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <H1>[Mageia-discuss] Logo proposals discussion</H1>
+ <B>Enrico Gsell</B>
+ <A HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%20Logo%20proposals%20discussion&In-Reply-To=%3CBAY126-W204B765F132853098B1AD893260%40phx.gbl%3E"
+ TITLE="[Mageia-discuss] Logo proposals discussion">thecandyman666 at googlemail.com
+ </A><BR>
+ <I>Wed Dec 1 08:45:22 CET 2010</I>
+ <P><UL>
+
+ <LI>Next message: <A HREF="003145.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3141">[ date ]</a>
+ <a href="thread.html#3141">[ thread ]</a>
+ <a href="subject.html#3141">[ subject ]</a>
+ <a href="author.html#3141">[ author ]</a>
+ </LI>
+ </UL>
+ <HR>
+<!--beginarticle-->
+<PRE>
+Luckily the same goes for me, all my favorites are still in :)
+Tough they are nearly all different ones:
+
+My choices and what comes to my mind when looking at them (in order of preferation):
+
+1. <A HREF="http://www.flickr.com/photos/54316230@N06/5141934927/">http://www.flickr.com/photos/54316230@N06/5141934927/</A>
+All
+ the smalls things are needed to put together to create something good.
+This logo expresses it perfectly for me. Also I like how it looks with
+text, as logo only, as icon and so on. Also looks like an instant
+classic and timeless.
+
+2. <A HREF="http://www.flickr.com/photos/ofaurax/5127775007/">http://www.flickr.com/photos/ofaurax/5127775007/</A>
+Timeless, modern, simple.
+
+3. <A HREF="http://www.flickr.com/photos/54316230@N06/5063070488/">http://www.flickr.com/photos/54316230@N06/5063070488/</A>
+Heading in the right direction, we know where to go and what our goals are.
+
+4. <A HREF="http://www.flickr.com/photos/54240048@N08/5013673327/">http://www.flickr.com/photos/54240048@N08/5013673327/</A>
+Flames
+ are dynamic, always changing. In connection with linux it lets me think
+ of a bleeding edge distro. Nice colors, but don't like the font.
+
+Kind regards,
+Enrico
+
+&gt;<i> Date: Mon, 29 Nov 2010 22:01:14 -0500
+</I>&gt;<i> From: <A HREF="https://www.mageia.org/mailman/listinfo/mageia-discuss">andr55 at laposte.net</A>
+</I>&gt;<i> To: <A HREF="https://www.mageia.org/mailman/listinfo/mageia-discuss">mageia-discuss at mageia.org</A>
+</I>&gt;<i> Subject: Re: [Mageia-discuss] Logo proposals discussion
+</I>&gt;<i>
+</I>&gt;<i>
+</I>&gt;<i> Romain d'Alverny a &#233;crit :
+</I>&gt;<i> &gt; ...
+</I>&gt;<i> &gt; Step 1. already occurred:
+</I>&gt;<i> &gt; ... first short list of 77 files:<A HREF="http://www.flickr.com/photos/tags/mgared/">http://www.flickr.com/photos/tags/mgared/</A>
+</I>&gt;<i> &gt;
+</I>&gt;<i> &gt; Step 2. is the reason of this mail. 77 is still a lot,
+</I>&gt;<i> &gt; ... we prefer to start the discussion now.
+</I>&gt;<i> &gt; ...
+</I>&gt;<i> &gt; We are Thursday Nov. 18th. That makes the public discussion open until
+</I>&gt;<i> &gt; Wednesday Nov. 24th.
+</I>&gt;<i> &gt;
+</I>&gt;<i> (I got a second identical message - this time it must be for mgaorange)
+</I>&gt;<i>
+</I>&gt;<i> Luckily, my red list choices are still in the orange list :)
+</I>&gt;<i> So I mostly restate what I said then :
+</I>&gt;<i>
+</I>&gt;<i> First of all, I think that despite the guidelines, &quot;Linux&quot; should
+</I>&gt;<i> usually be included with the logo and &quot;Mageia&quot;, if not an integral part
+</I>&gt;<i> of the logo.
+</I>&gt;<i> After all, we are promoting/presenting the Mageia variety of Linux.
+</I>&gt;<i> I like putting &quot;mageia&quot; in lower case - except maybe the &quot;m&quot; - and
+</I>&gt;<i> putting &quot;LINUX&quot; in small caps below, to the right of the &quot;g&quot;.
+</I>&gt;<i>
+</I>&gt;<i> My preferences, in approximate order are :
+</I>&gt;<i> 1) &lt;<A HREF="http://www.flickr.com/photos/42998910@N02/5078260989/">http://www.flickr.com/photos/42998910@N02/5078260989/</A>&gt;
+</I>&gt;<i> mageia_variations by gejobj.
+</I>&gt;<i> These are 11 variations (by colour/font) of the same logo.
+</I>&gt;<i> These are based on
+</I>&gt;<i> &lt;<A HREF="http://www.flickr.com/photos/42998910@N02/5012718103/">http://www.flickr.com/photos/42998910@N02/5012718103/</A>&gt; marisa_mageia_v2
+</I>&gt;<i> by the same designer, also on the selection list.
+</I>&gt;<i> A cube showing 3 faces, forming an &quot;M&quot; below and an &quot;L&quot; above, with
+</I>&gt;<i> &quot;Mageia&quot; to the right, and a small &quot;Linux&quot; below to the right of the &quot;g&quot;.
+</I>&gt;<i> My prefered colour scheme is column 2 row 2. (blue+green &quot;M&quot;, orange
+</I>&gt;<i> &quot;L&quot;, violet &quot;Linux&quot;)
+</I>&gt;<i> My prefered font for &quot;mageia&quot; is column 2 row 4 (last), due to open &quot;g&quot;
+</I>&gt;<i> (simpler) and &quot;a&quot; (not easily confused with &quot;o&quot;).
+</I>&gt;<i> For &quot;Linux&quot; it is column 1 row 7 (last), non-serif proportional small caps.
+</I>&gt;<i> ----
+</I>&gt;<i>
+</I>&gt;<i> 2) &lt;<A HREF="http://www.flickr.com/photos/ennael/5021614786/">http://www.flickr.com/photos/ennael/5021614786/</A>&gt;
+</I>&gt;<i> mageia_ftizzoni05 by ennael, from F. Tizzoni.
+</I>&gt;<i> An &quot;M&quot; formed of 4 oblique rectangles, 2 tones of violet, 2 tones of
+</I>&gt;<i> orange, with &quot;Mageia&quot; below to the right, an orange dot on the &quot;i&quot;.
+</I>&gt;<i> Very distinctive.
+</I>&gt;<i> For colours, the orange is very nice. Maybe the violet could be light
+</I>&gt;<i> green or blue-green instead ?
+</I>&gt;<i> The font is ok, except I would use an open &quot;a&quot;, to avoid confusion with &quot;o&quot;.
+</I>&gt;<i> (This was listed as my 4th choice last time, because it had been removed
+</I>&gt;<i> from the MageiaRed pages.)
+</I>&gt;<i> ----
+</I>&gt;<i>
+</I>&gt;<i> 3) &lt;<A HREF="http://www.flickr.com/photos/54316230@N06/5063070488/">http://www.flickr.com/photos/54316230@N06/5063070488/</A>&gt;
+</I>&gt;<i> mageia7_1-01 by alexn83
+</I>&gt;<i> compass with &quot;Mageia&quot; to the right.
+</I>&gt;<i> I would use the &quot;M&quot; on the simpler dial above, oriented to NE so as to
+</I>&gt;<i> hide the points NE and SW. This simpler image should scale better.
+</I>&gt;<i> I would also make the circle regular.
+</I>&gt;<i> These changes should make it more easily recognisable in different
+</I>&gt;<i> contexts as well.
+</I>&gt;<i> And without the direction letters, multilingual :)
+</I>&gt;<i>
+</I>&gt;<i> For the font I would use a sans-serif proportional, with the &quot;a&quot;s open
+</I>&gt;<i> to the left, to be more readable.
+</I>&gt;<i> I would apply this font to the &quot;M&quot; on the compass as well.
+</I>&gt;<i> And no colour gradiant in the font. (Leave that to the image.)
+</I>&gt;<i> The colours go well together.
+</I>&gt;<i> Note that this proposal seems very similar to another computer logo that
+</I>&gt;<i> I've seen in the past, but I can't place it.
+</I>&gt;<i> ----
+</I>&gt;<i>
+</I>&gt;<i> 4) &lt;<A HREF="http://www.flickr.com/photos/55329486@N03/5134846325/">http://www.flickr.com/photos/55329486@N03/5134846325/</A>&gt;
+</I>&gt;<i> mageia_logo_6 by sisopetron
+</I>&gt;<i> Mageia in black with a green star for point of the &quot;i&quot;, surrounded, in
+</I>&gt;<i> background, by 5 circles, filled in progressively lighter blue.
+</I>&gt;<i> The 5 spheres representing 5 continents ?
+</I>&gt;<i> The font is ok, except I would use an open &quot;a&quot;, to avoid confusion with &quot;o&quot;.
+</I>&gt;<i> The green star would be better reduced in size - so as to not overlap
+</I>&gt;<i> the letters. The green makes a very nice accent.
+</I>&gt;<i> The version with green-blue instead of blue in the spheres looks also
+</I>&gt;<i> very nice.
+</I>&gt;<i> ----
+</I>&gt;<i>
+</I>&gt;<i> my 2 cents :)
+</I>&gt;<i>
+</I>&gt;<i> - Andr&#233;
+</I>&gt;<i>
+</I>&gt;<i>
+</I>&gt;<i>
+</I>
+-------------- next part --------------
+An HTML attachment was scrubbed...
+URL: &lt;/pipermail/mageia-discuss/attachments/20101201/042cf1d8/attachment.html&gt;
+</PRE>
+
+
+
+<!--endarticle-->
+ <HR>
+ <P><UL>
+ <!--threads-->
+
+ <LI>Next message: <A HREF="003145.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3141">[ date ]</a>
+ <a href="thread.html#3141">[ thread ]</a>
+ <a href="subject.html#3141">[ subject ]</a>
+ <a href="author.html#3141">[ author ]</a>
+ </LI>
+ </UL>
+
+<hr>
+<a href="https://www.mageia.org/mailman/listinfo/mageia-discuss">More information about the Mageia-discuss
+mailing list</a><br>
+</body></html>
diff --git a/zarb-ml/mageia-discuss/20101201/003143.html b/zarb-ml/mageia-discuss/20101201/003143.html
new file mode 100644
index 000000000..5171a15b8
--- /dev/null
+++ b/zarb-ml/mageia-discuss/20101201/003143.html
@@ -0,0 +1,73 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML>
+ <HEAD>
+ <TITLE> [Mageia-discuss] R&#233;p. : [Mageia-announce] Mageia under the snow
+ </TITLE>
+ <LINK REL="Index" HREF="index.html" >
+ <LINK REL="made" HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%0A%20%3D%3Futf-8%3Fb%3FUsOpcC4gOiBbTWFnZWlhLWFubm91bmNlXSBN%3F%3D%0A%20%3D%3Futf-8%3Fq%3Fageia_under_the_snow%3F%3D&In-Reply-To=%3C201012011239.37467.oliver.bgr%40googlemail.com%3E">
+ <META NAME="robots" CONTENT="index,nofollow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ <LINK REL="Previous" HREF="003153.html">
+ <LINK REL="Next" HREF="003144.html">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <H1>[Mageia-discuss] R&#233;p. : [Mageia-announce] Mageia under the snow</H1>
+ <B>Oliver Burger</B>
+ <A HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%0A%20%3D%3Futf-8%3Fb%3FUsOpcC4gOiBbTWFnZWlhLWFubm91bmNlXSBN%3F%3D%0A%20%3D%3Futf-8%3Fq%3Fageia_under_the_snow%3F%3D&In-Reply-To=%3C201012011239.37467.oliver.bgr%40googlemail.com%3E"
+ TITLE="[Mageia-discuss] R&#233;p. : [Mageia-announce] Mageia under the snow">oliver.bgr at googlemail.com
+ </A><BR>
+ <I>Wed Dec 1 12:39:37 CET 2010</I>
+ <P><UL>
+ <LI>Previous message: <A HREF="003153.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI>Next message: <A HREF="003144.html">[Mageia-discuss] R&#233;p. : [Mageia-announce] Mageia under the snow
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3143">[ date ]</a>
+ <a href="thread.html#3143">[ thread ]</a>
+ <a href="subject.html#3143">[ subject ]</a>
+ <a href="author.html#3143">[ author ]</a>
+ </LI>
+ </UL>
+ <HR>
+<!--beginarticle-->
+<PRE>Patrice Garnier &lt;<A HREF="https://www.mageia.org/mailman/listinfo/mageia-discuss">patreer at yahoo.ca</A>&gt; schrieb am 2010-11-30
+&gt;<i> Bonjour &#224; vous,
+</I>&gt;<i>
+</I>&gt;<i> Cette d'information est elle disponible en fran&#231;ais?
+</I><A HREF="http://blog.mageia.org/fr/">http://blog.mageia.org/fr/</A>
+
+
+Just one click away...
+</PRE>
+
+
+
+
+
+
+
+
+
+
+
+<!--endarticle-->
+ <HR>
+ <P><UL>
+ <!--threads-->
+ <LI>Previous message: <A HREF="003153.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI>Next message: <A HREF="003144.html">[Mageia-discuss] R&#233;p. : [Mageia-announce] Mageia under the snow
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3143">[ date ]</a>
+ <a href="thread.html#3143">[ thread ]</a>
+ <a href="subject.html#3143">[ subject ]</a>
+ <a href="author.html#3143">[ author ]</a>
+ </LI>
+ </UL>
+
+<hr>
+<a href="https://www.mageia.org/mailman/listinfo/mageia-discuss">More information about the Mageia-discuss
+mailing list</a><br>
+</body></html>
diff --git a/zarb-ml/mageia-discuss/20101201/003144.html b/zarb-ml/mageia-discuss/20101201/003144.html
new file mode 100644
index 000000000..39595f564
--- /dev/null
+++ b/zarb-ml/mageia-discuss/20101201/003144.html
@@ -0,0 +1,124 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML>
+ <HEAD>
+ <TITLE> [Mageia-discuss] R&#233;p. : [Mageia-announce] Mageia under the snow
+ </TITLE>
+ <LINK REL="Index" HREF="index.html" >
+ <LINK REL="made" HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%0A%09%3D%3Fiso-8859-1%3Fq%3FR%3DE9p%3D2E_%3D3A_%3D5BMageia-announce%3F%3D%0A%09%3D%3Fiso-8859-1%3Fq%3F%3D5D_Mageia_under_the_snow%3F%3D&In-Reply-To=%3C001d01cb914c%24a079a5e0%24e16cf1a0%24%40de%3E">
+ <META NAME="robots" CONTENT="index,nofollow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ <LINK REL="Previous" HREF="003143.html">
+
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <H1>[Mageia-discuss] R&#233;p. : [Mageia-announce] Mageia under the snow</H1>
+ <B>Thorsten van Lil</B>
+ <A HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%0A%09%3D%3Fiso-8859-1%3Fq%3FR%3DE9p%3D2E_%3D3A_%3D5BMageia-announce%3F%3D%0A%09%3D%3Fiso-8859-1%3Fq%3F%3D5D_Mageia_under_the_snow%3F%3D&In-Reply-To=%3C001d01cb914c%24a079a5e0%24e16cf1a0%24%40de%3E"
+ TITLE="[Mageia-discuss] R&#233;p. : [Mageia-announce] Mageia under the snow">tvl83 at gmx.de
+ </A><BR>
+ <I>Wed Dec 1 12:41:00 CET 2010</I>
+ <P><UL>
+ <LI>Previous message: <A HREF="003143.html">[Mageia-discuss] R&#233;p. : [Mageia-announce] Mageia under the snow
+</A></li>
+
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3144">[ date ]</a>
+ <a href="thread.html#3144">[ thread ]</a>
+ <a href="subject.html#3144">[ subject ]</a>
+ <a href="author.html#3144">[ author ]</a>
+ </LI>
+ </UL>
+ <HR>
+<!--beginarticle-->
+<PRE>It&#146;s an english mailinglist, so please use english for
+questions and discussions.
+
+
+
+The blog is also available in French, as you can see here:
+
+<A HREF="http://blog.mageia.org/fr/">http://blog.mageia.org/fr/</A>
+
+
+
+Regards,
+
+TeaAge
+
+
+
+Von: <A HREF="https://www.mageia.org/mailman/listinfo/mageia-discuss">mageia-discuss-bounces at mageia.org</A>
+[mailto:<A HREF="https://www.mageia.org/mailman/listinfo/mageia-discuss">mageia-discuss-bounces at mageia.org</A>] Im Auftrag von
+Patrice Garnier
+Gesendet: Dienstag, 30. November 2010 18:07
+An: <A HREF="https://www.mageia.org/mailman/listinfo/mageia-discuss">mageia-discuss at mageia.org</A>
+Betreff: [Mageia-discuss] R&#233;p. : [Mageia-announce] Mageia
+under the snow
+
+
+
+
+Bonjour &#224; vous,
+
+Cette d'information est elle disponible en fran&#231;ais?
+Merci
+
+Patrice
+
+--- En date de : Mar, 30.11.10, Anne nicolas
+&lt;<A HREF="https://www.mageia.org/mailman/listinfo/mageia-discuss">ennael1 at gmail.com</A>&gt; a &#233;crit :
+
+
+De : Anne nicolas &lt;<A HREF="https://www.mageia.org/mailman/listinfo/mageia-discuss">ennael1 at gmail.com</A>&gt;
+Objet : [Mageia-announce] Mageia under the snow
+&#192; : <A HREF="https://www.mageia.org/mailman/listinfo/mageia-discuss">mageia-announce at mageia.org</A>
+Date: mardi 30 novembre 2010 09 h 17
+
+Here are the last news from Mageia:
+<A HREF="http://blog.mageia.org/?p=271">http://blog.mageia.org/?p=271</A>
+
+Enjoy
+
+--
+Anne
+<A HREF="http://www.mageia.org">http://www.mageia.org</A>
+_______________________________________________
+Mageia-announce mailing list
+<A HREF="https://www.mageia.org/mailman/listinfo/mageia-discuss">Mageia-announce at mageia.org</A>
+<A HREF="https://www.mageia.org/mailman/listinfo/mageia-announce">https://www.mageia.org/mailman/listinfo/mageia-announce</A>
+
+
+
+-------------- next part --------------
+An HTML attachment was scrubbed...
+URL: &lt;/pipermail/mageia-discuss/attachments/20101201/d120c1bf/attachment.html&gt;
+</PRE>
+
+
+
+
+
+
+
+
+
+
+<!--endarticle-->
+ <HR>
+ <P><UL>
+ <!--threads-->
+ <LI>Previous message: <A HREF="003143.html">[Mageia-discuss] R&#233;p. : [Mageia-announce] Mageia under the snow
+</A></li>
+
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3144">[ date ]</a>
+ <a href="thread.html#3144">[ thread ]</a>
+ <a href="subject.html#3144">[ subject ]</a>
+ <a href="author.html#3144">[ author ]</a>
+ </LI>
+ </UL>
+
+<hr>
+<a href="https://www.mageia.org/mailman/listinfo/mageia-discuss">More information about the Mageia-discuss
+mailing list</a><br>
+</body></html>
diff --git a/zarb-ml/mageia-discuss/20101201/003145.html b/zarb-ml/mageia-discuss/20101201/003145.html
new file mode 100644
index 000000000..db326fea4
--- /dev/null
+++ b/zarb-ml/mageia-discuss/20101201/003145.html
@@ -0,0 +1,97 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML>
+ <HEAD>
+ <TITLE> [Mageia-discuss] Logo proposals discussion
+ </TITLE>
+ <LINK REL="Index" HREF="index.html" >
+ <LINK REL="made" HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%20Logo%20proposals%20discussion&In-Reply-To=%3CAANLkTimcjPa1Fzm4WtEhG4jJQ1A2RXth6SAaGUdOJ5Qf%40mail.gmail.com%3E">
+ <META NAME="robots" CONTENT="index,nofollow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ <LINK REL="Previous" HREF="003141.html">
+ <LINK REL="Next" HREF="003146.html">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <H1>[Mageia-discuss] Logo proposals discussion</H1>
+ <B>Hoyt Duff</B>
+ <A HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%20Logo%20proposals%20discussion&In-Reply-To=%3CAANLkTimcjPa1Fzm4WtEhG4jJQ1A2RXth6SAaGUdOJ5Qf%40mail.gmail.com%3E"
+ TITLE="[Mageia-discuss] Logo proposals discussion">hoytduff at gmail.com
+ </A><BR>
+ <I>Wed Dec 1 17:02:29 CET 2010</I>
+ <P><UL>
+ <LI>Previous message: <A HREF="003141.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI>Next message: <A HREF="003146.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3145">[ date ]</a>
+ <a href="thread.html#3145">[ thread ]</a>
+ <a href="subject.html#3145">[ subject ]</a>
+ <a href="author.html#3145">[ author ]</a>
+ </LI>
+ </UL>
+ <HR>
+<!--beginarticle-->
+<PRE>On Wed, Dec 1, 2010 at 2:45 AM, Enrico Gsell
+&lt;<A HREF="https://www.mageia.org/mailman/listinfo/mageia-discuss">thecandyman666 at googlemail.com</A>&gt; wrote:
+&gt;<i> Luckily the same goes for me, all my favorites are still in :)
+</I>&gt;<i> Tough they are nearly all different ones:
+</I>&gt;<i>
+</I>&gt;<i> My choices and what comes to my mind when looking at them (in order of
+</I>&gt;<i> preferation):
+</I>&gt;<i>
+</I>&gt;<i> 1. <A HREF="http://www.flickr.com/photos/54316230@N06/5141934927/">http://www.flickr.com/photos/54316230@N06/5141934927/</A>
+</I>&gt;<i> All the smalls things are needed to put together to create something good.
+</I>&gt;<i> This logo expresses it perfectly for me. Also I like how it looks with text,
+</I>&gt;<i> as logo only, as icon and so on. Also looks like an instant classic and
+</I>&gt;<i> timeless.
+</I>&gt;<i>
+</I>
+To me, this logo and the colors chosen are unexciting; almost has a
+bland 70's feel. Does not make my list.
+
+&gt;<i> 2. <A HREF="http://www.flickr.com/photos/ofaurax/5127775007/">http://www.flickr.com/photos/ofaurax/5127775007/</A>
+</I>&gt;<i> Timeless, modern, simple.
+</I>&gt;<i>
+</I>
+One of the best. I did like the suggestion to add some 1's to the
+bubbles as a visual play on &quot;computing&quot;.
+
+&gt;<i> 3. <A HREF="http://www.flickr.com/photos/54316230@N06/5063070488/">http://www.flickr.com/photos/54316230@N06/5063070488/</A>
+</I>&gt;<i> Heading in the right direction, we know where to go and what our goals are.
+</I>&gt;<i>
+</I>
+OK without the star, but not very interesting. Too literal; it's a compass.
+
+
+&gt;<i> 4. <A HREF="http://www.flickr.com/photos/54240048@N08/5013673327/">http://www.flickr.com/photos/54240048@N08/5013673327/</A>
+</I>&gt;<i> Flames are dynamic, always changing. In connection with linux it lets me
+</I>&gt;<i> think of a bleeding edge distro. Nice colors, but don't like the font.
+</I>&gt;<i>
+</I> A good abstract design, but the color selection could be richer, more
+exciting, vibrant. Is Mageia exciting or is it pastel?
+
+--
+Hoyt
+</PRE>
+
+
+<!--endarticle-->
+ <HR>
+ <P><UL>
+ <!--threads-->
+ <LI>Previous message: <A HREF="003141.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI>Next message: <A HREF="003146.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3145">[ date ]</a>
+ <a href="thread.html#3145">[ thread ]</a>
+ <a href="subject.html#3145">[ subject ]</a>
+ <a href="author.html#3145">[ author ]</a>
+ </LI>
+ </UL>
+
+<hr>
+<a href="https://www.mageia.org/mailman/listinfo/mageia-discuss">More information about the Mageia-discuss
+mailing list</a><br>
+</body></html>
diff --git a/zarb-ml/mageia-discuss/20101201/003146.html b/zarb-ml/mageia-discuss/20101201/003146.html
new file mode 100644
index 000000000..46d08a0c5
--- /dev/null
+++ b/zarb-ml/mageia-discuss/20101201/003146.html
@@ -0,0 +1,69 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML>
+ <HEAD>
+ <TITLE> [Mageia-discuss] Logo proposals discussion
+ </TITLE>
+ <LINK REL="Index" HREF="index.html" >
+ <LINK REL="made" HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%20Logo%20proposals%20discussion&In-Reply-To=%3CAANLkTimQT7LmA%2BNAQ0pEBT-8cGFAF1744BNAR52DyaMQ%40mail.gmail.com%3E">
+ <META NAME="robots" CONTENT="index,nofollow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ <LINK REL="Previous" HREF="003145.html">
+ <LINK REL="Next" HREF="003147.html">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <H1>[Mageia-discuss] Logo proposals discussion</H1>
+ <B>Wolfgang Bornath</B>
+ <A HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%20Logo%20proposals%20discussion&In-Reply-To=%3CAANLkTimQT7LmA%2BNAQ0pEBT-8cGFAF1744BNAR52DyaMQ%40mail.gmail.com%3E"
+ TITLE="[Mageia-discuss] Logo proposals discussion">molch.b at googlemail.com
+ </A><BR>
+ <I>Wed Dec 1 17:24:06 CET 2010</I>
+ <P><UL>
+ <LI>Previous message: <A HREF="003145.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI>Next message: <A HREF="003147.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3146">[ date ]</a>
+ <a href="thread.html#3146">[ thread ]</a>
+ <a href="subject.html#3146">[ subject ]</a>
+ <a href="author.html#3146">[ author ]</a>
+ </LI>
+ </UL>
+ <HR>
+<!--beginarticle-->
+<PRE>2010/12/1 Hoyt Duff &lt;<A HREF="https://www.mageia.org/mailman/listinfo/mageia-discuss">hoytduff at gmail.com</A>&gt;:
+&gt;<i>
+</I>&gt;&gt;<i> 4. <A HREF="http://www.flickr.com/photos/54240048@N08/5013673327/">http://www.flickr.com/photos/54240048@N08/5013673327/</A>
+</I>&gt;&gt;<i> Flames are dynamic, always changing. In connection with linux it lets me
+</I>&gt;&gt;<i> think of a bleeding edge distro. Nice colors, but don't like the font.
+</I>&gt;&gt;<i>
+</I>&gt;<i> &#160;A good abstract design, but the color selection could be richer, more
+</I>&gt;<i> exciting, vibrant. Is Mageia exciting or is it pastel?
+</I>
+Look at it in black/white.
+
+--
+wobo
+</PRE>
+
+
+<!--endarticle-->
+ <HR>
+ <P><UL>
+ <!--threads-->
+ <LI>Previous message: <A HREF="003145.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI>Next message: <A HREF="003147.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3146">[ date ]</a>
+ <a href="thread.html#3146">[ thread ]</a>
+ <a href="subject.html#3146">[ subject ]</a>
+ <a href="author.html#3146">[ author ]</a>
+ </LI>
+ </UL>
+
+<hr>
+<a href="https://www.mageia.org/mailman/listinfo/mageia-discuss">More information about the Mageia-discuss
+mailing list</a><br>
+</body></html>
diff --git a/zarb-ml/mageia-discuss/20101201/003147.html b/zarb-ml/mageia-discuss/20101201/003147.html
new file mode 100644
index 000000000..489182f2e
--- /dev/null
+++ b/zarb-ml/mageia-discuss/20101201/003147.html
@@ -0,0 +1,81 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML>
+ <HEAD>
+ <TITLE> [Mageia-discuss] Logo proposals discussion
+ </TITLE>
+ <LINK REL="Index" HREF="index.html" >
+ <LINK REL="made" HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%20Logo%20proposals%20discussion&In-Reply-To=%3CAANLkTinPryPL6VT_LcsBrgWkJGDEcdTwSA4bDvcQuF93%40mail.gmail.com%3E">
+ <META NAME="robots" CONTENT="index,nofollow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ <LINK REL="Previous" HREF="003146.html">
+ <LINK REL="Next" HREF="003148.html">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <H1>[Mageia-discuss] Logo proposals discussion</H1>
+ <B>Hoyt Duff</B>
+ <A HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%20Logo%20proposals%20discussion&In-Reply-To=%3CAANLkTinPryPL6VT_LcsBrgWkJGDEcdTwSA4bDvcQuF93%40mail.gmail.com%3E"
+ TITLE="[Mageia-discuss] Logo proposals discussion">hoytduff at gmail.com
+ </A><BR>
+ <I>Wed Dec 1 17:38:02 CET 2010</I>
+ <P><UL>
+ <LI>Previous message: <A HREF="003146.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI>Next message: <A HREF="003148.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3147">[ date ]</a>
+ <a href="thread.html#3147">[ thread ]</a>
+ <a href="subject.html#3147">[ subject ]</a>
+ <a href="author.html#3147">[ author ]</a>
+ </LI>
+ </UL>
+ <HR>
+<!--beginarticle-->
+<PRE>On Wed, Dec 1, 2010 at 11:24 AM, Wolfgang Bornath
+&lt;<A HREF="https://www.mageia.org/mailman/listinfo/mageia-discuss">molch.b at googlemail.com</A>&gt; wrote:
+&gt;<i> 2010/12/1 Hoyt Duff &lt;<A HREF="https://www.mageia.org/mailman/listinfo/mageia-discuss">hoytduff at gmail.com</A>&gt;:
+</I>&gt;&gt;<i>
+</I>&gt;&gt;&gt;<i> 4. <A HREF="http://www.flickr.com/photos/54240048@N08/5013673327/">http://www.flickr.com/photos/54240048@N08/5013673327/</A>
+</I>&gt;&gt;&gt;<i> Flames are dynamic, always changing. In connection with linux it lets me
+</I>&gt;&gt;&gt;<i> think of a bleeding edge distro. Nice colors, but don't like the font.
+</I>&gt;&gt;&gt;<i>
+</I>&gt;&gt;<i> &#160;A good abstract design, but the color selection could be richer, more
+</I>&gt;&gt;<i> exciting, vibrant. Is Mageia exciting or is it pastel?
+</I>&gt;<i>
+</I>&gt;<i> Look at it in black/white.
+</I>&gt;<i>
+</I>
+
+In black and white, it looks even more like the yin-yang symbol. The
+design is nice, but not high on my list for that reason.
+
+For the final voting, will the artists be re-submitting the design in
+full compliance with the design guidelines so voting can be unbiased
+by characteristics that are not up for consideration? I feel that this
+is important.
+
+--
+Hoyt
+</PRE>
+
+
+<!--endarticle-->
+ <HR>
+ <P><UL>
+ <!--threads-->
+ <LI>Previous message: <A HREF="003146.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI>Next message: <A HREF="003148.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3147">[ date ]</a>
+ <a href="thread.html#3147">[ thread ]</a>
+ <a href="subject.html#3147">[ subject ]</a>
+ <a href="author.html#3147">[ author ]</a>
+ </LI>
+ </UL>
+
+<hr>
+<a href="https://www.mageia.org/mailman/listinfo/mageia-discuss">More information about the Mageia-discuss
+mailing list</a><br>
+</body></html>
diff --git a/zarb-ml/mageia-discuss/20101201/003148.html b/zarb-ml/mageia-discuss/20101201/003148.html
new file mode 100644
index 000000000..9131f69f2
--- /dev/null
+++ b/zarb-ml/mageia-discuss/20101201/003148.html
@@ -0,0 +1,70 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML>
+ <HEAD>
+ <TITLE> [Mageia-discuss] Logo proposals discussion
+ </TITLE>
+ <LINK REL="Index" HREF="index.html" >
+ <LINK REL="made" HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%20Logo%20proposals%20discussion&In-Reply-To=%3C1291228231.23683.36.camel%40akroma.ephaone.org%3E">
+ <META NAME="robots" CONTENT="index,nofollow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ <LINK REL="Previous" HREF="003147.html">
+ <LINK REL="Next" HREF="003149.html">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <H1>[Mageia-discuss] Logo proposals discussion</H1>
+ <B>Michael Scherer</B>
+ <A HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%20Logo%20proposals%20discussion&In-Reply-To=%3C1291228231.23683.36.camel%40akroma.ephaone.org%3E"
+ TITLE="[Mageia-discuss] Logo proposals discussion">misc at zarb.org
+ </A><BR>
+ <I>Wed Dec 1 19:30:31 CET 2010</I>
+ <P><UL>
+ <LI>Previous message: <A HREF="003147.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI>Next message: <A HREF="003149.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3148">[ date ]</a>
+ <a href="thread.html#3148">[ thread ]</a>
+ <a href="subject.html#3148">[ subject ]</a>
+ <a href="author.html#3148">[ author ]</a>
+ </LI>
+ </UL>
+ <HR>
+<!--beginarticle-->
+<PRE>Le mercredi 01 d&#233;cembre 2010 &#224; 11:38 -0500, Hoyt Duff a &#233;crit :
+
+&gt;<i> For the final voting, will the artists be re-submitting the design in
+</I>&gt;<i> full compliance with the design guidelines so voting can be unbiased
+</I>&gt;<i> by characteristics that are not up for consideration? I feel that this
+</I>&gt;<i> is important.
+</I>
+Well, they had the time to follow the guideline and upload new designs.
+The guideline were proposed 2 months ago :
+<A HREF="https://www.mageia.org/pipermail/mageia-discuss/20100929/001554.html">https://www.mageia.org/pipermail/mageia-discuss/20100929/001554.html</A>
+
+--
+Michael Scherer
+
+</PRE>
+
+
+<!--endarticle-->
+ <HR>
+ <P><UL>
+ <!--threads-->
+ <LI>Previous message: <A HREF="003147.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI>Next message: <A HREF="003149.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3148">[ date ]</a>
+ <a href="thread.html#3148">[ thread ]</a>
+ <a href="subject.html#3148">[ subject ]</a>
+ <a href="author.html#3148">[ author ]</a>
+ </LI>
+ </UL>
+
+<hr>
+<a href="https://www.mageia.org/mailman/listinfo/mageia-discuss">More information about the Mageia-discuss
+mailing list</a><br>
+</body></html>
diff --git a/zarb-ml/mageia-discuss/20101201/003149.html b/zarb-ml/mageia-discuss/20101201/003149.html
new file mode 100644
index 000000000..edf5d0cdc
--- /dev/null
+++ b/zarb-ml/mageia-discuss/20101201/003149.html
@@ -0,0 +1,73 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML>
+ <HEAD>
+ <TITLE> [Mageia-discuss] Logo proposals discussion
+ </TITLE>
+ <LINK REL="Index" HREF="index.html" >
+ <LINK REL="made" HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%20Logo%20proposals%20discussion&In-Reply-To=%3CAANLkTimvmUww9-5t1g%3DhUxp7XOBN9MwzVjkEA7JTAoYv%40mail.gmail.com%3E">
+ <META NAME="robots" CONTENT="index,nofollow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ <LINK REL="Previous" HREF="003148.html">
+ <LINK REL="Next" HREF="003150.html">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <H1>[Mageia-discuss] Logo proposals discussion</H1>
+ <B>Wolfgang Bornath</B>
+ <A HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%20Logo%20proposals%20discussion&In-Reply-To=%3CAANLkTimvmUww9-5t1g%3DhUxp7XOBN9MwzVjkEA7JTAoYv%40mail.gmail.com%3E"
+ TITLE="[Mageia-discuss] Logo proposals discussion">molch.b at googlemail.com
+ </A><BR>
+ <I>Wed Dec 1 19:33:35 CET 2010</I>
+ <P><UL>
+ <LI>Previous message: <A HREF="003148.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI>Next message: <A HREF="003150.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3149">[ date ]</a>
+ <a href="thread.html#3149">[ thread ]</a>
+ <a href="subject.html#3149">[ subject ]</a>
+ <a href="author.html#3149">[ author ]</a>
+ </LI>
+ </UL>
+ <HR>
+<!--beginarticle-->
+<PRE>2010/12/1 Michael Scherer &lt;<A HREF="https://www.mageia.org/mailman/listinfo/mageia-discuss">misc at zarb.org</A>&gt;:
+&gt;<i> Le mercredi 01 d&#233;cembre 2010 &#224; 11:38 -0500, Hoyt Duff a &#233;crit :
+</I>&gt;<i>
+</I>&gt;&gt;<i> For the final voting, will the artists be re-submitting the design in
+</I>&gt;&gt;<i> full compliance with the design guidelines so voting can be unbiased
+</I>&gt;&gt;<i> by characteristics that are not up for consideration? I feel that this
+</I>&gt;&gt;<i> is important.
+</I>&gt;<i>
+</I>&gt;<i> Well, they had the time to follow the guideline and upload new designs.
+</I>&gt;<i> The guideline were proposed 2 months ago :
+</I>&gt;<i> <A HREF="https://www.mageia.org/pipermail/mageia-discuss/20100929/001554.html">https://www.mageia.org/pipermail/mageia-discuss/20100929/001554.html</A>
+</I>
+Then, after the first step of selection was made there was more time
+to refine/change and tell about it.
+There had to be a deadline eventually.
+--
+wobo
+</PRE>
+
+
+<!--endarticle-->
+ <HR>
+ <P><UL>
+ <!--threads-->
+ <LI>Previous message: <A HREF="003148.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI>Next message: <A HREF="003150.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3149">[ date ]</a>
+ <a href="thread.html#3149">[ thread ]</a>
+ <a href="subject.html#3149">[ subject ]</a>
+ <a href="author.html#3149">[ author ]</a>
+ </LI>
+ </UL>
+
+<hr>
+<a href="https://www.mageia.org/mailman/listinfo/mageia-discuss">More information about the Mageia-discuss
+mailing list</a><br>
+</body></html>
diff --git a/zarb-ml/mageia-discuss/20101201/003150.html b/zarb-ml/mageia-discuss/20101201/003150.html
new file mode 100644
index 000000000..15deed7a2
--- /dev/null
+++ b/zarb-ml/mageia-discuss/20101201/003150.html
@@ -0,0 +1,96 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML>
+ <HEAD>
+ <TITLE> [Mageia-discuss] Logo proposals discussion
+ </TITLE>
+ <LINK REL="Index" HREF="index.html" >
+ <LINK REL="made" HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%20Logo%20proposals%20discussion&In-Reply-To=%3CAANLkTimFPJaC1U04iWwHSGhWv32CqCb2oJkrDLyb0NCt%40mail.gmail.com%3E">
+ <META NAME="robots" CONTENT="index,nofollow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ <LINK REL="Previous" HREF="003149.html">
+ <LINK REL="Next" HREF="003151.html">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <H1>[Mageia-discuss] Logo proposals discussion</H1>
+ <B>Hoyt Duff</B>
+ <A HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%20Logo%20proposals%20discussion&In-Reply-To=%3CAANLkTimFPJaC1U04iWwHSGhWv32CqCb2oJkrDLyb0NCt%40mail.gmail.com%3E"
+ TITLE="[Mageia-discuss] Logo proposals discussion">hoytduff at gmail.com
+ </A><BR>
+ <I>Wed Dec 1 20:26:54 CET 2010</I>
+ <P><UL>
+ <LI>Previous message: <A HREF="003149.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI>Next message: <A HREF="003151.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3150">[ date ]</a>
+ <a href="thread.html#3150">[ thread ]</a>
+ <a href="subject.html#3150">[ subject ]</a>
+ <a href="author.html#3150">[ author ]</a>
+ </LI>
+ </UL>
+ <HR>
+<!--beginarticle-->
+<PRE>On Wed, Dec 1, 2010 at 1:33 PM, Wolfgang Bornath &lt;<A HREF="https://www.mageia.org/mailman/listinfo/mageia-discuss">molch.b at googlemail.com</A>&gt; wrote:
+&gt;<i> Then, after the first step of selection was made there was more time
+</I>&gt;<i> to refine/change and tell about it.
+</I>
+Then all submissions not following the guidelines should be removed
+from final consideration.
+
+Or are the guidelines so unimportant that they need not be followed?
+
+Or is there a third option here?
+
+If the guidelines are important and useful and some good submissions
+did not follow them, remediation should be in order and the short-list
+submitters should be asked to resubmit in compliance or their
+submissions will not be considered. A few day's time should be
+sufficient for them to modify their own artwork and this is not too
+large a burden on the submitter or the community nor an unreasonable
+request.
+
+&gt;<i> There had to be a deadline eventually.
+</I>
+Of course, and it should be very firm if we were working with paid
+professionals, but in the case of community-oriented contributions, a
+strict adherence would be a foolish and wasteful consistency. It might
+have been better at the beginning if the person in charge had
+responded &quot;Thank you for your submission, but it does not meet the
+submission guidelines posted at LINK. Please re-read the guidelines
+and re-submit if you desire that your work be considered. If you have
+specific questions about the guidelines, you may contact MAIL.&quot; Then,
+if they don't care enough about their work to comply or have the
+desire to follow through, they are excluded.
+
+Accepting general user input in matters will always require additional
+admin work, unless the BOFH style of management is preferred. While
+that may be *NIX tradition, it will not generate much input from
+potentially valuable neophyte sources nor grow the community.
+
+
+--
+Hoyt
+</PRE>
+
+
+<!--endarticle-->
+ <HR>
+ <P><UL>
+ <!--threads-->
+ <LI>Previous message: <A HREF="003149.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI>Next message: <A HREF="003151.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3150">[ date ]</a>
+ <a href="thread.html#3150">[ thread ]</a>
+ <a href="subject.html#3150">[ subject ]</a>
+ <a href="author.html#3150">[ author ]</a>
+ </LI>
+ </UL>
+
+<hr>
+<a href="https://www.mageia.org/mailman/listinfo/mageia-discuss">More information about the Mageia-discuss
+mailing list</a><br>
+</body></html>
diff --git a/zarb-ml/mageia-discuss/20101201/003151.html b/zarb-ml/mageia-discuss/20101201/003151.html
new file mode 100644
index 000000000..d93a99069
--- /dev/null
+++ b/zarb-ml/mageia-discuss/20101201/003151.html
@@ -0,0 +1,74 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML>
+ <HEAD>
+ <TITLE> [Mageia-discuss] Logo proposals discussion
+ </TITLE>
+ <LINK REL="Index" HREF="index.html" >
+ <LINK REL="made" HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%20Logo%20proposals%20discussion&In-Reply-To=%3CAANLkTikS6Ma9DatN%3DG8erZb44jZ%3D9bmKy_X-TjAErN%2BX%40mail.gmail.com%3E">
+ <META NAME="robots" CONTENT="index,nofollow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ <LINK REL="Previous" HREF="003150.html">
+ <LINK REL="Next" HREF="003152.html">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <H1>[Mageia-discuss] Logo proposals discussion</H1>
+ <B>Wolfgang Bornath</B>
+ <A HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%20Logo%20proposals%20discussion&In-Reply-To=%3CAANLkTikS6Ma9DatN%3DG8erZb44jZ%3D9bmKy_X-TjAErN%2BX%40mail.gmail.com%3E"
+ TITLE="[Mageia-discuss] Logo proposals discussion">molch.b at googlemail.com
+ </A><BR>
+ <I>Wed Dec 1 20:35:48 CET 2010</I>
+ <P><UL>
+ <LI>Previous message: <A HREF="003150.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI>Next message: <A HREF="003152.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3151">[ date ]</a>
+ <a href="thread.html#3151">[ thread ]</a>
+ <a href="subject.html#3151">[ subject ]</a>
+ <a href="author.html#3151">[ author ]</a>
+ </LI>
+ </UL>
+ <HR>
+<!--beginarticle-->
+<PRE>2010/12/1 Hoyt Duff &lt;<A HREF="https://www.mageia.org/mailman/listinfo/mageia-discuss">hoytduff at gmail.com</A>&gt;:
+&gt;<i>It might
+</I>&gt;<i> have been better at the beginning if the person in charge had
+</I>&gt;<i> responded &quot;Thank you for your submission, but it does not meet the
+</I>&gt;<i> submission guidelines posted at LINK. Please re-read the guidelines
+</I>&gt;<i> and re-submit if you desire that your work be considered. If you have
+</I>&gt;<i> specific questions about the guidelines, you may contact MAIL.&quot; Then,
+</I>&gt;<i> if they don't care enough about their work to comply or have the
+</I>&gt;<i> desire to follow through, they are excluded.
+</I>
+Hmm, you may want to take your time and read all threads about logo
+proposals and count how many times people were pointed at the
+guidelines. Of course not forgetting the numerous hints at the
+guidelines in the announcements about the matter. Anybody who heard
+about the logo campaign will definitely have seen the &quot;Meet the
+guidelines!&quot; sign.
+Complaining now that somebody may not have known about the guidelines
+is really something I wouold not have expected.
+</PRE>
+
+
+<!--endarticle-->
+ <HR>
+ <P><UL>
+ <!--threads-->
+ <LI>Previous message: <A HREF="003150.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI>Next message: <A HREF="003152.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3151">[ date ]</a>
+ <a href="thread.html#3151">[ thread ]</a>
+ <a href="subject.html#3151">[ subject ]</a>
+ <a href="author.html#3151">[ author ]</a>
+ </LI>
+ </UL>
+
+<hr>
+<a href="https://www.mageia.org/mailman/listinfo/mageia-discuss">More information about the Mageia-discuss
+mailing list</a><br>
+</body></html>
diff --git a/zarb-ml/mageia-discuss/20101201/003152.html b/zarb-ml/mageia-discuss/20101201/003152.html
new file mode 100644
index 000000000..a63492da0
--- /dev/null
+++ b/zarb-ml/mageia-discuss/20101201/003152.html
@@ -0,0 +1,86 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML>
+ <HEAD>
+ <TITLE> [Mageia-discuss] Logo proposals discussion
+ </TITLE>
+ <LINK REL="Index" HREF="index.html" >
+ <LINK REL="made" HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%20Logo%20proposals%20discussion&In-Reply-To=%3CAANLkTikG6j-hoOJR6r6ObiJ9R0zYDkk3b_4xE9_b88xw%40mail.gmail.com%3E">
+ <META NAME="robots" CONTENT="index,nofollow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ <LINK REL="Previous" HREF="003151.html">
+ <LINK REL="Next" HREF="003153.html">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <H1>[Mageia-discuss] Logo proposals discussion</H1>
+ <B>Hoyt Duff</B>
+ <A HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%20Logo%20proposals%20discussion&In-Reply-To=%3CAANLkTikG6j-hoOJR6r6ObiJ9R0zYDkk3b_4xE9_b88xw%40mail.gmail.com%3E"
+ TITLE="[Mageia-discuss] Logo proposals discussion">hoytduff at gmail.com
+ </A><BR>
+ <I>Wed Dec 1 22:05:15 CET 2010</I>
+ <P><UL>
+ <LI>Previous message: <A HREF="003151.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI>Next message: <A HREF="003153.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3152">[ date ]</a>
+ <a href="thread.html#3152">[ thread ]</a>
+ <a href="subject.html#3152">[ subject ]</a>
+ <a href="author.html#3152">[ author ]</a>
+ </LI>
+ </UL>
+ <HR>
+<!--beginarticle-->
+<PRE>On Wed, Dec 1, 2010 at 2:35 PM, Wolfgang Bornath &lt;<A HREF="https://www.mageia.org/mailman/listinfo/mageia-discuss">molch.b at googlemail.com</A>&gt; wrote:
+
+&gt;<i> Complaining now that somebody may not have known about the guidelines
+</I>&gt;<i> is really something I wouold not have expected.
+</I>
+I'm not saying that at all. I was suggesting a way that it could have
+been handled differently to achieve a different outcome, i.e that all
+submissions that will be considered would comply with the guidelines.
+
+Since designs that do not adhere to the guidelines are being
+discussed, then the guidelines are actually not important, are they?
+
+However, I assume that the guidelines reflect the way in which the
+logo will be used in production, so they are important after all.
+
+I was commenting that since they are important, remediation of the
+submissions is mandatory before any final vote can be taken so that
+only the important aspects of the designs be considered. If the
+designers do not want to re-submit, they should not be considered in
+any final vote.
+
+Compliance with the guidelines should have been enforced at the
+beginning, but it was not, so it must be done now. Any other choice
+seems irresponsible for the administrator of this process and unfair
+to the submitters.
+
+But again, if the guidelines are unimportant, then maintain the status quo.
+
+--
+Hoyt
+</PRE>
+
+
+<!--endarticle-->
+ <HR>
+ <P><UL>
+ <!--threads-->
+ <LI>Previous message: <A HREF="003151.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI>Next message: <A HREF="003153.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3152">[ date ]</a>
+ <a href="thread.html#3152">[ thread ]</a>
+ <a href="subject.html#3152">[ subject ]</a>
+ <a href="author.html#3152">[ author ]</a>
+ </LI>
+ </UL>
+
+<hr>
+<a href="https://www.mageia.org/mailman/listinfo/mageia-discuss">More information about the Mageia-discuss
+mailing list</a><br>
+</body></html>
diff --git a/zarb-ml/mageia-discuss/20101201/003153.html b/zarb-ml/mageia-discuss/20101201/003153.html
new file mode 100644
index 000000000..10964042e
--- /dev/null
+++ b/zarb-ml/mageia-discuss/20101201/003153.html
@@ -0,0 +1,76 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML>
+ <HEAD>
+ <TITLE> [Mageia-discuss] Logo proposals discussion
+ </TITLE>
+ <LINK REL="Index" HREF="index.html" >
+ <LINK REL="made" HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%20Logo%20proposals%20discussion&In-Reply-To=%3C1291238262.23683.45.camel%40akroma.ephaone.org%3E">
+ <META NAME="robots" CONTENT="index,nofollow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ <LINK REL="Previous" HREF="003152.html">
+ <LINK REL="Next" HREF="003143.html">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <H1>[Mageia-discuss] Logo proposals discussion</H1>
+ <B>Michael Scherer</B>
+ <A HREF="mailto:mageia-discuss%40mageia.org?Subject=Re%3A%20%5BMageia-discuss%5D%20Logo%20proposals%20discussion&In-Reply-To=%3C1291238262.23683.45.camel%40akroma.ephaone.org%3E"
+ TITLE="[Mageia-discuss] Logo proposals discussion">misc at zarb.org
+ </A><BR>
+ <I>Wed Dec 1 22:17:42 CET 2010</I>
+ <P><UL>
+ <LI>Previous message: <A HREF="003152.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI>Next message: <A HREF="003143.html">[Mageia-discuss] R&#233;p. : [Mageia-announce] Mageia under the snow
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3153">[ date ]</a>
+ <a href="thread.html#3153">[ thread ]</a>
+ <a href="subject.html#3153">[ subject ]</a>
+ <a href="author.html#3153">[ author ]</a>
+ </LI>
+ </UL>
+ <HR>
+<!--beginarticle-->
+<PRE>Le mercredi 01 d&#233;cembre 2010 &#224; 14:26 -0500, Hoyt Duff a &#233;crit :
+&gt;<i> On Wed, Dec 1, 2010 at 1:33 PM, Wolfgang Bornath &lt;<A HREF="https://www.mageia.org/mailman/listinfo/mageia-discuss">molch.b at googlemail.com</A>&gt; wrote:
+</I>
+&gt;<i> &gt; There had to be a deadline eventually.
+</I>&gt;<i>
+</I>&gt;<i> Of course, and it should be very firm if we were working with paid
+</I>&gt;<i> professionals, but in the case of community-oriented contributions, a
+</I>&gt;<i> strict adherence would be a foolish and wasteful consistency.
+</I>
+Well, we also have deadlines, ie, without logo, we cannot have a
+website, etc. And there was plenty of time for people to send lots of
+proposal, to discuss the logo, etc.
+
+And the deadline was already extended one time.
+<A HREF="http://blog.mageia.org/?p=156">http://blog.mageia.org/?p=156</A>
+
+
+
+--
+Michael Scherer
+
+</PRE>
+
+<!--endarticle-->
+ <HR>
+ <P><UL>
+ <!--threads-->
+ <LI>Previous message: <A HREF="003152.html">[Mageia-discuss] Logo proposals discussion
+</A></li>
+ <LI>Next message: <A HREF="003143.html">[Mageia-discuss] R&#233;p. : [Mageia-announce] Mageia under the snow
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#3153">[ date ]</a>
+ <a href="thread.html#3153">[ thread ]</a>
+ <a href="subject.html#3153">[ subject ]</a>
+ <a href="author.html#3153">[ author ]</a>
+ </LI>
+ </UL>
+
+<hr>
+<a href="https://www.mageia.org/mailman/listinfo/mageia-discuss">More information about the Mageia-discuss
+mailing list</a><br>
+</body></html>
diff --git a/zarb-ml/mageia-discuss/20101201/author.html b/zarb-ml/mageia-discuss/20101201/author.html
new file mode 100644
index 000000000..e05f3e726
--- /dev/null
+++ b/zarb-ml/mageia-discuss/20101201/author.html
@@ -0,0 +1,107 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML>
+ <HEAD>
+ <title>The Mageia-discuss 1 December 2010 Archive by author</title>
+ <META NAME="robots" CONTENT="noindex,follow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <a name="start"></A>
+ <h1>1 December 2010 Archives by author</h1>
+ <ul>
+ <li> <b>Messages sorted by:</b>
+ <a href="thread.html#start">[ thread ]</a>
+ <a href="subject.html#start">[ subject ]</a>
+
+ <a href="date.html#start">[ date ]</a>
+
+ <li><b><a href="https://www.mageia.org/mailman/listinfo/mageia-discuss">More info on this list...
+ </a></b></li>
+ </ul>
+ <p><b>Starting:</b> <i>Wed Dec 1 08:45:22 CET 2010</i><br>
+ <b>Ending:</b> <i>Wed Dec 1 22:17:42 CET 2010</i><br>
+ <b>Messages:</b> 12<p>
+ <ul>
+
+<LI><A HREF="003146.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3146">&nbsp;</A>
+<I>Wolfgang Bornath
+</I>
+
+<LI><A HREF="003149.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3149">&nbsp;</A>
+<I>Wolfgang Bornath
+</I>
+
+<LI><A HREF="003151.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3151">&nbsp;</A>
+<I>Wolfgang Bornath
+</I>
+
+<LI><A HREF="003143.html">[Mageia-discuss] R&#233;p. : [Mageia-announce] Mageia under the snow
+</A><A NAME="3143">&nbsp;</A>
+<I>Oliver Burger
+</I>
+
+<LI><A HREF="003145.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3145">&nbsp;</A>
+<I>Hoyt Duff
+</I>
+
+<LI><A HREF="003147.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3147">&nbsp;</A>
+<I>Hoyt Duff
+</I>
+
+<LI><A HREF="003150.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3150">&nbsp;</A>
+<I>Hoyt Duff
+</I>
+
+<LI><A HREF="003152.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3152">&nbsp;</A>
+<I>Hoyt Duff
+</I>
+
+<LI><A HREF="003141.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3141">&nbsp;</A>
+<I>Enrico Gsell
+</I>
+
+<LI><A HREF="003144.html">[Mageia-discuss] R&#233;p. : [Mageia-announce] Mageia under the snow
+</A><A NAME="3144">&nbsp;</A>
+<I>Thorsten van Lil
+</I>
+
+<LI><A HREF="003148.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3148">&nbsp;</A>
+<I>Michael Scherer
+</I>
+
+<LI><A HREF="003153.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3153">&nbsp;</A>
+<I>Michael Scherer
+</I>
+
+ </ul>
+ <p>
+ <a name="end"><b>Last message date:</b></a>
+ <i>Wed Dec 1 22:17:42 CET 2010</i><br>
+ <b>Archived on:</b> <i>Wed Dec 1 22:17:47 CET 2010</i>
+ <p>
+ <ul>
+ <li> <b>Messages sorted by:</b>
+ <a href="thread.html#start">[ thread ]</a>
+ <a href="subject.html#start">[ subject ]</a>
+
+ <a href="date.html#start">[ date ]</a>
+ <li><b><a href="https://www.mageia.org/mailman/listinfo/mageia-discuss">More info on this list...
+ </a></b></li>
+ </ul>
+ <p>
+ <hr>
+ <i>This archive was generated by
+ Pipermail 0.09 (Mailman edition).</i>
+ </BODY>
+</HTML>
+
diff --git a/zarb-ml/mageia-discuss/20101201/date.html b/zarb-ml/mageia-discuss/20101201/date.html
new file mode 100644
index 000000000..9be93e4a5
--- /dev/null
+++ b/zarb-ml/mageia-discuss/20101201/date.html
@@ -0,0 +1,107 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML>
+ <HEAD>
+ <title>The Mageia-discuss 1 December 2010 Archive by date</title>
+ <META NAME="robots" CONTENT="noindex,follow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <a name="start"></A>
+ <h1>1 December 2010 Archives by date</h1>
+ <ul>
+ <li> <b>Messages sorted by:</b>
+ <a href="thread.html#start">[ thread ]</a>
+ <a href="subject.html#start">[ subject ]</a>
+ <a href="author.html#start">[ author ]</a>
+
+
+ <li><b><a href="https://www.mageia.org/mailman/listinfo/mageia-discuss">More info on this list...
+ </a></b></li>
+ </ul>
+ <p><b>Starting:</b> <i>Wed Dec 1 08:45:22 CET 2010</i><br>
+ <b>Ending:</b> <i>Wed Dec 1 22:17:42 CET 2010</i><br>
+ <b>Messages:</b> 12<p>
+ <ul>
+
+<LI><A HREF="003141.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3141">&nbsp;</A>
+<I>Enrico Gsell
+</I>
+
+<LI><A HREF="003143.html">[Mageia-discuss] R&#233;p. : [Mageia-announce] Mageia under the snow
+</A><A NAME="3143">&nbsp;</A>
+<I>Oliver Burger
+</I>
+
+<LI><A HREF="003144.html">[Mageia-discuss] R&#233;p. : [Mageia-announce] Mageia under the snow
+</A><A NAME="3144">&nbsp;</A>
+<I>Thorsten van Lil
+</I>
+
+<LI><A HREF="003145.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3145">&nbsp;</A>
+<I>Hoyt Duff
+</I>
+
+<LI><A HREF="003146.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3146">&nbsp;</A>
+<I>Wolfgang Bornath
+</I>
+
+<LI><A HREF="003147.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3147">&nbsp;</A>
+<I>Hoyt Duff
+</I>
+
+<LI><A HREF="003148.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3148">&nbsp;</A>
+<I>Michael Scherer
+</I>
+
+<LI><A HREF="003149.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3149">&nbsp;</A>
+<I>Wolfgang Bornath
+</I>
+
+<LI><A HREF="003150.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3150">&nbsp;</A>
+<I>Hoyt Duff
+</I>
+
+<LI><A HREF="003151.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3151">&nbsp;</A>
+<I>Wolfgang Bornath
+</I>
+
+<LI><A HREF="003152.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3152">&nbsp;</A>
+<I>Hoyt Duff
+</I>
+
+<LI><A HREF="003153.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3153">&nbsp;</A>
+<I>Michael Scherer
+</I>
+
+ </ul>
+ <p>
+ <a name="end"><b>Last message date:</b></a>
+ <i>Wed Dec 1 22:17:42 CET 2010</i><br>
+ <b>Archived on:</b> <i>Wed Dec 1 22:17:47 CET 2010</i>
+ <p>
+ <ul>
+ <li> <b>Messages sorted by:</b>
+ <a href="thread.html#start">[ thread ]</a>
+ <a href="subject.html#start">[ subject ]</a>
+ <a href="author.html#start">[ author ]</a>
+
+ <li><b><a href="https://www.mageia.org/mailman/listinfo/mageia-discuss">More info on this list...
+ </a></b></li>
+ </ul>
+ <p>
+ <hr>
+ <i>This archive was generated by
+ Pipermail 0.09 (Mailman edition).</i>
+ </BODY>
+</HTML>
+
diff --git a/zarb-ml/mageia-discuss/20101201/index.html b/zarb-ml/mageia-discuss/20101201/index.html
new file mode 120000
index 000000000..db4b46f72
--- /dev/null
+++ b/zarb-ml/mageia-discuss/20101201/index.html
@@ -0,0 +1 @@
+thread.html \ No newline at end of file
diff --git a/zarb-ml/mageia-discuss/20101201/subject.html b/zarb-ml/mageia-discuss/20101201/subject.html
new file mode 100644
index 000000000..fc147e62a
--- /dev/null
+++ b/zarb-ml/mageia-discuss/20101201/subject.html
@@ -0,0 +1,107 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML>
+ <HEAD>
+ <title>The Mageia-discuss 1 December 2010 Archive by subject</title>
+ <META NAME="robots" CONTENT="noindex,follow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <a name="start"></A>
+ <h1>1 December 2010 Archives by subject</h1>
+ <ul>
+ <li> <b>Messages sorted by:</b>
+ <a href="thread.html#start">[ thread ]</a>
+
+ <a href="author.html#start">[ author ]</a>
+ <a href="date.html#start">[ date ]</a>
+
+ <li><b><a href="https://www.mageia.org/mailman/listinfo/mageia-discuss">More info on this list...
+ </a></b></li>
+ </ul>
+ <p><b>Starting:</b> <i>Wed Dec 1 08:45:22 CET 2010</i><br>
+ <b>Ending:</b> <i>Wed Dec 1 22:17:42 CET 2010</i><br>
+ <b>Messages:</b> 12<p>
+ <ul>
+
+<LI><A HREF="003141.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3141">&nbsp;</A>
+<I>Enrico Gsell
+</I>
+
+<LI><A HREF="003145.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3145">&nbsp;</A>
+<I>Hoyt Duff
+</I>
+
+<LI><A HREF="003146.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3146">&nbsp;</A>
+<I>Wolfgang Bornath
+</I>
+
+<LI><A HREF="003147.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3147">&nbsp;</A>
+<I>Hoyt Duff
+</I>
+
+<LI><A HREF="003148.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3148">&nbsp;</A>
+<I>Michael Scherer
+</I>
+
+<LI><A HREF="003149.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3149">&nbsp;</A>
+<I>Wolfgang Bornath
+</I>
+
+<LI><A HREF="003150.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3150">&nbsp;</A>
+<I>Hoyt Duff
+</I>
+
+<LI><A HREF="003151.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3151">&nbsp;</A>
+<I>Wolfgang Bornath
+</I>
+
+<LI><A HREF="003152.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3152">&nbsp;</A>
+<I>Hoyt Duff
+</I>
+
+<LI><A HREF="003153.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3153">&nbsp;</A>
+<I>Michael Scherer
+</I>
+
+<LI><A HREF="003143.html">[Mageia-discuss] R&#233;p. : [Mageia-announce] Mageia under the snow
+</A><A NAME="3143">&nbsp;</A>
+<I>Oliver Burger
+</I>
+
+<LI><A HREF="003144.html">[Mageia-discuss] R&#233;p. : [Mageia-announce] Mageia under the snow
+</A><A NAME="3144">&nbsp;</A>
+<I>Thorsten van Lil
+</I>
+
+ </ul>
+ <p>
+ <a name="end"><b>Last message date:</b></a>
+ <i>Wed Dec 1 22:17:42 CET 2010</i><br>
+ <b>Archived on:</b> <i>Wed Dec 1 22:17:47 CET 2010</i>
+ <p>
+ <ul>
+ <li> <b>Messages sorted by:</b>
+ <a href="thread.html#start">[ thread ]</a>
+
+ <a href="author.html#start">[ author ]</a>
+ <a href="date.html#start">[ date ]</a>
+ <li><b><a href="https://www.mageia.org/mailman/listinfo/mageia-discuss">More info on this list...
+ </a></b></li>
+ </ul>
+ <p>
+ <hr>
+ <i>This archive was generated by
+ Pipermail 0.09 (Mailman edition).</i>
+ </BODY>
+</HTML>
+
diff --git a/zarb-ml/mageia-discuss/20101201/thread.html b/zarb-ml/mageia-discuss/20101201/thread.html
new file mode 100644
index 000000000..1df90a024
--- /dev/null
+++ b/zarb-ml/mageia-discuss/20101201/thread.html
@@ -0,0 +1,125 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML>
+ <HEAD>
+ <title>The Mageia-discuss 1 December 2010 Archive by thread</title>
+ <META NAME="robots" CONTENT="noindex,follow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <a name="start"></A>
+ <h1>1 December 2010 Archives by thread</h1>
+ <ul>
+ <li> <b>Messages sorted by:</b>
+
+ <a href="subject.html#start">[ subject ]</a>
+ <a href="author.html#start">[ author ]</a>
+ <a href="date.html#start">[ date ]</a>
+
+ <li><b><a href="https://www.mageia.org/mailman/listinfo/mageia-discuss">More info on this list...
+ </a></b></li>
+ </ul>
+ <p><b>Starting:</b> <i>Wed Dec 1 08:45:22 CET 2010</i><br>
+ <b>Ending:</b> <i>Wed Dec 1 22:17:42 CET 2010</i><br>
+ <b>Messages:</b> 12<p>
+ <ul>
+
+<!--0 01291189522- -->
+<LI><A HREF="003141.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3141">&nbsp;</A>
+<I>Enrico Gsell
+</I>
+
+<UL>
+<!--1 01291189522-01291219349- -->
+<LI><A HREF="003145.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3145">&nbsp;</A>
+<I>Hoyt Duff
+</I>
+
+<UL>
+<!--2 01291189522-01291219349-01291220646- -->
+<LI><A HREF="003146.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3146">&nbsp;</A>
+<I>Wolfgang Bornath
+</I>
+
+<UL>
+<!--3 01291189522-01291219349-01291220646-01291221482- -->
+<LI><A HREF="003147.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3147">&nbsp;</A>
+<I>Hoyt Duff
+</I>
+
+<!--3 01291189522-01291219349-01291220646-01291221482-01291228231- -->
+<LI><A HREF="003148.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3148">&nbsp;</A>
+<I>Michael Scherer
+</I>
+
+<!--3 01291189522-01291219349-01291220646-01291221482-01291228231-01291228415- -->
+<LI><A HREF="003149.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3149">&nbsp;</A>
+<I>Wolfgang Bornath
+</I>
+
+<!--3 01291189522-01291219349-01291220646-01291221482-01291228231-01291228415-01291231614- -->
+<LI><A HREF="003150.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3150">&nbsp;</A>
+<I>Hoyt Duff
+</I>
+
+<!--3 01291189522-01291219349-01291220646-01291221482-01291228231-01291228415-01291231614-01291232148- -->
+<LI><A HREF="003151.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3151">&nbsp;</A>
+<I>Wolfgang Bornath
+</I>
+
+<!--3 01291189522-01291219349-01291220646-01291221482-01291228231-01291228415-01291231614-01291232148-01291237515- -->
+<LI><A HREF="003152.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3152">&nbsp;</A>
+<I>Hoyt Duff
+</I>
+
+<!--3 01291189522-01291219349-01291220646-01291221482-01291228231-01291228415-01291231614-01291238262- -->
+<LI><A HREF="003153.html">[Mageia-discuss] Logo proposals discussion
+</A><A NAME="3153">&nbsp;</A>
+<I>Michael Scherer
+</I>
+
+</UL>
+</UL>
+</UL>
+<!--0 01291203577- -->
+<LI><A HREF="003143.html">[Mageia-discuss] R&#233;p. : [Mageia-announce] Mageia under the snow
+</A><A NAME="3143">&nbsp;</A>
+<I>Oliver Burger
+</I>
+
+<!--0 01291203660- -->
+<LI><A HREF="003144.html">[Mageia-discuss] R&#233;p. : [Mageia-announce] Mageia under the snow
+</A><A NAME="3144">&nbsp;</A>
+<I>Thorsten van Lil
+</I>
+
+ </ul>
+ <p>
+ <a name="end"><b>Last message date:</b></a>
+ <i>Wed Dec 1 22:17:42 CET 2010</i><br>
+ <b>Archived on:</b> <i>Wed Dec 1 22:17:47 CET 2010</i>
+ <p>
+ <ul>
+ <li> <b>Messages sorted by:</b>
+
+ <a href="subject.html#start">[ subject ]</a>
+ <a href="author.html#start">[ author ]</a>
+ <a href="date.html#start">[ date ]</a>
+ <li><b><a href="https://www.mageia.org/mailman/listinfo/mageia-discuss">More info on this list...
+ </a></b></li>
+ </ul>
+ <p>
+ <hr>
+ <i>This archive was generated by
+ Pipermail 0.09 (Mailman edition).</i>
+ </BODY>
+</HTML>
+
ll->set_size_request($width, min(200, ($layout->get_pixel_size)[1] + 10)); $o->{rwindow}->queue_resize; }); $scroll->set_size_request($width, 200); gtkpack_($box, $o->{box_allow_grow} || 0, $scroll); } else { my $a = !$::no_separator; undef $::no_separator; my $new_label = sub { my ($txt) = @_; my $w = ref($txt) ? $txt : Gtk2::WrappedLabel->new($txt); gtkset_name($w, "Title"); }; if ($o->{icon} && (!$::isWizard || $::isInstall)) { gtkpack__($box, gtkpack_(Gtk2::HBox->new(0,0), 0, gtkset_size_request(Gtk2::VBox->new(0,0), 15, 0), 0, eval { gtkcreate_img($o->{icon}) }, 0, gtkset_size_request(Gtk2::VBox->new(0,0), 15, 0), 1, gtkpack_($o->{box_title} = Gtk2::VBox->new(0,0), 1, Gtk2::HBox->new(0,0), (map { my $w = $new_label->($_); $::isWizard and $w->set_justify("left"); (0, $w); } @l), 1, Gtk2::HBox->new(0,0), ) ), if_($a, Gtk2::HSeparator->new) ) } else { gtkpack__($box, if_($::isWizard, gtkset_size_request(Gtk2::Label->new, 0, 10)), (map { my $w = $new_label->($_); $::isWizard ? gtkpack__(Gtk2::HBox->new(0,0), gtkset_size_request(Gtk2::Label->new, 20, 0), $w) : $w } @l), if_($::isWizard, gtkset_size_request(Gtk2::Label->new, 0, 15)), if_($a, Gtk2::HSeparator->new) ) } } } sub _create_dialog { my ($title, $o_options) = @_; my $dialog = Gtk2::Dialog->new; $dialog->set_title($title); $dialog->set_position('center-on-parent'); # center-on-parent doesn't work may_set_icon($dialog, $wm_icon || $::Wizard_pix_up || "wiz_default_up.png"); $dialog->set_size_request($o_options->{width} || -1, $o_options->{height} || -1); $dialog->set_modal(1); $dialog->set_transient_for($o_options->{transient}) if $o_options->{transient}; $dialog; } # drakfloppy / drakfont / harddrake2 / mcc sub create_dialog { my ($title, $label, $o_options) = @_; my $ret = 0; my $dialog = gtkset_border_width(_create_dialog($title, $o_options), 10); $dialog->set_border_width(10); my $text = ref($label) ? $label : $o_options->{use_markup} ? gtkset_markup(Gtk2::WrappedLabel->new, $label) : Gtk2::WrappedLabel->new($label); gtkpack($dialog->vbox, gtkpack_(Gtk2::HBox->new, if_($o_options->{stock}, 0, Gtk2::Image->new_from_stock($o_options->{stock}, 'dialog'), 0, Gtk2::Label->new(" "), ), 1, $o_options->{scroll} ? create_scrolled_window($text, [ 'never', 'automatic' ]) : $text, ), ); if ($o_options->{cancel}) { my $button2 = Gtk2::Button->new(N("Cancel")); $button2->signal_connect(clicked => sub { $ret = 0; $dialog->destroy; Gtk2->main_quit }); $button2->can_default(1); $dialog->action_area->pack_start($button2, 1, 1, 0); } my $button = Gtk2::Button->new(N("Ok")); $button->can_default(1); $button->signal_connect(clicked => sub { $ret = 1; $dialog->destroy; Gtk2->main_quit }); $dialog->action_area->pack_start($button, 1, 1, 0); $button->grab_default; $dialog->set_has_separator(0);; $dialog->show_all; Gtk2->main; $ret; } sub info_dialog { my ($title, $label, $o_options) = @_; $o_options ||= { }; add2hash_($o_options, { stock => 'gtk-dialog-info' }); create_dialog($title, $label, $o_options); } sub warn_dialog { my ($title, $label, $o_options) = @_; $o_options ||= { }; add2hash_($o_options, { stock => 'gtk-dialog-warning', cancel => 1 }); create_dialog($title, $label, $o_options); } sub err_dialog { my ($title, $label, $o_options) = @_; $o_options ||= { }; add2hash_($o_options, { stock => 'gtk-dialog-error' }); create_dialog($title, $label, $o_options); } sub create_hbox { gtkset_layout(Gtk2::HButtonBox->new, $_[0] || 'spread') } sub create_vbox { gtkset_layout(Gtk2::VButtonBox->new, $_[0] || 'spread') } sub create_factory_menu_ { my ($type, $name, $window, @menu_items) = @_; my $widget = Gtk2::ItemFactory->new($type, $name, my $accel_group = Gtk2::AccelGroup->new); $widget->create_items($window, @menu_items); $window->add_accel_group($accel_group); ($widget->get_widget($name), $widget); } sub create_factory_popup_menu { create_factory_menu_("Gtk2::Menu", '<main>', @_) } sub create_factory_menu { create_factory_menu_("Gtk2::MenuBar", '<main>', @_) } sub create_menu { my $title = shift; my $w = Gtk2::MenuItem->new($title); $w->set_submenu(gtkshow(gtkappend(Gtk2::Menu->new, @_))); $w } sub create_notebook { my $book = Gtk2::Notebook->new; while (@_) { my ($page, $title) = splice(@_, 0, 2); gtkappend_page($book, $page, $title); } $book } sub create_packtable { my ($options, @l) = @_; my $w = Gtk2::Table->new(0, 0, $options->{homogeneous} || 0); add2hash_($options, { xpadding => 5, ypadding => 0 }); each_index { my ($i, $l) = ($::i, $_); each_index { my $j = $::i; if ($_) { ref $_ or $_ = Gtk2::WrappedLabel->new($_); $j != $#$l && !$options->{mcc} ? $w->attach($_, $j, $j + 1, $i, $i + 1, 'fill', 'fill', $options->{xpadding}, $options->{ypadding}) : $w->attach($_, $j, $j + 1, $i, $i + 1, ['expand', 'fill'], ref($_) eq 'Gtk2::ScrolledWindow' || $_->get_data('must_grow') ? ['expand', 'fill'] : [], 0, 0); $_->show; } } @$l; } @l; $w->set_col_spacings($options->{col_spacings} || 0); $w->set_row_spacings($options->{row_spacings} || 0); gtkset_border_width($w, $::isInstall ? 3 : 10); } sub create_okcancel { my ($w, $o_ok, $o_cancel, $_o_spread, @other) = @_; # @other is a list of extra buttons (usually help (eg: XFdrake/drakx caller) or advanced (eg: interactive caller) button) # extra buttons have the following structure [ label, handler, is_first, pack_right ] local $::isWizard = $::isWizard && !$w->{pop_it}; my $cancel; if (defined $o_cancel || defined $o_ok) { $cancel = $o_cancel; } elsif (!$::Wizard_no_previous) { $cancel = $::isWizard ? N("Previous") : N("Cancel"); } my $ok = defined $o_ok ? $o_ok : $::isWizard ? ($::Wizard_finished ? N("Finish") : N("Next")) : N("Ok"); my $bok = $ok && gtksignal_connect($w->{ok} = Gtk2::Button->new($ok), clicked => $w->{ok_clicked} || sub { $w->{retval} = 1; Gtk2->main_quit }); my $bprev; if ($cancel) { $bprev = gtksignal_connect($w->{cancel} = Gtk2::Button->new($cancel), clicked => $w->{cancel_clicked} || sub { log::l("default cancel_clicked"); undef $w->{retval}; Gtk2->main_quit }); } $w->{wizcancel} = gtksignal_connect(Gtk2::Button->new(N("Cancel")), clicked => sub { die 'wizcancel' }) if $::isWizard && !$::isInstall; my $f = sub { $w->{buttons}{$_[0][0]} = gtksignal_connect(Gtk2::Button->new($_[0][0]), clicked => $_[0][1]) }; my @left = ((map { $f->($_) } grep { $_->[2] && !$_->[3] } @other), map { $f->($_) } grep { !$_->[2] && !$_->[3] } @other); my @right = ((map { $f->($_) } grep { $_->[2] && $_->[3] } @other), map { $f->($_) } grep { !$_->[2] && $_->[3] } @other); # we put space to group buttons in two packs (but if there's only one when not in wizard mode) # but in the installer where all windows run in wizard mode because of design even when not in a wizard step $bprev = Gtk2::Label->new if !$cancel && $::Wizard_no_previous && !@left && !@right; if ($::isWizard) { # wizard mode: order is cancel/left_extras/white/right_extras/prev/next unshift @left, $w->{wizcancel} if !$::isInstall; push @right, $bprev, $bok; } else { # normal mode: cancel/ok button follow GNOME's HIG unshift @left, $bprev; push @left, Gtk2::Label->new if $ok && $cancel; # space buttons but if there's only one button push @right, $bok; } gtkpack(Gtk2::VBox->new, Gtk2::HSeparator->new, gtkpack(Gtk2::HBox->new, (map { gtkpack( create_hbox($_->[1]), (map { $_->can_default($::isWizard); $_; } grep { $_ } @{$_->[0]}) ) } ([ \@left, 'start' ], [ \@right, 'end' ], ) ) ), ); } sub _setup_paned { my ($paned, $child1, $child2, %options) = @_; foreach ([ 'resize1', 0 ], [ 'shrink1', 1 ], [ 'resize2', 1 ], [ 'shrink2', 1 ]) { $options{$_->[0]} = $_->[1] unless defined($options{$_->[0]}); } $paned->pack1(gtkshow($child1), $options{resize1}, $options{shrink1}); $paned->pack2(gtkshow($child2), $options{resize2}, $options{shrink2}); gtkshow($paned); } sub create_vpaned { _setup_paned(Gtk2::VPaned->new, @_); } sub create_hpaned { _setup_paned(Gtk2::HPaned->new, @_); } sub gtkcreate_frame { my ($label) = @_; gtkset_border_width(Gtk2::Frame->new($label), 5); } # -=-=---=-=---=-=---=-=---=-=---=-=---=-=---=-=---=-=---=-=---=-=---=-=--- # helpers # # Functions that do typical operations on widgets, that you may need in # several places of your programs. sub _find_imgfile { my ($name) = @_; if ($name =~ m|/| && -f $name) { $name; } else { foreach my $path (icon_paths()) { foreach ('', '.png', '.xpm') { my $file = "$path/$name$_"; -f $file and return $file; } } } } # use it if you want to display an icon/image in your app sub gtkcreate_img { return Gtk2::Image->new_from_file(_find_imgfile(@_) || internal_error("can't find $_[0]")); } # use it if you want to draw an image onto a drawingarea sub gtkcreate_pixbuf { return Gtk2::Gdk::Pixbuf->new_from_file(_find_imgfile(@_) || internal_error("can't find $_[0]")); } sub gtktext_append { gtktext_insert(@_, append => 1) } sub may_set_icon { my ($w, $name) = @_; if (my $f = $name && _find_imgfile($name)) { $w->set_icon(gtkcreate_pixbuf($f)); } } # gtktext_insert() can be used with any of choose one of theses styles: # - no tags: # gtktext_insert($textview, "My text.."); # - anonymous tags: # gtktext_insert($textview, [ [ 'first text', { 'foreground' => 'blue', 'background' => 'green', ... } ], # [ 'second text' ], # [ 'third', { 'font' => 'Serif 15', ... } ], # ... ]); # - named tags: # $textview->{tags} = { # 'blue_green' => { 'foreground' => 'blue', 'background' => 'green', ... }, # 'big_font' => { 'font' => 'Serif 35', ... }, # } # gtktext_insert($textview, [ [ 'first text', 'blue_green' ], # [ 'second', 'big_font' ], # ... ]); # - mixed anonymous and named tags: # $textview->{tags} = { # 'blue_green' => { 'foreground' => 'blue', 'background' => 'green', ... }, # 'big_font' => { 'font' => 'Serif 35', ... }, # } # gtktext_insert($textview, [ [ 'first text', 'blue_green' ], # [ 'second text' ], # [ 'third', 'big_font' ], # [ 'fourth', { 'font' => 'Serif 15', ... } ], # ... ]); sub gtktext_insert { my ($textview, $t, %opts) = @_; my $buffer = $textview->get_buffer; $buffer->{tags} ||= {}; $buffer->{gtk_tags} ||= {}; my $gtk_tags = $buffer->{gtk_tags}; my $tags = $buffer->{tags}; if (ref($t) eq 'ARRAY') { $opts{append} or $buffer->set_text(''); foreach my $token (@$t) { my ($item, $tag) = @$token; my $iter1 = $buffer->get_end_iter; if ($item =~ /^Gtk2::Gdk::Pixbuf/) { $buffer->insert_pixbuf($iter1, $item); next; } if ($tag) { if (ref($tag)) { # use anonymous tags $buffer->insert_with_tags($iter1, $item, $buffer->create_tag(undef, %$tag)); } else { # fast text insertion: # since in some contexts (eg: localedrake, rpmdrake), we use quite a lot of identical tags, # it's much more efficient and less memory pressure to use named tags $gtk_tags->{$tag} ||= $buffer->create_tag($tag, %{$tags->{$token->[1]}}); $buffer->insert_with_tags($iter1, $item, $gtk_tags->{$tag}); } } else { $buffer->insert($iter1, $item); } } } else { $buffer->set_text($t); } #- the following line is needed to move the cursor to the beginning, so that if the #- textview has a scrollbar, it won't scroll to the bottom when focusing (#3633) $buffer->place_cursor($buffer->get_start_iter); $textview->set_wrap_mode($opts{wrap_mode} || 'word'); $textview->set_editable($opts{editable} || 0); $textview->set_cursor_visible($opts{visible} || 0); $textview; } # extracts interesting font metrics for a given widget sub gtkfontinfo { my ($widget) = @_; my $context = $widget->get_pango_context; my $metrics = $context->get_metrics($context->get_font_description, $context->get_language); my %fontinfo; foreach (qw(ascent descent approximate_char_width approximate_digit_width)) { no strict; my $func = "get_$_"; $fontinfo{$_} = Gtk2::Pango->pixels($metrics->$func); } %fontinfo; } sub gtkmodify_font { my ($w, $arg) = @_; $w->modify_font(ref($arg) ? $arg : Gtk2::Pango::FontDescription->from_string($arg)); $w; } sub gtkset_property { my ($w, $property, $value) = @_; $w->set_property($property, $value); $w; } sub set_back_pixbuf { my ($widget, $pixbuf) = @_; my $window = $widget->window; my ($width, $height) = ($pixbuf->get_width, $pixbuf->get_height); my $pixmap = Gtk2::Gdk::Pixmap->new($window, $width, $height, $window->get_depth); $pixbuf->render_to_drawable($pixmap, $widget->style->fg_gc('normal'), 0, 0, 0, 0, $width, $height, 'none', 0, 0); $window->set_back_pixmap($pixmap, 0); } sub set_back_pixmap { my ($w) = @_; return if !$w->realized; my $window = $w->window; my $pixmap = $w->{back_pixmap} ||= Gtk2::Gdk::Pixmap->new($window, 1, 2, $window->get_depth); my $style = $w->get_style; $pixmap->draw_points($style->bg_gc('normal'), 0, 0); $pixmap->draw_points($style->base_gc('normal'), 0, 1); $window->set_back_pixmap($pixmap); } sub fill_tiled_coords { my ($widget, $pixbuf, $x_back, $y_back, $width, $height) = @_; my ($x2, $y2) = (0, 0); while (1) { $x2 = 0; while (1) { $pixbuf->render_to_drawable($widget->window, $widget->style->fg_gc('normal'), 0, 0, $x2, $y2, $x_back, $y_back, 'none', 0, 0); $x2 += $x_back; $x2 >= $width and last; } $y2 += $y_back; $y2 >= $height and last; } } sub fill_tiled { my ($widget, $pixbuf) = @_; my ($window_width, $window_height) = $widget->window->get_size; fill_tiled_coords($widget, $pixbuf, $pixbuf->get_width, $pixbuf->get_height, $window_width, $window_height); } sub add2notebook { my ($n, $title, $book) = @_; $n->append_page($book, gtkshow(Gtk2::Label->new($title))); $book->show; } sub string_size { my ($widget, $text) = @_; my $layout = $widget->create_pango_layout($text); my @size = $layout->get_pixel_size; @size; } sub string_width { my ($widget, $text) = @_; my ($width, undef) = string_size($widget, $text); $width; } sub string_height { my ($widget, $text) = @_; my (undef, $height) = string_size($widget, $text); $height; } sub get_text_coord { my ($text, $widget4style, $max_width, $currentx, $currenty) = @_; my $wrap_char = ' '; my @lines; my $current_text; my @t = split($wrap_char, $text); my @t2; if ($::isInstall && $::o->{locale}{lang} =~ /ja|zh/) { use locale; @t = map { $_ . $wrap_char } @t; $wrap_char = ''; foreach (@t) { my @c = split(/\b/); my $i = 0; my $el = ''; while (1) { $i >= @c and last; $el .= $c[$i]; if (ord($c[$i]) >= 128) { $el .= $c[$i+1]; $i++; push @t2, $el; $el = '' } $i++; } $el ne '' and push @t2, $el; } } else { @t2 = @t; } my $add_line = sub { my ($w, $h) = string_size($widget4style, $current_text); push @lines, { text => $current_text, width => $w, height => $h + 1, 'x' => $currentx, 'y' => $currenty }; }; my $width; foreach my $word (@t2) { my $w = string_width($widget4style, $word . $wrap_char); if ($currentx + $width + $w > $max_width) { $add_line->(); $current_text = $word; $width = $w; $currentx = 0; $currenty += $lines[-1]{height}; } else { $current_text .= ($current_text ne '' ? $wrap_char : '') . $word; $width += $w; } } #- if wrap_char was at the end, don't forget it, for cases when bold/nonbold text follows $text =~ /$wrap_char$/ and $current_text .= $wrap_char; $add_line->(); return @lines; } sub wrap_paragraph { my ($text, $widget4style, $border, $max_width) = @_; $max_width -= 2*$border; my @lines; my $ydec; foreach my $paragraph (@$text) { my @paragraph_lines; my $center; if (ref($paragraph) eq 'ARRAY') { my ($text, %options) = @$paragraph; $center = $options{center}; $paragraph = $text; } if ($paragraph ne '') { my @elements; while ($paragraph =~ m|(.*?)<b>(.*?)</b>(.*)|) { $1 ne '' and push @elements, [ $1, bold => 0 ]; push @elements, [ $2, bold => 1 ]; $paragraph = $3; } $paragraph ne '' and push @elements, [ $paragraph, bold => 0 ]; my $currentx; foreach (@elements) { my ($text, %options) = @$_; #- hack :( if ' ' is at the beginning, don't forget it, substitute #- with an unbreakable space because gtk allocates too much space otherwise $text =~ /^ (.*)/ and $text = $1"; my @newlines = get_text_coord($text, $widget4style, $max_width, $currentx, $ydec); $currentx = $newlines[-1]{'x'} + $newlines[-1]{width}; $ydec = $newlines[-1]{'y'}; $options{bold} and $currentx++; $_->{options} = \%options foreach @newlines; push @paragraph_lines, @newlines; } $ydec = $paragraph_lines[-1]{'y'} + $paragraph_lines[-1]{height}; } if ($center) { my %widths; $widths{$_->{'y'}} ||= $_->{x} + $_->{width} foreach reverse @paragraph_lines; $_->{x} += ($max_width - $widths{$_->{'y'}})/2 foreach @paragraph_lines; } $_->{x} += $border foreach @paragraph_lines; push @lines, @paragraph_lines; } return @lines; } sub gtkcolor { my ($r, $g, $b) = @_; my $color = Gtk2::Gdk::Color->new($r, $g, $b); gtkroot()->get_colormap->rgb_find_color($color); $color; } sub gtkset_background { my ($r, $g, $b) = @_; my $root = gtkroot(); my $gc = Gtk2::Gdk::GC->new($root); my $color = gtkcolor($r, $g, $b); $gc->set_rgb_fg_color($color); $root->set_background($color); my ($w, $h) = $root->get_size; $root->draw_rectangle($gc, 1, 0, 0, $w, $h); } sub add_icon_path { push @icon_paths, @_ } sub icon_paths() { (@icon_paths, (exists $ENV{SHARE_PATH} ? ($ENV{SHARE_PATH}, "$ENV{SHARE_PATH}/icons", "$ENV{SHARE_PATH}/libDrakX/pixmaps") : ()), "/usr/lib/libDrakX/icons", "pixmaps", 'standalone/icons', '/usr/share/rpmdrake/icons'); } add_icon_path(@icon_paths, exists $ENV{SHARE_PATH} ? "$ENV{SHARE_PATH}/libDrakX/pixmaps" : (), '/usr/lib/libDrakX/icons', 'standalone/icons'); # -=-=---=-=---=-=---=-=---=-=---=-=---=-=---=-=---=-=---=-=---=-=---=-=--- # toplevel window creation helper # # Use the 'new' function as a method constructor and then 'main' on it to # launch the main loop. Use $o->{retval} to indicate that the window needs # to terminate. # Set $::isWizard to have a wizard appearance. # Set $::isEmbedded and $::XID so that the window will plug. sub new { my ($type, $title, %opts) = @_; my $o = bless { %opts }, $type; while (my $e = shift @tempory::objects) { $e->destroy } $o->{isWizard} ||= $::isWizard; $o->{isEmbedded} ||= $::isEmbedded; $o->{wm_icon} ||= $wm_icon || $::Wizard_pix_up || "wiz_default_up.png"; $o->{pop_it} ||= $pop_it || !$o->{isWizard} && !$o->{isEmbedded} || $::WizardTable && do { #- don't take into account the DrawingArea any { !$_->isa('Gtk2::DrawingArea') && $_->visible } $::WizardTable->get_children; }; if ($o->{pop_it}) { $o->{rwindow} = _create_window($title); may_set_icon($o->{rwindow}, $o->{wm_icon}); $o->{rwindow}->set_position('center-on-parent'); if ($::isInstall) { gtkadd($o->{rwindow}, gtkadd(gtkset_shadow_type(Gtk2::Frame->new(undef), 'out'), $o->{window} = gtkset_border_width(gtkset_shadow_type(Gtk2::Frame->new(undef), 'none'), 3) )); } else { $o->{window} = $o->{rwindow}; } $o->{rwindow}->set_position('center_always') if $force_center || $o->{force_center}; $o->{rwindow}->set_modal(1) if $grab || $o->{grab} || $o->{modal}; $o->{rwindow}->set_transient_for($o->{transient}) if $o->{transient} && $o->{transient} =~ /Gtk2::Window/; } else { $o->{rwindow} = $o->{window} = Gtk2::VBox->new(0,0); $o->{window}->set_border_width($::Wizard_splash ? 0 : 10); set_main_window_size($o); $::WizardTable ||= Gtk2::VBox->new(0, 0); if (!$::Plug && $o->{isEmbedded}) { $::Plug = $::WizardWindow = gtkshow(Gtk2::Plug->new($::XID)); may_set_icon($::Plug, $o->{wm_icon}); flush(); gtkadd($::Plug, $::WizardTable); } elsif (!$::WizardWindow) { $::WizardWindow = _create_window($title); gtkadd($::WizardWindow, gtkadd(gtkset_shadow_type(Gtk2::Frame->new, 'out'), $::WizardTable)); if ($::isInstall) { $::WizardWindow->signal_connect(key_press_event => sub { my (undef, $event) = @_; my $d = ${{ $Gtk2::Gdk::Keysyms{F2} => 'screenshot', $Gtk2::Gdk::Keysyms{Delete} => 'restart' }}{$event->keyval}; if ($d eq 'screenshot') { common::take_screenshot(); } elsif ($d eq 'restart' && member('control-mask', @{$event->state}) && member('mod1-mask', @{$event->state})) { log::l("restarting install"); $o->exit(0x35); } 0; }); } elsif (!$o->{isEmbedded}) { $::WizardWindow->set_position('center_always') if !$::isStandalone; eval { gtkpack__($::WizardTable, Gtk2::Banner->new($::Wizard_pix_up || $wm_icon || "wiz_default_up.png", $::Wizard_title)) }; $@ and log::l("ERROR: missing wizard banner"); may_set_icon($::WizardWindow, $o->{wm_icon}); } $::WizardWindow->show; } $::WizardWindow->set_title($title || ''); gtkpack($::WizardTable, $o->{window}); } $o->{rwindow}->signal_connect(destroy => sub { $o->{destroyed} = 1 }); $o; } sub set_main_window_size { my ($o) = @_; my ($width, $height) = $::isInstall ? ($::real_windowwidth, $::real_windowheight) : $o->{isWizard} ? (540, 360) : (600, 400); $o->{window}->set_size_request($width, $height); } sub main { my ($o, $o_completed, $o_canceled) = @_; gtkset_mousecursor_normal(); my $timeout = Glib::Timeout->add(1000, sub { gtkset_mousecursor_normal(); 1 }); my $_b = MDK::Common::Func::before_leaving { $o->destroy; Glib::Source->remove($timeout) }; $o->show; do { Gtk2->main; } while (!$o->{destroyed} && ($o->{retval} ? $o_completed && !$o_completed->() : $o_canceled && !$o_canceled->())); $o->destroy; $o->{retval} } sub show($) { my ($o) = @_; $o->{window}->show; $o->{rwindow}->show; } sub destroy($) { my ($o) = @_; $o->{rwindow}->destroy if !$o->{destroyed}; gtkset_mousecursor_wait(); flush(); } sub DESTROY { goto &destroy } sub sync { my ($o) = @_; show($o); flush(); } sub flush() { gtkflush() } sub shrink_topwindow { my ($o) = @_; $o->{rwindow}->signal_emit('size_allocate', Gtk2::Gdk::Rectangle->new(-1, -1, -1, -1)); } sub exit { gtkset_mousecursor_normal(); #- for restoring a normal in any case flush(); c::_exit($_[1]) #- workaround } #- in case "exit" above was not called by the program END { &exit() } sub _create_window { my ($title) = @_; my $w = Gtk2::Window->new('toplevel'); $w->set_border_width(5) if !$::isInstall && !$::isWizard; $w->set_name("Title"); $w->set_title($title || ''); if ($force_focus) { (my $previous_current_window, $ugtk2::current_window) = ($ugtk2::current_window, $w); $w->signal_connect(expose_event => \&_XSetInputFocus); $w->signal_connect(destroy => sub { $ugtk2::current_window = $previous_current_window }); } $w->signal_connect(delete_event => sub { if ($::isWizard) { $w->destroy; die 'wizcancel'; } else { Gtk2->main_quit; } }); if ($::isInstall && $::o->{mouse}{unsafe}) { $w->add_events('pointer-motion-mask'); my $signal; #- don't make this line part of next one, signal_disconnect won't be able to access $signal value $signal = $w->signal_connect(motion_notify_event => sub { delete $::o->{mouse}{unsafe}; log::l("unsetting unsafe mouse"); $w->signal_handler_disconnect($signal); }); } if ($force_center_at_pos) { my ($wi, $he); $w->signal_connect(size_allocate => sub { my (undef, $event) = @_; my @w_size = $event->values; return if $w_size[2] == $wi && $w_size[3] == $he; #BUG (undef, undef, $wi, $he) = @w_size; my ($X, $Y, $Wi, $He) = @$force_center_at_pos; $w->set_uposition(max(0, $X + ($Wi - $wi) / 2), max(0, $Y + ($He - $he) / 2)); }); } $w; } sub _XSetInputFocus { my ($w) = @_; if ($ugtk2::current_window == $w) { $w->window->XSetInputFocus; } else { log::l("not XSetInputFocus since already done and not on top"); } 0; } # -=-=---=-=---=-=---=-=---=-=---=-=---=-=---=-=---=-=---=-=---=-=---=-=--- # ask # # Full UI managed functions that will return to you the value that the # user chose. sub ask_warn { my $w = ugtk2->new(shift @_, grab => 1); $w->_ask_warn(@_); main($w) } sub ask_yesorno { my $w = ugtk2->new(shift @_, grab => 1); $w->_ask_okcancel(@_, N("Yes"), N("No")); main($w) } sub ask_okcancel { my $w = ugtk2->new(shift @_, grab => 1); $w->_ask_okcancel(@_, N("Is this correct?"), N("Ok"), N("Cancel")); main($w) } sub ask_from_entry { my $w = ugtk2->new(shift @_, grab => 1); $w->_ask_from_entry(@_); main($w) } sub ask_dir { my $w = ugtk2->new(shift @_, grab => 1); $w->_ask_dir(@_); main($w) } sub _ask_from_entry($$@) { my ($o, @msgs) = @_; my $entry = Gtk2::Entry->new; my $f = sub { $o->{retval} = $entry->get_text; Gtk2->main_quit }; $o->{ok_clicked} = $f; $o->{cancel_clicked} = sub { undef $o->{retval}; Gtk2->main_quit }; gtkadd($o->{window}, gtkpack($o->create_box_with_title(@msgs), gtksignal_connect($entry, 'activate' => $f), ($o->{hide_buttons} ? () : create_okcancel($o))), ); $entry->grab_focus; } sub _ask_warn($@) { my ($o, @msgs) = @_; gtkadd($o->{window}, gtkpack($o->create_box_with_title(@msgs), gtksignal_connect(my $w = Gtk2::Button->new(N("Ok")), "clicked" => sub { Gtk2->main_quit }), ), ); $w->grab_focus; } sub _ask_okcancel($@) { my ($o, @msgs) = @_; my ($ok, $cancel) = splice @msgs, -2; gtkadd($o->{window}, gtkpack(create_box_with_title($o, @msgs), create_okcancel($o, $ok, $cancel), ) ); $o->{ok}->grab_focus; } sub _ask_file { my ($o, $title, $path) = @_; my $f = Gtk2::FileSelection->new($title); if ($o->{rwindow}->isa('Gtk2::Window')) { my ($modality, $position) = ($o->{rwindow}->get_modal, $o->{rwindow}->get('window-position')); $f->set_modal($modality); $f->set_position($position); } my $bg = $o->{window}; $o->{rwindow} = $o->{window} = $f; $f->set_filename($path) if $path; $f->signal_connect(destroy => sub { eval { $bg->destroy } }); $f->ok_button->signal_connect(clicked => sub { $o->{retval} = $f->get_filename; Gtk2->main_quit }); $f->cancel_button->signal_connect(clicked => sub { Gtk2->main_quit }); $f->grab_focus; $f; } sub _ask_dir { my ($o) = @_; my $f = &_ask_file; $f->file_list->get_parent->hide; $f->selection_entry->get_parent->hide; $f->ok_button->signal_connect(clicked => sub { my ($model, $iter) = $f->dir_list->get_selection->get_selected; $o->{retval} .= '/' . $model->get($iter, 0) if $model; }); } sub ask_browse_tree_info { my ($common) = @_; my $w = ugtk2->new($common->{title}); my $tree_model = Gtk2::TreeStore->new("Glib::String", "Gtk2::Gdk::Pixbuf", "Glib::String"); my $tree = Gtk2::TreeView->new_with_model($tree_model); $tree->get_selection->set_mode('browse'); $tree->append_column(my $textcolumn = Gtk2::TreeViewColumn->new_with_attributes(undef, Gtk2::CellRendererText->new, 'text' => 0)); $tree->append_column(my $pixcolumn = Gtk2::TreeViewColumn->new_with_attributes(undef, Gtk2::CellRendererPixbuf->new, 'pixbuf' => 1)); $tree->append_column(Gtk2::TreeViewColumn->new_with_attributes(undef, Gtk2::CellRendererText->new, 'text' => 2)); $tree->set_headers_visible(0); $tree->set_rules_hint(1); $textcolumn->set_min_width(200); $textcolumn->set_max_width(200); gtkadd($w->{window}, gtkpack_(Gtk2::VBox->new(0,5), 0, $common->{message}, 1, gtkpack(Gtk2::HBox->new(0,0), create_scrolled_window($tree), gtkadd(Gtk2::Frame->new(N("Info")), create_scrolled_window(my $info = Gtk2::TextView->new), )), 0, my $box1 = Gtk2::HBox->new(0,15), 0, my $box2 = Gtk2::HBox->new(0,10), )); #gtkpack__($box2, my $toolbar = Gtk2::Toolbar->new('horizontal', 'icons')); gtkpack__($box2, my $toolbar = Gtk2::Toolbar->new); my @l = ([ $common->{ok}, 1 ], if_($common->{cancel}, [ $common->{cancel}, 0 ])); @l = reverse @l if !$::isInstall; my @buttons = map { my ($t, $val) = @$_; $box2->pack_end(my $w = gtksignal_connect(Gtk2::Button->new($t), clicked => sub { $w->{retval} = $val; Gtk2->main_quit; }), 0, 1, 20); $w; } @l; @buttons = reverse @buttons if !$::isInstall; gtkpack__($box2, gtksignal_connect(Gtk2::Button->new(N("Help")), clicked => sub { ask_warn(N("Help"), $common->{interactive_help}->()) })) if $common->{interactive_help}; if ($common->{auto_deps}) { gtkpack__($box1, gtksignal_connect(gtkset_active(Gtk2::CheckButton->new($common->{auto_deps}), $common->{state}{auto_deps}), clicked => sub { invbool \$common->{state}{auto_deps} })); } $box1->pack_end(my $status = Gtk2::Label->new, 0, 1, 20); $w->{window}->set_size_request(map { $_ - 2 * $border - 4 } $::windowwidth, $::windowheight) if !$::isInstall; $buttons[0]->grab_focus; $w->{rwindow}->show_all; #- TODO: $tree->queue_draw is a workaround to a bug in gtk-2.2.1; submit it in their bugzilla my @toolbar = (ftout => [ N("Expand Tree"), sub { $tree->expand_all; $tree->queue_draw } ], ftin => [ N("Collapse Tree"), sub { $tree->collapse_all } ], reload => [ N("Toggle between flat and group sorted"), sub { invbool(\$common->{state}{flat}); $common->{rebuild_tree}->() } ]); foreach my $ic (@{$common->{icons} || []}) { push @toolbar, ($ic->{icon} => [ $ic->{help}, sub { if ($ic->{code}) { my $_w = $ic->{wait_message} && $common->{wait_message}->('', $ic->{wait_message}); $ic->{code}(); $common->{rebuild_tree}->(); } } ]); } my %toolbar = @toolbar; foreach (grep_index { $::i % 2 == 0 } @toolbar) { $toolbar->append_item(undef, $toolbar{$_}[0], undef, gtkcreate_img("$_.png"), $toolbar{$_}[1]); } $pixcolumn->{is_pix} = 1; $common->{widgets} = { w => $w, tree => $tree, tree_model => $tree_model, textcolumn => $textcolumn, pixcolumn => $pixcolumn, info => $info, status => $status }; ask_browse_tree_info_given_widgets($common); } sub ask_browse_tree_info_given_widgets { my ($common) = @_; my $w = $common->{widgets}; my ($curr, $prev_label, $idle, $mouse_toggle_pending); my (%wtree, %ptree, %pix, %node_state, %state_stats); my $update_size = sub { if ($w->{status}) { my $new_label = $common->{get_status}(); $prev_label ne $new_label and $w->{status}->set($prev_label = $new_label); } }; my $set_node_state_flat = sub { my ($iter, $state) = @_; $state eq 'XXX' and return; $pix{$state} ||= gtkcreate_pixbuf($state); $w->{tree_model}->set($iter, 1 => $pix{$state}); }; my $set_node_state_tree; $set_node_state_tree = sub { my ($iter, $state) = @_; my $iter_str = $w->{tree_model}->get_path_str($iter); $state eq 'XXX' and return; $pix{$state} ||= gtkcreate_pixbuf($state); if ($node_state{$iter_str} ne $state) { my $parent; if (!$w->{tree_model}->iter_has_child($iter) && ($parent = $w->{tree_model}->iter_parent($iter))) { my $parent_str = $w->{tree_model}->get_path_str($parent); my $stats = $state_stats{$parent_str} ||= {}; $stats->{$node_state{$iter_str}}--; $stats->{$state}++; my @list = grep { $stats->{$_} > 0 } keys %$stats; my $new_state = @list == 1 ? $list[0] : 'semiselected'; $node_state{$parent_str} ne $new_state and $set_node_state_tree->($parent, $new_state); } $w->{tree_model}->set($iter, 1 => $pix{$state}); $node_state{$iter_str} = $state; #- cache for efficiency } }; my $set_node_state = $common->{state}{flat} ? $set_node_state_flat : $set_node_state_tree; my $set_leaf_state = sub { my ($leaf, $state) = @_; $set_node_state->($_, $state) foreach @{$ptree{$leaf}}; }; my $add_parent; $add_parent = sub { my ($root, $state) = @_; $root or return undef; if (my $w = $wtree{$root}) { return $w } my $s; foreach (split '\|', $root) { my $s2 = $s ? "$s|$_" : $_; $wtree{$s2} ||= do { my $iter = $w->{tree_model}->append_set($s ? $add_parent->($s, $state) : undef, [ 0 => $_ ]); $iter; }; $s = $s2; } $set_node_state->($wtree{$s}, $state); #- use this state by default as tree is building. $wtree{$s}; }; my $add_node = sub { my ($leaf, $root, $options) = @_; my $state = $common->{node_state}($leaf) or return; if ($leaf) { my $iter = $w->{tree_model}->append_set($add_parent->($root, $state), [ 0 => $leaf ]); $set_node_state->($iter, $state); push @{$ptree{$leaf}}, $iter; } else { my $parent = $add_parent->($root, $state); #- hackery for partial displaying of trees, used in rpmdrake: #- if leaf is void, we may create the parent and one child (to have the [+] in front of the parent in the ctree) #- though we use '' as the label of the child; then rpmdrake will connect on tree_expand, and whenever #- the first child has '' as the label, it will remove the child and add all the "right" children $options->{nochild} or $w->{tree_model}->append_set($parent, [ 0 => '' ]); } }; my $clear_all_caches = sub { foreach (values %ptree) { foreach my $n (@$_) { delete $node_state{$w->{tree_model}->get_path_str($n)}; } } foreach (values %wtree) { my $iter_str = $w->{tree_model}->get_path_str($_); delete $node_state{$iter_str}; delete $state_stats{$iter_str}; } %ptree = %wtree = (); }; $common->{delete_all} = sub { $clear_all_caches->(); $w->{tree_model}->clear; }; $common->{rebuild_tree} = sub { $common->{delete_all}->(); $set_node_state = $common->{state}{flat} ? $set_node_state_flat : $set_node_state_tree; $common->{build_tree}($add_node, $common->{state}{flat}, $common->{tree_mode}); &$update_size; }; $common->{delete_category} = sub { my ($cat) = @_; exists $wtree{$cat} or return; foreach (keys %ptree) { my @to_remove; foreach my $node (@{$ptree{$_}}) { my $category; my $parent = $node; my @parents; while ($parent = $w->{tree_model}->iter_parent($parent)) { #- LEAKS my $parent_name = $w->{tree_model}->get($parent, 0); $category = $category ? "$parent_name|$category" : $parent_name; $_->[1] = "$parent_name|$_->[1]" foreach @parents; push @parents, [ $parent, $category ]; } if ($category =~ /^\Q$cat/) { push @to_remove, $node; foreach (@parents) { next if $_->[1] eq $cat || !exists $wtree{$_->[1]}; delete $wtree{$_->[1]}; delete $node_state{$w->{tree_model}->get_path_str($_->[0])}; delete $state_stats{$w->{tree_model}->get_path_str($_->[0])}; } } } foreach (@to_remove) { delete $node_state{$w->{tree_model}->get_path_str($_)}; } @{$ptree{$_}} = difference2($ptree{$_}, \@to_remove); } if (exists $wtree{$cat}) { my $iter_str = $w->{tree_model}->get_path_str($wtree{$cat}); delete $node_state{$iter_str}; delete $state_stats{$iter_str}; $w->{tree_model}->remove($wtree{$cat}); delete $wtree{$cat}; } &$update_size; }; $common->{add_nodes} = sub { my (@nodes) = @_; $add_node->($_->[0], $_->[1], $_->[2]) foreach @nodes; &$update_size; }; $common->{display_info} = sub { gtktext_insert($w->{info}, $common->{get_info}($curr)); 0 }; my $children = sub { map { my $v = $w->{tree_model}->get($_, 0); $v } gtktreeview_children($w->{tree_model}, $_[0]) }; my $toggle = sub { if (ref($curr) && !$_[0]) { $w->{tree}->toggle_expansion($w->{tree_model}->get_path($curr)); } else { if (ref $curr) { my @l = $common->{grep_allowed_to_toggle}($children->($curr)) or return; my @unsel = $common->{grep_unselected}(@l); my @p = @unsel ? #- not all is selected, select all if no option to potentially override (exists $common->{partialsel_unsel} && $common->{partialsel_unsel}->(\@unsel, \@l) ? difference2(\@l, \@unsel) : @unsel) : @l; $common->{toggle_nodes}($set_leaf_state, @p); &$update_size; } else { $common->{check_interactive_to_toggle}($curr) and $common->{toggle_nodes}($set_leaf_state, $curr); &$update_size; } } }; $w->{tree}->signal_connect(key_press_event => sub { my $c = chr($_[1]->keyval & 0xff); if ($_[1]->keyval >= 0x100 ? $c eq "\r" || $c eq "\x8d" : $c eq ' ') { $toggle->(0); } 0; }); $w->{tree}->get_selection->signal_connect(changed => sub { my ($model, $iter) = $_[0]->get_selected; $model && $iter or return; Glib::Source->remove($idle) if $idle; if (!$model->iter_has_child($iter)) { $curr = $model->get($iter, 0); $idle = Glib::Timeout->add(100, $common->{display_info}); } else { $curr = $iter; } #- the following test for equality is because we can have a button_press_event first, then #- two changed events, the first being on a different row :/ (is it a bug in gtk2?) - that #- happens in rpmdrake when doing a "search" and directly trying to select a found package if ($mouse_toggle_pending eq $model->get($iter, 0)) { $toggle->(1); $mouse_toggle_pending = 0; } 0; }); $w->{tree}->signal_connect(button_press_event => sub { #- not too good, but CellRendererPixbuf doesn't have the needed signals :( my ($path, $column) = $w->{tree}->get_path_at_pos($_[1]->x, $_[1]->y); if ($path && $column) { $column->{is_pix} and $mouse_toggle_pending = $w->{tree_model}->get($w->{tree_model}->get_iter($path), 0); } 0; }); $common->{rebuild_tree}->(); &$update_size; $common->{initial_selection} and $common->{toggle_nodes}($set_leaf_state, @{$common->{initial_selection}}); my $_b = before_leaving { $clear_all_caches->() }; $w->{w}->main; } sub gtk_set_treelist { my ($treelist, $l) = @_; my $list = $treelist->get_model; $list->clear; $list->append_set([ 0 => $_ ]) foreach @$l; } sub gtk_TextView_get_log { my ($log_w, $log_scroll, $command, $filter_output, $when_command_is_over) = @_; my $pid = open(my $F, "$command |") or return; fcntl($F, c::F_SETFL(), c::O_NONBLOCK()) or die "can't fcntl F_SETFL: $!"; my $gtk_buffer = $log_w->get_buffer; $log_w->signal_connect(destroy => sub { kill 9, $pid if $pid; #- we do not continue in background $pid = $gtk_buffer = ''; #- ensure $gtk_buffer is valid when its value is non-null }); my ($prev_scroll, $want_scroll_down) = (0, 1); Glib::Timeout->add(100, sub { if ($gtk_buffer) { my $end = $gtk_buffer->get_end_iter; while (defined (my $s = <$F>)) { $gtk_buffer->insert($end, $filter_output->($s)); } my $new_scroll = $log_scroll->get_vadjustment->get_value; $want_scroll_down &&= $new_scroll >= $prev_scroll; $prev_scroll = $new_scroll; $log_w->scroll_to_iter($end, 0, 0, 0, 0) if $want_scroll_down; } if (waitpid($pid, c::WNOHANG()) > 0) { #- we do not call $when_command_is_over if $gtk_buffer doesn't exist anymore #- since it is not a normal case $when_command_is_over->($gtk_buffer) if $when_command_is_over && $gtk_buffer; $pid = ''; 0; } else { to_bool($gtk_buffer); } }); $pid; #- $pid becomes invalid after $when_command_is_over is called } sub gtk_new_TextView_get_log { my ($command, $filter_output, $when_command_is_over) = @_; my $log_w = gtkset_editable(Gtk2::TextView->new, 0); my $log_scroll = create_scrolled_window($log_w); #- $log_scroll is a frame, not a ScrolledWindow, so giving $log_scroll->child my $pid = gtk_TextView_get_log($log_w, $log_scroll->child, $command, $filter_output, $when_command_is_over) or return; $log_scroll, $pid; } # misc helpers: package Gtk2::TreeStore; sub append_set { my ($model, $parent, @values) = @_; # compatibility: @values = @{$values[0]} if @values == 1 && ref($values[0]) eq 'ARRAY'; my $iter = $model->append($parent); $model->set($iter, @values); return $iter; } package Gtk2::ListStore; # Append a new row, set the values, return the TreeIter sub append_set { my ($model, @values) = @_; # compatibility: @values = @{$values[0]} if @values == 1 && ref($values[0]) eq 'ARRAY'; my $iter = $model->append; $model->set($iter, @values); return $iter; } package Gtk2::TreeModel; # gets the string representation of a TreeIter sub get_path_str { my ($self, $iter) = @_; my $path = $self->get_path($iter); $path or return; $path->to_string; } sub iter_each_children { my ($model, $iter, $f) = @_; for (my $child = $model->iter_children($iter); $child; $child = $model->iter_next($child)) { $f->($child); } } package Gtk2::TreeView; # likewise gtk-1.2 function sub toggle_expansion { my ($self, $path, $b_open_all) = @_; if ($self->row_expanded($path)) { $self->collapse_row($path); } else { $self->expand_row($path, $b_open_all || 0); } } # With GTK+, for more GUIes coherency, GtkOptionMenu is recommended instead of a # combo if the user is selecting from a fixed set of options. # # That is, non-editable combo boxes are not encouraged. GtkOptionMenu is much # easier to use than GtkCombo as well. Use GtkCombo only when you need the # editable text entry. # # GtkOptionMenu is a much better-implemented widget and also the right UI for # noneditable sets of choices.) # # GtkCombo is deprecated in 2.4.x because it still uses deprecated # GtkList. GtkOption menu is deprecated in order to have an unified widget. # # GtkComBox widget replaces GtkOption menu whereas GtkComBoxEntry replaces GtkCombo. # # # This layer try to make OptionMenu and ComboBox look being api # compatible with Combo since its API is quite nice. package Gtk2::OptionMenu; use common; # try to get combox <==> option menu mapping sub set_popdown_strings { my ($w, @strs) = @_; my $menu = Gtk2::Menu->new; # keep string list around for ->set_text compatibilty helper $w->{strings} = \@strs; #$w->set_menu((ugtk2::create_factory_menu($window, [ "File", (undef) x 3, '<Branch>' ], map { [ "File/" . $_, (undef) x 3, '<Item>' ] } @strs))[0]); $menu->append(ugtk2::gtkshow(Gtk2::MenuItem->new_with_label($_))) foreach @strs; $w->set_menu($menu); $w } sub new_with_strings { my ($class, $strs, $o_val) = @_; my $w = $class->new; $w->set_popdown_strings(@$strs); $w->set_text($o_val) if $o_val; $w; } sub entry { my ($w) = @_; return $w; } sub get_text { my ($w) = @_; $w->{strings}[$w->get_history]; } sub set_text { my ($w, $val) = @_; each_index { if ($_ eq $val) { $w->set_history($::i); return; } } @{$w->{strings}}; } package Gtk2::ComboBox; use common; # try to get combox <==> option menu mapping sub set_popdown_strings { my ($w, @strs) = @_; # keep string list around for ->set_text compatibilty helper $w->{strings} = \@strs; $w->append_text($_) foreach @strs; $w } sub new_with_strings { my ($class, $strs, $o_val) = @_; my $w = $class->new_text; $w->set_popdown_strings(@$strs); $w->set_text($o_val) if $o_val; $w; } sub entry { my ($w) = @_; return $w; } sub get_text { my ($w) = @_; $w->{strings}[$w->get_active]; } sub set_text { my ($w, $val) = @_; eval { my $val_index = find_index { $_ eq $val } @{$w->{strings}}; $w->set_active($val_index); }; internal_error(qq(impossible to lookup "$val":\n\t) . chomp_($@)) if $@; } package Gtk2::Label; sub set { my ($label) = shift; $label->set_label(@_); } package Gtk2::WrappedLabel; sub new { my ($_type, $o_text, $o_align) = @_; ugtk2::gtkset_alignment(ugtk2::gtkset_line_wrap(Gtk2::Label->new($o_text || ''), 1), $o_align || 0, 0.5); } package Gtk2::Entry; sub new_with_text { my ($_class, @text) = @_; my $entry = Gtk2::Entry->new; @text and $entry->set_text(@text); return $entry; } package Gtk2::Banner; use ugtk2 qw(:helpers :wrappers); sub set_pixmap { my ($darea) = @_; return if !$darea->realized; ugtk2::set_back_pixmap($darea); $darea->{layout} = $darea->create_pango_layout($darea->{text}); } sub new { my ($_class, $icon, $text, $o_options) = @_; my $darea = Gtk2::DrawingArea->new; $darea->set_size_request(-1, 75); $darea->modify_font(Gtk2::Pango::FontDescription->from_string(common::N("_banner font:\nSans 14"))); $darea->{icon} = ugtk2::gtkcreate_pixbuf($icon); $darea->{text} = $text; $darea->signal_connect(realize => \&set_pixmap); $darea->signal_connect("style-set" => \&set_pixmap); $darea->signal_connect(expose_event => sub { my $style = $darea->get_style; my $height = $darea->{icon}->get_height; $darea->{icon}->render_to_drawable($darea->window, $style->bg_gc('normal'), 0, 0, 10, 10, -1, -1, 'none', 0, 0); $darea->window->draw_layout($style->text_gc('normal'), $height + 20, $o_options->{txt_ypos} || 25, $darea->{layout}); 1; }); return $darea; } 1;