private function PHPExcel_Writer_Excel2007_Worksheet::_writeSheetViews in Loft Data Grids 7.2
Same name and namespace in other branches
- 6.2 vendor/phpoffice/phpexcel/Classes/PHPExcel/Writer/Excel2007/Worksheet.php \PHPExcel_Writer_Excel2007_Worksheet::_writeSheetViews()
* Write SheetViews * *
Parameters
PHPExcel_Shared_XMLWriter $objWriter XML Writer: * @param PHPExcel_Worksheet $pSheet Worksheet * @throws PHPExcel_Writer_Exception
1 call to PHPExcel_Writer_Excel2007_Worksheet::_writeSheetViews()
- PHPExcel_Writer_Excel2007_Worksheet::writeWorksheet in vendor/
phpoffice/ phpexcel/ Classes/ PHPExcel/ Writer/ Excel2007/ Worksheet.php - * Write worksheet to XML format * *
File
- vendor/
phpoffice/ phpexcel/ Classes/ PHPExcel/ Writer/ Excel2007/ Worksheet.php, line 208
Class
- PHPExcel_Writer_Excel2007_Worksheet
- PHPExcel_Writer_Excel2007_Worksheet
Code
private function _writeSheetViews(PHPExcel_Shared_XMLWriter $objWriter = NULL, PHPExcel_Worksheet $pSheet = NULL) {
// sheetViews
$objWriter
->startElement('sheetViews');
// Sheet selected?
$sheetSelected = false;
if ($this
->getParentWriter()
->getPHPExcel()
->getIndex($pSheet) == $this
->getParentWriter()
->getPHPExcel()
->getActiveSheetIndex()) {
$sheetSelected = true;
}
// sheetView
$objWriter
->startElement('sheetView');
$objWriter
->writeAttribute('tabSelected', $sheetSelected ? '1' : '0');
$objWriter
->writeAttribute('workbookViewId', '0');
// Zoom scales
if ($pSheet
->getSheetView()
->getZoomScale() != 100) {
$objWriter
->writeAttribute('zoomScale', $pSheet
->getSheetView()
->getZoomScale());
}
if ($pSheet
->getSheetView()
->getZoomScaleNormal() != 100) {
$objWriter
->writeAttribute('zoomScaleNormal', $pSheet
->getSheetView()
->getZoomScaleNormal());
}
// View Layout Type
if ($pSheet
->getSheetView()
->getView() !== PHPExcel_Worksheet_SheetView::SHEETVIEW_NORMAL) {
$objWriter
->writeAttribute('view', $pSheet
->getSheetView()
->getView());
}
// Gridlines
if ($pSheet
->getShowGridlines()) {
$objWriter
->writeAttribute('showGridLines', 'true');
}
else {
$objWriter
->writeAttribute('showGridLines', 'false');
}
// Row and column headers
if ($pSheet
->getShowRowColHeaders()) {
$objWriter
->writeAttribute('showRowColHeaders', '1');
}
else {
$objWriter
->writeAttribute('showRowColHeaders', '0');
}
// Right-to-left
if ($pSheet
->getRightToLeft()) {
$objWriter
->writeAttribute('rightToLeft', 'true');
}
$activeCell = $pSheet
->getActiveCell();
// Pane
$pane = '';
$topLeftCell = $pSheet
->getFreezePane();
if ($topLeftCell != '' && $topLeftCell != 'A1') {
$activeCell = $topLeftCell;
// Calculate freeze coordinates
$xSplit = $ySplit = 0;
list($xSplit, $ySplit) = PHPExcel_Cell::coordinateFromString($topLeftCell);
$xSplit = PHPExcel_Cell::columnIndexFromString($xSplit);
// pane
$pane = 'topRight';
$objWriter
->startElement('pane');
if ($xSplit > 1) {
$objWriter
->writeAttribute('xSplit', $xSplit - 1);
}
if ($ySplit > 1) {
$objWriter
->writeAttribute('ySplit', $ySplit - 1);
$pane = $xSplit > 1 ? 'bottomRight' : 'bottomLeft';
}
$objWriter
->writeAttribute('topLeftCell', $topLeftCell);
$objWriter
->writeAttribute('activePane', $pane);
$objWriter
->writeAttribute('state', 'frozen');
$objWriter
->endElement();
if ($xSplit > 1 && $ySplit > 1) {
// Write additional selections if more than two panes (ie both an X and a Y split)
$objWriter
->startElement('selection');
$objWriter
->writeAttribute('pane', 'topRight');
$objWriter
->endElement();
$objWriter
->startElement('selection');
$objWriter
->writeAttribute('pane', 'bottomLeft');
$objWriter
->endElement();
}
}
// Selection
// if ($pane != '') {
// Only need to write selection element if we have a split pane
// We cheat a little by over-riding the active cell selection, setting it to the split cell
$objWriter
->startElement('selection');
if ($pane != '') {
$objWriter
->writeAttribute('pane', $pane);
}
$objWriter
->writeAttribute('activeCell', $activeCell);
$objWriter
->writeAttribute('sqref', $activeCell);
$objWriter
->endElement();
// }
$objWriter
->endElement();
$objWriter
->endElement();
}