mirror of
https://github.com/bancika/diy-layout-creator
synced 2026-11-10 17:22:09 +10:00
Refactor/maven (#889)
* mavenize * mavenization * mavenization * mavenization * mavenization * mavenization * mavenization * mavenization * mavenization * fix * app framework update * fix lib * lib * fix mavenized * fix mavenized * fix mavenized * fix mavenized * fix mavenized * fix mavenized * fix mavenized * fix mavenized * building for win and linux * Create run.bat * fixes for netlist * cleanup * unit tests * unit tests * configurable high dpi * performance upgrade * performance upgrade * rotate bug * Omit boards, wires, traces, terminals, etc from Spice netlist output * splash version update * optimize libs * optimize libs * updates * mac build maven * ruler optimization, moved images * cleanup * notarization * test workflow * build * Update pom.xml * Update pom.xml * Create README.md * Create test.yml * maven * build
This commit is contained in:
Vendored
BIN
Binary file not shown.
@@ -3,7 +3,6 @@
|
||||
/log/
|
||||
/build/
|
||||
/library/
|
||||
/lib/diylc-core.jar
|
||||
autoSave.diy
|
||||
config.xml
|
||||
/launch4j.log
|
||||
|
||||
@@ -10,8 +10,25 @@
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.m2e.core.maven2Builder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.eclipse.m2e.core.maven2Nature</nature>
|
||||
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||
</natures>
|
||||
<filteredResources>
|
||||
<filter>
|
||||
<id>1741597247368</id>
|
||||
<name></name>
|
||||
<type>30</type>
|
||||
<matcher>
|
||||
<id>org.eclipse.core.resources.regexFilterMatcher</id>
|
||||
<arguments>node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__</arguments>
|
||||
</matcher>
|
||||
</filter>
|
||||
</filteredResources>
|
||||
</projectDescription>
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -14,8 +14,10 @@
|
||||
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_SHOW_CODEDETAILS_IN_EXCEPTION_MESSAGES" value="true"/>
|
||||
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_USE_CLASSPATH_ONLY_JAR" value="false"/>
|
||||
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_USE_START_ON_FIRST_THREAD" value="true"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="org.eclipse.m2e.launchconfig.classpathProvider"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.diylc.DIYLCStarter"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.MODULE_NAME" value="diylc-swing"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="diylc-swing"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.m2e.launchconfig.sourcepathProvider"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Xms512m -Xmx2048m -javaagent:lib/jar-loader.jar -Dorg.diylc.storeDict=true -Dorg.diylc.enableTests=true -Dorg.diylc.scriptRun=true -Ddorg.diylc.debugContinuityAreas=true -Ddorg.diylc.debugComponentAreas=true -Ddorg.diylc.WriteStaticVariants=true -Ddorg.diylc.WriteStaticBlocks=true --add-opens java.base/java.util=ALL-UNNAMED --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.text=ALL-UNNAMED --add-opens java.desktop/java.awt=ALL-UNNAMED --add-opens java.desktop/java.awt.font=ALL-UNNAMED --add-opens java.desktop/java.awt.geom=ALL-UNNAMED --add-exports java.desktop/com.apple.eawt=ALL-UNNAMED --add-exports java.desktop/com.apple.eawt.event=ALL-UNNAMED --add-exports java.desktop/com.apple.eio=ALL-UNNAMED"/>
|
||||
</launchConfiguration>
|
||||
|
||||
@@ -7,9 +7,11 @@
|
||||
<listEntry value="1"/>
|
||||
</listAttribute>
|
||||
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_EXCLUDE_TEST_CODE" value="true"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="org.eclipse.m2e.launchconfig.classpathProvider"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.diylc.RegressionTestRunner"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.MODULE_NAME" value="diylc-swing"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value=""C:\Users\bancika\Documents\GitHub\diy-layout-creator\diylc-regression-data" PREPARE"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="diylc-swing"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.m2e.launchconfig.sourcepathProvider"/>
|
||||
<stringAttribute key="yk-options" value=" additional-options2=onexit\=snapshot "/>
|
||||
</launchConfiguration>
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -3,11 +3,11 @@
|
||||
<taskdef name="bundleapp"
|
||||
classname="com.oracle.appbundler.AppBundlerTask" />
|
||||
|
||||
<import file="download_jre.xml" />
|
||||
<import file="appimage.xml" />
|
||||
<import file="deploy/download_jre.xml" />
|
||||
<import file="deploy/linux/appimage/build.xml" />
|
||||
|
||||
<property environment="env"/>
|
||||
<property name="src.dir" value="${basedir}/src" />
|
||||
<property name="src.dir" value="${basedir}/src/main/java" />
|
||||
|
||||
<property name="lib.dir" value="${basedir}/lib" />
|
||||
<property name="build.dir" value="${basedir}/build" />
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<project name="jre-downloader" basedir=".">
|
||||
<project name="jre-downloader" basedir="..">
|
||||
|
||||
<property name="jdk.version" value="17.0.14+7" />
|
||||
<property name="jdk.version.file" value="17.0.14_7" />
|
||||
@@ -1,6 +1,6 @@
|
||||
<project name="diylc-swing-appimage" basedir=".">
|
||||
<project name="diylc-swing-appimage" basedir="../../..">
|
||||
|
||||
<import file="build.xml"/>
|
||||
<import file="../../../build.xml"/>
|
||||
|
||||
<property name="appdir" value="build/AppDir" />
|
||||
<property name="appimagetool" value="${basedir}/tools/appimagetool-x86_64.AppImage" />
|
||||
+2
-3
@@ -28,10 +28,9 @@ echo "diylc.sh: Current working directory: $(pwd)"
|
||||
echo "diylc.sh: Executing DIYLCStarter with Java"
|
||||
|
||||
exec "$JAVA" \
|
||||
-javaagent:"$HERE/../lib/lib/jar-loader.jar" \
|
||||
-Xms128m \
|
||||
-Xms512m \
|
||||
-Xmx4096m \
|
||||
-cp "$HERE/../lib/diylc.jar:$HERE/../lib/lib/*" \
|
||||
-cp "$HERE/../lib/diylc.jar" \
|
||||
--add-exports java.desktop/com.apple.eawt.event=ALL-UNNAMED \
|
||||
--add-exports java.desktop/com.apple.eio=ALL-UNNAMED \
|
||||
--add-opens java.base/java.util=ALL-UNNAMED \
|
||||
Executable
+5
@@ -0,0 +1,5 @@
|
||||
#!/usr/bin/env bash
|
||||
JAVA_BIN="$(which java)"
|
||||
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
CLASS_PATH="${DIR}/diylc.jar"
|
||||
exec java -Xms512m -Xmx4096m -Dorg.diylc.scriptRun=true -Dfile.encoding=UTF-8 -cp "$CLASS_PATH" --add-exports java.desktop/com.apple.eawt.event=ALL-UNNAMED --add-exports java.desktop/com.apple.eio=ALL-UNNAMED --add-opens java.base/java.util=ALL-UNNAMED --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.text=ALL-UNNAMED --add-opens java.desktop/java.awt=ALL-UNNAMED --add-opens java.desktop/java.awt.font=ALL-UNNAMED --add-opens java.desktop/java.awt.geom=ALL-UNNAMED org.diylc.DIYLCStarter "$@"
|
||||
@@ -0,0 +1,166 @@
|
||||
# Setting up macOS Build Environment for DIYLC
|
||||
|
||||
This document describes how to set up a macOS machine for building and signing DIYLC application bundles.
|
||||
|
||||
## Prerequisites
|
||||
|
||||
1. **macOS System**
|
||||
- macOS 11 (Big Sur) or later
|
||||
- Xcode Command Line Tools installed
|
||||
```bash
|
||||
xcode-select --install
|
||||
```
|
||||
|
||||
2. **Java Development Kit**
|
||||
- Install JDK 17 (recommended to use SDKMAN!)
|
||||
```bash
|
||||
# Install SDKMAN!
|
||||
curl -s "https://get.sdkman.io" | bash
|
||||
source "$HOME/.sdkman/bin/sdkman-init.sh"
|
||||
|
||||
# Install JDK 17
|
||||
sdk install java 17.0.14-tem
|
||||
```
|
||||
|
||||
3. **Maven**
|
||||
- Install Maven 3.9 or later
|
||||
```bash
|
||||
sdk install maven
|
||||
```
|
||||
|
||||
## Apple Developer Account Setup
|
||||
|
||||
1. **Apple Developer Account**
|
||||
- Enroll in the [Apple Developer Program](https://developer.apple.com/programs/)
|
||||
- You need a paid membership ($99/year) for distribution signing
|
||||
|
||||
2. **Developer Certificate**
|
||||
- Open Keychain Access
|
||||
- Go to Certificate Assistant → Request a Certificate from a Certificate Authority
|
||||
- Fill in your email and name
|
||||
- Save to disk
|
||||
- Go to [Apple Developer Certificates](https://developer.apple.com/account/resources/certificates/list)
|
||||
- Create a new Developer ID Application certificate
|
||||
- Download and double-click to install in Keychain
|
||||
|
||||
3. **Notarization Setup**
|
||||
- Create an app-specific password:
|
||||
1. Go to [Apple ID Account](https://appleid.apple.com/)
|
||||
2. Security → App-Specific Passwords → Generate Password
|
||||
3. Save this password securely
|
||||
|
||||
- Create a keychain profile for notarization:
|
||||
```bash
|
||||
xcrun notarytool store-credentials "AC_PASSWORD" \
|
||||
--apple-id "your.email@example.com" \
|
||||
--team-id "YOUR_TEAM_ID" \
|
||||
--password "app-specific-password"
|
||||
```
|
||||
|
||||
## Environment Configuration
|
||||
|
||||
1. **Set Developer Identity**
|
||||
- Find your Developer ID in Keychain Access
|
||||
```bash
|
||||
security find-identity -v -p codesigning
|
||||
```
|
||||
- Set the environment variable (add to your ~/.zshrc):
|
||||
```bash
|
||||
export APPLE_DEVELOPER_IDENTITY="Developer ID Application: Your Name (TEAM_ID)"
|
||||
```
|
||||
|
||||
2. **Verify Setup**
|
||||
```bash
|
||||
# Verify codesign is available
|
||||
codesign --version
|
||||
|
||||
# Verify notarytool is available
|
||||
xcrun notarytool --version
|
||||
|
||||
# Verify your identity is set
|
||||
echo $APPLE_DEVELOPER_IDENTITY
|
||||
```
|
||||
|
||||
## Building DIYLC
|
||||
|
||||
1. **Clone the Repository**
|
||||
```bash
|
||||
git clone https://github.com/bancika/diy-layout-creator.git
|
||||
cd diy-layout-creator/diylc
|
||||
```
|
||||
|
||||
2. **Build for Intel Macs**
|
||||
```bash
|
||||
mvn clean package -P mac-x86
|
||||
```
|
||||
|
||||
3. **Build for Apple Silicon Macs**
|
||||
```bash
|
||||
mvn clean package -P mac-arm
|
||||
```
|
||||
|
||||
4. **Build Both Architectures**
|
||||
```bash
|
||||
mvn clean package -P mac-x86,mac-arm
|
||||
```
|
||||
|
||||
## Output Files
|
||||
|
||||
After successful builds, you'll find these files in the `diylc-swing/target` directory:
|
||||
|
||||
**Signed and Notarized Builds:**
|
||||
- `diylc-<version>-osx-x86.zip` - Signed and notarized Intel build
|
||||
- `diylc-<version>-osx-arm.zip` - Signed and notarized ARM build
|
||||
|
||||
**Unsigned Builds:**
|
||||
- `diylc-<version>-osx-x86-unsigned.zip` - Unsigned Intel build
|
||||
- `diylc-<version>-osx-arm-unsigned.zip` - Unsigned ARM build
|
||||
|
||||
The unsigned builds are created before the signing and notarization process and can be useful for testing or in environments where code signing is not required.
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
1. **Signing Issues**
|
||||
- Verify your certificate is valid:
|
||||
```bash
|
||||
security find-identity -v -p codesigning
|
||||
```
|
||||
- Check certificate expiration in Keychain Access
|
||||
|
||||
2. **Notarization Issues**
|
||||
- Check notarization status:
|
||||
```bash
|
||||
xcrun notarytool log <submission-id> --keychain-profile "AC_PASSWORD"
|
||||
```
|
||||
- Verify entitlements are correct in `deploy/mac/entitlements.plist`
|
||||
|
||||
3. **Build Issues**
|
||||
- Clear Maven cache:
|
||||
```bash
|
||||
rm -rf ~/.m2/repository/org/diylc
|
||||
```
|
||||
- Verify JDK version:
|
||||
```bash
|
||||
java -version
|
||||
```
|
||||
|
||||
## Common Issues
|
||||
|
||||
1. **"The specified item could not be found in the keychain"**
|
||||
- Solution: Verify your Developer ID certificate is in the keychain
|
||||
- Check the exact name matches `APPLE_DEVELOPER_IDENTITY`
|
||||
|
||||
2. **"No account for team found"**
|
||||
- Solution: Verify your Apple Developer membership is active
|
||||
- Check team ID in notarytool credentials
|
||||
|
||||
3. **"The binary is not signed"**
|
||||
- Solution: Check that the signing process isn't being skipped
|
||||
- Verify all dependencies are properly signed
|
||||
|
||||
## Support
|
||||
|
||||
For additional help:
|
||||
- Check the [Apple Code Signing Documentation](https://developer.apple.com/documentation/security/notarizing_macos_software_before_distribution)
|
||||
- File an issue on the DIYLC GitHub repository
|
||||
- Contact the development team
|
||||
@@ -0,0 +1,17 @@
|
||||
Thank you for downloading DIY Layout Creator!
|
||||
|
||||
This app bundle is fully functional but not officially notarized by Apple.
|
||||
To run it on your Mac, you'll need to approve it in the 'Privacy & Security' settings.
|
||||
|
||||
Without this approval, macOS will mark it as potentially damaged and prevent it from opening.
|
||||
|
||||
A notarized version is available, but due to Apple Developer Program costs and additional requirements,
|
||||
it is exclusively offered to DIYLC Patreon supporters. For a small monthly membership fee,
|
||||
you'll receive several benefits:
|
||||
|
||||
- Access to the notarized version
|
||||
- Early access to upcoming features
|
||||
- Voting rights to influence the development roadmap
|
||||
- Direct developer support
|
||||
|
||||
Join our community at http://www.diy-fever.com/patreon
|
||||
@@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>com.apple.security.cs.allow-jit</key>
|
||||
<true/>
|
||||
<key>com.apple.security.cs.allow-unsigned-executable-memory</key>
|
||||
<true/>
|
||||
<key>com.apple.security.cs.disable-library-validation</key>
|
||||
<true/>
|
||||
<key>com.apple.security.cs.debugger</key>
|
||||
<true/>
|
||||
<key>com.apple.security.get-task-allow</key>
|
||||
<true/>
|
||||
<key>com.apple.security.files.user-selected.read-write</key>
|
||||
<true/>
|
||||
<key>com.apple.security.files.downloads.read-write</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
@@ -1,4 +1,4 @@
|
||||
<project name="diylc-swing-ftp" basedir="."
|
||||
<project name="diylc-swing-ftp" basedir=".."
|
||||
default="printVersion">
|
||||
<property environment="env" />
|
||||
<property name="FTP_USER" value="diylc_deploy@diy-fever.com" />
|
||||
@@ -1,2 +0,0 @@
|
||||
#!/bin/bash
|
||||
exec java -Xms512m -Xmx4096m -javaagent:lib/jar-loader.jar -Dorg.diylc.scriptRun=true -Dfile.encoding=UTF-8 -cp diylc.jar:lib --add-exports java.desktop/com.apple.eawt.event=ALL-UNNAMED --add-exports java.desktop/com.apple.eio=ALL-UNNAMED --add-opens java.base/java.util=ALL-UNNAMED --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.text=ALL-UNNAMED --add-opens java.desktop/java.awt=ALL-UNNAMED --add-opens java.desktop/java.awt.font=ALL-UNNAMED --add-opens java.desktop/java.awt.geom=ALL-UNNAMED org.diylc.DIYLCStarter "$@"
|
||||
@@ -0,0 +1,33 @@
|
||||
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3 http://maven.apache.org/xsd/assembly-1.1.3.xsd">
|
||||
<id>diylc-${project.version}</id>
|
||||
<formats>
|
||||
<format>zip</format>
|
||||
</formats>
|
||||
<fileSets>
|
||||
<fileSet>
|
||||
<directory>${project.build.directory}</directory>
|
||||
<outputDirectory>/</outputDirectory>
|
||||
<includes>
|
||||
<include>diylc.jar</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
<fileSet>
|
||||
<directory>${project.basedir}/deploy/linux</directory>
|
||||
<outputDirectory>/</outputDirectory>
|
||||
<includes>
|
||||
<include>run.sh</include>
|
||||
</includes>
|
||||
<fileMode>755</fileMode>
|
||||
</fileSet>
|
||||
<fileSet>
|
||||
<directory>${project.basedir}/deploy/win</directory>
|
||||
<outputDirectory>/</outputDirectory>
|
||||
<includes>
|
||||
<include>run.bat</include>
|
||||
</includes>
|
||||
<fileMode>755</fileMode>
|
||||
</fileSet>
|
||||
</fileSets>
|
||||
</assembly>
|
||||
|
Before Width: | Height: | Size: 4.8 KiB After Width: | Height: | Size: 4.8 KiB |
@@ -6,8 +6,8 @@ DefaultGroupName=DIY Layout Creator
|
||||
UninstallDisplayIcon={app}\diylc.exe
|
||||
Compression=zip
|
||||
SolidCompression=yes
|
||||
OutputDir=../build
|
||||
OutputBaseFilename=diylc
|
||||
OutputDir=..\..\target
|
||||
OutputBaseFilename=diylc-{#diylcver}-win64
|
||||
ChangesAssociations=yes
|
||||
AlwaysShowDirOnReadyPage=yes
|
||||
; Only allow the installer to run on x64-compatible systems,
|
||||
@@ -16,16 +16,11 @@ ArchitecturesAllowed={#arch}
|
||||
ArchitecturesInstallIn64BitMode={#arch}
|
||||
|
||||
[Files]
|
||||
Source: "..\build\diylc.exe"; DestDir: "{app}"
|
||||
Source: "..\icons\diylc_file.ico"; DestDir: "{app}"
|
||||
Source: "..\build\jar\diylc.jar"; DestDir: "{app}"
|
||||
Source: "..\build\jar\lib\*"; DestDir: "{app}\lib"
|
||||
Source: "..\build\jar\library\*"; DestDir: "{app}\library"
|
||||
Source: "..\themes\*"; DestDir: "{app}\themes"
|
||||
Source: "..\lang\*"; DestDir: "{app}\lang"
|
||||
Source: "..\fonts\*"; DestDir: "{app}\fonts"
|
||||
Source: "..\build\jre_win\*"; DestDir: "{app}\jre17"; Flags: ignoreversion recursesubdirs
|
||||
Source: "innosetup\donate.bmp"; DestDir: "{tmp}"; Flags: dontcopy nocompression
|
||||
Source: "diylc-{#arch}.exe"; DestDir: "{app}"; DestName: "diylc.exe"
|
||||
Source: "..\..\src\main\resources\icons\diylc_file.ico"; DestDir: "{app}"
|
||||
Source: "..\..\target\diylc.jar"; DestDir: "{app}"
|
||||
Source: "..\..\target\jre_win\*"; DestDir: "{app}\jre17"; Flags: ignoreversion recursesubdirs
|
||||
Source: "donate.bmp"; DestDir: "{tmp}"; Flags: dontcopy nocompression
|
||||
|
||||
[Registry]
|
||||
Root: HKCR; Subkey: ".diy"; ValueData: "DIYLC"; Flags: uninsdeletevalue; ValueType: string; ValueName: ""
|
||||
@@ -34,10 +29,10 @@ Root: HKCR; Subkey: "DIYLC\DefaultIcon"; ValueData: "{app}\diylc_file.ico"; Valu
|
||||
Root: HKCR; Subkey: "DIYLC\shell\open\command"; ValueData: """{app}\diylc.exe"" ""%1"""; ValueType: string; ValueName: ""
|
||||
|
||||
[Icons]
|
||||
Name: "{group}\DIY Layout Creator"; Filename: "{app}\diylc.exe"
|
||||
Name: "{group}\DIY Layout Creator"; Filename: "{app}/diylc.exe"
|
||||
|
||||
[Run]
|
||||
Filename: "{app}\diylc.exe"; Description: "Launch DIYLC on exit"; Flags: postinstall skipifsilent
|
||||
Filename: "{app}/diylc.exe"; Description: "Launch DIYLC on exit"; Flags: postinstall skipifsilent
|
||||
|
||||
[Code]
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
rem Get the directory where the batch file is located
|
||||
set "DIR=%~dp0"
|
||||
set "CLASS_PATH=%DIR%diylc.jar"
|
||||
|
||||
rem Run DIYLC with appropriate memory and Java module settings
|
||||
java ^
|
||||
-Xms512m ^
|
||||
-Xmx4096m ^
|
||||
-Dorg.diylc.scriptRun=true ^
|
||||
-Dfile.encoding=UTF-8 ^
|
||||
-cp "%CLASS_PATH%" ^
|
||||
--add-exports java.desktop/com.apple.eawt.event=ALL-UNNAMED ^
|
||||
--add-exports java.desktop/com.apple.eio=ALL-UNNAMED ^
|
||||
--add-opens java.base/java.util=ALL-UNNAMED ^
|
||||
--add-opens java.base/java.lang=ALL-UNNAMED ^
|
||||
--add-opens java.base/java.text=ALL-UNNAMED ^
|
||||
--add-opens java.desktop/java.awt=ALL-UNNAMED ^
|
||||
--add-opens java.desktop/java.awt.font=ALL-UNNAMED ^
|
||||
--add-opens java.desktop/java.awt.geom=ALL-UNNAMED ^
|
||||
org.diylc.DIYLCStarter %*
|
||||
@@ -188,6 +188,7 @@ Default Font Size
|
||||
Delete Selection
|
||||
Description
|
||||
Designation
|
||||
Deutsch
|
||||
Diameter
|
||||
Dimension Mode
|
||||
Directional
|
||||
@@ -206,6 +207,7 @@ Drag control point(s) of
|
||||
Drag the mouse over the canvas to place a new
|
||||
Draw Standard
|
||||
Drop
|
||||
DualPot
|
||||
Duodecar B12C
|
||||
Duplicate
|
||||
E+
|
||||
@@ -219,9 +221,11 @@ Electro-Mechanical
|
||||
Electrode Labels
|
||||
Enable Cache Boost
|
||||
End Arrow
|
||||
English
|
||||
Enjoying DIYLC? Click here to buy me a coffee :)
|
||||
Error
|
||||
Error occurred while editing selection. Check the log for details.
|
||||
Español
|
||||
Exit
|
||||
Expand Selection
|
||||
Explicit Dimensions
|
||||
@@ -250,6 +254,7 @@ Font Italic
|
||||
Font Size
|
||||
Font Size Override
|
||||
Four
|
||||
Français
|
||||
Full
|
||||
Fuse
|
||||
G-D-S JFET
|
||||
@@ -270,6 +275,7 @@ Heaters
|
||||
Height
|
||||
Help
|
||||
Hi-Quality Rendering
|
||||
High DPI Rendering
|
||||
Highlight Connected Areas
|
||||
Hole
|
||||
Hole Size
|
||||
@@ -306,6 +312,7 @@ Inner 6
|
||||
Inside Color
|
||||
Integration
|
||||
Invert Polarity
|
||||
Italiano
|
||||
Label
|
||||
Label Color
|
||||
Label Orientation
|
||||
@@ -358,6 +365,7 @@ Moveable Label
|
||||
NPN
|
||||
Name
|
||||
Nand
|
||||
Nederlands
|
||||
Negative
|
||||
New
|
||||
New version available
|
||||
@@ -420,6 +428,7 @@ Pole Pieces
|
||||
Pole Pieces 1
|
||||
Pole Pieces 2
|
||||
Poles
|
||||
Português
|
||||
Positions
|
||||
Positive
|
||||
Power Rating
|
||||
@@ -513,6 +522,7 @@ Source Type
|
||||
Spacing
|
||||
Square
|
||||
Square BR-3
|
||||
Srpski
|
||||
Standard
|
||||
Start Arrow
|
||||
Start Recording
|
||||
@@ -533,6 +543,8 @@ Submit a Bug
|
||||
Suppressor grid
|
||||
Switched
|
||||
Switches
|
||||
TO-92 w/ 2 Leads
|
||||
TO-92 w/ 3 Leads
|
||||
Tab
|
||||
Tab Border
|
||||
Tabbed Toolbar
|
||||
@@ -554,6 +566,7 @@ Tick Width
|
||||
Ticks
|
||||
Timing
|
||||
Title
|
||||
Title Block
|
||||
Toolbox
|
||||
Top
|
||||
Top Lead
|
||||
|
||||
@@ -1,196 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="EclipseModuleManager">
|
||||
<libelement value="jar://$MODULE_DIR$/lib/commons-compiler-3.0.6.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/lib/janino-3.0.6.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/lib/log4j-1.2.15.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/lib/junit-4.7.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/lib/jettison-1.0.1.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/lib/app-framework.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/lib/swing-framework.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/library/main.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/lib/balloontip-1.2.4.1.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/lib/jep-2.4.1.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/lib/poi-3.5-FINAL-20090928.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/lib/AppleJavaExtensions.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/lib/orsonpdf-1.8.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/lib/gestures-wrapper-0.2.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/lib/jar-loader.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/lib/xstream-1.4.19.jar!/" />
|
||||
<libelement value="jar://$MODULE_DIR$/lib/java-http-proxy.jar!/" />
|
||||
<src_description expected_position="0">
|
||||
<src_folder value="file://$MODULE_DIR$/src" expected_position="0" />
|
||||
<src_folder value="file://$MODULE_DIR$/test" expected_position="1" />
|
||||
</src_description>
|
||||
</component>
|
||||
<component name="NewModuleRootManager">
|
||||
<output url="file://$MODULE_DIR$/bin" />
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/test" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module-library">
|
||||
<library name="commons-compiler-3.0.6.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/lib/commons-compiler-3.0.6.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="janino-3.0.6.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/lib/janino-3.0.6.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="log4j-1.2.15.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/lib/log4j-1.2.15.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="junit-4.7.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/lib/junit-4.7.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="jettison-1.0.1.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/lib/jettison-1.0.1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="app-framework.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/lib/app-framework.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="file:///app-framework" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="swing-framework.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/lib/swing-framework.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="file:///swing-framework" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="main.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/library/main.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="file:///diylc-library" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="balloontip-1.2.4.1.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/lib/balloontip-1.2.4.1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="jep-2.4.1.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/lib/jep-2.4.1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="poi-3.5-FINAL-20090928.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/lib/poi-3.5-FINAL-20090928.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="AppleJavaExtensions.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/lib/AppleJavaExtensions.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="orsonpdf-1.8.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/lib/orsonpdf-1.8.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="gestures-wrapper-0.2.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/lib/gestures-wrapper-0.2.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="jar-loader.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/lib/jar-loader.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module" module-name="diylc-core" />
|
||||
<orderEntry type="module-library">
|
||||
<library name="xstream-1.4.3.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/lib/xstream-1.4.3.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="module-library">
|
||||
<library name="java-http-proxy.jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$MODULE_DIR$/lib/java-http-proxy.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
</component>
|
||||
</module>
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
+2
-1
@@ -9,7 +9,8 @@ import java.awt.geom.AffineTransform;
|
||||
import javax.swing.ImageIcon;
|
||||
import javax.swing.JDialog;
|
||||
import javax.swing.SwingUtilities;
|
||||
import org.diylc.swing.images.IconLoader;
|
||||
|
||||
import org.diylc.utils.IconLoader;
|
||||
|
||||
/**
|
||||
* Custom splash screen with animated components. Does not use standard SplashScreen because of issues with OS X and Java 8.
|
||||
+10
-17
@@ -19,6 +19,7 @@ package org.diylc;
|
||||
|
||||
import java.awt.Desktop;
|
||||
import java.io.File;
|
||||
import java.io.InputStream;
|
||||
import java.lang.reflect.Field;
|
||||
import java.net.URL;
|
||||
import java.util.Arrays;
|
||||
@@ -31,6 +32,9 @@ import org.apache.log4j.PropertyConfigurator;
|
||||
import org.diylc.appframework.miscutils.ConfigurationManager;
|
||||
import org.diylc.appframework.miscutils.PropertyInjector;
|
||||
import org.diylc.appframework.miscutils.Utils;
|
||||
import org.diylc.swingframework.export.DrawingExporter;
|
||||
import org.diylc.swingframework.fonts.FontOptimizer;
|
||||
import com.thoughtworks.xstream.XStream;
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.core.IView;
|
||||
import org.diylc.lang.LangUtil;
|
||||
@@ -39,10 +43,6 @@ import org.diylc.serialization.ProjectFileManager;
|
||||
import org.diylc.swing.gui.MainFrame;
|
||||
import org.diylc.swing.gui.TemplateDialog;
|
||||
import org.diylc.swing.plugins.file.ProjectDrawingProvider;
|
||||
import org.diylc.swingframework.export.DrawingExporter;
|
||||
import org.diylc.swingframework.fonts.FontOptimizer;
|
||||
import com.thoughtworks.xstream.XStream;
|
||||
import ca.cgjennings.jvm.JarLoader;
|
||||
|
||||
/**
|
||||
* Main class that runs DIYLC.
|
||||
@@ -60,7 +60,6 @@ public class DIYLCStarter {
|
||||
|
||||
/**
|
||||
* @param args
|
||||
* @throws InvalidActivityException
|
||||
*/
|
||||
public static void main(String[] args) {
|
||||
try {
|
||||
@@ -88,10 +87,9 @@ public class DIYLCStarter {
|
||||
}
|
||||
}
|
||||
|
||||
URL url = DIYLCStarter.class.getResource("log4j.properties");
|
||||
Properties properties = new Properties();
|
||||
try {
|
||||
properties.load(url.openStream());
|
||||
try (InputStream inputStream = DIYLCStarter.class.getResourceAsStream("/log4j.properties")) {
|
||||
properties.load(inputStream);
|
||||
PropertyConfigurator.configure(properties);
|
||||
} catch (Exception e) {
|
||||
LOG.error("Could not initialize log4j configuration", e);
|
||||
@@ -106,8 +104,6 @@ public class DIYLCStarter {
|
||||
// disable HIGHLIGHT_CONTINUITY_AREA config, keep it transient
|
||||
ConfigurationManager.getInstance().writeValue(IPlugInPort.HIGHLIGHT_CONTINUITY_AREA, false);
|
||||
|
||||
LOG.info("JarLoader strategy: " + JarLoader.getStrategy());
|
||||
|
||||
LOG.info("Loading languages...");
|
||||
|
||||
LangUtil.configure();
|
||||
@@ -116,6 +112,7 @@ public class DIYLCStarter {
|
||||
+ System.getProperty("java.vm.vendor"));
|
||||
LOG.debug("Java home: " + System.getProperty("java.home"));
|
||||
LOG.debug("OS: " + System.getProperty("os.name") + " " + System.getProperty("os.version"));
|
||||
// LOG.debug("Classpath: " + System.getProperty("java.class.path"));
|
||||
|
||||
// set OS name as HTTP agent, java will append java version
|
||||
Properties props = System.getProperties();
|
||||
@@ -221,13 +218,9 @@ public class DIYLCStarter {
|
||||
}
|
||||
|
||||
properties = new Properties();
|
||||
try {
|
||||
LOG.info("Injecting default properties.");
|
||||
URL resource = Presenter.class.getResource("config.properties");
|
||||
if (resource != null) {
|
||||
properties.load(resource.openStream());
|
||||
PropertyInjector.injectProperties(properties);
|
||||
}
|
||||
try (InputStream inputStream = Presenter.class.getResourceAsStream("/config.properties")) {
|
||||
properties.load(inputStream);
|
||||
PropertyInjector.injectProperties(properties);
|
||||
} catch (Exception e) {
|
||||
LOG.error("Could not read config.properties file", e);
|
||||
}
|
||||
+1
@@ -6,6 +6,7 @@ import java.io.File;
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
import org.diylc.common.IPlugInPort;
|
||||
|
||||
public class OpenDIYFilesHandler implements OpenFilesHandler {
|
||||
+2
-1
@@ -21,6 +21,8 @@ import java.awt.datatransfer.Clipboard;
|
||||
import java.awt.datatransfer.ClipboardOwner;
|
||||
import javax.swing.Icon;
|
||||
import org.apache.log4j.Logger;
|
||||
import org.diylc.swingframework.IDrawingProvider;
|
||||
|
||||
import org.diylc.common.INetlistAnalyzer;
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.core.ExpansionMode;
|
||||
@@ -69,7 +71,6 @@ import org.diylc.swing.actions.file.OpenAction;
|
||||
import org.diylc.swing.actions.file.PrintAction;
|
||||
import org.diylc.swing.actions.file.SaveAction;
|
||||
import org.diylc.swing.actions.file.SaveAsAction;
|
||||
import org.diylc.swingframework.IDrawingProvider;
|
||||
|
||||
public class ActionFactory {
|
||||
|
||||
+23
-22
@@ -1,27 +1,28 @@
|
||||
/*
|
||||
|
||||
DIY Layout Creator (DIYLC).
|
||||
Copyright (c) 2009-2018 held jointly by the individual authors.
|
||||
|
||||
This file is part of DIYLC.
|
||||
|
||||
DIYLC 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 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
DIYLC 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 DIYLC. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
*/
|
||||
/*
|
||||
|
||||
DIY Layout Creator (DIYLC).
|
||||
Copyright (c) 2009-2018 held jointly by the individual authors.
|
||||
|
||||
This file is part of DIYLC.
|
||||
|
||||
DIYLC 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 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
DIYLC 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 DIYLC. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
*/
|
||||
package org.diylc.swing;
|
||||
|
||||
import javax.swing.JFrame;
|
||||
import javax.swing.JFrame;
|
||||
|
||||
import org.diylc.common.ITask;
|
||||
|
||||
/**
|
||||
+35
-33
@@ -1,36 +1,38 @@
|
||||
/*
|
||||
|
||||
DIY Layout Creator (DIYLC).
|
||||
Copyright (c) 2009-2018 held jointly by the individual authors.
|
||||
|
||||
This file is part of DIYLC.
|
||||
|
||||
DIYLC 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 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
DIYLC 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 DIYLC. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
*/
|
||||
/*
|
||||
|
||||
DIY Layout Creator (DIYLC).
|
||||
Copyright (c) 2009-2018 held jointly by the individual authors.
|
||||
|
||||
This file is part of DIYLC.
|
||||
|
||||
DIYLC 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 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
DIYLC 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 DIYLC. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
*/
|
||||
package org.diylc.swing;
|
||||
|
||||
import javax.swing.Action;
|
||||
import javax.swing.Icon;
|
||||
import javax.swing.JComponent;
|
||||
import javax.swing.JFrame;
|
||||
import javax.swing.JPopupMenu.Separator;
|
||||
import javax.swing.SwingConstants;
|
||||
import org.diylc.common.BadPositionException;
|
||||
import org.diylc.common.ITask;
|
||||
import javax.swing.Action;
|
||||
import javax.swing.Icon;
|
||||
import javax.swing.JComponent;
|
||||
import javax.swing.JFrame;
|
||||
import javax.swing.JPopupMenu.Separator;
|
||||
|
||||
import org.diylc.common.BadPositionException;
|
||||
import org.diylc.common.ITask;
|
||||
import org.diylc.core.IView;
|
||||
|
||||
import javax.swing.SwingConstants;
|
||||
|
||||
/**
|
||||
* Interface for plugin access to the swing front end.
|
||||
*
|
||||
@@ -52,8 +54,8 @@ public interface ISwingUI extends IView {
|
||||
* Center position is reserved for the main canvas panel and cannot be used.
|
||||
*
|
||||
* @param component
|
||||
* @param position
|
||||
* @param collapsible
|
||||
* @param position
|
||||
* @param collapsible
|
||||
* @param visibilityConfigKey in case of a collapsible view, this config key is used to persist the state
|
||||
* @throws BadPositionException in case invalid position is specified
|
||||
*/
|
||||
@@ -67,8 +69,8 @@ public interface ISwingUI extends IView {
|
||||
* @param action {@link Action} to inser
|
||||
* @param menuName name of the menu to insert into
|
||||
*/
|
||||
void injectMenuAction(Action action, String menuName);
|
||||
|
||||
void injectMenuAction(Action action, String menuName);
|
||||
|
||||
void injectMenuComponent(JComponent component);
|
||||
|
||||
/**
|
||||
+4
-2
@@ -5,6 +5,9 @@ import java.awt.geom.Area;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import javax.swing.AbstractAction;
|
||||
|
||||
import org.diylc.swingframework.ButtonDialog;
|
||||
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.common.ITask;
|
||||
import org.diylc.common.PropertyWrapper;
|
||||
@@ -16,8 +19,7 @@ import org.diylc.swing.ActionFactory;
|
||||
import org.diylc.swing.ISwingUI;
|
||||
import org.diylc.swing.gui.DialogFactory;
|
||||
import org.diylc.swing.gui.editor.PropertyEditorDialog;
|
||||
import org.diylc.swing.images.IconLoader;
|
||||
import org.diylc.swingframework.ButtonDialog;
|
||||
import org.diylc.utils.IconLoader;
|
||||
|
||||
public class CheckProximityAction extends AbstractAction implements Cloneable {
|
||||
|
||||
+1
@@ -3,6 +3,7 @@ package org.diylc.swing.actions;
|
||||
import java.awt.event.ActionEvent;
|
||||
import javax.swing.AbstractAction;
|
||||
import org.diylc.appframework.miscutils.ConfigurationManager;
|
||||
|
||||
import org.diylc.core.IView;
|
||||
import org.diylc.swing.ActionFactory;
|
||||
import org.diylc.swing.plugins.config.ConfigPlugin;
|
||||
+1
@@ -4,6 +4,7 @@ import java.awt.event.ActionEvent;
|
||||
import javax.swing.AbstractAction;
|
||||
import org.diylc.appframework.miscutils.ConfigurationManager;
|
||||
import org.diylc.appframework.miscutils.IConfigListener;
|
||||
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.core.IView;
|
||||
import org.diylc.swing.ActionFactory;
|
||||
+2
-1
@@ -4,12 +4,13 @@ import java.awt.Graphics2D;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.io.File;
|
||||
import javax.swing.AbstractAction;
|
||||
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.common.ITask;
|
||||
import org.diylc.swing.ActionFactory;
|
||||
import org.diylc.swing.ISwingUI;
|
||||
import org.diylc.swing.gui.DialogFactory;
|
||||
import org.diylc.swing.images.IconLoader;
|
||||
import org.diylc.utils.IconLoader;
|
||||
import org.diylc.swing.plugins.file.FileFilterEnum;
|
||||
|
||||
public class ExportGerberAction extends AbstractAction {
|
||||
+5
-3
@@ -3,15 +3,17 @@ package org.diylc.swing.actions;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.io.File;
|
||||
import javax.swing.AbstractAction;
|
||||
|
||||
import org.diylc.swingframework.IDrawingProvider;
|
||||
import org.diylc.swingframework.export.DrawingExporter;
|
||||
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.common.ITask;
|
||||
import org.diylc.swing.ActionFactory;
|
||||
import org.diylc.swing.ISwingUI;
|
||||
import org.diylc.swing.gui.DialogFactory;
|
||||
import org.diylc.swing.images.IconLoader;
|
||||
import org.diylc.utils.IconLoader;
|
||||
import org.diylc.swing.plugins.file.FileFilterEnum;
|
||||
import org.diylc.swingframework.IDrawingProvider;
|
||||
import org.diylc.swingframework.export.DrawingExporter;
|
||||
|
||||
public class ExportPNGAction extends AbstractAction {
|
||||
|
||||
+2
-1
@@ -4,11 +4,12 @@ import java.awt.event.ActionEvent;
|
||||
import java.awt.event.KeyEvent;
|
||||
import javax.swing.AbstractAction;
|
||||
import javax.swing.KeyStroke;
|
||||
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.swing.ActionFactory;
|
||||
import org.diylc.swing.ISwingUI;
|
||||
import org.diylc.swing.gui.DialogFactory;
|
||||
import org.diylc.swing.images.IconLoader;
|
||||
import org.diylc.utils.IconLoader;
|
||||
import org.diylc.swing.plugins.edit.FindDialog;
|
||||
|
||||
public class FindAction extends AbstractAction {
|
||||
+4
-2
@@ -2,10 +2,12 @@ package org.diylc.swing.actions;
|
||||
|
||||
import java.awt.event.ActionEvent;
|
||||
import javax.swing.AbstractAction;
|
||||
import org.diylc.common.IPlugInPort;
|
||||
|
||||
import org.diylc.editor.FlexibleLeadsEditor;
|
||||
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.swing.ActionFactory;
|
||||
import org.diylc.swing.images.IconLoader;
|
||||
import org.diylc.utils.IconLoader;
|
||||
|
||||
public class FlexibleLeadsAction extends AbstractAction {
|
||||
|
||||
+4
-2
@@ -5,14 +5,16 @@ import java.awt.event.ActionEvent;
|
||||
import java.util.List;
|
||||
import javax.swing.AbstractAction;
|
||||
import javax.swing.JLabel;
|
||||
|
||||
import org.diylc.swingframework.TextDialog;
|
||||
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.common.ITask;
|
||||
import org.diylc.netlist.Group;
|
||||
import org.diylc.netlist.Netlist;
|
||||
import org.diylc.swing.ActionFactory;
|
||||
import org.diylc.swing.ISwingUI;
|
||||
import org.diylc.swing.images.IconLoader;
|
||||
import org.diylc.swingframework.TextDialog;
|
||||
import org.diylc.utils.IconLoader;
|
||||
|
||||
public class GenerateNetlistAction extends AbstractAction {
|
||||
|
||||
+1
@@ -2,6 +2,7 @@ package org.diylc.swing.actions;
|
||||
|
||||
import java.awt.event.ActionEvent;
|
||||
import javax.swing.AbstractAction;
|
||||
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.swing.ActionFactory;
|
||||
|
||||
+4
-2
@@ -4,14 +4,16 @@ import java.awt.Dimension;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.util.List;
|
||||
import javax.swing.AbstractAction;
|
||||
|
||||
import org.diylc.swingframework.TextDialog;
|
||||
|
||||
import org.diylc.common.INetlistAnalyzer;
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.common.ITask;
|
||||
import org.diylc.netlist.Netlist;
|
||||
import org.diylc.netlist.Summary;
|
||||
import org.diylc.swing.ISwingUI;
|
||||
import org.diylc.swing.images.IconLoader;
|
||||
import org.diylc.swingframework.TextDialog;
|
||||
import org.diylc.utils.IconLoader;
|
||||
|
||||
public class SummarizeNetlistAction extends AbstractAction {
|
||||
|
||||
+1
@@ -2,6 +2,7 @@ package org.diylc.swing.actions;
|
||||
|
||||
import java.awt.event.ActionEvent;
|
||||
import javax.swing.AbstractAction;
|
||||
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.core.IView;
|
||||
import org.diylc.core.Theme;
|
||||
+1
@@ -5,6 +5,7 @@ import javax.swing.AbstractAction;
|
||||
import javax.swing.Icon;
|
||||
import org.diylc.appframework.miscutils.ConfigurationManager;
|
||||
import org.diylc.appframework.miscutils.IConfigListener;
|
||||
|
||||
import org.diylc.core.IView;
|
||||
import org.diylc.swing.ActionFactory;
|
||||
|
||||
+2
-1
@@ -4,9 +4,10 @@ import java.awt.event.ActionEvent;
|
||||
import java.awt.event.KeyEvent;
|
||||
import javax.swing.AbstractAction;
|
||||
import javax.swing.KeyStroke;
|
||||
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.swing.ActionFactory;
|
||||
import org.diylc.swing.images.IconLoader;
|
||||
import org.diylc.utils.IconLoader;
|
||||
|
||||
public class BringToFrontAction extends AbstractAction {
|
||||
|
||||
+2
-1
@@ -7,10 +7,11 @@ import java.awt.event.ActionEvent;
|
||||
import java.awt.event.KeyEvent;
|
||||
import javax.swing.AbstractAction;
|
||||
import javax.swing.KeyStroke;
|
||||
|
||||
import org.diylc.clipboard.ComponentTransferableFactory;
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.swing.ActionFactory;
|
||||
import org.diylc.swing.images.IconLoader;
|
||||
import org.diylc.utils.IconLoader;
|
||||
|
||||
public class CopyAction extends AbstractAction {
|
||||
|
||||
+2
-1
@@ -7,10 +7,11 @@ import java.awt.event.ActionEvent;
|
||||
import java.awt.event.KeyEvent;
|
||||
import javax.swing.AbstractAction;
|
||||
import javax.swing.KeyStroke;
|
||||
|
||||
import org.diylc.clipboard.ComponentTransferableFactory;
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.swing.ActionFactory;
|
||||
import org.diylc.swing.images.IconLoader;
|
||||
import org.diylc.utils.IconLoader;
|
||||
|
||||
public class CutAction extends AbstractAction {
|
||||
|
||||
+2
-1
@@ -5,9 +5,10 @@ import java.awt.event.KeyEvent;
|
||||
import javax.swing.AbstractAction;
|
||||
import javax.swing.KeyStroke;
|
||||
import org.diylc.appframework.miscutils.Utils;
|
||||
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.swing.ActionFactory;
|
||||
import org.diylc.swing.images.IconLoader;
|
||||
import org.diylc.utils.IconLoader;
|
||||
|
||||
public class DeleteSelectionAction extends AbstractAction {
|
||||
|
||||
+2
-1
@@ -5,9 +5,10 @@ import java.awt.event.ActionEvent;
|
||||
import java.awt.event.KeyEvent;
|
||||
import javax.swing.AbstractAction;
|
||||
import javax.swing.KeyStroke;
|
||||
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.swing.ActionFactory;
|
||||
import org.diylc.swing.images.IconLoader;
|
||||
import org.diylc.utils.IconLoader;
|
||||
|
||||
public class DuplicateAction extends AbstractAction {
|
||||
|
||||
+4
-2
@@ -3,14 +3,16 @@ package org.diylc.swing.actions.edit;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.util.List;
|
||||
import javax.swing.AbstractAction;
|
||||
|
||||
import org.diylc.swingframework.ButtonDialog;
|
||||
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.common.PropertyWrapper;
|
||||
import org.diylc.core.Project;
|
||||
import org.diylc.swing.ActionFactory;
|
||||
import org.diylc.swing.gui.DialogFactory;
|
||||
import org.diylc.swing.gui.editor.PropertyEditorDialog;
|
||||
import org.diylc.swing.images.IconLoader;
|
||||
import org.diylc.swingframework.ButtonDialog;
|
||||
import org.diylc.utils.IconLoader;
|
||||
|
||||
public class EditProjectAction extends AbstractAction {
|
||||
|
||||
+2
-1
@@ -6,10 +6,11 @@ import java.awt.event.KeyEvent;
|
||||
import java.util.List;
|
||||
import javax.swing.AbstractAction;
|
||||
import javax.swing.KeyStroke;
|
||||
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.common.PropertyWrapper;
|
||||
import org.diylc.swing.ActionFactory;
|
||||
import org.diylc.swing.images.IconLoader;
|
||||
import org.diylc.utils.IconLoader;
|
||||
|
||||
public class EditSelectionAction extends AbstractAction {
|
||||
|
||||
+1
@@ -2,6 +2,7 @@ package org.diylc.swing.actions.edit;
|
||||
|
||||
import java.awt.event.ActionEvent;
|
||||
import javax.swing.AbstractAction;
|
||||
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.core.ExpansionMode;
|
||||
import org.diylc.swing.ActionFactory;
|
||||
+2
-1
@@ -5,9 +5,10 @@ import java.awt.event.ActionEvent;
|
||||
import java.awt.event.KeyEvent;
|
||||
import javax.swing.AbstractAction;
|
||||
import javax.swing.KeyStroke;
|
||||
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.swing.ActionFactory;
|
||||
import org.diylc.swing.images.IconLoader;
|
||||
import org.diylc.utils.IconLoader;
|
||||
|
||||
public class GroupAction extends AbstractAction {
|
||||
|
||||
+2
-1
@@ -4,10 +4,11 @@ import java.awt.event.ActionEvent;
|
||||
import java.awt.event.KeyEvent;
|
||||
import javax.swing.AbstractAction;
|
||||
import javax.swing.KeyStroke;
|
||||
|
||||
import org.diylc.common.IComponentTransformer;
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.swing.ActionFactory;
|
||||
import org.diylc.swing.images.IconLoader;
|
||||
import org.diylc.utils.IconLoader;
|
||||
|
||||
public class MirrorSelectionAction extends AbstractAction {
|
||||
|
||||
+3
-2
@@ -7,6 +7,8 @@ import java.util.List;
|
||||
import javax.swing.AbstractAction;
|
||||
import javax.swing.KeyStroke;
|
||||
import org.diylc.appframework.miscutils.ConfigurationManager;
|
||||
import org.diylc.swingframework.ButtonDialog;
|
||||
|
||||
import org.diylc.common.IPlugInPort;
|
||||
import org.diylc.common.PropertyWrapper;
|
||||
import org.diylc.core.measures.Nudge;
|
||||
@@ -16,8 +18,7 @@ import org.diylc.presenter.Presenter;
|
||||
import org.diylc.swing.ActionFactory;
|
||||
import org.diylc.swing.gui.DialogFactory;
|
||||
import org.diylc.swing.gui.editor.PropertyEditorDialog;
|
||||
import org.diylc.swing.images.IconLoader;
|
||||
import org.diylc.swingframework.ButtonDialog;
|
||||
import org.diylc.utils.IconLoader;
|
||||
|
||||
public class NudgeAction extends AbstractAction {
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user