feat(collab): tuner round 2 — center-anchored labels, exact outlines, varied demo set, clearer color modes
- collab_presence_style.h: GAL BitmapText CENTERS on its position (confirmed in GAL::ResetTextAttributes — the mispositioned nameplates); labels/chips now hand GAL the block center. New selection shape 5 'exact outline': pcbnew hugs real geometry (footprint bounding hull, TransformShapeToPolygon for the rest, padding inflates the polygon); eeschema falls back to rect. - kicadCollabTestDemoSet (both TUs + merged): labeled demo groups — smallest + largest footprint and the two busiest nets' segments (symbols + wire bundles on sch) — so the style preview covers the real range of shapes. - PresenceTuner: Colors section rebuilt as explicit modes (per-user / fixed / palette) with preset palettes (default, pastel, vivid, okabe-ito), buffered hex editing + Apply (the old always-filtering textarea ate keystrokes), an 'overlay only' hint; demo injection consumes the varied demo set; 'exact outline (pcb)' in the shape list. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CvqUd4QsJSGHN28aunJRTq
This commit is contained in:
parent
ce99773af4
commit
0f19811602
5 changed files with 374 additions and 62 deletions
|
|
@ -52,6 +52,7 @@ void pcbCollabSetPins( std::string aJson );
|
|||
void pcbCollabSetViewport( double aCx, double aCy );
|
||||
void pcbCollabSetStyle( std::string aJson );
|
||||
std::string pcbCollabTestListItems( int aCount );
|
||||
std::string pcbCollabTestDemoSet();
|
||||
std::string pcbCollabGetViewport();
|
||||
std::string pcbCollabGetSelection();
|
||||
std::string pcbCollabTestSelectFirst();
|
||||
|
|
@ -73,6 +74,7 @@ void schCollabSetPins( std::string aJson );
|
|||
void schCollabSetViewport( double aCx, double aCy );
|
||||
void schCollabSetStyle( std::string aJson );
|
||||
std::string schCollabTestListItems( int aCount );
|
||||
std::string schCollabTestDemoSet();
|
||||
std::string schCollabGetViewport();
|
||||
std::string schCollabGetSelection();
|
||||
std::string schCollabTestSelectFirst();
|
||||
|
|
@ -187,6 +189,11 @@ static std::string collabTestListItems( int aCount )
|
|||
return pcbEditorActive() ? pcbCollabTestListItems( aCount ) : schCollabTestListItems( aCount );
|
||||
}
|
||||
|
||||
static std::string collabTestDemoSet()
|
||||
{
|
||||
return pcbEditorActive() ? pcbCollabTestDemoSet() : schCollabTestDemoSet();
|
||||
}
|
||||
|
||||
static std::string collabGetViewport()
|
||||
{
|
||||
return pcbEditorActive() ? pcbCollabGetViewport() : schCollabGetViewport();
|
||||
|
|
@ -231,6 +238,7 @@ EMSCRIPTEN_BINDINGS(kicad_editor) {
|
|||
function("kicadCollabSetViewport", &collabSetViewport);
|
||||
function("kicadCollabSetStyle", &collabSetStyle);
|
||||
function("kicadCollabTestListItems", &collabTestListItems);
|
||||
function("kicadCollabTestDemoSet", &collabTestDemoSet);
|
||||
function("kicadCollabGetViewport", &collabGetViewport);
|
||||
function("kicadCollabGetSelection", &collabGetSelection);
|
||||
function("kicadCollabTestSelectFirst", &collabTestSelectFirst);
|
||||
|
|
|
|||
Loading…
Reference in a new issue