File: MQScriptTextView.m

package info (click to toggle)
mysql-gui-tools 5.0r14%2BopenSUSE-2.1
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 116,956 kB
  • ctags: 48,715
  • sloc: sql: 341,918; pascal: 276,698; ansic: 91,020; cpp: 90,451; objc: 33,236; sh: 29,481; yacc: 10,756; xml: 10,589; java: 10,079; php: 2,806; python: 2,092; makefile: 1,783; perl: 4
file content (78 lines) | stat: -rw-r--r-- 1,712 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
//
//  MQScriptTextView.m
//  MySQL QueryBrowser
//
//  Created by Alfredo Kojima on 05/6/5.
//  Copyright 2005 MySQL AB. All rights reserved.
//

#import "MQScriptTextView.h"
#import <MySQLToolsCommon/MSchemaDataSource.h>
#import <MySQLToolsCommon/MSchemaEditHelper.h>

@implementation MQScriptTextView

- (NSDragOperation)draggingEntered:(id <NSDraggingInfo>)sender
{
  return NSDragOperationCopy;
}

- (void)draggingExited:(id <NSDraggingInfo>)sender
{
}

- (NSDragOperation)draggingUpdated:(id <NSDraggingInfo>)sender
{
  return NSDragOperationCopy;
}

- (BOOL)prepareForDragOperation:(id <NSDraggingInfo>)sender
{
  MSchemaDataSource *source= [[sender draggingSource] dataSource];
  if (source && [source isKindOfClass:[MSchemaDataSource class]] && [source draggedItem])
    return YES;
  return NO;
}

- (BOOL)performDragOperation:(id <NSDraggingInfo>)sender
{
  MSchemaDataSource *source= [[sender draggingSource] dataSource];
  MSchemaItem *item;
  
  if ([source isKindOfClass:[MSchemaDataSource class]])
  {
    item= [source draggedItem];
    if (item)
    {
      NSString *sql= [_schemaHelper getCreateCommandForItem:item];
      if (sql)
      {
        if ([item type] == MSPItemType)
          [self insertText:[NSString stringWithFormat:@"DELIMITER $$\n%@\n$$\n", sql]];
        else
          [self insertText:[NSString stringWithFormat:@"%@;\n", sql]];
        [[self window] makeFirstResponder:self];
      }
      return YES;
    }
  }
  return NO;
}

- (void)setHelper:(MSchemaEditHelper*)helper
{
  _schemaHelper= helper;
}

@end



@implementation MQScriptEditor

- (MSourceTextView*)createTextViewWithFrame:(NSRect)frame
{
  return [[MQScriptTextView alloc] initWithFrame:frame];
}

@end