Method: TiogaUI#initialize

Defined in:
lib/Tioga/tioga_ui_cmds.rb

#initialize(args, just_setup = false) ⇒ TiogaUI

Returns a new instance of TiogaUI.



370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
# File 'lib/Tioga/tioga_ui_cmds.rb', line 370

def initialize(args, just_setup=false)
  
  setup(args)
  
  return if just_setup
  
  if ($tioga_args.length == 0) || ($tioga_args[0] == '-h') || ($tioga_args[0] == '-help')
    show_help(nil,nil)
    return
  end
  
  if ($tioga_args[0] == '-v') || ($tioga_args[0] == '-version') || ($tioga_args[0] == '-V')
    show_version
    return
  end
  
  if $tioga_args.length > 0
    filename = fix_filename($tioga_args[0])
  end
  
  begin
  # currently, we are only supporting command line interface.
  # the code for making a Ruby/Tk interface can be enabled if you want to play with it.
  
  argnum = 1 # the filename is in $tioga_args[0]
  
  # do control commands
  while argnum < $tioga_args.length
    cmd = $tioga_args[argnum]
    argnum = argnum + 1
    if cmd == '-r'
      puts 'require ' + $tioga_args[argnum]
      require $tioga_args[argnum]
      argnum = argnum + 1
    elsif cmd == '-C'
      puts 'chdir to ' + $tioga_args[argnum]
      Dir.chdir($tioga_args[argnum])
      $change_working_directory = false
      argnum = argnum + 1
    elsif cmd == '-v'
      show_version
    else
      argnum = argnum - 1 # backup
      break
    end
  end
  
  setdir_and_load(filename)

  # do the figure command
  
  if argnum == $tioga_args.length
    view_pdf(require_pdf(0))
    return
  end
  
  cmd = $tioga_args[argnum]
  argnum = argnum + 1
  
  if /^-\d+$/ === cmd
    view_pdf(require_pdf(cmd[1..-1].to_i))
  elsif cmd == '-l'
    list_figures
  elsif cmd == '-h' || cmd == '-help'
    show_help(nil,nil)
  elsif (cmd == '-s' || cmd == '-m')
    if argnum == $tioga_args.length
      make_all_pdfs(cmd != '-m')
      return
    end
    do_fignums(parse_figs($tioga_args[argnum]),cmd == '-s')
  elsif cmd == '-p'
    if argnum == $tioga_args.length
      make_portfolio(true)
      return
    end
    make_portfolio(true, parse_figs($tioga_args[argnum]))
  #else # unrecognized command
  #  show_help(filename,cmd)
  end
rescue
end

end