Index: trunk/scconfig/Rev.h =================================================================== --- trunk/scconfig/Rev.h (revision 26262) +++ trunk/scconfig/Rev.h (revision 26263) @@ -1 +1 @@ -static const int myrev = 26260; +static const int myrev = 26262; Index: trunk/scconfig/Rev.tab =================================================================== --- trunk/scconfig/Rev.tab (revision 26262) +++ trunk/scconfig/Rev.tab (revision 26263) @@ -1,4 +1,4 @@ -26260 configure order: move wget to lib_wget for reuse +26262 configure order: move wget to lib_wget for reuse, add order plugins 26253 configure hidlib: move hidlib-common dialogs from the dialogs plugin to lib_hid_common so other hidlib apps can benefit from them 26000 configure hildib: separate polygon generator funtions so they can be reused by hidlib apps 25853 configure new plugin for data access actions Index: trunk/scconfig/plugins.h =================================================================== --- trunk/scconfig/plugins.h (revision 26262) +++ trunk/scconfig/plugins.h (revision 26263) @@ -43,6 +43,8 @@ plugin_def("millpath", "calculate toolpath for milling", sdisable, 1) plugin_def("mincut", "minimal cut shorts", sbuildin, 1) plugin_def("oldactions", "old/obsolete actions", sdisable, 1) +plugin_def("order_pcbway", "board ordering from PCBWay", sdisable, 1) +plugin_def("order", "online board ordering", sdisable, 1) plugin_def("polycombine", "combine selected polygons", sbuildin, 1) plugin_def("polystitch", "stitch polygon at cursor", sbuildin, 1) plugin_def("propedit", "object property editor", sbuildin, 1) @@ -178,3 +180,4 @@ plugin_dep("lib_gtk_hid", "lib_hid_common", 0) plugin_dep("lib_vfs", "propedit", 0) plugin_dep("millpath", "lib_polyhelp", 0) +plugin_dep("order_pcbway", "order", 0) Index: trunk/src_plugins/order/Makefile =================================================================== --- trunk/src_plugins/order/Makefile (nonexistent) +++ trunk/src_plugins/order/Makefile (revision 26263) @@ -0,0 +1,6 @@ +all: + cd ../../src && $(MAKE) mod_order + +clean: + rm *.o *.so 2>/dev/null ; true + Index: trunk/src_plugins/order/Plug.tmpasm =================================================================== --- trunk/src_plugins/order/Plug.tmpasm (nonexistent) +++ trunk/src_plugins/order/Plug.tmpasm (revision 26263) @@ -0,0 +1,10 @@ +put /local/pcb/mod {order} +put /local/pcb/mod/OBJS [@ + $(PLUGDIR)/order/order.o +@] + +switch /local/pcb/order/controls + case {buildin} include /local/pcb/tmpasm/buildin; end; + case {plugin} include /local/pcb/tmpasm/plugin; end; + case {disable} include /local/pcb/tmpasm/disable; end; +end Index: trunk/src_plugins/order/order.c =================================================================== --- trunk/src_plugins/order/order.c (nonexistent) +++ trunk/src_plugins/order/order.c (revision 26263) @@ -0,0 +1,45 @@ +/* + * COPYRIGHT + * + * pcb-rnd, interactive printed circuit board design + * Copyright (C) 2019 Tibor 'Igor2' Palinkas + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Contact: + * Project page: http://repo.hu/projects/pcb-rnd + * lead developer: http://repo.hu/projects/pcb-rnd/contact.html + * mailing list: pcb-rnd (at) list.repo.hu (send "subscribe") + */ + +#include "config.h" + +#include + +#include "pcb-printf.h" +#include "plugins.h" + + +int pplg_check_ver_order(int ver_needed) { return 0; } + +void pplg_uninit_order(void) +{ +} + +int pplg_init_order(void) +{ + PCB_API_CHK_VER; + return 0; +} Index: trunk/src_plugins/order/order.h =================================================================== --- trunk/src_plugins/order/order.h (nonexistent) +++ trunk/src_plugins/order/order.h (revision 26263) @@ -0,0 +1,37 @@ +/* + * COPYRIGHT + * + * pcb-rnd, interactive printed circuit board design + * Copyright (C) 2019 Tibor 'Igor2' Palinkas + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Contact: + * Project page: http://repo.hu/projects/pcb-rnd + * lead developer: http://repo.hu/projects/pcb-rnd/contact.html + * mailing list: pcb-rnd (at) list.repo.hu (send "subscribe") + */ + +#ifndef PCB_ORDER_H +#define PCB_ORDER_H + +/* order implementation - registered by an order plugin */ +typedef struct pcb_order_imp_s pcb_order_imp_t; +struct pcb_order_imp_s { + int (*enabled)(pcb_order_imp_t *imp); /* returns 1 if the plugin is enabled */ + void (*populate_dad)(pcb_order_imp_t *imp); +}; + +#endif Index: trunk/src_plugins/order/order.pup =================================================================== --- trunk/src_plugins/order/order.pup (nonexistent) +++ trunk/src_plugins/order/order.pup (revision 26263) @@ -0,0 +1,6 @@ +$class feature +$short online board ordering +$long order boards through the Internet +$state WIP +$package cloud +default disable Index: trunk/src_plugins/order_pcbway/Makefile =================================================================== --- trunk/src_plugins/order_pcbway/Makefile (nonexistent) +++ trunk/src_plugins/order_pcbway/Makefile (revision 26263) @@ -0,0 +1,6 @@ +all: + cd ../../src && $(MAKE) mod_order_pcbway + +clean: + rm *.o *.so 2>/dev/null ; true + Index: trunk/src_plugins/order_pcbway/Plug.tmpasm =================================================================== --- trunk/src_plugins/order_pcbway/Plug.tmpasm (nonexistent) +++ trunk/src_plugins/order_pcbway/Plug.tmpasm (revision 26263) @@ -0,0 +1,10 @@ +put /local/pcb/mod {order_pcbway} +put /local/pcb/mod/OBJS [@ + $(PLUGDIR)/order_pcbway/pcbway.o +@] + +switch /local/pcb/order_pcbway/controls + case {buildin} include /local/pcb/tmpasm/buildin; end; + case {plugin} include /local/pcb/tmpasm/plugin; end; + case {disable} include /local/pcb/tmpasm/disable; end; +end Index: trunk/src_plugins/order_pcbway/order_pcbway.pup =================================================================== --- trunk/src_plugins/order_pcbway/order_pcbway.pup (nonexistent) +++ trunk/src_plugins/order_pcbway/order_pcbway.pup (revision 26263) @@ -0,0 +1,7 @@ +$class feature +$short board ordering from PCBWay +$long order from PCBWay through the Internet +$state WIP +$package cloud +dep order +default disable Index: trunk/src_plugins/order_pcbway/pcbway.c =================================================================== --- trunk/src_plugins/order_pcbway/pcbway.c (nonexistent) +++ trunk/src_plugins/order_pcbway/pcbway.c (revision 26263) @@ -0,0 +1,45 @@ +/* + * COPYRIGHT + * + * pcb-rnd, interactive printed circuit board design + * Copyright (C) 2019 Tibor 'Igor2' Palinkas + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Contact: + * Project page: http://repo.hu/projects/pcb-rnd + * lead developer: http://repo.hu/projects/pcb-rnd/contact.html + * mailing list: pcb-rnd (at) list.repo.hu (send "subscribe") + */ + +#include "config.h" + +#include + +#include "pcb-printf.h" +#include "plugins.h" + + +int pplg_check_ver_order_pcbway(int ver_needed) { return 0; } + +void pplg_uninit_order_pcbway(void) +{ +} + +int pplg_init_order_pcbway(void) +{ + PCB_API_CHK_VER; + return 0; +} Index: trunk/src_plugins/plugins_ALL.tmpasm =================================================================== --- trunk/src_plugins/plugins_ALL.tmpasm (revision 26262) +++ trunk/src_plugins/plugins_ALL.tmpasm (revision 26263) @@ -91,6 +91,8 @@ include {../src_plugins/millpath/Plug.tmpasm} include {../src_plugins/mincut/Plug.tmpasm} include {../src_plugins/oldactions/Plug.tmpasm} +include {../src_plugins/order/Plug.tmpasm} +include {../src_plugins/order_pcbway/Plug.tmpasm} include {../src_plugins/polycombine/Plug.tmpasm} include {../src_plugins/polystitch/Plug.tmpasm} include {../src_plugins/propedit/Plug.tmpasm}