private static PieDataset createDataset()
 {
   DefaultPieDataset defaultPieDataset = new DefaultPieDataset();
   defaultPieDataset.setValue((IComparable) "One", (Number) new Double(43.2));
   defaultPieDataset.setValue((IComparable) "Two", (Number) new Double(10.0));
   defaultPieDataset.setValue((IComparable) "Three", (Number) new Double(27.5));
   defaultPieDataset.setValue((IComparable) "Four", (Number) new Double(17.5));
   defaultPieDataset.setValue((IComparable) "Five", (Number) new Double(11.0));
   defaultPieDataset.setValue((IComparable) "Six", (Number) new Double(19.4));
   return (PieDataset) defaultPieDataset;
 }
 public virtual void startElement(string namespaceURI, string localName, string qName, Attributes atts)
 {
   DefaultHandler currentHandler = this.getCurrentHandler();
   if (currentHandler != this)
     currentHandler.startElement(namespaceURI, localName, qName, atts);
   else if (String.instancehelper_equals(qName, (object) "PieDataset"))
   {
     this.dataset = new DefaultPieDataset();
   }
   else
   {
     if (!String.instancehelper_equals(qName, (object) "Item"))
       return;
     ItemHandler itemHandler = new ItemHandler((RootHandler) this, (DefaultHandler) this);
     this.getSubHandlers().push((object) itemHandler);
     itemHandler.startElement(namespaceURI, localName, qName, atts);
   }
 }
 public PieDatasetHandler()
 {
   PieDatasetHandler pieDatasetHandler = this;
   this.dataset = (DefaultPieDataset) null;
 }
 public static JFreeChart createPieChart(string title, PieDataset dataset, PieDataset previousDataset, int percentDiffForMaxScale, bool greenForIncrease, bool legend, bool tooltips, bool urls, bool subTitle, bool showDifference)
 {
   int num1 = tooltips ? 1 : 0;
   int num2 = urls ? 1 : 0;
   int num3 = showDifference ? 1 : 0;
   int num4 = greenForIncrease ? 1 : 0;
   int num5 = legend ? 1 : 0;
   int num6 = subTitle ? 1 : 0;
   PiePlot piePlot = new PiePlot(dataset);
   piePlot.setLabelGenerator((PieSectionLabelGenerator) new StandardPieSectionLabelGenerator());
   piePlot.setInsets(new RectangleInsets(0.0, 5.0, 5.0, 5.0));
   if (num1 != 0)
     piePlot.setToolTipGenerator((PieToolTipGenerator) new StandardPieToolTipGenerator());
   if (num2 != 0)
     piePlot.setURLGenerator((PieURLGenerator) new StandardPieURLGenerator());
   List keys = dataset.getKeys();
   DefaultPieDataset defaultPieDataset = (DefaultPieDataset) null;
   if (num3 != 0)
     defaultPieDataset = new DefaultPieDataset();
   double num7 = (double) byte.MaxValue / (double) percentDiffForMaxScale;
   Iterator iterator = keys.iterator();
   while (iterator.hasNext())
   {
     IComparable comparable = (IComparable) iterator.next();
     Number number1 = dataset.getValue(comparable);
     Number number2 = previousDataset.getValue(comparable);
     if (number2 == null)
     {
       if (num4 != 0)
         piePlot.setSectionPaint(comparable, (Paint) Color.green);
       else
         piePlot.setSectionPaint(comparable, (Paint) Color.red);
       if (num3 != 0)
         defaultPieDataset.setValue((IComparable) new StringBuffer().append((object) comparable).append(" (+100%)").toString(), number1);
     }
     else
     {
       double num8 = (number1.doubleValue() / number2.doubleValue() - 1.0) * 100.0;
       double num9 = Math.abs(num8) < (double) percentDiffForMaxScale ? Math.abs(num8) * num7 : (double) byte.MaxValue;
       if (num4 != 0 && number1.doubleValue() > number2.doubleValue() || num4 == 0 && number1.doubleValue() < number2.doubleValue())
         piePlot.setSectionPaint(comparable, (Paint) new Color(0, ByteCodeHelper.d2i(num9), 0));
       else
         piePlot.setSectionPaint(comparable, (Paint) new Color(ByteCodeHelper.d2i(num9), 0, 0));
       if (num3 != 0)
         defaultPieDataset.setValue((IComparable) new StringBuffer().append((object) comparable).append(" (").append(num8 < 0.0 ? "" : "+").append(NumberFormat.getPercentInstance().format(num8 / 100.0)).append(")").toString(), number1);
     }
   }
   if (num3 != 0)
     piePlot.setDataset((PieDataset) defaultPieDataset);
   JFreeChart.__\u003Cclinit\u003E();
   JFreeChart jfc = new JFreeChart(title, JFreeChart.__\u003C\u003EDEFAULT_TITLE_FONT, (Plot) piePlot, num5 != 0);
   if (num6 != 0)
   {
     TextTitle.__\u003Cclinit\u003E();
     TextTitle textTitle = new TextTitle(new StringBuffer().append("Bright ").append(num4 == 0 ? "green" : "red").append("=change >=-").append(percentDiffForMaxScale).append("%, Bright ").append(num4 != 0 ? "green" : "red").append("=change >=+").append(percentDiffForMaxScale).append("%").toString(), new Font("SansSerif", 0, 10));
     jfc.addSubtitle((Title) textTitle);
   }
   ChartFactory.currentTheme.apply(jfc);
   return jfc;
 }