Просмотр исходного кода

- added more programmers that contributed to FlatCAM over the years, in the "About FlatCAM" -> Programmers window

Marius Stanciu 6 лет назад
Родитель
Сommit
9187004f9e
3 измененных файлов с 88 добавлено и 28 удалено
  1. 80 24
      FlatCAMApp.py
  2. 4 0
      README.md
  3. 4 4
      flatcamGUI/FlatCAMGUI.py

+ 80 - 24
FlatCAMApp.py

@@ -3915,9 +3915,12 @@ class App(QtCore.QObject):
                     # "<b>{down}</B> area &nbsp;&nbsp;&nbsp;&nbsp;"
                     # "<b>{down}</B> area &nbsp;&nbsp;&nbsp;&nbsp;"
                     "<a href = \"https://bitbucket.org/jpcgt/flatcam/downloads/\"><b>{down}</B></a><BR>"
                     "<a href = \"https://bitbucket.org/jpcgt/flatcam/downloads/\"><b>{down}</B></a><BR>"
                     # "<b> {issue}</B> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"
                     # "<b> {issue}</B> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"
-                    "<a href = \"https://bitbucket.org/jpcgt/flatcam/issues?status=new&status=open/\"><B>{issue}</B></a><BR>".
-                        format(title=_("2D Computer-Aided Printed Circuit Board Manufacturing"),
-                               devel=_("Development"), down=_("DOWNLOAD"), issue=_("Issue tracker"))
+                    "<a href = \"https://bitbucket.org/jpcgt/flatcam/issues?status=new&status=open/\">"
+                    "<B>{issue}</B></a><BR>".format(
+                        title=_("2D Computer-Aided Printed Circuit Board Manufacturing"),
+                        devel=_("Development"),
+                        down=_("DOWNLOAD"),
+                        issue=_("Issue tracker"))
                 )
                 )
                 title.setOpenExternalLinks(True)
                 title.setOpenExternalLinks(True)
 
 
@@ -3927,7 +3930,8 @@ class App(QtCore.QObject):
                 description_label = QtWidgets.QLabel(
                 description_label = QtWidgets.QLabel(
                     "FlatCAM {version} {beta} ({date}) - {arch}<br>"
                     "FlatCAM {version} {beta} ({date}) - {arch}<br>"
                     "<a href = \"http://flatcam.org/\">http://flatcam.org</a><br>".format(
                     "<a href = \"http://flatcam.org/\">http://flatcam.org</a><br>".format(
-                        version=version,beta=('BETA' if beta else ''),
+                        version=version,
+                        beta=('BETA' if beta else ''),
                         date=version_date,
                         date=version_date,
                         arch=platform.architecture()[0])
                         arch=platform.architecture()[0])
                 )
                 )
@@ -4005,31 +4009,83 @@ class App(QtCore.QObject):
                 self.splash_tab_layout.addWidget(logo, stretch=0)
                 self.splash_tab_layout.addWidget(logo, stretch=0)
                 self.splash_tab_layout.addWidget(title, stretch=1)
                 self.splash_tab_layout.addWidget(title, stretch=1)
 
 
-                self.prog_grid_lay = QtWidgets.QGridLayout()
+                pal = QtGui.QPalette()
+                pal.setColor(QtGui.QPalette.Background, Qt.white)
+
+                self.prog_form_lay = QtWidgets.QFormLayout()
+                self.prog_form_lay.setHorizontalSpacing(20)
 
 
                 prog_widget = QtWidgets.QWidget()
                 prog_widget = QtWidgets.QWidget()
-                prog_widget.setLayout(self.prog_grid_lay)
-                self.programmmers_tab_layout.addWidget(prog_widget)
-                self.programmmers_tab_layout.addStretch()
-
-                self.prog_grid_lay.addWidget(QtWidgets.QLabel('<b>%s</b>' % _("Programmer")), 0, 0)
-                self.prog_grid_lay.addWidget(QtWidgets.QLabel('<b>%s</b>' % _("Status")), 0, 1)
-                self.prog_grid_lay.addWidget(QtWidgets.QLabel('%s' % "Juan Pablo Caram"), 1, 0)
-                self.prog_grid_lay.addWidget(QtWidgets.QLabel('%s' % _("Program Author")), 1, 1)
-                self.prog_grid_lay.addWidget(QtWidgets.QLabel('%s' % "Denis Hayrullin"), 2, 0)
-                self.prog_grid_lay.addWidget(QtWidgets.QLabel('%s' % " "), 2, 1)
-                self.prog_grid_lay.addWidget(QtWidgets.QLabel('%s' % "Kamil Sopko"), 3, 0)
-                self.prog_grid_lay.addWidget(QtWidgets.QLabel('%s' % " "), 3, 1)
-                self.prog_grid_lay.addWidget(QtWidgets.QLabel('%s' % "Marius Stanciu"), 4, 0)
-                self.prog_grid_lay.addWidget(QtWidgets.QLabel('%s' % _("Maintainer >=2019")), 4, 1)
-                self.prog_grid_lay.addWidget(QtWidgets.QLabel('%s' % "Matthieu Berthomé"), 5, 0)
-                self.prog_grid_lay.addWidget(QtWidgets.QLabel('%s' % " "), 5, 1)
+                prog_widget.setLayout(self.prog_form_lay)
+                prog_scroll = QtWidgets.QScrollArea()
+                prog_scroll.setWidget(prog_widget)
+                prog_scroll.setWidgetResizable(True)
+                prog_scroll.setFrameShape(QtWidgets.QFrame.NoFrame)
+                prog_scroll.setPalette(pal)
+
+                self.programmmers_tab_layout.addWidget(prog_scroll)
+
+                self.prog_form_lay.addRow(QtWidgets.QLabel('<b>%s</b>' % _("Programmer")),
+                                          QtWidgets.QLabel('<b>%s</b>' % _("Status")))
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Juan Pablo Caram"),
+                                          QtWidgets.QLabel('%s' % _("Program Author")))
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Denis Hayrullin"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Kamil Sopko"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Marius Stanciu"),
+                                          QtWidgets.QLabel('%s' % _("Maintainer >=2019")))
+                self.prog_form_lay.addRow(QtWidgets.QLabel(''))
+
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Alexandru Lazar"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Matthieu Berthomé"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Mike Evans"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Victor Benso"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel(''))
+
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Barnaby Walters"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Jørn Sandvik Nilsson"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Lei Zheng"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Marco A Quezada"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel(''))
+
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Cedric Dussud"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Christopher Hemingway"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Damian Wrobel"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Daniel Sallin"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel(''))
+
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Bruno Vunderl"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Gonzalo Lopez"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Jakob Staudt"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Mike Smith"))
+
+                self.prog_form_lay.addRow(QtWidgets.QLabel(''))
+
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Lubos Medovarsky"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Steve Martina"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "Thomas Duffin"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel(''))
+
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "@Idechix"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "@SM"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "@grbf"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "@Symonty"))
+                self.prog_form_lay.addRow(QtWidgets.QLabel('%s' % "@mgix"))
 
 
                 self.translator_grid_lay = QtWidgets.QGridLayout()
                 self.translator_grid_lay = QtWidgets.QGridLayout()
+
+                # trans_widget = QtWidgets.QWidget()
+                # trans_widget.setLayout(self.translator_grid_lay)
+                # self.translators_tab_layout.addWidget(trans_widget)
+                # self.translators_tab_layout.addStretch()
+
                 trans_widget = QtWidgets.QWidget()
                 trans_widget = QtWidgets.QWidget()
                 trans_widget.setLayout(self.translator_grid_lay)
                 trans_widget.setLayout(self.translator_grid_lay)
-                self.translators_tab_layout.addWidget(trans_widget)
-                self.translators_tab_layout.addStretch()
+                trans_scroll = QtWidgets.QScrollArea()
+                trans_scroll.setWidget(trans_widget)
+                trans_scroll.setWidgetResizable(True)
+                trans_scroll.setFrameShape(QtWidgets.QFrame.NoFrame)
+                trans_scroll.setPalette(pal)
+                self.translators_tab_layout.addWidget(trans_scroll)
 
 
                 self.translator_grid_lay.addWidget(QtWidgets.QLabel('<b>%s</b>' % _("Language")), 0, 0)
                 self.translator_grid_lay.addWidget(QtWidgets.QLabel('<b>%s</b>' % _("Language")), 0, 0)
                 self.translator_grid_lay.addWidget(QtWidgets.QLabel('<b>%s</b>' % _("Translator")), 0, 1)
                 self.translator_grid_lay.addWidget(QtWidgets.QLabel('<b>%s</b>' % _("Translator")), 0, 1)
@@ -4050,7 +4106,7 @@ class App(QtCore.QObject):
                 self.translator_grid_lay.addWidget(QtWidgets.QLabel('%s' % "Marius Stanciu (Google-Translation)"), 5, 1)
                 self.translator_grid_lay.addWidget(QtWidgets.QLabel('%s' % "Marius Stanciu (Google-Translation)"), 5, 1)
                 self.translator_grid_lay.addWidget(QtWidgets.QLabel('%s' % " "), 5, 2)
                 self.translator_grid_lay.addWidget(QtWidgets.QLabel('%s' % " "), 5, 2)
                 self.translator_grid_lay.setColumnStretch(0, 0)
                 self.translator_grid_lay.setColumnStretch(0, 0)
-                # self.translators_tab_layout.addStretch()
+                self.translators_tab_layout.addStretch()
 
 
                 self.license_tab_layout.addWidget(license_label)
                 self.license_tab_layout.addWidget(license_label)
                 self.license_tab_layout.addStretch()
                 self.license_tab_layout.addStretch()

+ 4 - 0
README.md

@@ -9,6 +9,10 @@ CAD program, and create G-Code for Isolation routing.
 
 
 =================================================
 =================================================
 
 
+17.09.2019
+
+- added more programmers that contributed to FlatCAM over the years, in the "About FlatCAM" -> Programmers window
+
 16.09.2019
 16.09.2019
 
 
 - modified the TclCommand New so it will no longer close all tabs when called (it closed the Code Editor tab which may have been holding the code that run)
 - modified the TclCommand New so it will no longer close all tabs when called (it closed the Code Editor tab which may have been holding the code that run)

+ 4 - 4
flatcamGUI/FlatCAMGUI.py

@@ -5175,8 +5175,8 @@ class ExcellonGenPrefGroupUI(OptionsGroupUI):
         self.excellon_optimization_label = QtWidgets.QLabel(_('Algorithm:'))
         self.excellon_optimization_label = QtWidgets.QLabel(_('Algorithm:'))
         self.excellon_optimization_label.setToolTip(
         self.excellon_optimization_label.setToolTip(
             _("This sets the optimization type for the Excellon drill path.\n"
             _("This sets the optimization type for the Excellon drill path.\n"
-              "If <<MetaHeuristic>> is checked then Google OR-Tools algorithm with MetaHeuristic\n"
-              "Guided Local Path is used. Default search time is 3sec.\n"
+              "If <<MetaHeuristic>> is checked then Google OR-Tools algorithm with\n"
+              "MetaHeuristic Guided Local Path is used. Default search time is 3sec.\n"
               "If <<Basic>> is checked then Google OR-Tools Basic algorithm is used.\n"
               "If <<Basic>> is checked then Google OR-Tools Basic algorithm is used.\n"
               "If <<TSA>> is checked then Travelling Salesman algorithm is used for\n"
               "If <<TSA>> is checked then Travelling Salesman algorithm is used for\n"
               "drill path optimization.\n"
               "drill path optimization.\n"
@@ -5192,8 +5192,8 @@ class ExcellonGenPrefGroupUI(OptionsGroupUI):
                                                     orientation='vertical', stretch=False)
                                                     orientation='vertical', stretch=False)
         self.excellon_optimization_radio.setToolTip(
         self.excellon_optimization_radio.setToolTip(
             _("This sets the optimization type for the Excellon drill path.\n"
             _("This sets the optimization type for the Excellon drill path.\n"
-              "If <<MetaHeuristic>> is checked then Google OR-Tools algorithm with MetaHeuristic\n"
-              "Guided Local Path is used. Default search time is 3sec.\n"
+              "If <<MetaHeuristic>> is checked then Google OR-Tools algorithm with\n"
+              "MetaHeuristic Guided Local Path is used. Default search time is 3sec.\n"
               "If <<Basic>> is checked then Google OR-Tools Basic algorithm is used.\n"
               "If <<Basic>> is checked then Google OR-Tools Basic algorithm is used.\n"
               "If <<TSA>> is checked then Travelling Salesman algorithm is used for\n"
               "If <<TSA>> is checked then Travelling Salesman algorithm is used for\n"
               "drill path optimization.\n"
               "drill path optimization.\n"