~ubuntu-branches/debian/jessie/arb/jessie

« back to all changes in this revision

Viewing changes to EDIT4/ed4_block.hxx

  • Committer: Package Import Robot
  • Author(s): Elmar Pruesse, Andreas Tille, Elmar Pruesse
  • Date: 2014-09-02 15:15:06 UTC
  • mfrom: (1.1.6)
  • Revision ID: package-import@ubuntu.com-20140902151506-jihq58b3iz342wif
Tags: 6.0.2-1
[ Andreas Tille ]
* New upstream version
  Closes: #741890
* debian/upstream -> debian/upstream/metadata
* debian/control:
   - Build-Depends: added libglib2.0-dev
   - Depends: added mafft, mrbayes
* debian/rules
   - Add explicite --remove-section=.comment option to manual strip call
* cme fix dpkg-control
* arb-common.dirs: Do not create unneeded lintian dir
* Add turkish debconf translation (thanks for the patch to Mert Dirik
  <mertdirik@gmail.com>)
  Closes: #757497

[ Elmar Pruesse ]
* patches removed:
   - 10_config.makefiles.patch,
     80_no_GL.patch
       removed in favor of creating file from config.makefile.template via 
       sed in debian/control
   - 20_Makefile_main.patch
       merged upstream
   - 21_Makefiles.patch
       no longer needed
   - 30_tmpfile_CVE-2008-5378.patch: 
       merged upstream
   - 50_fix_gcc-4.8.patch:
       merged upstream
   - 40_add_libGLU.patch:
       libGLU not needed for arb_ntree)
   - 60_use_debian_packaged_raxml.patch:
       merged upstream
   - 70_hardening.patch
       merged upstream
   - 72_add_math_lib_to_linker.patch
       does not appear to be needed
* patches added:
   - 10_upstream_r12793__show_db_load_progress:
       backported patch showing progress while ARB is loading a database
       (needed as indicator/splash screen while ARB is launching)
   - 20_upstream_r12794__socket_permissions:
       backported security fix
   - 30_upstream_r12814__desktop_keywords:
       backported add keywords to desktop (fixes lintian warning)
   - 40_upstream_r12815__lintian_spelling:
       backported fix for lintian reported spelling errors
   - 50_private_nameservers
       change configuration to put nameservers into users home dirs
       (avoids need for shared writeable directory)
   - 60_use_debian_phyml
       use phyml from debian package for both interfaces in ARB
* debian/rules:
   - create config.makefile from override_dh_configure target
   - use "make tarfile" in override_dh_install
   - remove extra cleaning not needed for ARB 6
   - use "dh_install --list-missing" to avoid missing files
   - added override_dh_fixperms target
* debian/control:
   - added libarb-dev package
   - Depends: added phyml, xdg-utils
   - Suggests: removed phyml
   - fix lintian duplicate-short-description (new descriptions)
* debian/*.install:
   - "unrolled" confusing globbing to select files
   - pick files from debian/tmp
   - moved all config files to /etc/arb
* debian/arb-common.templates: updated
* scripts:
   - removed arb-add-pt-server
   - launch-wrapper: 
     - only add demo.arb to newly created $ARBUSERDATA
     - pass commandline arguments through bin/arb wrapper
   - preinst: removing old PT server index files on upgrade from 5.5*
   - postinst: set setgid on shared PT dir
* rewrote arb.1 manfile
* added file icon for ARB databases
* using upstream arb_tcp.dat

Show diffs side-by-side

added added

removed removed

Lines of Context:
12
12
#ifndef ED4_BLOCK_HXX
13
13
#define ED4_BLOCK_HXX
14
14
 
15
 
typedef enum {
 
15
enum ED4_blocktype {
16
16
    ED4_BT_NOBLOCK,             // nothing is marked
17
17
    ED4_BT_LINEBLOCK,           // all species with EDIT4-marks are marked
18
18
    ED4_BT_COLUMNBLOCK,         // range is marked
19
19
    ED4_BT_MODIFIED_COLUMNBLOCK // was columnblock, but single species were removed/added
20
 
} ED4_blocktype;
 
20
};
21
21
 
22
 
typedef enum {
 
22
enum ED4_blockoperation_type {
23
23
    ED4_BO_UPPER_CASE,
24
24
    ED4_BO_LOWER_CASE,
25
25
    ED4_BO_REVERSE,
26
26
    ED4_BO_COMPLEMENT,
27
27
    ED4_BO_REVERSE_COMPLEMENT,
28
 
    ED4_BO_UNALIGN,
 
28
    ED4_BO_UNALIGN_LEFT,
 
29
    ED4_BO_UNALIGN_CENTER,
29
30
    ED4_BO_UNALIGN_RIGHT,
30
31
    ED4_BO_SHIFT_LEFT,
31
32
    ED4_BO_SHIFT_RIGHT
32
 
} ED4_blockoperation_type;
 
33
};
33
34
 
34
35
ED4_blocktype ED4_getBlocktype();
35
36
void          ED4_setBlocktype(ED4_blocktype bt);
36
37
void          ED4_toggle_block_type();
37
38
void          ED4_correctBlocktypeAfterSelection();
38
39
void          ED4_setColumnblockCorner(AW_event *event, ED4_sequence_terminal *seq_term);
39
 
int           ED4_get_selected_range(ED4_terminal *term, int *first_column, int *last_column);
40
 
 
41
 
typedef char *(*ED4_blockoperation)(const char *sequence_data, int len, int repeat, int *new_len, GB_ERROR *error);
42
 
 
43
 
void ED4_with_whole_block(ED4_blockoperation block_operation, int repeat);
 
40
bool          ED4_get_selected_range(ED4_terminal *term, PosRange& range);
 
41
 
 
42
class SeqPart;
 
43
 
 
44
class ED4_block_operator : virtual Noncopyable {
 
45
protected:
 
46
    mutable GB_ERROR error;
 
47
public:
 
48
    ED4_block_operator() : error(NULL) {}
 
49
    virtual ~ED4_block_operator() {}
 
50
 
 
51
    GB_ERROR get_error() const { return error; }
 
52
    virtual char *operate(const SeqPart& part, int& new_len) const = 0;
 
53
};
 
54
 
44
55
void ED4_perform_block_operation(ED4_blockoperation_type type);
45
56
 
46
57
AW_window *ED4_create_replace_window(AW_root *root);
 
58
AW_window *ED4_create_modsai_window(AW_root *root);
47
59
 
48
60
#else
49
61
#error ed4_block.hxx included twice