[prev in list] [next in list] [prev in thread] [next in thread] 

List:       calligra-devel
Subject:    Question about show view of calligra tables
From:       tien dh <tiendh11986 () gmail ! com>
Date:       2011-03-11 7:58:07
Message-ID: AANLkTi=GiPLvatPtDe1s9O8a2tARYLkpAHhMPaFhBA+o () mail ! gmail ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


Hi every one,
Please help me on that problem, it's so difficult for me to solve:

 int main(int argc, char** argv){    QApplication qapp(argc, argv);
KComponentData cd("graphicsview-test");    Calligra::Tables::Doc doc;
  bool ok = doc.*openUrl*(KUrl("/home/excel_samples/Cash_Flow_Projection_Worksheet.xls"));
   if (!ok) {        qDebug() << "failed to load";        return 0;
}    QFont font(KoGlobal::defaultFont());
Calligra::Tables::CanvasItem* canvas = new
Calligra::Tables::CanvasItem(&doc);    QRect usedArea =
canvas->*activeSheet*()->usedArea(true);    QSizeF
size(canvas->*activeSheet*()->columnPosition(usedArea.right()+3),
canvas->*activeSheet*()->rowPosition(usedArea.bottom()+5));
canvas->setDocumentSize(size);    size =
canvas->*zoomHandler*()->*documentToView*(size);
canvas->resize(size);    canvas->setPos(0, 0);
Calligra::Tables::ColumnHeaderItem* columnHeader =
static_cast<Calligra::Tables::ColumnHeaderItem*>(canvas->*columnHeader*());
   static_cast<QGraphicsWidget*>(columnHeader)->resize(size.width(),
canvas->*zoomHandler*()->zoomItY(font.pointSizeF() + 3));
columnHeader->setPos(0, -columnHeader->height());
Calligra::Tables::RowHeaderItem* rowHeader =
static_cast<Calligra::Tables::RowHeaderItem*>(canvas->*rowHeader*());
  static_cast<QGraphicsWidget*>(rowHeader)->resize(canvas->*zoomHandler*()->zoomItX(YBORDER_WIDTH),
size.height());    rowHeader->setPos(-rowHeader->width(), 0);
columnHeader->toolChanged("PanTool");
rowHeader->toolChanged("PanTool");        QGraphicsScene scene;
scene.addItem(canvas);    scene.addItem(columnHeader);
scene.addItem(rowHeader);    QGraphicsView view(&scene);
view.show();    qapp.exec();}


This portion of code can run and show a excel file. But when I try using
function: doc.createView().show, only tabbars and scrollbars shown. Sheet
area is completely black. I try using canvas, canvasWidget and
canvasController but it isn't successful.
Anyone can show me why it is and how to render the view to an image ?

-- 
Do Huu Tien
Handphone No: 0972471786
Email: tiendh11986@gmail.com
Y!M: dohuu_tien86

[Attachment #5 (text/html)]

Hi every one,<br>Please help me on that problem, it&#39;s so difficult for me to \
solve:<br><br>


	
	
	
	<style type="text/css">p { margin-bottom: 0.08in; }</style>

<pre><font color="#808000">int</font><font color="#c0c0c0"> </font>main<font \
color="#000000">(</font><font color="#808000">int</font><font color="#c0c0c0"> \
</font><font color="#000000">argc,</font><font color="#c0c0c0"> </font><font \
color="#808000">char</font><font color="#000000">**</font><font color="#c0c0c0"> \
</font><font color="#000000">argv)</font> <font color="#000000">{</font>
<font color="#c0c0c0">    </font><font color="#800080">QApplication</font><font \
color="#c0c0c0"> </font><font color="#000000">qapp(argc,</font><font color="#c0c0c0"> \
</font><font color="#000000">argv);</font> <font color="#c0c0c0">    </font><font \
color="#800080">KComponentData</font><font color="#c0c0c0"> </font><font \
color="#000000">cd(</font><font \
color="#008000">&quot;graphicsview-test&quot;</font><font color="#000000">);</font> \
<font color="#c0c0c0">    </font><font color="#800080">Calligra</font><font \
color="#000000">::</font><font color="#800080">Tables</font><font \
color="#000000">::</font><font color="#800080">Doc</font><font color="#c0c0c0"> \
</font><font color="#000000">doc;</font> <font color="#c0c0c0">    </font><font \
color="#808000">bool</font><font color="#c0c0c0"> </font><font \
color="#000000">ok</font><font color="#c0c0c0"> </font><font \
color="#000000">=</font><font color="#c0c0c0"> </font><font \
color="#000000">doc.</font><font color="#000000"><i>openUrl</i></font><font \
color="#000000">(</font><font color="#800080">KUrl</font><font \
color="#000000">(</font><font \
color="#008000">&quot;/home/excel_samples/Cash_Flow_Projection_Worksheet.xls&quot;</font><font \
color="#000000">));</font> <font color="#c0c0c0">    </font><font \
color="#808000">if</font><font color="#c0c0c0"> </font><font \
color="#000000">(!ok)</font><font color="#c0c0c0"> </font><font \
color="#000000">{</font> <font color="#c0c0c0">        </font>qDebug<font \
color="#000000">()</font><font color="#c0c0c0"> </font><font \
color="#000000">&lt;&lt;</font><font color="#c0c0c0"> </font><font \
color="#008000">&quot;failed</font><font color="#c0c0c0"> </font><font \
color="#008000">to</font><font color="#c0c0c0"> </font><font \
color="#008000">load&quot;</font><font color="#000000">;</font> <font \
color="#c0c0c0">        </font><font color="#808000">return</font><font \
color="#c0c0c0"> </font><font color="#000080">0</font><font color="#000000">;</font> \
<font color="#c0c0c0">    </font><font color="#000000">}</font> <font \
color="#c0c0c0">    </font><font color="#800080">QFont</font><font color="#c0c0c0"> \
</font><font color="#000000">font(</font><font color="#800080">KoGlobal</font><font \
color="#000000">::</font>defaultFont<font color="#000000">());</font> <font \
color="#c0c0c0">    </font><font color="#800080">Calligra</font><font \
color="#000000">::</font><font color="#800080">Tables</font><font \
color="#000000">::</font><font color="#800080">CanvasItem</font><font \
color="#000000">*</font><font color="#c0c0c0"> </font><font \
color="#000000">canvas</font><font color="#c0c0c0"> </font><font \
color="#000000">=</font><font color="#c0c0c0"> </font><font \
color="#808000">new</font><font color="#c0c0c0"> </font><font \
color="#800080">Calligra</font><font color="#000000">::</font><font \
color="#800080">Tables</font><font color="#000000">::</font><font \
color="#800080">CanvasItem</font><font color="#000000">(&amp;doc);</font> <font \
color="#c0c0c0">    </font><font color="#800080">QRect</font><font color="#c0c0c0"> \
</font><font color="#000000">usedArea</font><font color="#c0c0c0"> </font><font \
color="#000000">=</font><font color="#c0c0c0"> </font><font \
color="#000000">canvas-&gt;</font><font \
color="#000000"><i>activeSheet</i></font><font \
color="#000000">()-&gt;</font>usedArea<font color="#000000">(</font><font \
color="#808000">true</font><font color="#000000">);</font> <font color="#c0c0c0">    \
</font><font color="#800080">QSizeF</font><font color="#c0c0c0"> </font><font \
color="#000000">size(canvas-&gt;</font><font \
color="#000000"><i>activeSheet</i></font><font \
color="#000000">()-&gt;</font>columnPosition<font \
color="#000000">(usedArea.</font>right<font color="#000000">()+</font><font \
color="#000080">3</font><font color="#000000">),</font><font color="#c0c0c0"> \
</font><font color="#000000">canvas-&gt;</font><font \
color="#000000"><i>activeSheet</i></font><font \
color="#000000">()-&gt;</font>rowPosition<font \
color="#000000">(usedArea.</font>bottom<font color="#000000">()+</font><font \
color="#000080">5</font><font color="#000000">));</font> <font color="#c0c0c0">    \
</font><font color="#000000">canvas-&gt;</font>setDocumentSize<font \
color="#000000">(size);</font> <font color="#c0c0c0">    </font><font \
color="#000000">size</font><font color="#c0c0c0"> </font><font \
color="#000000">=</font><font color="#c0c0c0"> </font><font \
color="#000000">canvas-&gt;</font><font \
color="#000000"><i>zoomHandler</i></font><font color="#000000">()-&gt;</font><font \
color="#000000"><i>documentToView</i></font><font color="#000000">(size);</font> \
<font color="#c0c0c0">    </font><font color="#000000">canvas-&gt;</font>resize<font \
color="#000000">(size);</font> <font color="#c0c0c0">    </font><font \
color="#000000">canvas-&gt;</font>setPos<font color="#000000">(</font><font \
color="#000080">0</font><font color="#000000">,</font><font color="#c0c0c0"> \
</font><font color="#000080">0</font><font color="#000000">);</font> <font \
color="#c0c0c0">    </font><font color="#800080">Calligra</font><font \
color="#000000">::</font><font color="#800080">Tables</font><font \
color="#000000">::</font><font color="#800080">ColumnHeaderItem</font><font \
color="#000000">*</font><font color="#c0c0c0"> </font><font \
color="#000000">columnHeader</font><font color="#c0c0c0"> </font><font \
color="#000000">=</font><font color="#c0c0c0"> </font><font \
color="#808000">static_cast</font><font color="#000000">&lt;</font><font \
color="#800080">Calligra</font><font color="#000000">::</font><font \
color="#800080">Tables</font><font color="#000000">::</font><font \
color="#800080">ColumnHeaderItem</font><font \
color="#000000">*&gt;(canvas-&gt;</font><font \
color="#000000"><i>columnHeader</i></font><font color="#000000">());</font> <font \
color="#c0c0c0">    </font><font color="#808000">static_cast</font><font \
color="#000000">&lt;</font><font color="#800080">QGraphicsWidget</font><font \
color="#000000">*&gt;(columnHeader)-&gt;</font>resize<font \
color="#000000">(size.</font>width<font color="#000000">(),</font><font \
color="#c0c0c0"> </font><font color="#000000">canvas-&gt;</font><font \
color="#000000"><i>zoomHandler</i></font><font \
color="#000000">()-&gt;</font>zoomItY<font \
color="#000000">(font.</font>pointSizeF<font color="#000000">()</font><font \
color="#c0c0c0"> </font><font color="#000000">+</font><font color="#c0c0c0"> \
</font><font color="#000080">3</font><font color="#000000">));</font> <font \
color="#c0c0c0">    </font><font color="#000000">columnHeader-&gt;</font>setPos<font \
color="#000000">(</font><font color="#000080">0</font><font \
color="#000000">,</font><font color="#c0c0c0"> </font><font \
color="#000000">-columnHeader-&gt;</font>height<font color="#000000">());</font> \
<font color="#c0c0c0">    </font><font color="#800080">Calligra</font><font \
color="#000000">::</font><font color="#800080">Tables</font><font \
color="#000000">::</font><font color="#800080">RowHeaderItem</font><font \
color="#000000">*</font><font color="#c0c0c0"> </font><font \
color="#000000">rowHeader</font><font color="#c0c0c0"> </font><font \
color="#000000">=</font><font color="#c0c0c0"> </font><font \
color="#808000">static_cast</font><font color="#000000">&lt;</font><font \
color="#800080">Calligra</font><font color="#000000">::</font><font \
color="#800080">Tables</font><font color="#000000">::</font><font \
color="#800080">RowHeaderItem</font><font \
color="#000000">*&gt;(canvas-&gt;</font><font \
color="#000000"><i>rowHeader</i></font><font color="#000000">());</font> <font \
color="#c0c0c0">    </font><font color="#808000">static_cast</font><font \
color="#000000">&lt;</font><font color="#800080">QGraphicsWidget</font><font \
color="#000000">*&gt;(rowHeader)-&gt;</font>resize<font \
color="#000000">(canvas-&gt;</font><font \
color="#000000"><i>zoomHandler</i></font><font \
color="#000000">()-&gt;</font>zoomItX<font color="#000000">(</font>YBORDER_WIDTH<font \
color="#000000">),</font><font color="#c0c0c0"> </font><font \
color="#000000">size.</font>height<font color="#000000">());</font> <font \
color="#c0c0c0">    </font><font color="#000000">rowHeader-&gt;</font>setPos<font \
color="#000000">(-rowHeader-&gt;</font>width<font color="#000000">(),</font><font \
color="#c0c0c0"> </font><font color="#000080">0</font><font color="#000000">);</font> \
<font color="#c0c0c0">    </font><font \
color="#000000">columnHeader-&gt;</font>toolChanged<font \
color="#000000">(</font><font color="#008000">&quot;PanTool&quot;</font><font \
color="#000000">);</font> <font color="#c0c0c0">    </font><font \
color="#000000">rowHeader-&gt;</font>toolChanged<font color="#000000">(</font><font \
color="#008000">&quot;PanTool&quot;</font><font color="#000000">);</font> <font \
color="#c0c0c0">        </font><font color="#800080">QGraphicsScene</font><font \
color="#c0c0c0"> </font><font color="#000000">scene;</font> <font color="#c0c0c0">    \
</font><font color="#000000">scene.</font>addItem<font \
color="#000000">(canvas);</font> <font color="#c0c0c0">    </font><font \
color="#000000">scene.</font>addItem<font color="#000000">(columnHeader);</font> \
<font color="#c0c0c0">    </font><font color="#000000">scene.</font>addItem<font \
color="#000000">(rowHeader);</font> <font color="#c0c0c0">    </font><font \
color="#800080">QGraphicsView</font><font color="#c0c0c0"> </font><font \
color="#000000">view(&amp;scene);</font> <font color="#c0c0c0">    </font><font \
color="#000000">view.</font>show<font color="#000000">();</font> <font \
color="#c0c0c0">    </font><font color="#000000">qapp.</font>exec<font \
color="#000000">();</font> <font color="#000000">}</font></pre>
<br>This portion of code can run and show a excel file. But when I try using \
function: doc.createView().show, only tabbars and scrollbars shown. Sheet area is \
completely black. I try using canvas, canvasWidget and canvasController but it \
isn&#39;t successful.<br> Anyone can show me why it is and how to render the view to \
an image ?<br clear="all"><br>-- <br>Do Huu Tien<br>Handphone No: \
0972471786<br>Email: <a \
href="mailto:tiendh11986@gmail.com">tiendh11986@gmail.com</a><br>Y!M: \
dohuu_tien86<br>



_______________________________________________
calligra-devel mailing list
calligra-devel@kde.org
https://mail.kde.org/mailman/listinfo/calligra-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic