bioroebe 0.10.80 → 0.12.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (301) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3946 -2817
  3. data/bin/bioroebe +13 -2
  4. data/bin/bioroebe_hash +7 -0
  5. data/bin/codon_to_aminoacid +6 -4
  6. data/bin/compacter +7 -0
  7. data/bin/plain_palindrome +7 -0
  8. data/bioroebe.gemspec +3 -3
  9. data/doc/README.gen +3918 -2793
  10. data/doc/quality_control/commandline_applications.md +3 -3
  11. data/doc/statistics/statistics.md +7 -7
  12. data/doc/todo/bioroebe_GUI_todo.md +19 -14
  13. data/doc/todo/bioroebe_java_todo.md +22 -0
  14. data/doc/todo/bioroebe_todo.md +2075 -2620
  15. data/lib/bioroebe/C++/DNA.cpp +69 -0
  16. data/lib/bioroebe/C++/RNA.cpp +58 -0
  17. data/lib/bioroebe/C++/sequence.cpp +35 -0
  18. data/lib/bioroebe/abstract/README.md +1 -0
  19. data/lib/bioroebe/abstract/features.rb +29 -0
  20. data/lib/bioroebe/aminoacids/aminoacid_substitution.rb +1 -9
  21. data/lib/bioroebe/aminoacids/codon_percentage.rb +1 -9
  22. data/lib/bioroebe/aminoacids/deduce_aminoacid_sequence.rb +1 -9
  23. data/lib/bioroebe/aminoacids/display_aminoacid_table.rb +1 -0
  24. data/lib/bioroebe/aminoacids/show_hydrophobicity.rb +1 -6
  25. data/lib/bioroebe/base/base_module/base_module.rb +36 -0
  26. data/lib/bioroebe/base/colours_for_base/colours_for_base.rb +18 -8
  27. data/lib/bioroebe/base/commandline_application/commandline_application.rb +13 -9
  28. data/lib/bioroebe/base/commandline_application/commandline_arguments.rb +24 -19
  29. data/lib/bioroebe/base/commandline_application/misc.rb +66 -49
  30. data/lib/bioroebe/base/commandline_application/opn.rb +8 -8
  31. data/lib/bioroebe/base/commandline_application/reset.rb +5 -3
  32. data/lib/bioroebe/base/internal_hash_module/internal_hash_module.rb +42 -0
  33. data/lib/bioroebe/base/misc.rb +35 -0
  34. data/lib/bioroebe/base/prototype/misc.rb +15 -9
  35. data/lib/bioroebe/base/prototype/reset.rb +10 -0
  36. data/lib/bioroebe/cleave_and_digest/digestion.rb +10 -2
  37. data/lib/bioroebe/cleave_and_digest/trypsin.rb +104 -50
  38. data/lib/bioroebe/codon_tables/frequencies/parse_frequency_table.rb +2 -10
  39. data/lib/bioroebe/codons/codons.rb +1 -1
  40. data/lib/bioroebe/codons/convert_this_codon_to_that_aminoacid.rb +208 -59
  41. data/lib/bioroebe/codons/possible_codons_for_this_aminoacid.rb +1 -9
  42. data/lib/bioroebe/codons/show_codon_tables.rb +8 -3
  43. data/lib/bioroebe/codons/show_codon_usage.rb +15 -4
  44. data/lib/bioroebe/colours/rev.rb +4 -1
  45. data/lib/bioroebe/constants/aminoacids_and_proteins.rb +1 -0
  46. data/lib/bioroebe/constants/database_constants.rb +1 -1
  47. data/lib/bioroebe/constants/files_and_directories.rb +31 -4
  48. data/lib/bioroebe/constants/misc.rb +20 -0
  49. data/lib/bioroebe/constants/nucleotides.rb +7 -0
  50. data/lib/bioroebe/conversions/dna_to_aminoacid_sequence.rb +109 -39
  51. data/lib/bioroebe/count/count_amount_of_aminoacids.rb +3 -2
  52. data/lib/bioroebe/count/count_amount_of_nucleotides.rb +3 -0
  53. data/lib/bioroebe/cpp +1 -0
  54. data/lib/bioroebe/crystal/README.md +2 -0
  55. data/lib/bioroebe/crystal/to_rna.cr +19 -0
  56. data/lib/bioroebe/data/README.md +11 -8
  57. data/lib/bioroebe/data/electron_microscopy/pos_example.pos +396 -0
  58. data/lib/bioroebe/data/electron_microscopy/test_particles.star +36 -0
  59. data/lib/bioroebe/data/fasta/human/Homo_sapiens_hemoglobin_subunit_alpha_HBB_mRNA.fasta +9 -0
  60. data/lib/bioroebe/data/fasta/human/Homo_sapiens_hemoglobin_subunit_beta_HBB_mRNA.fasta +8 -0
  61. data/lib/bioroebe/data/fasta/human/README.md +2 -0
  62. data/lib/bioroebe/dotplots/advanced_dotplot.rb +1 -1
  63. data/lib/bioroebe/electron_microscopy/coordinate_analyzer.rb +15 -18
  64. data/lib/bioroebe/{fasta_and_fastq/parse_fasta/run.rb → electron_microscopy/electron_microscopy_module.rb} +16 -8
  65. data/lib/bioroebe/electron_microscopy/fix_pos_file.rb +1 -9
  66. data/lib/bioroebe/electron_microscopy/flipy.rb +83 -0
  67. data/lib/bioroebe/electron_microscopy/parse_coordinates.rb +2 -10
  68. data/lib/bioroebe/electron_microscopy/read_file_xmd.rb +1 -9
  69. data/lib/bioroebe/electron_microscopy/simple_star_file_generator.rb +4 -9
  70. data/lib/bioroebe/enzymes/has_this_restriction_enzyme.rb +10 -3
  71. data/lib/bioroebe/enzymes/restriction_enzyme.rb +23 -1
  72. data/lib/bioroebe/enzymes/restriction_enzymes/statistics.rb +65 -0
  73. data/lib/bioroebe/fasta_and_fastq/autocorrect_the_name_of_this_fasta_file.rb +1 -9
  74. data/lib/bioroebe/fasta_and_fastq/compact_fasta_file/compact_fasta_file.rb +7 -9
  75. data/lib/bioroebe/fasta_and_fastq/fasta_defline/fasta_defline.rb +1 -5
  76. data/lib/bioroebe/fasta_and_fastq/fasta_to_yaml/fasta_to_yaml.rb +81 -0
  77. data/lib/bioroebe/fasta_and_fastq/parse_fasta/parse_fasta.rb +1518 -7
  78. data/lib/bioroebe/fasta_and_fastq/return_fasta_subsection_of_this_file.rb +11 -2
  79. data/lib/bioroebe/fasta_and_fastq/show_fasta_headers.rb +27 -12
  80. data/lib/bioroebe/fasta_and_fastq/simplify_fasta_header/simplify_fasta_header.rb +1 -5
  81. data/lib/bioroebe/fasta_and_fastq/split_this_fasta_file_into_chromosomes/constants.rb +0 -5
  82. data/lib/bioroebe/genome/README.md +4 -0
  83. data/lib/bioroebe/genome/genome.rb +130 -0
  84. data/lib/bioroebe/genomes/genome_pattern.rb +3 -9
  85. data/lib/bioroebe/gui/gtk +1 -0
  86. data/lib/bioroebe/gui/gtk3/alignment/alignment.rb +106 -137
  87. data/lib/bioroebe/gui/gtk3/aminoacid_composition/aminoacid_composition.rb +27 -61
  88. data/lib/bioroebe/gui/gtk3/aminoacid_composition/customized_dialog.rb +1 -1
  89. data/lib/bioroebe/gui/gtk3/blosum_matrix_viewer/blosum_matrix_viewer.rb +1 -2
  90. data/lib/bioroebe/gui/gtk3/calculate_cell_numbers_of_bacteria/calculate_cell_numbers_of_bacteria.rb +1 -2
  91. data/lib/bioroebe/gui/gtk3/controller/controller.rb +46 -29
  92. data/lib/bioroebe/gui/gtk3/dna_to_aminoacid_widget/dna_to_aminoacid_widget.rb +77 -52
  93. data/lib/bioroebe/gui/gtk3/dna_to_reverse_complement_widget/dna_to_reverse_complement_widget.rb +1 -2
  94. data/lib/bioroebe/gui/gtk3/fasta_table_widget/fasta_table_widget.rb +100 -23
  95. data/lib/bioroebe/gui/gtk3/format_converter/format_converter.rb +1 -2
  96. data/lib/bioroebe/gui/gtk3/gene/gene.rb +1 -2
  97. data/lib/bioroebe/gui/gtk3/hamming_distance/hamming_distance.rb +43 -30
  98. data/lib/bioroebe/gui/gtk3/levensthein_distance/levensthein_distance.rb +1 -2
  99. data/lib/bioroebe/gui/gtk3/nucleotide_analyser/nucleotide_analyser.rb +120 -73
  100. data/lib/bioroebe/gui/gtk3/primer_design_widget/primer_design_widget.rb +1 -2
  101. data/lib/bioroebe/gui/gtk3/protein_to_DNA/protein_to_DNA.rb +19 -20
  102. data/lib/bioroebe/gui/gtk3/random_sequence/random_sequence.rb +20 -13
  103. data/lib/bioroebe/gui/gtk3/restriction_enzymes/restriction_enzymes.rb +1 -2
  104. data/lib/bioroebe/gui/gtk3/show_codon_table/misc.rb +97 -22
  105. data/lib/bioroebe/gui/gtk3/show_codon_table/show_codon_table.rb +3 -73
  106. data/lib/bioroebe/gui/gtk3/show_codon_usage/show_codon_usage.rb +1 -2
  107. data/lib/bioroebe/gui/gtk3/sizeseq/sizeseq.rb +1 -2
  108. data/lib/bioroebe/gui/gtk3/three_to_one/three_to_one.rb +1 -2
  109. data/lib/bioroebe/gui/gtk3/www_finder/www_finder.rb +1 -2
  110. data/lib/bioroebe/gui/javafx/bioroebe/Bioroebe.class +0 -0
  111. data/lib/bioroebe/gui/javafx/bioroebe/Bioroebe.java +104 -0
  112. data/lib/bioroebe/gui/javafx/bioroebe.jar +0 -0
  113. data/lib/bioroebe/gui/javafx/bioroebe.mf +1 -0
  114. data/lib/bioroebe/gui/javafx/module-info.class +0 -0
  115. data/lib/bioroebe/gui/javafx/module-info.java +5 -0
  116. data/lib/bioroebe/gui/jruby/alignment/alignment.rb +165 -0
  117. data/lib/bioroebe/gui/jruby/aminoacid_composition/aminoacid_composition.rb +166 -0
  118. data/lib/bioroebe/gui/libui/alignment/alignment.rb +3 -1
  119. data/lib/bioroebe/gui/libui/controller/controller.rb +116 -0
  120. data/lib/bioroebe/gui/libui/random_sequence/random_sequence.rb +18 -2
  121. data/lib/bioroebe/gui/libui/show_codon_table/show_codon_table.rb +2 -0
  122. data/lib/bioroebe/gui/libui/three_to_one/three_to_one.rb +8 -6
  123. data/lib/bioroebe/gui/shared_code/alignment/alignment_module.rb +102 -0
  124. data/lib/bioroebe/gui/shared_code/aminoacid_composition/aminoacid_composition_module.rb +94 -0
  125. data/lib/bioroebe/gui/shared_code/levensthein_distance/levensthein_distance_module.rb +18 -16
  126. data/lib/bioroebe/gui/shared_code/protein_to_DNA/protein_to_DNA_module.rb +14 -14
  127. data/lib/bioroebe/gui/swing/three_to_one/ThreeToOne$1.class +0 -0
  128. data/lib/bioroebe/gui/swing/three_to_one/ThreeToOne$CloseListener.class +0 -0
  129. data/lib/bioroebe/gui/swing/three_to_one/ThreeToOne.class +0 -0
  130. data/lib/bioroebe/gui/swing/three_to_one/ThreeToOne.java +141 -0
  131. data/lib/bioroebe/images/FORWARD_PRIMER.png +0 -0
  132. data/lib/bioroebe/images/REVERSE_PRIMER.png +0 -0
  133. data/lib/bioroebe/images/images.html +29845 -0
  134. data/lib/bioroebe/java/README.md +5 -0
  135. data/lib/bioroebe/java/bioroebe/AllInOne.java +1 -0
  136. data/lib/bioroebe/java/bioroebe/Base.class +0 -0
  137. data/lib/bioroebe/java/bioroebe/Base.java +39 -5
  138. data/lib/bioroebe/java/bioroebe/IsPalindrome.java +23 -5
  139. data/lib/bioroebe/java/bioroebe/SanitizeNucleotideSequence.java +0 -0
  140. data/lib/bioroebe/java/bioroebe/Sequence.java +28 -3
  141. data/lib/bioroebe/java/bioroebe/ToCamelcase.class +0 -0
  142. data/lib/bioroebe/java/bioroebe/ToCamelcase.java +16 -4
  143. data/lib/bioroebe/java/bioroebe/ToRNA.java +43 -0
  144. data/lib/bioroebe/java/bioroebe/ToplevelMethods.java +6 -0
  145. data/lib/bioroebe/java/bioroebe/{BisulfiteTreatment.class → src/BisulfiteTreatment.class} +0 -0
  146. data/lib/bioroebe/java/bioroebe/{Codons.class → src/Codons.class} +0 -0
  147. data/lib/bioroebe/java/bioroebe/src/Codons.java +35 -0
  148. data/lib/bioroebe/java/bioroebe/src/Commandline.class +0 -0
  149. data/lib/bioroebe/java/bioroebe/src/Commandline.java +101 -0
  150. data/lib/bioroebe/java/bioroebe/{Esystem.class → src/Esystem.class} +0 -0
  151. data/lib/bioroebe/java/bioroebe/{Esystem.java → src/Esystem.java} +6 -1
  152. data/lib/bioroebe/java/bioroebe/{GenerateRandomDnaSequence.class → src/GenerateRandomDnaSequence.class} +0 -0
  153. data/lib/bioroebe/java/bioroebe/{GenerateRandomDnaSequence.java → src/GenerateRandomDnaSequence.java} +8 -2
  154. data/lib/bioroebe/java/bioroebe/src/PartnerNucleotide.class +0 -0
  155. data/lib/bioroebe/java/bioroebe/src/PartnerNucleotide.java +56 -0
  156. data/lib/bioroebe/java/bioroebe/{RemoveFile.java → src/RemoveFile.java} +10 -4
  157. data/lib/bioroebe/java/bioroebe/{RemoveNumbers.class → src/RemoveNumbers.class} +0 -0
  158. data/lib/bioroebe/java/bioroebe/{RemoveNumbers.java → src/RemoveNumbers.java} +1 -0
  159. data/lib/bioroebe/java/bioroebe/src/toplevel_methods/BaseComposition.class +0 -0
  160. data/lib/bioroebe/java/bioroebe/src/toplevel_methods/BaseComposition.java +75 -0
  161. data/lib/bioroebe/misc/ruler.rb +11 -2
  162. data/lib/bioroebe/nucleotides/most_likely_nucleotide_sequence_for_this_aminoacid_sequence.rb +1 -9
  163. data/lib/bioroebe/nucleotides/sanitize_nucleotide_sequence.rb +59 -18
  164. data/lib/bioroebe/nucleotides/show_nucleotide_sequence.rb +7 -7
  165. data/lib/bioroebe/parsers/genbank_parser.rb +347 -26
  166. data/lib/bioroebe/parsers/gff.rb +1 -9
  167. data/lib/bioroebe/patterns/scan_for_repeat.rb +1 -5
  168. data/lib/bioroebe/pdb/fetch_fasta_sequence_from_pdb.rb +1 -9
  169. data/lib/bioroebe/pdb/parse_mmCIF_file.rb +1 -9
  170. data/lib/bioroebe/pdb/parse_pdb_file.rb +4 -10
  171. data/lib/bioroebe/project/project.rb +1 -1
  172. data/lib/bioroebe/python/README.md +1 -0
  173. data/lib/bioroebe/python/__pycache__/mymodule.cpython-39.pyc +0 -0
  174. data/lib/bioroebe/python/gui/gtk3/all_in_one.css +4 -0
  175. data/lib/bioroebe/python/gui/gtk3/all_in_one.py +59 -0
  176. data/lib/bioroebe/python/gui/gtk3/widget1.py +20 -0
  177. data/lib/bioroebe/python/gui/tkinter/all_in_one.py +91 -0
  178. data/lib/bioroebe/python/mymodule.py +8 -0
  179. data/lib/bioroebe/python/protein_to_dna.py +33 -0
  180. data/lib/bioroebe/python/shell/shell.py +19 -0
  181. data/lib/bioroebe/python/to_rna.py +14 -0
  182. data/lib/bioroebe/python/toplevel_methods/convert_dna_to_aminoacid_sequence.py +137 -0
  183. data/lib/bioroebe/python/toplevel_methods/esystem.py +12 -0
  184. data/lib/bioroebe/python/toplevel_methods/open_in_browser.py +20 -0
  185. data/lib/bioroebe/python/toplevel_methods/palindromes.py +52 -0
  186. data/lib/bioroebe/python/toplevel_methods/rds.py +13 -0
  187. data/lib/bioroebe/python/toplevel_methods/shuffleseq.py +23 -0
  188. data/lib/bioroebe/python/toplevel_methods/three_delimiter.py +37 -0
  189. data/lib/bioroebe/python/toplevel_methods/time_and_date.py +43 -0
  190. data/lib/bioroebe/python/toplevel_methods/to_camelcase.py +21 -0
  191. data/lib/bioroebe/requires/require_cleave_and_digest.rb +3 -1
  192. data/lib/bioroebe/requires/require_the_bioroebe_project.rb +3 -1
  193. data/lib/bioroebe/sequence/alignment.rb +14 -4
  194. data/lib/bioroebe/sequence/dna.rb +1 -0
  195. data/lib/bioroebe/sequence/nucleotide_module/nucleotide_module.rb +28 -25
  196. data/lib/bioroebe/sequence/protein.rb +105 -3
  197. data/lib/bioroebe/sequence/rna.rb +220 -0
  198. data/lib/bioroebe/sequence/sequence.rb +128 -40
  199. data/lib/bioroebe/shell/menu.rb +3815 -3696
  200. data/lib/bioroebe/shell/misc.rb +9019 -3133
  201. data/lib/bioroebe/shell/readline/readline.rb +1 -1
  202. data/lib/bioroebe/shell/shell.rb +1137 -28
  203. data/lib/bioroebe/siRNA/siRNA.rb +81 -1
  204. data/lib/bioroebe/string_matching/find_longest_substring.rb +3 -2
  205. data/lib/bioroebe/string_matching/hamming_distance.rb +1 -9
  206. data/lib/bioroebe/taxonomy/class_methods.rb +3 -8
  207. data/lib/bioroebe/taxonomy/constants.rb +4 -3
  208. data/lib/bioroebe/taxonomy/edit.rb +2 -1
  209. data/lib/bioroebe/taxonomy/help/help.rb +10 -10
  210. data/lib/bioroebe/taxonomy/help/helpline.rb +2 -2
  211. data/lib/bioroebe/taxonomy/info/check_available.rb +15 -9
  212. data/lib/bioroebe/taxonomy/info/info.rb +18 -11
  213. data/lib/bioroebe/taxonomy/info/is_dna.rb +46 -36
  214. data/lib/bioroebe/taxonomy/interactive.rb +140 -104
  215. data/lib/bioroebe/taxonomy/menu.rb +27 -18
  216. data/lib/bioroebe/taxonomy/parse_fasta.rb +3 -1
  217. data/lib/bioroebe/taxonomy/shared.rb +1 -0
  218. data/lib/bioroebe/taxonomy/taxonomy.rb +1 -0
  219. data/lib/bioroebe/toplevel_methods/aminoacids_and_proteins.rb +31 -24
  220. data/lib/bioroebe/toplevel_methods/colourize_related_methods.rb +164 -0
  221. data/lib/bioroebe/toplevel_methods/databases.rb +1 -1
  222. data/lib/bioroebe/toplevel_methods/digest.rb +18 -8
  223. data/lib/bioroebe/toplevel_methods/fasta_and_fastq.rb +107 -63
  224. data/lib/bioroebe/toplevel_methods/file_and_directory_related_actions.rb +14 -2
  225. data/lib/bioroebe/toplevel_methods/frequencies.rb +8 -1
  226. data/lib/bioroebe/toplevel_methods/misc.rb +175 -11
  227. data/lib/bioroebe/toplevel_methods/nucleotides.rb +118 -46
  228. data/lib/bioroebe/toplevel_methods/open_in_browser.rb +2 -0
  229. data/lib/bioroebe/toplevel_methods/palindromes.rb +75 -47
  230. data/lib/bioroebe/toplevel_methods/taxonomy.rb +3 -3
  231. data/lib/bioroebe/toplevel_methods/to_camelcase.rb +5 -0
  232. data/lib/bioroebe/utility_scripts/align_open_reading_frames.rb +1 -9
  233. data/lib/bioroebe/utility_scripts/check_for_mismatches/check_for_mismatches.rb +1 -9
  234. data/lib/bioroebe/utility_scripts/compacter/compacter.rb +251 -0
  235. data/lib/bioroebe/utility_scripts/compseq/compseq.rb +1 -9
  236. data/lib/bioroebe/utility_scripts/consensus_sequence.rb +6 -6
  237. data/lib/bioroebe/utility_scripts/create_batch_entrez_file.rb +1 -9
  238. data/lib/bioroebe/utility_scripts/dot_alignment.rb +1 -9
  239. data/lib/bioroebe/utility_scripts/move_file_to_its_correct_location.rb +1 -4
  240. data/lib/bioroebe/utility_scripts/parse_taxonomy.rb +2 -2
  241. data/lib/bioroebe/utility_scripts/permutations.rb +36 -9
  242. data/lib/bioroebe/utility_scripts/showorf/constants.rb +0 -5
  243. data/lib/bioroebe/utility_scripts/showorf/reset.rb +1 -4
  244. data/lib/bioroebe/version/version.rb +2 -2
  245. data/lib/bioroebe/www/embeddable_interface.rb +121 -58
  246. data/lib/bioroebe/www/sinatra/sinatra.rb +186 -71
  247. data/lib/bioroebe/yaml/aminoacids/amino_acids_long_name_to_one_letter.yml +2 -2
  248. data/lib/bioroebe/yaml/aminoacids/weight_of_common_proteins.yml +17 -17
  249. data/lib/bioroebe/yaml/configuration/browser.yml +1 -1
  250. data/lib/bioroebe/yaml/configuration/temp_dir.yml +1 -1
  251. data/lib/bioroebe/yaml/consensus_sequences/consensus_sequences.yml +1 -0
  252. data/lib/bioroebe/yaml/genomes/README.md +3 -4
  253. data/lib/bioroebe/yaml/nucleotides/nucleotides.yml +5 -0
  254. data/lib/bioroebe/yaml/restriction_enzymes/restriction_enzymes.yml +57 -57
  255. data/spec/README.md +6 -0
  256. data/spec/project_wide_specification/classes.md +5 -0
  257. metadata +107 -70
  258. data/doc/setup.rb +0 -1655
  259. data/lib/bioroebe/fasta_and_fastq/parse_fasta/constants.rb +0 -50
  260. data/lib/bioroebe/fasta_and_fastq/parse_fasta/initialize.rb +0 -86
  261. data/lib/bioroebe/fasta_and_fastq/parse_fasta/menu.rb +0 -117
  262. data/lib/bioroebe/fasta_and_fastq/parse_fasta/misc.rb +0 -981
  263. data/lib/bioroebe/fasta_and_fastq/parse_fasta/report.rb +0 -156
  264. data/lib/bioroebe/fasta_and_fastq/parse_fasta/reset.rb +0 -128
  265. data/lib/bioroebe/genbank/genbank_parser.rb +0 -291
  266. data/lib/bioroebe/java/bioroebe/AllInOne.class +0 -0
  267. data/lib/bioroebe/java/bioroebe/Cat.class +0 -0
  268. data/lib/bioroebe/java/bioroebe/Codons.java +0 -22
  269. data/lib/bioroebe/java/bioroebe/IsPalindrome.class +0 -0
  270. data/lib/bioroebe/java/bioroebe/PartnerNucleotide.class +0 -0
  271. data/lib/bioroebe/java/bioroebe/PartnerNucleotide.java +0 -19
  272. data/lib/bioroebe/java/bioroebe/SanitizeNucleotideSequence.class +0 -0
  273. data/lib/bioroebe/java/bioroebe/ToplevelMethods.class +0 -0
  274. data/lib/bioroebe/java/bioroebe.jar +0 -0
  275. data/lib/bioroebe/shell/add.rb +0 -108
  276. data/lib/bioroebe/shell/assign.rb +0 -360
  277. data/lib/bioroebe/shell/chop_and_cut.rb +0 -281
  278. data/lib/bioroebe/shell/constants.rb +0 -166
  279. data/lib/bioroebe/shell/download.rb +0 -335
  280. data/lib/bioroebe/shell/enable_and_disable.rb +0 -158
  281. data/lib/bioroebe/shell/enzymes.rb +0 -310
  282. data/lib/bioroebe/shell/fasta.rb +0 -345
  283. data/lib/bioroebe/shell/gtk.rb +0 -76
  284. data/lib/bioroebe/shell/history.rb +0 -132
  285. data/lib/bioroebe/shell/initialize.rb +0 -217
  286. data/lib/bioroebe/shell/loop.rb +0 -74
  287. data/lib/bioroebe/shell/prompt.rb +0 -107
  288. data/lib/bioroebe/shell/random.rb +0 -289
  289. data/lib/bioroebe/shell/reset.rb +0 -335
  290. data/lib/bioroebe/shell/scan_and_parse.rb +0 -135
  291. data/lib/bioroebe/shell/search.rb +0 -337
  292. data/lib/bioroebe/shell/sequences.rb +0 -200
  293. data/lib/bioroebe/shell/show_report_and_display.rb +0 -2901
  294. data/lib/bioroebe/shell/startup.rb +0 -127
  295. data/lib/bioroebe/shell/taxonomy.rb +0 -14
  296. data/lib/bioroebe/shell/tk.rb +0 -23
  297. data/lib/bioroebe/shell/user_input.rb +0 -88
  298. data/lib/bioroebe/shell/xorg.rb +0 -45
  299. data/lib/bioroebe/utility_scripts/compacter.rb +0 -131
  300. /data/lib/bioroebe/java/bioroebe/{BisulfiteTreatment.java → src/BisulfiteTreatment.java} +0 -0
  301. /data/lib/bioroebe/java/bioroebe/{RemoveFile.class → src/RemoveFile.class} +0 -0
@@ -0,0 +1,165 @@
1
+ include Java
2
+
3
+ java_import javax.swing.JButton
4
+ java_import javax.swing.JFrame
5
+ java_import javax.swing.JLabel
6
+ java_import javax.swing.JPanel
7
+ java_import javax.swing.JTextArea
8
+ java_import javax.swing.JScrollBar
9
+ java_import javax.swing.JTextField
10
+ java_import javax.swing.JSpinner
11
+ java_import javax.swing.SpinnerNumberModel
12
+ java_import javax.swing.border.Border;
13
+ java_import java.lang.System
14
+ java_import java.awt.Font
15
+
16
+ module Bioroebe
17
+
18
+ module GUI
19
+
20
+ module Jruby
21
+
22
+ class Alignment < JFrame
23
+
24
+ require 'bioroebe/gui/shared_code/alignment/alignment_module.rb'
25
+ include Bioroebe::GUI::AlignmentModule
26
+
27
+ include ::Colours
28
+
29
+ require 'swing_paradise/awt/color.rb'
30
+ include SwingParadise::AWT
31
+
32
+ require 'swing_paradise/toplevel_methods/misc.rb'
33
+ include SwingParadise
34
+
35
+ require 'simple_widgets/simple_widgets.rb'
36
+ include SimpleWidgets
37
+ SimpleWidgets.use :jruby
38
+
39
+ # ========================================================================= #
40
+ # === LARGE_FONT
41
+ # ========================================================================= #
42
+ LARGE_FONT = Font.new('Sans serif', Font::PLAIN, 28)
43
+
44
+ # ========================================================================= #
45
+ # === MEDIUM_FONT
46
+ # ========================================================================= #
47
+ MEDIUM_FONT = Font.new('Sans serif', Font::PLAIN, 25)
48
+
49
+ # ========================================================================= #
50
+ # === MEDIUM_FONT_MONOSPACE
51
+ # ========================================================================= #
52
+ MEDIUM_FONT_MONOSPACE = Font.new('Monospace', Font::PLAIN, 25)
53
+
54
+ # ========================================================================= #
55
+ # === SMALL_FONT
56
+ # ========================================================================= #
57
+ SMALL_FONT = Font.new('Sans serif', Font::PLAIN, 22)
58
+
59
+ # ========================================================================= #
60
+ # === initialize
61
+ # ========================================================================= #
62
+ def initialize(
63
+ run_already = true
64
+ )
65
+ reset
66
+ run if run_already
67
+ end
68
+
69
+ # ========================================================================= #
70
+ # === reset (reset tag)
71
+ # ========================================================================= #
72
+ def reset
73
+ reset_the_internal_variables
74
+ reset_the_alignment_object
75
+ # reset_the_shared_module
76
+ end
77
+
78
+ # ========================================================================= #
79
+ # === run
80
+ # ========================================================================= #
81
+ def run
82
+ frame = jframe(TITLE)
83
+ panel = JPanel.new # This is an instance of Java::JavaxSwing::JPanel.
84
+ panel.set_font(MEDIUM_FONT)
85
+ frame.getContentPane.add(panel)
86
+ panel.no_layout
87
+ panel.hint = 'A Panel container'
88
+
89
+ label1 = jlabel(TEXT_INPUT_THE_SEQUENCES)
90
+ label1.font = MEDIUM_FONT
91
+ label1.setBounds(5, 20, 820, 25) # x, y, width, height
92
+
93
+ # ======================================================================= #
94
+ # Add the text-area next.
95
+ # ======================================================================= #
96
+ @text_view = JTextArea.new
97
+ @text_view.font = SMALL_FONT
98
+
99
+ @text_view.setBorder(javax.swing.BorderFactory.createLineBorder(Color.black, 2))
100
+ @text_view.setBounds(10, 60, 720, 400) # x, y, width, height
101
+ @text_view.background = WHITE
102
+
103
+ # ======================================================================= #
104
+ # === @entry_consensus_sequence
105
+ # ======================================================================= #
106
+ @entry_consensus_sequence = JTextField.new
107
+ @entry_consensus_sequence.center if @entry_consensus_sequence.respond_to?(:center)
108
+ @entry_consensus_sequence.setBounds(10, 460, 720, 40) # x, y, width, height
109
+ @entry_consensus_sequence.font = MEDIUM_FONT_MONOSPACE
110
+ @entry_numbers = JTextField.new
111
+ @entry_numbers.setBounds(10, 500, 720, 40) # x, y, width, height
112
+ @entry_numbers.font = MEDIUM_FONT_MONOSPACE
113
+
114
+ create_the_buttons
115
+ panel << label1
116
+ panel << @text_view
117
+ panel << @entry_consensus_sequence
118
+ panel << @entry_numbers
119
+ panel << @button_do_analyse
120
+ panel << @button_quit
121
+
122
+ frame.exit_on_close
123
+ frame.width_height = 1200, 900
124
+ frame.top_left
125
+ frame.show_all
126
+ end
127
+
128
+ # ========================================================================= #
129
+ # === create_the_buttons (buttons tag)
130
+ # ========================================================================= #
131
+ def create_the_buttons
132
+ # ======================================================================= #
133
+ # === @button_quit
134
+ # ======================================================================= #
135
+ @button_quit = quit_button
136
+ @button_quit.setBounds(130, 650, 300, 50)
137
+ @button_quit.hint = 'Click this button to quit the application.'
138
+ @button_quit.on_clicked {
139
+ do_quit
140
+ }
141
+ @button_do_analyse = button('Do analyse')
142
+ @button_do_analyse.setBounds(130, 600, 300, 44)
143
+ @button_do_analyse.on_clicked {
144
+ do_analyse
145
+ realign_the_numbers_showing_how_long_the_consensus_sequence_is
146
+ }
147
+ end
148
+
149
+ # ========================================================================= #
150
+ # === do_analyse
151
+ # ========================================================================= #
152
+ def do_analyse(
153
+ _ = @text_view.text?
154
+ )
155
+ _.strip!
156
+ @alignment.use_this_as_input(_)
157
+ consensus_sequence = return_the_consensus_sequence
158
+ @entry_consensus_sequence.set_text(consensus_sequence)
159
+ end
160
+
161
+ end; end; end; end
162
+
163
+ if __FILE__ == $PROGRAM_NAME
164
+ Bioroebe::GUI::Jruby::Alignment.new
165
+ end
@@ -0,0 +1,166 @@
1
+ include Java
2
+
3
+ java_import javax.swing.JButton
4
+ java_import javax.swing.JFrame
5
+ java_import javax.swing.JLabel
6
+ java_import javax.swing.JPanel
7
+ java_import javax.swing.JTextArea
8
+ java_import javax.swing.JScrollBar
9
+ java_import javax.swing.JTextField
10
+ java_import javax.swing.JSpinner
11
+ java_import javax.swing.SpinnerNumberModel
12
+ java_import javax.swing.border.Border;
13
+ java_import java.lang.System
14
+ java_import java.awt.Font
15
+
16
+ module Bioroebe
17
+
18
+ module GUI
19
+
20
+ module Jruby
21
+
22
+ class AminoacidComposition < JFrame
23
+
24
+ require 'bioroebe/gui/shared_code/aminoacid_composition/aminoacid_composition_module.rb'
25
+ include Bioroebe::GUI::AminoacidCompositionModule
26
+
27
+ include ::Colours
28
+
29
+ require 'swing_paradise/awt/color.rb'
30
+ include SwingParadise::AWT
31
+
32
+ require 'swing_paradise/toplevel_methods/misc.rb'
33
+ include SwingParadise
34
+ extend SwingParadise
35
+
36
+ require 'simple_widgets/simple_widgets.rb'
37
+ include SimpleWidgets
38
+ SimpleWidgets.use :jruby
39
+
40
+ # ========================================================================= #
41
+ # === LARGE_FONT
42
+ # ========================================================================= #
43
+ LARGE_FONT = jruby_font('Sans serif 28')
44
+
45
+ # ========================================================================= #
46
+ # === MEDIUM_FONT
47
+ # ========================================================================= #
48
+ MEDIUM_FONT = jruby_font('Sans serif 25')
49
+
50
+ # ========================================================================= #
51
+ # === MEDIUM_FONT_MONOSPACE
52
+ # ========================================================================= #
53
+ MEDIUM_FONT_MONOSPACE = jruby_font('Monospace 25')
54
+
55
+ # ========================================================================= #
56
+ # === SMALL_FONT
57
+ # ========================================================================= #
58
+ SMALL_FONT = jruby_font('Sans serif 22')
59
+
60
+ # ========================================================================= #
61
+ # === initialize
62
+ # ========================================================================= #
63
+ def initialize(
64
+ run_already = true
65
+ )
66
+ reset
67
+ run if run_already
68
+ end
69
+
70
+ # ========================================================================= #
71
+ # === reset (reset tag)
72
+ # ========================================================================= #
73
+ def reset
74
+ reset_the_internal_variables
75
+ end
76
+
77
+ # ========================================================================= #
78
+ # === run
79
+ # ========================================================================= #
80
+ def run
81
+ frame = jframe(TITLE)
82
+ panel = JPanel.new # This is an instance of Java::JavaxSwing::JPanel.
83
+ panel.set_font(MEDIUM_FONT)
84
+ frame.getContentPane.add(panel)
85
+ panel.no_layout
86
+ panel.hint = 'A Panel container'
87
+
88
+ label1 = jlabel(TITLE)
89
+ label1.font = MEDIUM_FONT
90
+ label1.setBounds(5, 20, 820, 25) # x, y, width, height
91
+
92
+ # ======================================================================= #
93
+ # Add the text-area next.
94
+ # ======================================================================= #
95
+ @text_view = JTextArea.new
96
+ @text_view.font = SMALL_FONT
97
+ @text_view.setBorder(javax.swing.BorderFactory.createLineBorder(Color.black, 2))
98
+ @text_view.setBounds(10, 110, 720, 400) # x, y, width, height
99
+ @text_view.background = WHITE
100
+
101
+ # ======================================================================= #
102
+ # === @entry_user_input
103
+ # ======================================================================= #
104
+ @entry_user_input = JTextField.new
105
+ @entry_user_input.setBounds(10, 65, 720, 35) # x, y, width, height
106
+ @entry_user_input.font = MEDIUM_FONT_MONOSPACE
107
+ @entry_user_input.background = LIGHT_YELLOW
108
+
109
+ @entry_user_input.addKeyListener {|event|
110
+ # char = event.key_char.chr.to_s
111
+ @entry_user_input.set_text(@entry_user_input.text?.upcase) # Upcase it.
112
+ update_the_label_n_aminoacids
113
+ }
114
+ @label_n_aminoacids = text('ABC')
115
+ @label_n_aminoacids.font = MEDIUM_FONT_MONOSPACE
116
+ update_the_label_n_aminoacids
117
+ @label_n_aminoacids.setBounds(770, 65, 450, 35) # x, y, width, height
118
+ create_the_buttons
119
+ panel << label1
120
+ panel << @text_view
121
+ panel << @entry_user_input
122
+ panel << @label_n_aminoacids
123
+ panel << @button_do_analyse
124
+ panel << @button_quit
125
+
126
+ frame.exit_on_close
127
+ frame.width_height = 1400, 900
128
+ frame.top_left
129
+ frame.show_all
130
+ end
131
+
132
+ # ========================================================================= #
133
+ # === create_the_buttons (buttons tag)
134
+ # ========================================================================= #
135
+ def create_the_buttons
136
+ # ======================================================================= #
137
+ # === @button_quit
138
+ # ======================================================================= #
139
+ @button_quit = quit_button
140
+ @button_quit.setBounds(130, 650, 300, 50)
141
+ @button_quit.hint = 'Click this button to quit the application.'
142
+ @button_quit.on_clicked {
143
+ do_quit
144
+ }
145
+ @button_do_analyse = button('Do analyse')
146
+ @button_do_analyse.setBounds(130, 600, 300, 44)
147
+ @button_do_analyse.on_clicked {
148
+ do_xyz
149
+ update_the_label_n_aminoacids
150
+ }
151
+ end
152
+
153
+ # ========================================================================= #
154
+ # === update_the_label_n_aminoacids
155
+ # ========================================================================= #
156
+ def update_the_label_n_aminoacids
157
+ @label_n_aminoacids.set_text(
158
+ return_how_many_aminoacids_are_in_the_sequence
159
+ )
160
+ end
161
+
162
+ end; end; end; end
163
+
164
+ if __FILE__ == $PROGRAM_NAME
165
+ Bioroebe::GUI::Jruby::AminoacidComposition.new
166
+ end
@@ -4,6 +4,8 @@
4
4
  # =========================================================================== #
5
5
  # === Bioroebe::GUI::LibUI::Alignment
6
6
  # =========================================================================== #
7
+ # require 'bioroebe/gui/libui/alignment/alignment.rb'
8
+ # =========================================================================== #
7
9
  require 'bioroebe/constants/GUIs.rb'
8
10
 
9
11
  module Bioroebe
@@ -79,7 +81,6 @@ module Alignment # === Bioroebe::GUI::LibUI::Alignment
79
81
  @button_do_analyse.on_clicked {
80
82
  do_analyse
81
83
  }
82
-
83
84
  outer_vbox << @button_do_analyse
84
85
  outer_vbox << @entry_consensus_sequence
85
86
  main_window.child = outer_vbox
@@ -105,6 +106,7 @@ module Alignment # === Bioroebe::GUI::LibUI::Alignment
105
106
  object = Object.new
106
107
  object.extend(Alignment)
107
108
  object.reset_then_run
109
+ return object
108
110
  end
109
111
 
110
112
  end; end; end; end
@@ -0,0 +1,116 @@
1
+ #!/usr/bin/ruby -w
2
+ # Encoding: UTF-8
3
+ # frozen_string_literal: true
4
+ # =========================================================================== #
5
+ # === LibuiParadise::GUI::LibUI::Prototype
6
+ # =========================================================================== #
7
+ module LibuiParadise
8
+
9
+ module GUI
10
+
11
+ module LibUI
12
+
13
+ class Prototype # === LibuiParadise::GUI::LibUI::Prototype
14
+
15
+ require 'libui_paradise/extensions/extensions.rb'
16
+ include LibuiParadise::Extensions
17
+
18
+ require 'bioroebe/gui/libui/alignment/alignment.rb'
19
+
20
+ # ========================================================================= #
21
+ # === TITLE
22
+ # ========================================================================= #
23
+ TITLE = 'A prototype for LibUI'
24
+
25
+ # ========================================================================= #
26
+ # === WIDTH
27
+ # ========================================================================= #
28
+ WIDTH = 680
29
+
30
+ # ========================================================================= #
31
+ # === HEIGHT
32
+ # ========================================================================= #
33
+ HEIGHT = 520
34
+
35
+ # ========================================================================= #
36
+ # === initialize
37
+ # ========================================================================= #
38
+ def initialize(
39
+ run_already = true
40
+ )
41
+ reset
42
+ run if run_already
43
+ end
44
+
45
+ # ========================================================================= #
46
+ # === reset (reset tag)
47
+ # ========================================================================= #
48
+ def reset
49
+ title_width_height(TITLE, WIDTH, HEIGHT)
50
+ end
51
+
52
+ # ========================================================================= #
53
+ # === create_skeleton (create tag, skeleton tag)
54
+ # ========================================================================= #
55
+ def create_skeleton
56
+ # ======================================================================= #
57
+ # === @window
58
+ # ======================================================================= #
59
+ @window = ui_padded_main_window(title?, width?, height?, 0)
60
+ end
61
+
62
+ # ========================================================================= #
63
+ # === run
64
+ # ========================================================================= #
65
+ def run
66
+ create_skeleton_then_connect_skeleton
67
+ outer_vbox = padded_vbox
68
+ # ======================================================================= #
69
+ # First add the two buttons on top:
70
+ # ======================================================================= #
71
+ hbox_on_top = padded_hbox
72
+ button_refresh = ui_button('Refresh')
73
+ button_refresh.on_clicked {
74
+ e 'TODO: Refresh this ... or add any other functionality.'
75
+ }
76
+ hbox_on_top.maximal(button_refresh)
77
+ hbox_on_top.maximal(quit_button)
78
+ tab = LibuiParadise.tab
79
+ outer_vbox.maximal(tab)
80
+ outer_vbox.minimal(hbox_on_top)
81
+ outer_vbox.add_hsep
82
+
83
+ grid = ui_padded_grid
84
+ # widget, left, top, xspan, yspan, hexpand, halign, vexpand, valign
85
+ grid.ui_grid_append(text('Left'), 0, 0, 1, 1, 0, 0.5, 1, 0)
86
+ grid.ui_grid_append(text('Right'), 1, 0, 1, 1, 0, 0.5, 1, 0)
87
+
88
+ 3.times.each {|index| index += 1
89
+ # ===================================================================== #
90
+ # left, top, xspan, yspan, hexpand, halign, vexpand, valign
91
+ # 0, 0, 2, 1, 0, 0, 1, 0
92
+ # ===================================================================== #
93
+ grid.ui_grid_append(text(index.to_s), 0, 1+index, 1, 1, 1, 1, 1, 1)
94
+ label_exam_topic = text(entry.to_s)
95
+ grid.ui_grid_append(label_exam_topic, 1, 1+index, 1, 1, 1, 1, 1, 1)
96
+ }
97
+ outer_vbox.maximal(grid)
98
+
99
+
100
+ hbox2 = create_hbox
101
+
102
+ #alignment = Object.new
103
+ #alignment.extend(Bioroebe::GUI::LibUI::Alignment)
104
+ #alignment.reset_then_run
105
+ #::LibUI.tab_append(tab, 'Page 1', alignment)
106
+ ::LibUI.tab_append(tab, 'Page 2', hbox2)
107
+
108
+ @window.add(outer_vbox)
109
+ @window.intelligent_exit
110
+ end
111
+
112
+ end; end; end; end
113
+
114
+ if __FILE__ == $PROGRAM_NAME
115
+ LibuiParadise::GUI::LibUI::Prototype.new
116
+ end
@@ -55,7 +55,7 @@ module RandomSequence # === Bioroebe::GUI::LibUI::RandomSequence
55
55
  # ========================================================================= #
56
56
  def reset
57
57
  end
58
-
58
+
59
59
  # ========================================================================= #
60
60
  # === create_skeleton (create tag)
61
61
  # ========================================================================= #
@@ -125,6 +125,11 @@ module RandomSequence # === Bioroebe::GUI::LibUI::RandomSequence
125
125
  def do_generate_a_random_sequence_using_the_value_from_the_proper_entry(
126
126
  i = n_aminoacids?
127
127
  )
128
+ i = i.to_i
129
+ if i > 5_000_000
130
+ i = 5_000_000
131
+ set_main_entry(i.to_s)
132
+ end
128
133
  do_generate_a_random_sequence(i)
129
134
  end
130
135
 
@@ -138,7 +143,11 @@ module RandomSequence # === Bioroebe::GUI::LibUI::RandomSequence
138
143
  when nil, :default
139
144
  n_aminoacids = GENERATE_N_AMINOACIDS_BY_DEFAULT
140
145
  end
141
- n_aminoacids = n_aminoacids.to_s
146
+ n_aminoacids = n_aminoacids.to_i
147
+ if n_aminoacids > 5_000_000
148
+ n_aminoacids = 5_000_000
149
+ set_main_entry(n_aminoacids.to_s)
150
+ end
142
151
  use_this_as_the_new_sequence = ::Bioroebe.create_random_aminoacids(n_aminoacids).to_s
143
152
  array1 = ::Bioroebe.return_array_of_common_aminoacids
144
153
  array2 = Bioroebe::CountAmountOfAminoacids.return_composition_hash(use_this_as_the_new_sequence).values.map(&:to_s)
@@ -158,6 +167,13 @@ module RandomSequence # === Bioroebe::GUI::LibUI::RandomSequence
158
167
  @entry_use_this_length.text?.to_s
159
168
  end
160
169
 
170
+ # ========================================================================= #
171
+ # === set_main_entry
172
+ # ========================================================================= #
173
+ def set_main_entry(i)
174
+ @entry_use_this_length.set_text(i.to_s)
175
+ end
176
+
161
177
  # ========================================================================= #
162
178
  # === Bioroebe::GUI::LibUI::RandomSequence.run
163
179
  # ========================================================================= #
@@ -4,6 +4,8 @@
4
4
  # =========================================================================== #
5
5
  # === Bioroebe::GUI::LibUI::ShowCodonTable
6
6
  # =========================================================================== #
7
+ # require 'bioroebe/gui/libui/show_codon_table/show_codon_table.rb'
8
+ # =========================================================================== #
7
9
  require 'bioroebe/constants/GUIs.rb'
8
10
 
9
11
  module Bioroebe
@@ -35,11 +35,10 @@ module ThreeToOne # === Bioroebe::GUI::LibUI::ThreeToOne
35
35
  # === create_skeleton (create tag)
36
36
  # ========================================================================= #
37
37
  def create_skeleton
38
- @entry1 = ui_entry
39
- @entry2 = ui_entry
40
- @checkbox1 = ui_checkbox
41
- @checkbox1.is_active
42
- @checkbox2 = ui_checkbox
38
+ @entry1 = entry
39
+ @entry2 = entry
40
+ @checkbox1 = checked_checkbox
41
+ @checkbox2 = checkbox
43
42
  end
44
43
 
45
44
  # ========================================================================= #
@@ -72,7 +71,7 @@ module ThreeToOne # === Bioroebe::GUI::LibUI::ThreeToOne
72
71
  small_hbox2 << ui_text('1-to-3 conversion')
73
72
  small_hbox2 << @checkbox2
74
73
  vbox_with_checkbuttons << small_hbox2
75
-
74
+ vbox_with_checkbuttons << quit_button
76
75
  bottom_hbox << vbox_with_checkbuttons
77
76
  outer_vbox << bottom_hbox
78
77
  main_window.child = outer_vbox
@@ -92,6 +91,9 @@ module ThreeToOne # === Bioroebe::GUI::LibUI::ThreeToOne
92
91
  else
93
92
  new_result = Bioroebe.one_to_three(i.delete('-')).to_s
94
93
  end
94
+ if new_result and new_result.empty?
95
+ error_msg('No result found. Is it a three-letter aminoacid?')
96
+ end
95
97
  @entry2.set_text(new_result) if new_result and !new_result.empty?
96
98
  end; alias do_the_conversion do_trigger_the_conversion # === do_the_conversion
97
99
 
@@ -0,0 +1,102 @@
1
+ #!/usr/bin/ruby -w
2
+ # Encoding: UTF-8
3
+ # frozen_string_literal: true
4
+ # =========================================================================== #
5
+ # === Bioroebe::GUI::AlignmentModule
6
+ #
7
+ # Usage example:
8
+ #
9
+ # Alignment.new(ARGV)
10
+ #
11
+ # =========================================================================== #
12
+ # require 'bioroebe/gui/shared_code/alignment/alignment_module.rb'
13
+ # include Bioroebe::GUI::AlignmentModule
14
+ # =========================================================================== #
15
+ module Bioroebe
16
+
17
+ module GUI
18
+
19
+ module AlignmentModule # === Bioroebe::GUI::AlignmentModule
20
+
21
+ require 'colours'
22
+ require 'bioroebe/sequence/alignment.rb'
23
+
24
+ # ========================================================================= #
25
+ # === TITLE
26
+ # ========================================================================= #
27
+ TITLE = 'Alignment'
28
+
29
+ # ========================================================================= #
30
+ # === TEXT_INPUT_THE_SEQUENCES
31
+ # ========================================================================= #
32
+ TEXT_INPUT_THE_SEQUENCES = 'Input the sequences that you wish '\
33
+ 'to compare to one another'
34
+
35
+ # ========================================================================= #
36
+ # === WIDTH
37
+ # ========================================================================= #
38
+ WIDTH = '35% or 300px minimum'
39
+
40
+ # ========================================================================= #
41
+ # === HEIGHT
42
+ # ========================================================================= #
43
+ HEIGHT = '45% or 200px minimum'
44
+
45
+ # ========================================================================= #
46
+ # === USE_THIS_FONT
47
+ # ========================================================================= #
48
+ USE_THIS_FONT = :dejavu_condensed_20
49
+
50
+ # ========================================================================= #
51
+ # === FONT_FOR_THE_ENTRIES
52
+ #
53
+ # The entries must use a mono-spaced font.
54
+ # ========================================================================= #
55
+ FONT_FOR_THE_ENTRIES = :hack_20
56
+
57
+ # ========================================================================= #
58
+ # === reset_the_alignment_object
59
+ # ========================================================================= #
60
+ def reset_the_alignment_object
61
+ # ======================================================================= #
62
+ # === @alignment
63
+ # ======================================================================= #
64
+ @alignment = Bioroebe::Alignment.new(nil, :do_not_run_yet)
65
+ end
66
+
67
+ # ========================================================================= #
68
+ # === return_the_consensus_sequence
69
+ # ========================================================================= #
70
+ def return_the_consensus_sequence
71
+ @alignment.consensus_sequence?
72
+ end
73
+
74
+ # ========================================================================= #
75
+ # === text_view_widget?
76
+ # ========================================================================= #
77
+ def text_view_widget?
78
+ @text_view
79
+ end
80
+
81
+ # ========================================================================= #
82
+ # === realign_the_numbers_showing_how_long_the_consensus_sequence_is
83
+ # ========================================================================= #
84
+ def realign_the_numbers_showing_how_long_the_consensus_sequence_is
85
+ @entry_numbers.center if @entry_numbers.respond_to?(:center)
86
+ n_characters = @entry_consensus_sequence.text?.size
87
+ @entry_numbers.set_text(return_fill_up_to(n_characters))
88
+ end
89
+
90
+ # ========================================================================= #
91
+ # === return_fill_up_to
92
+ # ========================================================================= #
93
+ def return_fill_up_to(i)
94
+ _ = ''.dup
95
+ i.times {|counter|
96
+ counter = (counter+1) % 10
97
+ _ << counter.to_s
98
+ }
99
+ return _
100
+ end
101
+
102
+ end; end; end