Date: prev next · Thread: first prev next last
2017 Archives by date, by thread · List index


As far as I know the file

libreoffice/core/plain/svx/source/fmcomp/fmgridcl.cxx

has not been translated yet.

Below is a  diff of the original file and the translation.  I don't have
the whole tree and just downloaded the file from the web interface, so I
also include the edited file.

Yours,

 Rogier Brussee
--- libreoffice/core/plain/svx/source/fmcomp/a/fmgridcl.cxx     2017-04-10 17:21:00.000000000 +0200
+++ libreoffice/core/plain/svx/source/fmcomp/b/fmgridcl.cxx     2017-04-10 18:04:35.000000000 +0200
@@ -403,17 +403,17 @@
         {
             ::comphelper::disposeComponent(m_pImpl->xDroppedResultSet);
             ::comphelper::disposeComponent(m_pImpl->xDroppedStatement);
             return;
         }
-
-        // Vom Feld werden nun zwei Informationen benoetigt:
-        // a.) Name des Feldes fuer Label und ControlSource
-        // b.) FormatKey, um festzustellen, welches Feld erzeugt werden soll
+        
+        // We now need two pieces of information from the field:
+        // a) The name of the field for Label and ControlSource
+        // b) Formatkey so that we know what kind of field has to be created.
         sal_Int32 nDataType = 0;
         xField->getPropertyValue(FM_PROP_FIELDTYPE) >>= nDataType;
-        // diese Datentypen koennen im Gridcontrol nicht verarbeitet werden
+        // These Datatypes cannot be used for Gridcontrol
         switch (nDataType)
         {
             case DataType::BLOB:
             case DataType::LONGVARBINARY:
             case DataType::BINARY:
@@ -421,17 +421,16 @@
             case DataType::OTHER:
                 ::comphelper::disposeComponent(m_pImpl->xDroppedResultSet);
                 ::comphelper::disposeComponent(m_pImpl->xDroppedStatement);
                 return;
         }
-
-        // Erstellen der Column
+        // Creation of the column
         Reference< XIndexContainer >  
xCols(static_cast<FmGridControl*>(GetParent())->GetPeer()->getColumns());
         Reference< XGridColumnFactory >  xFactory(xCols, UNO_QUERY);
 
         sal_uInt16 nColId = GetItemId(m_pImpl->aDropPosPixel);
-        // EinfuegePosition, immer vor der aktuellen Spalte
+        // Insertion position always before the current column
         sal_uInt16 nPos = GetModelColumnPos(nColId);
         Reference< XPropertySet >  xCol, xSecondCol;
 
         // Create Column based on type, default textfield
         std::vector<sal_uInt16> aPossibleTypes;
@@ -562,11 +561,11 @@
             xSecondCol->setPropertyValue(FM_PROP_LABEL, makeAny( OUString( sFieldName + 
sDatePostfix ) ) );
         }
         else
             xCol->setPropertyValue(FM_PROP_LABEL, makeAny(sFieldName));
 
-        // jetzt einfuegen
+        // Now insert
         Any aElement;
         aElement <<= xCol;
 
         xCols->insertByIndex(nPos, aElement);
 
@@ -607,12 +606,12 @@
         if (bDateNTimeCol)
         {
             aElement <<= xSecondCol;
             xCols->insertByIndex(nPos == (sal_uInt16)-1 ? nPos : ++nPos, aElement);
         }
-
-        // ist die component::Form an die Datenbankangebunden?
+        
+        // is the component::Form connected to the current database
         Reference< XFormComponent >  xFormCp(xCols, UNO_QUERY);
         Reference< XPropertySet >  xForm(xFormCp->getParent(), UNO_QUERY);
         if (xForm.is())
         {
             if (::comphelper::getString(xForm->getPropertyValue(FM_PROP_DATASOURCE)).isEmpty())
@@ -659,11 +658,11 @@
 void FmGridHeader::PreExecuteColumnContextMenu(sal_uInt16 nColId, PopupMenu& rMenu)
 {
     bool bDesignMode = static_cast<FmGridControl*>(GetParent())->IsDesignMode();
 
     Reference< css::container::XIndexContainer >  
xCols(static_cast<FmGridControl*>(GetParent())->GetPeer()->getColumns());
-    // Aufbau des Insert Menus
+    // Build the insert menus
     // mark the column if nColId != HEADERBAR_ITEM_NOTFOUND
     if(nColId > 0)
     {
         sal_uInt16 nPos2 = GetModelColumnPos(nColId);
 
@@ -672,11 +671,11 @@
         Reference< css::view::XSelectionSupplier >    xSelSupplier(xColumns, UNO_QUERY);
         if (xSelSupplier.is())
             xSelSupplier->select(makeAny(xColumn));
     }
 
-    // EinfuegePosition, immer vor der aktuellen Spalte
+    // Insertion always before the current column
     sal_uInt16 nPos = GetModelColumnPos(nColId);
     bool bMarked = nColId && static_cast<FmGridControl*>(GetParent())->isColumnMarked(nColId);
 
     VclPtrInstance<PopupMenu> pControlMenu;
 
@@ -940,11 +939,11 @@
             Reference< XGridColumnFactory > xFactory( xCols, UNO_QUERY_THROW );
             Reference< XPropertySet > xNewCol( xFactory->createColumn( aFieldType ), UNO_SET_THROW 
);
 
             if ( bReplace )
             {
-                // ein paar Properties hinueberretten
+                // save a few Properties here
                 Reference< XPropertySet > xReplaced( xCols->getByIndex( nPos ), UNO_QUERY );
 
                 TransferFormComponentProperties(
                     xReplaced, xNewCol, Application::GetSettings().GetUILanguageTag().getLocale() 
);
 
@@ -1051,11 +1050,12 @@
 {
     if ( CommandEventId::ContextMenu == _rEvt.GetCommand() )
     {
         FmGridHeader* pMyHeader = static_cast< FmGridHeader* >( GetHeaderBar() );
         if ( pMyHeader && !_rEvt.IsMouseEvent() )
-        {   // context menu requested by keyboard
+        {
+            // context menu requested by keyboard
             if  ( 1 == GetSelectColumnCount() || IsDesignMode() )
             {
                 sal_uInt16 nSelId = GetColumnId(
                     sal::static_int_cast< sal_uInt16 >( FirstSelectedColumn() ) );
                 ::tools::Rectangle aColRect( GetFieldRectPixel( 0, nSelId, false ) );
@@ -1081,11 +1081,11 @@
         implAdjustInSolarThread(true);
         return;
     }
 
     const DbGridRowRef& xRow = GetCurrentRow();
-    // waehrend Positionierung wird kein abgleich  der Properties vorgenommen
+    // while positioning we do not adjust the Properties
     Reference<XPropertySet> xSet(evt.Source,UNO_QUERY);
     if (xRow.is() && (::cppu::any2bool(xSet->getPropertyValue(FM_PROP_ISNEW))|| 
CompareBookmark(getDataSource()->getBookmark(), xRow->GetBookmark())))
     {
         if (evt.PropertyName == FM_PROP_ISMODIFIED)
         {
@@ -1107,11 +1107,11 @@
     DbGridControl::SetDesignMode(bMode);
     if (bOldMode != bMode)
     {
         if (!bMode)
         {
-            // selection aufheben
+            // deselect
             markColumn(USHRT_MAX);
         }
         else
         {
             Reference< css::container::XIndexContainer >  xColumns(GetPeer()->getColumns());
@@ -1143,11 +1143,11 @@
         return;
 
     // how many rows are selected?
     sal_Int32 nSelectedRows = GetSelectRowCount();
 
-    // the current line should be deleted but it is currently in edit mode
+    // the current row should be deleted but it is currently in edit mode
     if ( IsCurrentAppending() )
         return;
     // is the insert row selected
     if (GetEmptyRow().is() && IsRowSelected(GetRowCount() - 1))
         nSelectedRows -= 1;
@@ -1198,11 +1198,11 @@
         }
         catch(const Exception&)
         {
             OSL_FAIL("Exception caught while deleting rows!");
         }
-        // An den DatenCursor anpassen
+        // Adjust for the data cursor
         AdjustDataSource(true);
         EndCursorAction();
         SetUpdateMode(true);
     }
     else
@@ -1252,13 +1252,13 @@
                     bNewPos = true;
                     aBookmark = m_pSeekCursor->getBookmark();
                 }
             }
         }
-
-        // Sind alle Zeilen Selectiert
-        // Zweite bedingung falls keine einguegeZeile existiert
+        
+        // Are all rows selected?
+        // The second condition is valid when no insertion row exists.
         bool bAllSelected = GetTotalCount() == nSelectedRows || GetRowCount() == nSelectedRows;
 
         BeginCursorAction();
 
         // now delete the row
@@ -1279,12 +1279,12 @@
         for (sal_Int32 i = 0; i < aDeletedRows.getLength(); i++)
         {
             if (pSuccess[i])
                 ++nDeletedRows;
         }
-
-        // sind Zeilen geloescht worden?
+        
+        // have rows been deleted?
         if (nDeletedRows)
         {
             SetUpdateMode(false);
             SetNoSelection();
             try
@@ -1347,15 +1347,15 @@
                 catch(const Exception&)
                 {
                 }
             }
 
-            // An den DatenCursor anpassen
+            // adjust for the data cursor
             AdjustDataSource(true);
-
-            // es konnten nicht alle Zeilen geloescht werden
-            // da nie nicht geloeschten wieder selektieren
+            
+            
+            // Not all rows could be deleted since we never re-select the non deleted ones
             if (nDeletedRows < nSelectedRows)
             {
                 // waren alle selektiert
                 if (bAllSelected)
                 {
@@ -1387,11 +1387,11 @@
             }
 
             EndCursorAction();
             SetUpdateMode(true);
         }
-        else // Zeile konnte nicht geloescht werden
+        else // row could not be deleted
         {
             EndCursorAction();
             try
             {
                 // currentrow is the insert row?
@@ -1417,12 +1417,11 @@
     implAdjustInSolarThread(false);
 }
 
 bool FmGridControl::commit()
 {
-    // Commit nur ausfuehren, wenn nicht bereits ein Update vom css::form::component::GridControl 
ausgefuehrt
-    // wird
+    // Only do the commit when an update of css::form::component::GridControl is executing.
     if (!IsUpdating())
     {
         if (Controller().is() && Controller()->IsModified())
         {
             if (!SaveModified())
@@ -1436,11 +1435,11 @@
 {
     const DbGridRowRef& xRow = GetCurrentRow();
     if (!xRow.is())
         return;
 
-    // Zeile ist eingefuegt worden, dann den status und mode zuruecksetzen
+    // The row has been inserted. Reset status and mode to its original value.
     xRow->SetState(m_pDataCursor, false);
     xRow->SetNew(false);
 
 }
 
@@ -1452,11 +1451,11 @@
 
 void FmGridControl::markColumn(sal_uInt16 nId)
 {
     if (GetHeaderBar() && m_nMarkedColumnId != nId)
     {
-        // deselektieren
+        // deselect
         if (m_nMarkedColumnId != BROWSER_INVALIDID)
         {
             HeaderBarItemBits aBits = GetHeaderBar()->GetItemBits(m_nMarkedColumnId) & 
~HeaderBarItemBits::FLAT;
             GetHeaderBar()->SetItemBits(m_nMarkedColumnId, aBits);
         }
@@ -1506,19 +1505,19 @@
 
 void FmGridControl::ColumnResized(sal_uInt16 nId)
 {
     DbGridControl::ColumnResized(nId);
 
-    // Wert ans model uebergeben
+    // Hand over the value to the model
     DbGridColumn* pCol = DbGridControl::GetColumns().at( GetModelColumnPos(nId) );
     Reference< css::beans::XPropertySet >  xColModel(pCol->getModel());
     if (xColModel.is())
     {
         Any aWidth;
         sal_Int32 nColumnWidth = GetColumnWidth(nId);
         nColumnWidth = CalcReverseZoom(nColumnWidth);
-        // Umrechnen in 10THMM
+        // Convert to 10THMM
         aWidth <<= (sal_Int32)PixelToLogic(Point(nColumnWidth,0),MapUnit::Map10thMM).X();
         xColModel->setPropertyValue(FM_PROP_WIDTH, aWidth);
     }
 }
 
@@ -1547,16 +1546,15 @@
     DbGridControl::ColumnMoved(nId);
     Reference< css::container::XIndexContainer >  xColumns(GetPeer()->getColumns());
 
     if (xColumns.is())
     {
-        // suchen der Spalte und verschieben im Model
-        // ColumnPos holen
+        // Find the column and shift the model
         DbGridColumn* pCol = DbGridControl::GetColumns().at( GetModelColumnPos(nId) );
         Reference< css::beans::XPropertySet >  xCol;
-
-        // Einfuegen muss sich an den Column Positionen orientieren
+        
+        // Insertion must be done relative to the column positions
         sal_Int32 i;
         Reference< XInterface > xCurrent;
         for (i = 0; !xCol.is() && i < xColumns->getCount(); i++)
         {
             xCurrent.set(xColumns->getByIndex(i), css::uno::UNO_QUERY);
@@ -1581,12 +1579,11 @@
     m_bInColumnMove = false;
 }
 
 void FmGridControl::InitColumnsByModels(const Reference< css::container::XIndexContainer >& 
xColumns)
 {
-    // Spalten wieder neu setzen
-    // wenn es nur eine HandleColumn gibt, dann nicht
+    // Reset the columns, unless there is only one HandleColumn
     if (GetModelColCount())
     {
         RemoveColumns();
         InsertHandleColumn();
     }
@@ -1594,11 +1591,11 @@
     if (!xColumns.is())
         return;
 
     SetUpdateMode(false);
 
-    // Einfuegen muss sich an den Column Positionen orientieren
+    // Insertion must be done relative to the column positions
     sal_Int32 i;
     Any aWidth;
     for (i = 0; i < xColumns->getCount(); ++i)
     {
         Reference< css::beans::XPropertySet > xCol(
@@ -1615,14 +1612,15 @@
         AppendColumn(aName, (sal_uInt16)nWidth);
         DbGridColumn* pCol = DbGridControl::GetColumns().at( i );
         pCol->setModel(xCol);
     }
 
-    // und jetzt noch die hidden columns rausnehmen
-    // (wir haben das nicht gleich in der oberen Schleife gemacht, da wir dann Probleme mit den
-    // IDs der Spalten bekommen haetten : AppendColumn vergibt die automatisch, die Spalte _nach_
-    // einer versteckten braucht aber eine um eine erhoehte ID ....
+    // Now just remove the hidden columns.
+    // Note: we did not do this in the previous loop , since we would have gotten problems with 
+    // the ID in the columns. AppendColumn hands out the (translator: correct) one automatically; 
the ID of the 
+    // row _after_ a hidden one, however, has to be incremented by one. 
+   
     Any aHidden;
     for (i = 0; i < xColumns->getCount(); ++i)
     {
         Reference< css::beans::XPropertySet > xCol( xColumns->getByIndex(i), css::uno::UNO_QUERY);
         aHidden = xCol->getPropertyValue(FM_PROP_HIDDEN);
@@ -1708,15 +1706,15 @@
 void FmGridControl::InitColumnsByFields(const Reference< css::container::XIndexAccess >& _rxFields)
 {
     if ( !_rxFields.is() )
         return;
 
-    // Spalten initialisieren
+    // Initialise columns
     Reference< XIndexContainer > xColumns( GetPeer()->getColumns() );
     Reference< XNameAccess > xFieldsAsNames( _rxFields, UNO_QUERY );
 
-    // Einfuegen muss sich an den Column Positionen orientieren
+    // Insertion must be done relative to the column positions
     for (sal_Int32 i = 0; i < xColumns->getCount(); i++)
     {
         DbGridColumn* pCol = GetColumns().at( i );
         OSL_ENSURE(pCol,"No grid column!");
         if ( pCol )
@@ -1777,13 +1775,13 @@
         markColumn(nId); // ... -> mark it
 }
 
 bool FmGridControl::selectBookmarks(const Sequence< Any >& _rBookmarks)
 {
+    // need to lock the SolarMutex so that no paint call disturbs us ...
     SolarMutexGuard aGuard;
-        // need to lock the SolarMutex so that no paint call disturbs us ...
-
+    
     if ( !m_pSeekCursor )
     {
         OSL_FAIL( "FmGridControl::selectBookmarks: no seek cursor!" );
         return false;
     }
@@ -1852,17 +1850,17 @@
         for (i=0; i<nSelectedRows; ++i)
         {
             nIdx = ::comphelper::getINT32(pBookmarks[i]);
             if (IsInsertionRow(nIdx))
             {
-                // leerzeile nicht loeschen
+                // donot delete empty row
                 aBookmarks.realloc(--nSelectedRows);
-                SelectRow(nIdx, false);          // selection aufheben fuer leerzeile
+                SelectRow(nIdx, false);          // remove the selection for an empty row
                 break;
             }
-
-            // Zunaechst den DatenCursor auf den selektierten Satz pos.
+            
+            // Next, the data cursor at the selected row position.
             if (SeekCursor(nIdx))
             {
                 GetSeekRow()->SetState(m_pSeekCursor, true);
 
                 pBookmarks[i] = m_pSeekCursor->getBookmark();
@@ -1976,19 +1974,20 @@
 }
 
 void FmGridControl::Select()
 {
     DbGridControl::Select();
-    // ... betrifft das unsere Spalten ?
+    // are we dealing with our column?
     const MultiSelection* pColumnSelection = GetColumnSelection();
 
     sal_uInt16 nSelectedColumn =
         pColumnSelection && pColumnSelection->GetSelectCount()
             ? sal::static_int_cast< sal_uInt16 >(
                 const_cast<MultiSelection*>(pColumnSelection)->FirstSelected())
             : SAL_MAX_UINT16;
-    // die HandleColumn wird nicht selektiert
+
+    // the HandleColumn is not selected. 
     switch (nSelectedColumn)
     {
         case SAL_MAX_UINT16: break; // no selection
         case  0 : nSelectedColumn = SAL_MAX_UINT16; break;
                     // handle col can't be selected
@@ -1998,11 +1997,11 @@
             break;
     }
 
     if (nSelectedColumn != m_nCurrentSelectedColumn)
     {
-        // VOR dem Aufruf des select am SelectionSupplier !
+        // _Before_ the call of select on the SelectionSupplier !
         m_nCurrentSelectedColumn = nSelectedColumn;
 
         if (!m_bSelecting)
         {
             m_bSelecting = true;

Attachment: fmgridcl.cxx
Description: Binary data


Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.