<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>57502</bug_id>
          
          <creation_ts>2026-01-15 18:08:01 +0300</creation_ts>
          <short_desc>flatcam - Кнопка импорта неактивна</short_desc>
          <delta_ts>2026-09-18 14:57:09 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>flatcam</component>
          <version>unstable</version>
          <rep_platform>x86_64</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P5</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Крупеньич Дарья Денисовна">krupenichdd</reporter>
          <assigned_to name="Полина Пойденко">polipoki</assigned_to>
          <cc>lav</cc>
    
    <cc>polipoki</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>280293</commentid>
    <comment_count>0</comment_count>
    <who name="Крупеньич Дарья Денисовна">krupenichdd</who>
    <bug_when>2026-01-15 18:08:01 +0300</bug_when>
    <thetext>версия пакета:
flatcam 8.995-alt3

Системы:
Alt Workstation 11.1 x86-64 Обновленный до Sisyphus
Alt Workstation K 11.2 x86-64 Обновленный до Sisyphus
Alt Education 11.0 KDE x86-64 Обновленный до Sisyphus
Alt Education 11.0 XFCE x86-64 Обновленный до Sisyphus

Шаги воспроизведения:
1. $ flatcam
2. Файл -&gt; Создать -&gt; Gerber -&gt; Редактор Gerber
3. В правом верхнем углу рядом с &quot;Выбрать&quot; нажать &quot;&gt;&gt;&quot; -&gt; импорт

Ожидаемый результат:
Возможность выбрать файл

Реальный результат:
Ничего не происходит

Дополнительно:

Файл -&gt; Импорт открывает проводник</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>294997</commentid>
    <comment_count>1</comment_count>
    <who name="Полина Пойденко">polipoki</who>
    <bug_when>2026-09-03 15:57:55 +0300</bug_when>
    <thetext>Исходя из debug-а запущенной программы:

[SUCCESS] Finished loading the Gerber object into the editor.
DEBUG 20260903_144423 *** on_tool_select(&apos;import&apos;)
[WARNING] Cancelled. No aperture is selected.
DEBUG 20260903_144423 *** select is checked.

И следующей функции on_tool_select(self, tool)
https://git.altlinux.org/gitoskop/#/packages/gears/f/flatcam.git/-/blob/sisyphus/appEditors/appGerberEditor.py?L=5544&amp;t=def%20on_tool_select%28self%2C%20tool%29%3A

Импорт в Gerber Editor  не производится вероятно из-за следующего условия, исходя из которого у нас есть доступ вначале только к ограниченному кол-ву элементов (кнопок), которые мы можем использовать.

 if self.last_aperture_selected is None and current_tool not in [&apos;select&apos;, &apos;disc&apos;, &apos;semidisc&apos;, &apos;region&apos;]:
            # self.draw_app.select_tool(&apos;select&apos;)
            self.complete = True
            current_tool = &apos;select&apos;
            self.app.inform.emit(&apos;[WARNING_NOTCL] %s %s&apos; % (_(&quot;Cancelled.&quot;), _(&quot;No aperture is selected.&quot;)))

https://git.altlinux.org/gitoskop/#/packages/gears/f/flatcam.git/-/blob/sisyphus/appEditors/appGerberEditor.py?L=5554&amp;t=if%20self.last_aperture_selected%20is%20None%20a

Если ранее фигура уже была использована (last_aperture_selected), то нам становятся доступны остальные элементы помимо базовых.

Но тогда  при нажатии на кнопку &quot;Import&quot; будет выводиться следующая ошибка:

The application encountered a critical error and it will close. Please report this error to the developers.

2026-09-03 14:58:13.556504
Traceback (most recent call last):
  File &quot;/usr/share/flatcam/appEditors/appGerberEditor.py&quot;, line 4113, in f
    self.on_tool_select(the_tool)
  File &quot;/usr/share/flatcam/appEditors/appGerberEditor.py&quot;, line 5569, in on_tool_select
    self.active_tool = self.tools_gerber[current_tool][&quot;constructor&quot;](self)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File &quot;/usr/share/flatcam/appEditors/appGerberEditor.py&quot;, line 3429, in __init__
    self.draw_app.ui.array_frame.hide()
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: &apos;AppGerberEditorUI&apos; object has no attribute &apos;array_frame&apos;

---

Саму проблему я подтверждаю.
Так как это beta версия, которая находится в стадии очень медленной и продолжительной разработки, то в данном случае тут только ожидать исправления в upstream.

upstream публикует свои изменения редко и на ресурсе, в котором я не могу создать issue к сожалению, чтобы подсветить проблему, поэтому буду следить за изменениями.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>299581</commentid>
    <comment_count>2</comment_count>
    <who name="Полина Пойденко">polipoki</who>
    <bug_when>2026-09-18 14:57:09 +0300</bug_when>
    <thetext>&gt; Импорт в Gerber Editor  не производится вероятно из-за следующего условия, исходя из
&gt; которого у нас есть доступ вначале только к ограниченному кол-ву элементов (кнопок),
&gt; которые мы можем использовать
&gt; &lt;...&gt;
&gt; Если ранее фигура уже была использована (last_aperture_selected), 
&gt; то нам становятся доступны остальные элементы помимо базовых.

Я здесь оговорилась.

Имеется ввиду, что если мы в Gerber Editor выбираем элемент, который не входит в следующий список: [&apos;select&apos;, &apos;disc&apos;, &apos;semidisc&apos;, &apos;region&apos;], - либо если не создана и не выделена соответствующая aperture в  Aperture Table (if self.last_aperture_selected is None), тогда мы не сможем использовать интересующую фигуру/инструмент.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>