package Ġcom . pu zz let imer . gui Ċ Ċ import Ġcom . pu zz let imer . pu zz les . P uzzle . get Scr amb led P uzzle Mesh Ċ import Ġcom . pu zz let imer . models . Category . getDescription Ċ import Ġcom . pu zz let imer . pu zz les . P uzzle . pu zzle Info Ċ import Ġcom . pu zz let imer . sc ram bl ers . Scr amb ler . scr amb ler Info Ċ import Ġcom . pu zz let imer . models . Scr amb ler Info . pu zzle Id Ċ import Ġcom . pu zz let imer . models . P uzzle Info . pu zzle Id Ċ import Ġcom . pu zz let imer . tips . Tip . pu zzle Id Ċ import Ġcom . pu zz let imer . models . Category . tip Ids Ċ import Ġcom . pu zz let imer . tips . Tip . tip Id Ċ import Ġcom . pu zz let imer . models . Scr amb ler Info . scr amb ler Id Ċ import Ġcom . pu zz let imer . models . Category . set Scr amb ler Id Ċ import Ġcom . pu zz let imer . models . Category . setDescription Ċ import Ġcom . pu zz let imer . models . Category . set Tip Ids Ċ import Ġcom . pu zz let imer . models . Category . get Scr amb ler Id Ċ import Ġcom . pu zz let imer . state . Category Manager . addListener Ċ import Ġcom . pu zz let imer . sc ram bl ers . Scr amb ler Provider . get Ċ import Ġcom . pu zz let imer . pu zz les . P uzzle Provider . get Ċ import Ġcom . pu zz let imer . models . P uzzle Info . description Ċ import Ġcom . pu zz let imer . models . Scr amb ler Info . description Ċ import Ġcom . pu zz let imer . state . Category Manager . getC ategories Ċ import Ġcom . pu zz let imer . state . Category Manager . getCurrent Category Ċ import Ġcom . pu zz let imer . models . Category . is User Defined Ċ import Ġcom . pu zz let imer . state . Category Manager . add Category Ċ import Ġcom . pu zz let imer . pu zz les . P uzzle Provider . all Ċ import Ġcom . pu zz let imer . sc ram bl ers . Scr amb ler Provider . all Ċ import Ġcom . pu zz let imer . tips . Tip Provider . all Ċ import Ġcom . pu zz let imer . state . Category Manager . update Category Ċ import Ġcom . pu zz let imer . state . Category Manager . remove Category Ċ import Ġcom . pu zz let imer . state . Color Manager . getColor Scheme Ċ import Ġcom . pu zz let imer . models . Color Scheme . face Colors Ċ import Ġcom . pu zz let imer . models . Color Scheme . Face Color . face Description Ċ import Ġcom . pu zz let imer . models . Color Scheme . Face Color . color Ċ import Ġcom . pu zz let imer . state . Color Manager . setColor Scheme Ċ import Ġcom . pu zz let imer . models . Color Scheme . set Face Color Ċ import Ġcom . pu zz let imer . models . Color Scheme . Face Color . setColor Ċ import Ġcom . pu zz let imer . models . Color Scheme . Face Color . setColor To Default Ċ import Ġcom . pu zz let imer . state . Color Manager . addListener Ċ import Ġcom . pu zz let imer . models . Color Scheme . pu zzle Id Ċ import Ġcom . pu zz let imer . util . Solution Utils . real Time Ċ import Ġcom . pu zz let imer . state . Configuration Manager . getConfiguration Ċ import Ġcom . pu zz let imer . models . Solution . timing Ċ import Ġcom . pu zz let imer . models . Timing . start Ċ import Ġcom . pu zz let imer . util . Solution Utils . format Ċ import Ġcom . pu zz let imer . util . Solution Utils . real Times Ċ import Ġcom . pu zz let imer . util . Solution Utils . parse Time Ċ import Ġcom . pu zz let imer . parsers . Scr amble Parser . parse Ċ import Ġcom . pu zz let imer . state . Category Manager . notify Listeners Ċ import Ġcom . pu zz let imer . state . Timer Manager . addListener Ċ import Ġcom . pu zz let imer . state . Solution Manager . get Solutions Ċ import Ġcom . pu zz let imer . state . Solution Manager . addListener Ċ import Ġcom . pu zz let imer . state . Solution Manager . notify Listeners Ċ import Ġcom . pu zz let imer . state . Solution Manager . add Solutions Ċ import Ġcom . pu zz let imer . parsers . Scr amble Parser Provider . get Ċ import Ġcom . pu zz let imer . models . Category . get CategoryId Ċ import Ġcom . pu zz let imer . state . Solution Manager . update Solution Ċ import Ġcom . pu zz let imer . state . Solution Manager . remove Solution Ċ import Ġcom . pu zz let imer . state . Session Manager . get Solutions Ċ import Ġcom . pu zz let imer . models . Solution . solution Id Ċ import Ġcom . pu zz let imer . statistics . Stat istical Measure . minimum Window Size Ċ import Ġcom . pu zz let imer . statistics . Stat istical Measure . maximum Window Size Ċ import Ġcom . pu zz let imer . statistics . Stat istical Measure . set Solutions Ċ import Ġcom . pu zz let imer . util . Solution Utils . format Minutes Ċ import Ġcom . pu zz let imer . statistics . Stat istical Measure . value Ċ import Ġcom . pu zz let imer . statistics . Stat istical Measure . round Ċ import Ġcom . pu zz let imer . statistics . Stat istical Measure . window Position Ċ import Ġcom . pu zz let imer . models . Timing . elapsed Time Ċ import Ġcom . pu zz let imer . models . Solution . penalty Ċ import Ġcom . pu zz let imer . models . Solution . comment Ċ import Ġcom . pu zz let imer . models . Solution . scr amble Ċ import Ġcom . pu zz let imer . models . Scr amble . raw Sequence Ċ import Ġcom . pu zz let imer . models . table . Sort Button Renderer . set Pressed Column Ċ import Ġcom . pu zz let imer . models . table . Sort Button Renderer . setSelected Column Ċ import Ġcom . pu zz let imer . models . table . Sort Button Renderer . getState Ċ import Ġcom . pu zz let imer . models . table . Custom TableModel . sortBy Column Ċ import Ġcom . pu zz let imer . state . Scr amble Manager . addListener Ċ import Ġcom . pu zz let imer . models . Scr amble . sequence Ċ import Ġcom . pu zz let imer . models . Scr amble . scr amb ler Id Ċ import Ġcom . pu zz let imer . state . Session Manager . addListener Ċ import Ġcom . pu zz let imer . models . Solution . set Pen alty Ċ import Ġcom . pu zz let imer . state . Scr amble Manager . add Scr amb les Ċ import Ġcom . pu zz let imer . state . Scr amble Manager . change Scr amble Ċ import Ġcom . pu zz let imer . state . Message Manager . enqueue Message Ċ import Ġcom . pu zz let imer . state . Update Manager . check Update Ċ import Ġcom . pu zz let imer . state . Update Manager . latest Ċ import Ġcom . pu zz let imer . state . Update Manager . getVersion Number Ċ import Ġcom . pu zz let imer . state . Update Manager . getDescription Ċ import Ġcom . pu zz let imer . state . Scr amble Manager . current Scr amble Ċ import Ġcom . pu zz let imer . state . Solution Manager . add Solution Ċ import Ġcom . pu zz let imer . state . Category Manager . setCurrent Category Ċ import Ġcom . pu zz let imer . state . Timer Manager . is Inspection Enabled Ċ import Ġcom . pu zz let imer . state . Timer Manager . set Inspection Enabled Ċ import Ġcom . pu zz let imer . state . Timer Manager . is Any Key Enabled Ċ import Ġcom . pu zz let imer . state . Timer Manager . set Any Key Enabled Ċ import Ġcom . pu zz let imer . state . Session Manager . is Daily Session Enabled Ċ import Ġcom . pu zz let imer . state . Timer Manager . is Hide Timer Enabled Ċ import Ġcom . pu zz let imer . state . Timer Manager . set Hide Timer Enabled Ċ import Ġcom . pu zz let imer . state . Timer Manager . is Smooth Timing Enabled Ċ import Ġcom . pu zz let imer . state . Timer Manager . set Smooth Timing Enabled Ċ import Ġcom . pu zz let imer . state . Configuration Manager . set Configuration Ċ import Ġcom . pu zz let imer . util . Export Utils . Export ToFile Ċ import Ġcom . pu zz let imer . state . Message Manager . addListener Ċ import Ġcom . pu zz let imer . state . Timer Manager . set Timer Ċ import Ġcom . pu zz let imer . state . Timer Manager . set Precision Ċ import Ġcom . pu zz let imer . state . Scr amble Manager . move Scr amb les Up Ċ import Ġcom . pu zz let imer . state . Scr amble Manager . move Scr amb les Down Ċ import Ġcom . pu zz let imer . state . Scr amble Manager . remove Scr amb les Ċ import Ġcom . pu zz let imer . state . Scr amble Manager . get Queue Ċ import Ġcom . pu zz let imer . sc ram bl ers . Scr amb ler . next Scr amble Ċ import Ġcom . pu zz let imer . models . Timing . end Ċ import Ġcom . pu zz let imer . models . Solution . set Timing Ċ import Ġcom . pu zz let imer . models . Solution . set Comment Ċ import Ġcom . pu zz let imer . tips . Tip Provider . get Ċ import Ġcom . pu zz let imer . tips . Tip . get Tip Ċ import Ġjavax . swing . J Frame Ċ import Ġjavax . swing . J Dialog Ċ import Ġcom . pu zz let imer . pu zz les . P uzzle Ċ import Ġcom . pu zz let imer . pu zz les . Rub iks Cube Ċ import Ġcom . pu zz let imer . models . Color Scheme . Face Color Ċ import Ġjava . awt . Color Ċ import Ġcom . pu zz let imer . graphics . Panel 3 D Ċ import Ġcom . pu zz let imer . graphics . Vector 3 Ċ import Ġjavax . swing . JLabel Ċ import Ġjava . awt . Font Ċ import Ġcom . pu zz let imer . sc ram bl ers . Scr amb ler Ċ import Ġcom . pu zz let imer . tips . Tip Ċ import Ġcom . pu zz let imer . gui . Category Editor Listener Ċ import Ġjavax . swing . JTextField Ċ import Ġjavax . swing . J ComboBox Ċ import Ġjavax . swing . JButton Ċ import Ġjavax . swing . J List Ċ import Ġjavax . swing . Default ListModel Ċ import Ġjavax . swing . List Selection Model Ċ import Ġjavax . swing . J ScrollPane Ċ import Ġjava . awt . Dimension Ċ import Ġjava . awt . event . ActionListener Ċ import Ġjava . awt . event . ActionEvent Ċ import Ġjavax . swing . ListModel Ċ import Ġjavax . swing . KeyStroke Ċ import Ġjava . awt . event . KeyEvent Ċ import Ġjavax . swing . J Component Ċ import Ġcom . pu zz let imer . pu zz les . P uzzle Provider Ċ import Ġcom . pu zz let imer . sc ram bl ers . Scr amb ler Provider Ċ import Ġcom . pu zz let imer . state . Category Manager Ċ import Ġcom . pu zz let imer . tips . Tip Provider Ċ import Ġjavax . swing . J Table Ċ import Ġjavax . swing . table . Default TableModel Ċ import Ġjavax . swing . event . List Selection Listener Ċ import Ġjavax . swing . event . List Selection Event Ċ import Ġcom . pu zz let imer . gui . Category Editor Dialog Ċ import Ġjavax . swing . JOptionPane Ċ import Ġcom . pu zz let imer . state . Color Manager Ċ import Ġjavax . swing . table . TableCell Renderer Ċ import Ġjavax . swing . Border Factory Ċ import Ġcom . pu zz let imer . gui . Color Scheme Frame . Color Renderer Ċ import Ġjavax . swing . J Color Chooser Ċ import Ġjavax . swing . Window Constants Ċ import Ġcom . pu zz let imer . state . Configuration Manager Ċ import Ġjavax . swing . JPanel Ċ import Ġcom . pu zz let imer . util . Solution Utils Ċ import Ġjava . awt . Graphics Ċ import Ġjava . awt . Graphics 2 D Ċ import Ġjava . awt . Rendering Hints Ċ import Ġjava . awt . Font Metrics Ċ import Ġjava . text . DateFormat Ċ import Ġjava . awt . geom . GeneralPath Ċ import Ġjava . awt . geom . Affine Transform Ċ import Ġcom . pu zz let imer . parsers . Scr amble Parser Provider Ċ import Ġcom . pu zz let imer . state . Scr amble Manager Ċ import Ġcom . pu zz let imer . state . Solution Manager Ċ import Ġcom . pu zz let imer . state . Timer Manager Ċ import Ġcom . pu zz let imer . parsers . Scr amble Parser Ċ import Ġcom . pu zz let imer . gui . History Frame . Solution Importer Dialog . Solution Importer Listener Ċ import Ġjavax . swing . J TextArea Ċ import Ġcom . pu zz let imer . gui . Histogram Panel Ċ import Ġcom . pu zz let imer . gui . Graph Panel Ċ import Ġcom . pu zz let imer . statistics . Stat istical Measure Ċ import Ġcom . pu zz let imer . statistics . Best Ċ import Ġcom . pu zz let imer . statistics . Mean Ċ import Ġcom . pu zz let imer . statistics . Best Mean Ċ import Ġcom . pu zz let imer . statistics . Percent ile Ċ import Ġcom . pu zz let imer . statistics . Average Ċ import Ġcom . pu zz let imer . statistics . Inter quart ile Mean Ċ import Ġcom . pu zz let imer . statistics . Best Average Ċ import Ġcom . pu zz let imer . statistics . Standard De viation Ċ import Ġcom . pu zz let imer . statistics . W or st Ċ import Ġjava . awt . event . Mouse Listener Ċ import Ġjava . awt . event . Mouse Adapter Ċ import Ġcom . pu zz let imer . models . table . Custom TableModel Ċ import Ġjavax . swing . table . TableColumn Ċ import Ġcom . pu zz let imer . models . table . Sort Button Renderer Ċ import Ġjavax . swing . table . J Table Header Ċ import Ġcom . pu zz let imer . gui . History Frame . Header Listener Ċ import Ġcom . pu zz let imer . gui . History Frame . Solution Importer Dialog Ċ import Ġcom . pu zz let imer . gui . Solution Editing Dialog . Solution Editing Dialog Listener Ċ import Ġcom . pu zz let imer . gui . Solution Editing Dialog Ċ import Ġcom . pu zz let imer . state . Message Manager Ċ import Ġcom . pu zz let imer . database . Solution DAO Ċ import Ġcom . pu zz let imer . gui . Main Frame . Scr amble Viewer Panel Ċ import Ġcom . pu zz let imer . gui . Wrap Layout Ċ import Ġcom . pu zz let imer . gui . Hand Image Ċ import Ġcom . pu zz let imer . gui . Time Label Ċ import Ġjavax . swing . Image Icon Ċ import Ġjavax . swing . ToolTip Manager Ċ import Ġjavax . swing . J CheckBox Ċ import Ġjavax . swing . J Menu Ċ import Ġjavax . swing . J MenuItem Ċ import Ġjavax . swing . J CheckBox MenuItem Ċ import Ġjavax . swing . Button Group Ċ import Ġjavax . swing . J RadioButton MenuItem Ċ import Ġcom . pu zz let imer . gui . Main Frame . Scr amble Panel Ċ import Ġcom . pu zz let imer . gui . Main Frame . Timer Panel Ċ import Ġcom . pu zz let imer . gui . Main Frame . Times ScrollPane Ċ import Ġcom . pu zz let imer . gui . Main Frame . Statistics Panel Ċ import Ġcom . pu zz let imer . gui . Tips Frame Ċ import Ġcom . pu zz let imer . gui . Scr amble Queue Frame Ċ import Ġcom . pu zz let imer . gui . History Frame Ċ import Ġcom . pu zz let imer . gui . Session Summary Frame Ċ import Ġcom . pu zz let imer . gui . Stack mat Developer Frame Ċ import Ġcom . pu zz let imer . gui . Category Manager Frame Ċ import Ġcom . pu zz let imer . gui . Color Scheme Frame Ċ import Ġjavax . sound . sampled . Audio Format Ċ import Ġjavax . sound . sampled . Mixer Ċ import Ġcom . pu zz let imer . gui . Main Frame Ċ import Ġjavax . swing . UI Manager Ċ import Ġjavax . swing . Swing Utilities Ċ import Ġcom . pu zz let imer . timer . Manual Input Timer Ċ import Ġcom . pu zz let imer . timer . Control Keys Timer Ċ import Ġcom . pu zz let imer . timer . Space Key Timer Ċ import Ġjavax . sound . sampled . Target Data Line Ċ import Ġjavax . sound . sampled . Audio System Ċ import Ġcom . pu zz let imer . timer . Stack mat Timer Ċ import Ġjavax . sound . sampled . Line Unavailable Exception Ċ import Ġjavax . swing . J MenuBar Ċ import Ġjava . awt . Image Ċ import Ġjavax . sound . sampled . Clip Ċ import Ġjava . io . Buffered InputStream Ċ import Ġcom . pu zz let imer . state . Update Manager Ċ import Ġorg . json . JSONObject Ċ import Ġcom . pu zz let imer . gui . Updater Frame Ċ import Ġjava . awt . event . Input Event Ċ import Ġjavax . sound . sampled . Line Ċ import Ġjavax . sound . sampled . Data Line Ċ import Ġjavax . swing . UI Manager . Look And Feel Info Ċ import Ġjava . awt . Desktop Ċ import Ġcom . pu zz let imer . util . Export Utils Ċ import Ġjavax . swing . J Spinner Ċ import Ġjavax . swing . Spinner Number Model Ċ import Ġkotlin . Throws Ċ import Ġjava . io . IOException Ċ import Ġjava . io . File Ċ import Ġjava . io . FileInputStream Ċ import Ġjava . io . File OutputStream Ċ import Ġjava . io . OutputStream Writer Ċ import Ġjavax . swing . J FileChooser Ċ import Ġjavax . swing . file cho oser . FileName Extension Filter Ċ import Ġjava . lang . StringBuilder Ċ import Ġjava . awt . datat rans fer . String Selection Ċ import Ġjava . awt . datat rans fer . Clipboard Ċ import Ġjava . awt . event . Window Adapter Ċ import Ġjava . awt . event . Window Event Ċ import Ġcom . pu zz let imer . gui . Stack mat Graph Panel Ċ import Ġcom . pu zz let imer . models .* Ċ import Ġnet . mig info com . swing . M ig Layout Ċ import Ġjava . awt . geom . Rectangle 2 D Ċ import Ġjavax . swing . J ProgressBar Ċ import Ġjava . lang . Runnable Ċ import Ġjava . io . Buffered OutputStream Ċ import Ġjava . lang . Process Ċ import Ġjava . net . UR ISyntaxException Ċ import Ġjava . awt . Flow Layout Ċ import Ġjava . awt . LayoutManager Ċ import Ġjava . awt . Insets Ċ import Ġjava . util .* Ċ Ċ class ĠScr amble Queue Frame ( ĊĠĠĠĠĠĠĠ Ġscr amble Parser Provider : ĠScr amble Parser Provider , ĊĠĠĠĠĠĠĠ Ġscr amb ler Provider : ĠScr amb ler Provider , ĊĠĠĠĠĠĠĠ Ġcategory Manager : ĠCategory Manager , ĊĠĠĠĠĠĠĠ Ġscr amble Manager : ĠScr amble Manager ) Ġ: ĠJ Frame () Ġ{ ĊĠĠĠ Ġprivate Ġvar Ġtable : ĠJ Table ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġvar Ġbutton Up : ĠJButton ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġvar Ġbutton Down : ĠJButton ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġvar Ġbutton Remove : ĠJButton ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġvar Ġbutton Import FromFile : ĠJButton ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġvar Ġbutton Export : ĠJButton ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġvar Ġcombo Box Scr amb ler : ĠJ ComboBox < *> ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġvar Ġspinner NumberOf Scr amb les : ĠJ Spinner ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġvar Ġbutton Import From Scr amb ler : ĠJButton ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġvar Ġbutton Ok : ĠJButton ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġfun Ġcreate Components () Ġ{ ĊĠĠĠĠĠĠĠ Ġlayout Ġ= ĠM ig Layout ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" fill ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"[ fill ][ pref ! ]", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"[ pref ! ][] 1 2 [ pref ! ][ pref !] 1 6 [ pref ! ]") ĊĊĠĠĠĠĠĠĠ Ġ// Ġlabel Queue ĊĠĠĠĠĠĠĠ Ġadd ( JLabel (_(" scr amble _ queue . queue ")), Ġ" span , Ġwrap ") ĊĊĠĠĠĠĠĠĠ Ġ// Ġtable ĊĠĠĠĠĠĠĠ Ġtable Ġ= ĠJ Table () ĊĠĠĠĠĠĠĠ Ġtable !!. show Vertical Lines Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġval Ġscroll Pane Ġ= ĠJ ScrollPane ( table ) ĊĠĠĠĠĠĠĠ Ġtable !!. fill s Viewport Height Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġscroll Pane . preferred Size Ġ= ĠDimension ( 0 , Ġ 0 ) ĊĠĠĠĠĠĠĠ Ġadd ( scroll Pane , Ġ" grow ") ĊĊĠĠĠĠĠĠĠ Ġ// Ġbutton Up ĊĠĠĠĠĠĠĠ Ġbutton Up Ġ= ĠJButton (_(" scr amble _ queue . up ")) ĊĠĠĠĠĠĠĠ Ġbutton Up !!. isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġadd ( button Up , Ġ" top , Ġgrow x , Ġsplit Ġ 5 , Ġflow y ") ĊĊĠĠĠĠĠĠĠ Ġ// Ġbutton Down ĊĠĠĠĠĠĠĠ Ġbutton Down Ġ= ĠJButton (_(" scr amble _ queue . down ")) ĊĠĠĠĠĠĠĠ Ġbutton Down !!. isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġadd ( button Down , Ġ" top , Ġgrow x ") ĊĊĠĠĠĠĠĠĠ Ġ// Ġbutton Remove ĊĠĠĠĠĠĠĠ Ġbutton Remove Ġ= ĠJButton (_(" scr amble _ queue . remove ")) ĊĠĠĠĠĠĠĠ Ġbutton Remove !!. isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġadd ( button Remove , Ġ" top , Ġgrow x ") ĊĊĠĠĠĠĠĠĠ Ġ// Ġbutton Import FromFile ĊĠĠĠĠĠĠĠ Ġbutton Import FromFile Ġ= ĠJButton (_(" scr amble _ queue . import _ from _ file ")) ĊĠĠĠĠĠĠĠ Ġadd ( button Import FromFile , Ġ" gap top Ġ 2 0 , Ġtop , Ġgrow x ") ĊĊĠĠĠĠĠĠĠ Ġ// Ġbutton Export ĊĠĠĠĠĠĠĠ Ġbutton Export Ġ= ĠJButton (_(" scr amble _ queue . export _ to _ file ")) ĊĠĠĠĠĠĠĠ Ġbutton Export !!. isEnabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġadd ( button Export , Ġ" top , Ġgrow x , Ġwrap ") ĊĊĠĠĠĠĠĠĠ Ġ// Ġlabel Import From Scr amb ler ĊĠĠĠĠĠĠĠ Ġadd ( JLabel (_(" scr amble _ queue . import _ from _ scr amb ler ")), Ġ" span , Ġwrap ") ĊĊĠĠĠĠĠĠĠ Ġ// Ġcombo Box Scr amb ler ĊĠĠĠĠĠĠĠ Ġcombo Box Scr amb ler Ġ= ĠJ ComboBox < Any ?> () ĊĠĠĠĠĠĠĠ Ġadd ( comboBox Scr amb ler , Ġ" grow x , Ġspan , Ġsplit Ġ 3 ") ĊĊĠĠĠĠĠĠĠ Ġ// Ġspinner NumberOf Scr amb les ĊĠĠĠĠĠĠĠ Ġspinner NumberOf Scr amb les Ġ= ĠJ Spinner ( Spinner Number Model ( 1 2 , Ġ 1 , Ġ 1 0 0 0 , Ġ 1 )) ĊĠĠĠĠĠĠĠ Ġadd ( spinner NumberOf Scr amb les , Ġ"") ĊĊĠĠĠĠĠĠĠ Ġ// Ġbutton Import From Scr amb ler ĊĠĠĠĠĠĠĠ Ġbutton Import From Scr amb ler Ġ= ĠJButton (_(" scr amble _ queue . import ")) ĊĠĠĠĠĠĠĠ Ġadd ( button Import From Scr amb ler , Ġ" wrap ") ĊĊĠĠĠĠĠĠĠ Ġ// Ġbutton OK ĊĠĠĠĠĠĠĠ Ġbutton Ok Ġ= ĠJButton (_(" scr amble _ queue . ok ")) ĊĠĠĠĠĠĠĠ Ġadd ( button Ok , Ġ" tag Ġok , Ġspan ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġupdate Table ( queue : ĠArray < Scr amble ?> ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtable Model : ĠDefault TableModel Ġ= Ġobject Ġ: ĠDefault TableModel () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġis Cell Editable ( row : ĠInt , Ġcolumn : ĠInt ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġtable Model . addColumn (_(" scr amble _ queue .# ")) ĊĠĠĠĠĠĠĠ Ġtable Model . addColumn (_(" scr amble _ queue . scr amble ")) ĊĠĠĠĠĠĠĠ Ġtable !!. model Ġ= Ġtable Model ĊĠĠĠĠĠĠĠ Ġtable !!. auto Resize Mode Ġ= ĠJ Table . AUTO _ RE SIZE _ LAST _ COLUMN ĊĠĠĠĠĠĠĠ Ġval Ġindex Column Ġ= Ġtable !!. column Model . getColumn ( 0 ) ĊĠĠĠĠĠĠĠ Ġindex Column . preferred Width Ġ= Ġ 5 0 ĊĠĠĠĠĠĠĠ Ġval Ġscr amble Column Ġ= Ġtable !!. column Model . getColumn ( 1 ) ĊĠĠĠĠĠĠĠ Ġscr amble Column . preferred Width Ġ= Ġ 1 0 0 0 ĊĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġqueue !!. indices ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtable Model . add Row ( array Of < Any >( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġi Ġ+ Ġ 1 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġqueue [ i ] !!. raw Sequence )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġupdate Buttons ( table : ĠJ Table ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġselected Rows Ġ= Ġtable !!. selected Rows ĊĠĠĠĠĠĠĠ Ġval Ġn Rows Ġ= Ġtable . rowCount ĊĊĠĠĠĠĠĠĠ Ġ// Ġup Ġbutton ĊĠĠĠĠĠĠĠ Ġbutton Up !!. isEnabled Ġ= Ġselected Rows . size Ġ> Ġ 0 Ġ&& ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġselected Rows [ 0 ] Ġ!= Ġ 0 ĊĊĠĠĠĠĠĠĠ Ġ// Ġdown Ġbutton ĊĠĠĠĠĠĠĠ Ġbutton Down !!. isEnabled Ġ= Ġselected Rows . size Ġ> Ġ 0 Ġ&& ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġselected Rows [ selected Rows . size Ġ- Ġ 1 ] Ġ!= Ġn Rows Ġ- Ġ 1 ĊĊĠĠĠĠĠĠĠ Ġ// Ġremove Ġbutton ĊĠĠĠĠĠĠĠ Ġbutton Remove !!. isEnabled Ġ= Ġselected Rows . size Ġ> Ġ 0 ĊĊĠĠĠĠĠĠĠ Ġ// Ġexport Ġbutton ĊĠĠĠĠĠĠĠ Ġbutton Export !!. isEnabled Ġ= Ġn Rows Ġ> Ġ 0 ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Throws ( IOException :: class ) ĊĠĠĠ Ġprivate Ġfun Ġload Scr amb les FromFile ( file : ĠFile , Ġscr amb ler Id : ĠString , Ġscr amble Parser : ĠScr amble Parser ?): ĠArray < Scr amble ?> Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfile InputStream Ġ= ĠFileInputStream ( file ) ĊĠĠĠĠĠĠĠ Ġval Ġscanner Ġ= ĠScanner ( file InputStream , Ġ" UTF - 8 ") ĊĠĠĠĠĠĠĠ Ġval Ġscr amb les Ġ= ĠArrayList < Scr amble >() ĊĠĠĠĠĠĠĠ Ġwhile Ġ( scanner . hasNext Line ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġscr amb les . add ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠScr amble ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscr amb ler Id , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscr amble Parser !!. parse ( scanner . nextLine (). trim Ġ{ Ġit Ġ<= Ġ' Ġ' Ġ} ))) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġscanner . close () ĊĠĠĠĠĠĠĠ Ġval Ġscr amble Array Ġ= ĠarrayOf Null s < Scr amble >( scr amb les . size ) ĊĠĠĠĠĠĠĠ Ġscr amb les . toArray ( scr amble Array ) ĊĠĠĠĠĠĠĠ Ġreturn Ġscr amble Array ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Throws ( IOException :: class ) ĊĠĠĠ Ġprivate Ġfun Ġsave Scr amb les ToFile ( scr amb les : ĠArray < Scr amble ? >, Ġfile : ĠFile ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfile OutputStream Ġ= ĠFileOutputStream ( file ) ĊĠĠĠĠĠĠĠ Ġval Ġwriter Ġ= ĠOutputStream Writer ( file OutputStream , Ġ" UTF - 8 ") ĊĠĠĠĠĠĠĠ Ġfor Ġ( scr amble Ġin Ġscr amb les ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwriter . append ( scr amble !!. raw Sequence ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwriter . append ("\ r \ n ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġwriter . close () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġminimum Size Ġ= ĠDimension ( 6 4 0 , Ġ 4 8 0 ) ĊĠĠĠĠĠĠĠ Ġcreate Components () ĊĠĠĠĠĠĠĠ Ġpack () ĊĊĠĠĠĠĠĠĠ Ġ// Ġon Ġcategory Ġchange ĊĠĠĠĠĠĠĠ Ġcategory Manager . addListener ( object Ġ: ĠCategory Manager . Listener () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġcategories Updated ( categories : ĠArray < Category > ?, Ġcurrent Category : ĠCategory ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġtitle ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Ġ= Ġjava . lang . String . format ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ_(" scr amble _ queue . scr amble _ queue - category "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcurrent Category !!. getDescription ()) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġscr amb ler Ġcombo box ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcombo Box Scr amb ler !!. removeAll Items () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcurrent Scr amb ler Ġ= Ġscr amb ler Provider [ category Manager . getCurrent Category (). get Scr amb ler Id () !! ] ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpuzzle Id Ġ= Ġcurrent Scr amb ler !!. scr amb ler Info . pu zzle Id ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( scr amb ler Ġin Ġscr amb ler Provider . all ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( scr amb ler !!. scr amb ler Info . pu zzle Id Ġ== Ġpuzzle Id ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcombo Box Scr amb ler !!. addItem ( scr amb ler ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġcategory Manager . notify Listeners () ĊĊĠĠĠĠĠĠĠ Ġ// Ġon Ġqueue Ġupdate ĊĠĠĠĠĠĠĠ Ġscr amble Manager . addListener ( object Ġ: ĠScr amble Manager . Listener () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġscr amble Queue Updated ( queue : ĠArray < Scr amble ?> ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġupdate Table ( queue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġupdate Buttons ( table ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĊĠĠĠĠĠĠĠ Ġ// Ġenable / disable Ġbuttons ĊĠĠĠĠĠĠĠ Ġtable !!. selection Model . add List Selection Listener Ġ{ Ġevent : ĠList Selection Event ? Ġ-> Ġupdate Buttons ( table ) Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// Ġup Ġbutton ĊĠĠĠĠĠĠĠ Ġbutton Up !!. addActionListener Ġ{ Ġevent : ĠAction Event ? Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtable 1 Ġ= Ġtable ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġselected Rows Ġ= Ġtable 1 !!. selected Rows ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġmove Ġscr amb les ĊĠĠĠĠĠĠĠĠĠĠĠ Ġscr amble Manager . move Scr amb les Up ( selected Rows ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġfix Ġselection ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtable 1 . remove Row Selection Interval ( 0 , Ġselected Rows . size Ġ- Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( selected Row Ġin Ġselected Rows ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtable 1 . add Row Selection Interval ( selected Row Ġ- Ġ 1 , Ġselected Row Ġ- Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġrequest Ġfocus ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbutton Up !!. request Focus In Window () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// Ġdown Ġbutton ĊĠĠĠĠĠĠĠ Ġbutton Down !!. addActionListener Ġ{ Ġevent : ĠAction Event ? Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtable 1 Ġ= Ġtable ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġselected Rows Ġ= Ġtable 1 !!. selected Rows ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġmove Ġscr amb les ĊĠĠĠĠĠĠĠĠĠĠĠ Ġscr amble Manager . move Scr amb les Down ( selected Rows ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġfix Ġselection ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtable 1 . remove Row Selection Interval ( 0 , Ġselected Rows . size Ġ- Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( selected Row Ġin Ġselected Rows ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtable 1 . add Row Selection Interval ( selected Row Ġ+ Ġ 1 , Ġselected Row Ġ+ Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġrequest Ġfocus ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbutton Down !!. request Focus In Window () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// Ġremove Ġbutton ĊĠĠĠĠĠĠĠ Ġbutton Remove !!. addActionListener Ġ{ Ġevent : ĠAction Event ? Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġremove Ġscr amb les ĊĠĠĠĠĠĠĠĠĠĠĠ Ġscr amble Manager . remove Scr amb les ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtable !!. selected Rows ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġrequest Ġfocus ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbutton Remove !!. request Focus In Window () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// Ġimport Ġfrom Ġfile ĊĠĠĠĠĠĠĠ Ġbutton Import FromFile !!. addActionListener Ġ{ Ġevent : ĠAction Event ? Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfile Chooser Ġ= ĠJ FileChooser () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfile Chooser . file Filter Ġ= ĠFileName Extension Filter (_(" scr amble _ queue . scr amble _ file _ description "), Ġ" txt ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġaction Ġ= Ġfile Chooser . show Open Dialog ( this @ Scr amble Queue Frame ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( action Ġ!= ĠJ FileChooser . APPRO VE _ OPTION ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ addActionListener ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcategory Ġ= Ġcategory Manager . getCurrent Category () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġscr amb ler Ġ= Ġscr amb ler Provider [ category . get Scr amb ler Id () !! ] ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpuzzle Id Ġ= Ġscr amb ler !!. scr amb ler Info . pu zzle Id ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġscr amble Parser Ġ= Ġscr amble Parser Provider [ pu zzle Id ] ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġscr amb les : ĠArray < Scr amble ?> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġscr amb les Ġ= Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġload Scr amb les FromFile ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfile Chooser . selected File , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"$ pu zzle Id - IMPORT ER ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscr amble Parser ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠIOException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠJOptionPane . showMessageDialog ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Scr amble Queue Frame , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġjava . lang . String . format ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ_(" scr amble _ queue . file _ opening _ error "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfile Chooser . selected File . absolute Path ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ_(" scr amble _ queue . error "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠJOptionPane . ERROR _ MESSAGE ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ addActionListener ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġscr amble Manager . add Scr amb les ( scr amb les , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// Ġexport Ġto Ġfile ĊĠĠĠĠĠĠĠ Ġbutton Export !!. addActionListener Ġ{ Ġevent : ĠAction Event ? Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfile Chooser Ġ= ĠJ FileChooser () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfile Chooser . selected File Ġ= ĠFile (_(" scr amble _ queue . default _ file _ name ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfile Chooser . file Filter Ġ= ĠFileName Extension Filter (_(" scr amble _ queue . scr amble _ file _ description "), Ġ" txt ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġaction Ġ= Ġfile Chooser . show Save Dialog ( this @ Scr amble Queue Frame ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( action Ġ!= ĠJ FileChooser . APPRO VE _ OPTION ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ addActionListener ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġscr amb les Ġ= Ġscr amble Manager . get Queue () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġselected Scr amb les : ĠArray < Scr amble ?> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġselected Rows Ġ= Ġtable !!. selected Rows ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( selected Rows . size Ġ<= Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġselected Scr amb les Ġ= Ġscr amb les ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġselected Scr amb les Ġ= ĠarrayOf Null s ( selected Rows . size ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġselected Scr amb les . indices ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġselected Scr amb les [ i ] Ġ= Ġscr amb les [ selected Rows [ i ]] ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsave Scr amb les ToFile ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġselected Scr amb les , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfile Chooser . selected File ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠIOException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠJOptionPane . showMessageDialog ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Scr amble Queue Frame , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġjava . lang . String . format ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ_(" scr amble _ queue . file _ opening _ error "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfile Chooser . selected File . absolute Path ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ_(" scr amble _ queue . error "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠJOptionPane . ERROR _ MESSAGE ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// Ġimport Ġfrom Ġscr amb ler ĊĠĠĠĠĠĠĠ Ġbutton Import From Scr amb ler !!. addActionListener Ġ{ Ġevent : ĠAction Event ? Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġscr amb ler Ġ= Ġcombo Box Scr amb ler !!. selected Item Ġas ĠScr amb ler ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġscr amb les Ġ= ĠarrayOf Null s < Scr amble >(( spinner NumberOf Scr amb les !!. value Ġas ĠInt )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġscr amb les . indices ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscr amb les [ i ] Ġ= Ġscr amb ler . next Scr amble ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġscr amble Manager . add Scr amb les ( scr amb les , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// Ġok Ġbutton ĊĠĠĠĠĠĠĠ Ġdefault Close Operation Ġ= ĠH IDE _ ON _ CLOSE ĊĠĠĠĠĠĠĠ Ġbutton Ok !!. addActionListener Ġ{ Ġevent : ĠAction Event ? Ġ-> Ġthis @ Scr amble Queue Frame . isVisible Ġ= Ġfalse Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// Ġesc Ġkey Ġcloses Ġwindow ĊĠĠĠĠĠĠĠ Ġget Root Pane (). register Keyboard Action ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ{ Ġarg 0 : ĠAction Event ? Ġ-> Ġthis @ Scr amble Queue Frame . isVisible Ġ= Ġfalse Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠKey Stroke . getKey Stroke ( KeyEvent . VK _ ESCAPE , Ġ 0 ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠJ Component . WHEN _ IN _ FOC USED _ WINDOW ) ĊĠĠĠ Ġ} Ċ }