private void panelTabela_Paint(object sender, PaintEventArgs e)
        {
            Graphics g = e.Graphics;

            //      g.TranslateTransform(xMargin, yMargin);
            g.ScaleTransform(zoom / 100, zoom / 100);

            PointF pt = panelTabela.AutoScrollPosition;  // vraca negativne koordinate

            pt    = new PointF(pt.X + xMargin, pt.Y + yMargin);
            pt.X /= zoom / 100;
            pt.Y /= zoom / 100;

            foreach (ElementTableItem item in tabela.getElementItems(selectedSprava(), selectedGrupa()))
            {
                item.draw(g, pt);
            }
            if (clipboard != null && clipboard.Sprava == selectedSprava() &&
                clipboard.Grupa == selectedGrupa())
            {
                clipboard.draw(g, pt);
            }
            foreach (ElementTableItem item in tabela.getElementItems(selectedSprava(), selectedGrupa()))
            {
                if (item.Selected)
                {
                    item.draw(g, pt);
                }
            }
        }
 private void filterItems(Sprava sprava, List <TezinaElementa> tezine, List <GrupaElementa> grupeElemenata)
 {
     items = new List <ElementTableItem>();
     foreach (GrupaElementa grupa in grupeElemenata)
     {
         foreach (ElementTableItem item in tabela.getElementItems(sprava, grupa))
         {
             if (item.Element == null)
             {
                 continue;
             }
             foreach (TezinaElementa tezina in tezine)
             {
                 if (item.Element.Tezina == tezina)
                 {
                     item.Location = new PointF(0.0f, 0.0f);
                     items.Add(item);
                     break;
                 }
             }
         }
     }
 }