CanScan
Loading...
Searching...
No Matches
fr.softsf.canscan.CanScan Class Reference

CanScan — Swing QR code generator with MECARD, MEET, and FREE modes. More...

+ Inheritance diagram for fr.softsf.canscan.CanScan:
+ Collaboration diagram for fr.softsf.canscan.CanScan:

Public Member Functions

 CanScan ()
 Constructs the CanScan GUI, setting up layout, panels, inputs, and QR preview.
 
void dispose ()
 Releases QR-code resources and closes the window.
 

Static Public Member Functions

static void main (String[] args)
 Application entry point.
 

Package Functions

void browseLogo (ActionEvent e)
 Opens a file chooser to select a logo image and updates the logo text field.
 
File chooseLogoFile ()
 Opens a file chooser for PNG, JPG, or JPEG logos.
 
Mode getCurrentModeForTests ()
 Returns the current mode for testing.
 
String getLogoFieldTextForTests ()
 Returns the logo field text for testing.
 
int getMarginFieldIntForTests ()
 Returns the margin field int for testing.
 
void setAdrFieldTextForTests ()
 Sets the address field text for testing.
 
void setCurrentModeForTests (Mode mode)
 Sets the current mode for testing.
 
void setEmailFieldTextForTests ()
 Sets the email field text for testing.
 
void setLogoFieldTextForTests (String text)
 Sets the logo field text for testing.
 
void setMarginSliderValueForTests (int value)
 Sets the margin slider value for testing.
 
void setNameFieldTextForTests ()
 Sets the name field text for testing.
 
void setOrgFieldTextForTests ()
 Sets the organization field text for testing.
 
void setPhoneFieldTextForTests ()
 Sets the phone field text for testing.
 
void setRatioSliderValueForTests (int value)
 Sets the ratio slider value for testing.
 
void setSizeFieldTextForTests (String text)
 Sets the size field text for testing.
 
void setUrlFieldTextForTests ()
 Sets the URL field text for testing.
 
void switchModeForTests (Mode mode)
 Switches the mode for testing.
 
int validateAndGetMargin ()
 Validates and returns the current QR code margin from the margin slider.
 
String validateAndGetMeetUID ()
 Validates and returns the current meet UID from the meet title field.
 
double validateAndGetRatio ()
 Validates and returns the current image-to-QR ratio from the ratio slider.
 
int validateAndGetSize ()
 Validates and returns the QR code size from the corresponding text field.
 

Private Member Functions

void addNorthPanelCardPanels (JPanel northPanel, GridBagConstraints grid)
 Adds MECARD MEET FREE card panels to the north panel.
 
void addNorthPanelCommonFields (JPanel northPanel, GridBagConstraints grid)
 Adds common input fields to the north panel.
 
void addNorthPanelGenerateButton (JPanel northPanel, GridBagConstraints grid)
 Adds the generate button to the north panel.
 
void addNorthPanelModeSelection (JPanel northPanel, GridBagConstraints grid)
 Adds mode selection controls (MECARD/MEET/FREE) to the north panel.
 
void automaticQRCodeRenderingForFieldsAndControls ()
 Attaches automatic QR preview updates and input validation to all fields and controls.
 
int calculateAvailableQrCodeLabelHeight ()
 Calculates the available height for QR code rendering.
 
JPanel colorPanel ()
 Creates the color selection panel for QR code and background colors.
 
void configureUpdateButton ()
 Configures the update button for version checking.
 
void freeCard (JPanel freePanel, GridBagConstraints grid)
 Populates the FREE panel with a multiline text area.
 
void generateQrCode (ActionEvent e)
 Generates a QR code from current input fields and visual settings, then saves it via GenerateAndSaveService.
 
WholeFields getQrInput ()
 Collects current input and visual settings into a WholeFields for QR code generation.
 
void initializeComponentNames ()
 Assigns stable component names for testing and native-image configuration.
 
JPanel initializeMainPanel ()
 Builds the main panel with header, QR preview overlay, and bottom spacer.
 
JPanel initializeNorthPanel ()
 Builds the north panel with mode selection, card panels, common fields, and generate button.
 
JScrollPane initializeScrollPane (JPanel mainPanel)
 Wraps the main panel in a scrollable container.
 
void initializeSliders ()
 Configures sliders for logo margin and ratio.
 
void initializeWindow ()
 Finalizes window layout: packs components, adjusts size for QR display and loader, and centers the window on screen.
 
void mecard (JPanel mecardPanel, GridBagConstraints grid)
 Populates the MECARD panel with contact fields.
 
void meetCard (JPanel meetPanel, GridBagConstraints grid)
 Populates the MEET panel with meet fields.
 
GridBagConstraints northPanelGridBagConstraints ()
 Creates default GridBagConstraints for consistent layout configuration.
 
void setLoaderSize ()
 Sets the loader size so it matches the QR code label height and remains centered.
 
boolean shouldDisableGenerateButton ()
 Determines whether the "Generate" button should be disabled for the current mode.
 
void switchMode (Mode mode)
 Switches between MECARD, MEET, and FREE modes, updating the panel and QR preview.
 
void updateGenerateButtonState ()
 Enables or disables the "Generate" button based on required fields for the current mode.
 

Static Private Member Functions

static JPanel getNorthJPanel ()
 Creates the base north panel with layout, maximum width, and padding applied.
 

Private Attributes

final JTextField adrField = new JTextField(IntConstants.TEXT_FIELDS_COLUMNS.getValue())
 
Color bgColor = Color.WHITE
 
final JButton bgColorButton = new JButton("#FFFFFF")
 
final JButton browseButton
 
final CardLayout cardLayout = new CardLayout()
 
final JPanel cardPanel = new JPanel(cardLayout)
 
final transient ColorOperation colorOperation = new ColorOperation()
 
Mode currentMode = Mode.MECARD
 
final JTextField emailField
 
final transient EncodedImage encodedImage = new EncodedImage()
 
final JTextArea freeField = new JTextArea("")
 
final JRadioButton freeRadio
 
final JScrollPane freeScrollPane = new JScrollPane(freeField)
 
final transient GenerateAndSaveService generateAndSaveService
 
final JButton generateButton
 
double imageRatio = DoubleConstants.DEFAULT_IMAGE_RATIO.getValue()
 
final JProgressBar loader = new JProgressBar()
 
final JTextField logoField
 
int margin = 3
 
final JSlider marginSlider = new JSlider(0, MINIMUM_QR_CODE_SIZE, margin)
 
final JRadioButton mecardRadio
 
final DatePicker meetBeginDatePicker = new FlatLafDatePicker()
 
final TimePicker meetBeginTimePicker = new FlatLafTimePicker()
 
final DatePicker meetEndDatePicker = new FlatLafDatePicker()
 
final TimePicker meetEndTimePicker = new FlatLafTimePicker()
 
final JTextField meetLatField = new JTextField()
 
final JTextField meetLongField = new JTextField()
 
final JTextField meetNameField
 
final JRadioButton meetRadio
 
final JTextField meetTitleField
 
final JTextField meetUIdField
 
final JTextField nameField
 
final JPanel northPanelWrapper = new JPanel(new FlowLayout(FlowLayout.CENTER, 0, 0))
 
final JTextField orgField = new JTextField(IntConstants.TEXT_FIELDS_COLUMNS.getValue())
 
final JTextField phoneField
 
final JLabel qrCodeLabel = new JLabel("", SwingConstants.CENTER)
 
final transient DynamicPreviewWorker qrCodePreview
 
final transient DynamicResizeWorker qrCodeResize
 
Color qrColor = Color.BLACK
 
final JButton qrColorButton = new JButton("#000000")
 
final JSlider ratioSlider
 
final JCheckBox roundedModulesCheckBox = new JCheckBox()
 
final JTextField sizeField
 
final JPanel southSpacer = new JPanel()
 
final JButton update
 
final JTextField urlField = new JTextField(IntConstants.TEXT_FIELDS_COLUMNS.getValue())
 

Static Private Attributes

static final String HTML_B_STRING_B_HTML = "<html><b>%s</b></html>"
 
static final int MAX_COORDINATE_LENGTH = 12
 
static final int MINIMUM_QR_CODE_SIZE = 10
 
static final String NORTH_PANEL = "northPanel"
 
static final int QR_CODE_LABEL_DEFAULT_SIZE = 50
 
static final int VERTICAL_SCROLL_UNIT_INCREMENT = 16
 
static final String WARNING_ICON = "\uE002"
 

Detailed Description

CanScan — Swing QR code generator with MECARD, MEET, and FREE modes.

Constructor & Destructor Documentation

◆ CanScan()

fr.softsf.canscan.CanScan.CanScan ( )

Constructs the CanScan GUI, setting up layout, panels, inputs, and QR preview.

+ Here is the call graph for this function:

Member Function Documentation

◆ addNorthPanelCardPanels()

void fr.softsf.canscan.CanScan.addNorthPanelCardPanels ( JPanel northPanel,
GridBagConstraints grid )
private

Adds MECARD MEET FREE card panels to the north panel.

Initializes both panels and registers them in the card layout.

+ Here is the call graph for this function:

◆ addNorthPanelCommonFields()

void fr.softsf.canscan.CanScan.addNorthPanelCommonFields ( JPanel northPanel,
GridBagConstraints grid )
private

Adds common input fields to the north panel.

Includes logo path, margin, ratio, colors, size, and rounded modules options.

+ Here is the call graph for this function:

◆ addNorthPanelGenerateButton()

void fr.softsf.canscan.CanScan.addNorthPanelGenerateButton ( JPanel northPanel,
GridBagConstraints grid )
private

Adds the generate button to the north panel.

Configures size, action listener, tooltip, and initial disabled state.

◆ addNorthPanelModeSelection()

void fr.softsf.canscan.CanScan.addNorthPanelModeSelection ( JPanel northPanel,
GridBagConstraints grid )
private

Adds mode selection controls (MECARD/MEET/FREE) to the north panel.

Configures radio buttons, update button, and mode switching listeners.

+ Here is the call graph for this function:

◆ automaticQRCodeRenderingForFieldsAndControls()

void fr.softsf.canscan.CanScan.automaticQRCodeRenderingForFieldsAndControls ( )
private

Attaches automatic QR preview updates and input validation to all fields and controls.

+ Here is the call graph for this function:

◆ browseLogo()

void fr.softsf.canscan.CanScan.browseLogo ( ActionEvent e)
package

Opens a file chooser to select a logo image and updates the logo text field.

Parameters
ethe ActionEvent that triggered the file chooser
+ Here is the call graph for this function:

◆ calculateAvailableQrCodeLabelHeight()

int fr.softsf.canscan.CanScan.calculateAvailableQrCodeLabelHeight ( )
private

Calculates the available height for QR code rendering.

Returns
available height in pixels after removing header and footer space

◆ chooseLogoFile()

File fr.softsf.canscan.CanScan.chooseLogoFile ( )
package

Opens a file chooser for PNG, JPG, or JPEG logos.

Returns
the selected file, or null if canceled

◆ colorPanel()

JPanel fr.softsf.canscan.CanScan.colorPanel ( )
private

Creates the color selection panel for QR code and background colors.

Initializes buttons, listeners, and updates preview on color changes.

+ Here is the call graph for this function:

◆ configureUpdateButton()

void fr.softsf.canscan.CanScan.configureUpdateButton ( )
private

Configures the update button for version checking.

Sets tooltip, browser action, and background worker execution.

◆ dispose()

void fr.softsf.canscan.CanScan.dispose ( )

Releases QR-code resources and closes the window.

◆ freeCard()

void fr.softsf.canscan.CanScan.freeCard ( JPanel freePanel,
GridBagConstraints grid )
private

Populates the FREE panel with a multiline text area.

Parameters
freePanelthe panel to populate
gridlayout constraints

◆ generateQrCode()

void fr.softsf.canscan.CanScan.generateQrCode ( ActionEvent e)
private

Generates a QR code from current input fields and visual settings, then saves it via GenerateAndSaveService.

Parameters
ethe triggering ActionEvent
+ Here is the call graph for this function:

◆ getCurrentModeForTests()

Mode fr.softsf.canscan.CanScan.getCurrentModeForTests ( )
package

Returns the current mode for testing.

◆ getLogoFieldTextForTests()

String fr.softsf.canscan.CanScan.getLogoFieldTextForTests ( )
package

Returns the logo field text for testing.

◆ getMarginFieldIntForTests()

int fr.softsf.canscan.CanScan.getMarginFieldIntForTests ( )
package

Returns the margin field int for testing.

◆ getNorthJPanel()

static JPanel fr.softsf.canscan.CanScan.getNorthJPanel ( )
staticprivate

Creates the base north panel with layout, maximum width, and padding applied.

Returns
a preconfigured north JPanel

◆ getQrInput()

WholeFields fr.softsf.canscan.CanScan.getQrInput ( )
private

Collects current input and visual settings into a WholeFields for QR code generation.

Returns
a populated WholeFields instance
+ Here is the call graph for this function:

◆ initializeComponentNames()

void fr.softsf.canscan.CanScan.initializeComponentNames ( )
private

Assigns stable component names for testing and native-image configuration.

◆ initializeMainPanel()

JPanel fr.softsf.canscan.CanScan.initializeMainPanel ( )
private

Builds the main panel with header, QR preview overlay, and bottom spacer.

Registers resize listeners and enables automatic QR updates.

Returns
the main JPanel
+ Here is the call graph for this function:

◆ initializeNorthPanel()

JPanel fr.softsf.canscan.CanScan.initializeNorthPanel ( )
private

Builds the north panel with mode selection, card panels, common fields, and generate button.

Uses GridBagLayout with consistent spacing.

+ Here is the call graph for this function:

◆ initializeScrollPane()

JScrollPane fr.softsf.canscan.CanScan.initializeScrollPane ( JPanel mainPanel)
private

Wraps the main panel in a scrollable container.

Removes borders and configures smooth vertical scrolling.

◆ initializeSliders()

void fr.softsf.canscan.CanScan.initializeSliders ( )
private

Configures sliders for logo margin and ratio.

Sets tick spacing, labels, and listeners to update tooltips dynamically.

◆ initializeWindow()

void fr.softsf.canscan.CanScan.initializeWindow ( )
private

Finalizes window layout: packs components, adjusts size for QR display and loader, and centers the window on screen.

+ Here is the call graph for this function:

◆ main()

static void fr.softsf.canscan.CanScan.main ( String[] args)
static

Application entry point.

Initializes the UI theme, font, and launches the GUI on the EDT.

Parameters
argscommand-line arguments (ignored)
+ Here is the call graph for this function:

◆ mecard()

void fr.softsf.canscan.CanScan.mecard ( JPanel mecardPanel,
GridBagConstraints grid )
private

Populates the MECARD panel with contact fields.

Parameters
mecardPaneltarget panel
gridlayout constraints

◆ meetCard()

void fr.softsf.canscan.CanScan.meetCard ( JPanel meetPanel,
GridBagConstraints grid )
private

Populates the MEET panel with meet fields.

Parameters
meetPaneltarget panel
gridlayout constraints

◆ northPanelGridBagConstraints()

GridBagConstraints fr.softsf.canscan.CanScan.northPanelGridBagConstraints ( )
private

Creates default GridBagConstraints for consistent layout configuration.

Defines insets, fill behavior, and initial grid positions.

◆ setAdrFieldTextForTests()

void fr.softsf.canscan.CanScan.setAdrFieldTextForTests ( )
package

Sets the address field text for testing.

◆ setCurrentModeForTests()

void fr.softsf.canscan.CanScan.setCurrentModeForTests ( Mode mode)
package

Sets the current mode for testing.

◆ setEmailFieldTextForTests()

void fr.softsf.canscan.CanScan.setEmailFieldTextForTests ( )
package

Sets the email field text for testing.

◆ setLoaderSize()

void fr.softsf.canscan.CanScan.setLoaderSize ( )
private

Sets the loader size so it matches the QR code label height and remains centered.

A small offset is applied to correct a slight visual misalignment.

+ Here is the call graph for this function:

◆ setLogoFieldTextForTests()

void fr.softsf.canscan.CanScan.setLogoFieldTextForTests ( String text)
package

Sets the logo field text for testing.

◆ setMarginSliderValueForTests()

void fr.softsf.canscan.CanScan.setMarginSliderValueForTests ( int value)
package

Sets the margin slider value for testing.

◆ setNameFieldTextForTests()

void fr.softsf.canscan.CanScan.setNameFieldTextForTests ( )
package

Sets the name field text for testing.

◆ setOrgFieldTextForTests()

void fr.softsf.canscan.CanScan.setOrgFieldTextForTests ( )
package

Sets the organization field text for testing.

◆ setPhoneFieldTextForTests()

void fr.softsf.canscan.CanScan.setPhoneFieldTextForTests ( )
package

Sets the phone field text for testing.

◆ setRatioSliderValueForTests()

void fr.softsf.canscan.CanScan.setRatioSliderValueForTests ( int value)
package

Sets the ratio slider value for testing.

◆ setSizeFieldTextForTests()

void fr.softsf.canscan.CanScan.setSizeFieldTextForTests ( String text)
package

Sets the size field text for testing.

◆ setUrlFieldTextForTests()

void fr.softsf.canscan.CanScan.setUrlFieldTextForTests ( )
package

Sets the URL field text for testing.

◆ shouldDisableGenerateButton()

boolean fr.softsf.canscan.CanScan.shouldDisableGenerateButton ( )
private

Determines whether the "Generate" button should be disabled for the current mode.

Returns
true if the button should be disabled, false otherwise

◆ switchMode()

void fr.softsf.canscan.CanScan.switchMode ( Mode mode)
private

Switches between MECARD, MEET, and FREE modes, updating the panel and QR preview.

Parameters
modethe selected Mode; ignored if null
+ Here is the call graph for this function:

◆ switchModeForTests()

void fr.softsf.canscan.CanScan.switchModeForTests ( Mode mode)
package

Switches the mode for testing.

+ Here is the call graph for this function:

◆ updateGenerateButtonState()

void fr.softsf.canscan.CanScan.updateGenerateButtonState ( )
private

Enables or disables the "Generate" button based on required fields for the current mode.

+ Here is the call graph for this function:

◆ validateAndGetMargin()

int fr.softsf.canscan.CanScan.validateAndGetMargin ( )
package

Validates and returns the current QR code margin from the margin slider.

◆ validateAndGetMeetUID()

String fr.softsf.canscan.CanScan.validateAndGetMeetUID ( )
package

Validates and returns the current meet UID from the meet title field.

◆ validateAndGetRatio()

double fr.softsf.canscan.CanScan.validateAndGetRatio ( )
package

Validates and returns the current image-to-QR ratio from the ratio slider.

◆ validateAndGetSize()

int fr.softsf.canscan.CanScan.validateAndGetSize ( )
package

Validates and returns the QR code size from the corresponding text field.

Member Data Documentation

◆ adrField

final JTextField fr.softsf.canscan.CanScan.adrField = new JTextField(IntConstants.TEXT_FIELDS_COLUMNS.getValue())
private

◆ bgColor

Color fr.softsf.canscan.CanScan.bgColor = Color.WHITE
private

◆ bgColorButton

final JButton fr.softsf.canscan.CanScan.bgColorButton = new JButton("#FFFFFF")
private

◆ browseButton

final JButton fr.softsf.canscan.CanScan.browseButton
private
Initial value:
=
UiComponentsConfiguration.INSTANCE.createIconButton("\uE2C7", "Parcourir")
Creating and configuring UI components.
Definition UiComponentsConfiguration.java:48
INSTANCE
Definition UiComponentsConfiguration.java:49

◆ cardLayout

final CardLayout fr.softsf.canscan.CanScan.cardLayout = new CardLayout()
private

◆ cardPanel

final JPanel fr.softsf.canscan.CanScan.cardPanel = new JPanel(cardLayout)
private

◆ colorOperation

final transient ColorOperation fr.softsf.canscan.CanScan.colorOperation = new ColorOperation()
private

◆ currentMode

Mode fr.softsf.canscan.CanScan.currentMode = Mode.MECARD
private

◆ emailField

final JTextField fr.softsf.canscan.CanScan.emailField
private
Initial value:
=
new JTextField(IntConstants.TEXT_FIELDS_COLUMNS.getValue())
Int constants.
Definition IntConstants.java:11
TEXT_FIELDS_COLUMNS
Definition IntConstants.java:15

◆ encodedImage

final transient EncodedImage fr.softsf.canscan.CanScan.encodedImage = new EncodedImage()
private

◆ freeField

final JTextArea fr.softsf.canscan.CanScan.freeField = new JTextArea("")
private

◆ freeRadio

final JRadioButton fr.softsf.canscan.CanScan.freeRadio
private
Initial value:
=
new JRadioButton(String.format(HTML_B_STRING_B_HTML, Mode.FREE.text()))
static final String HTML_B_STRING_B_HTML
Definition CanScan.java:82
Application operation modes.
Definition Mode.java:9
FREE
Definition Mode.java:11

◆ freeScrollPane

final JScrollPane fr.softsf.canscan.CanScan.freeScrollPane = new JScrollPane(freeField)
private

◆ generateAndSaveService

final transient GenerateAndSaveService fr.softsf.canscan.CanScan.generateAndSaveService
private
Initial value:
=
final transient EncodedImage encodedImage
Definition CanScan.java:154
Service dedicated to QR code generation and saving.
Definition GenerateAndSaveService.java:25

◆ generateButton

final JButton fr.softsf.canscan.CanScan.generateButton
private
Initial value:
=
UiComponentsConfiguration.INSTANCE.createIconButton("\uE161", "Enregistrer et copier")

◆ HTML_B_STRING_B_HTML

final String fr.softsf.canscan.CanScan.HTML_B_STRING_B_HTML = "<html><b>%s</b></html>"
staticprivate

◆ imageRatio

double fr.softsf.canscan.CanScan.imageRatio = DoubleConstants.DEFAULT_IMAGE_RATIO.getValue()
private

◆ loader

final JProgressBar fr.softsf.canscan.CanScan.loader = new JProgressBar()
private

◆ logoField

final JTextField fr.softsf.canscan.CanScan.logoField
private
Initial value:
=
new JTextField(IntConstants.TEXT_FIELDS_COLUMNS.getValue())

◆ margin

int fr.softsf.canscan.CanScan.margin = 3
private

◆ marginSlider

final JSlider fr.softsf.canscan.CanScan.marginSlider = new JSlider(0, MINIMUM_QR_CODE_SIZE, margin)
private

◆ MAX_COORDINATE_LENGTH

final int fr.softsf.canscan.CanScan.MAX_COORDINATE_LENGTH = 12
staticprivate

◆ mecardRadio

final JRadioButton fr.softsf.canscan.CanScan.mecardRadio
private
Initial value:
=
new JRadioButton(String.format(HTML_B_STRING_B_HTML, Mode.MECARD.text()))
MECARD
Definition Mode.java:10

◆ meetBeginDatePicker

final DatePicker fr.softsf.canscan.CanScan.meetBeginDatePicker = new FlatLafDatePicker()
private

◆ meetBeginTimePicker

final TimePicker fr.softsf.canscan.CanScan.meetBeginTimePicker = new FlatLafTimePicker()
private

◆ meetEndDatePicker

final DatePicker fr.softsf.canscan.CanScan.meetEndDatePicker = new FlatLafDatePicker()
private

◆ meetEndTimePicker

final TimePicker fr.softsf.canscan.CanScan.meetEndTimePicker = new FlatLafTimePicker()
private

◆ meetLatField

final JTextField fr.softsf.canscan.CanScan.meetLatField = new JTextField()
private

◆ meetLongField

final JTextField fr.softsf.canscan.CanScan.meetLongField = new JTextField()
private

◆ meetNameField

final JTextField fr.softsf.canscan.CanScan.meetNameField
private
Initial value:
=
new JTextField(IntConstants.TEXT_FIELDS_COLUMNS.getValue())

◆ meetRadio

final JRadioButton fr.softsf.canscan.CanScan.meetRadio
private
Initial value:
=
new JRadioButton(String.format(HTML_B_STRING_B_HTML, Mode.MEET.text()))
MEET
Definition Mode.java:12

◆ meetTitleField

final JTextField fr.softsf.canscan.CanScan.meetTitleField
private
Initial value:
=
new JTextField(IntConstants.TEXT_FIELDS_COLUMNS.getValue())

◆ meetUIdField

final JTextField fr.softsf.canscan.CanScan.meetUIdField
private
Initial value:
=
new JTextField(IntConstants.TEXT_FIELDS_COLUMNS.getValue())

◆ MINIMUM_QR_CODE_SIZE

final int fr.softsf.canscan.CanScan.MINIMUM_QR_CODE_SIZE = 10
staticprivate

◆ nameField

final JTextField fr.softsf.canscan.CanScan.nameField
private
Initial value:
=
new JTextField(IntConstants.TEXT_FIELDS_COLUMNS.getValue())

◆ NORTH_PANEL

final String fr.softsf.canscan.CanScan.NORTH_PANEL = "northPanel"
staticprivate

◆ northPanelWrapper

final JPanel fr.softsf.canscan.CanScan.northPanelWrapper = new JPanel(new FlowLayout(FlowLayout.CENTER, 0, 0))
private

◆ orgField

final JTextField fr.softsf.canscan.CanScan.orgField = new JTextField(IntConstants.TEXT_FIELDS_COLUMNS.getValue())
private

◆ phoneField

final JTextField fr.softsf.canscan.CanScan.phoneField
private
Initial value:
=
new JTextField(IntConstants.TEXT_FIELDS_COLUMNS.getValue())

◆ QR_CODE_LABEL_DEFAULT_SIZE

final int fr.softsf.canscan.CanScan.QR_CODE_LABEL_DEFAULT_SIZE = 50
staticprivate

◆ qrCodeLabel

final JLabel fr.softsf.canscan.CanScan.qrCodeLabel = new JLabel("", SwingConstants.CENTER)
private

◆ qrCodePreview

final transient DynamicPreviewWorker fr.softsf.canscan.CanScan.qrCodePreview
private
Initial value:
=
final JProgressBar loader
Definition CanScan.java:91
final transient DynamicResizeWorker qrCodeResize
Definition CanScan.java:155
final JLabel qrCodeLabel
Definition CanScan.java:145
Asynchronously generates and displays a QR code preview in a Swing UI.
Definition DynamicPreviewWorker.java:43

◆ qrCodeResize

final transient DynamicResizeWorker fr.softsf.canscan.CanScan.qrCodeResize
private
Initial value:
=
Asynchronously resizes a generated QR code image for display in a Swing UI.
Definition DynamicResizeWorker.java:38

◆ qrColor

Color fr.softsf.canscan.CanScan.qrColor = Color.BLACK
private

◆ qrColorButton

final JButton fr.softsf.canscan.CanScan.qrColorButton = new JButton("#000000")
private

◆ ratioSlider

final JSlider fr.softsf.canscan.CanScan.ratioSlider
private
Initial value:
=
new JSlider(
0,
(int) (imageRatio * IntConstants.MAX_PERCENTAGE.getValue()))
double imageRatio
Definition CanScan.java:88
MAX_PERCENTAGE
Definition IntConstants.java:14

◆ roundedModulesCheckBox

final JCheckBox fr.softsf.canscan.CanScan.roundedModulesCheckBox = new JCheckBox()
private

◆ sizeField

final JTextField fr.softsf.canscan.CanScan.sizeField
private
Initial value:
=
new JTextField(
String constants for messages and identifiers.
Definition StringConstants.java:11
DEFAULT_QR_CODE_DIMENSION_FIELD
Definition StringConstants.java:17

◆ southSpacer

final JPanel fr.softsf.canscan.CanScan.southSpacer = new JPanel()
private

◆ update

final JButton fr.softsf.canscan.CanScan.update
private
Initial value:
=
UiComponentsConfiguration.INSTANCE.createIconOnlyButton("\uE863")

◆ urlField

final JTextField fr.softsf.canscan.CanScan.urlField = new JTextField(IntConstants.TEXT_FIELDS_COLUMNS.getValue())
private

◆ VERTICAL_SCROLL_UNIT_INCREMENT

final int fr.softsf.canscan.CanScan.VERTICAL_SCROLL_UNIT_INCREMENT = 16
staticprivate

◆ WARNING_ICON

final String fr.softsf.canscan.CanScan.WARNING_ICON = "\uE002"
staticprivate

The documentation for this class was generated from the following file: