File: classConnectionFrame.cpp

package info (click to toggle)
unixodbc 2.2.11-16
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 17,332 kB
  • ctags: 12,399
  • sloc: ansic: 116,624; cpp: 29,333; sh: 25,024; makefile: 3,002; lex: 241; yacc: 182; perl: 142; sed: 16; sql: 1
file content (100 lines) | stat: -rw-r--r-- 3,600 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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
/**************************************************
 *
 *
 **************************************************
 * This code was created by Peter Harvey @ CodeByDesign.
 * Released under GPL 30.NOV.00
 *
 * Contributions from...
 * -----------------------------------------------
 * Peter Harvey         - pharvey@codebydesign.com
 **************************************************/

#include "classConnectionFrame.h"
#include <qtoolbar.h>
#include <qmenubar.h>
#include <qtoolbutton.h>
#include <qwhatsthis.h>
#include "run.xpm"
#include "new.xpm"
#include "open.xpm"
#include "save.xpm"

classConnectionFrame::classConnectionFrame( SQLHDBC hDbc, QString qsDataSource, QWidget *parent, const char *name )
        : QMainWindow( parent, name, 0 )
{
    // CLIENT AREA
    isql = new classISQL( hDbc, qsDataSource, this );
    setCentralWidget( isql );

    // SETUP MAIN MENU
    QMenuBar *menubarMain = new QMenuBar( this );

    // FILE MENU
    QPopupMenu *pFile = new QPopupMenu();
    pFile->insertItem( QPixmap( new_xpm  ), tr("&New" )   , isql, SLOT(NewSQL()   ), CTRL+Key_N );
    pFile->insertItem( QPixmap( open_xpm ), tr("&Open")   , isql, SLOT(OpenSQL()  ), CTRL+Key_O );
    pFile->insertItem( QPixmap( save_xpm ), tr("&Save")   , isql, SLOT(SaveSQL()  ), CTRL+Key_S );
    pFile->insertItem( QPixmap( save_xpm ), tr("Save &As"), isql, SLOT(SaveAsSQL()), CTRL+Key_A );
    pFile->insertItem( QPixmap( run_xpm  ), tr("&Run")    , this, SLOT(Exec()     ), CTRL+Key_R );
    menubarMain->insertItem( tr("&File"), pFile );

    // VIEW MENU
    pView = new QPopupMenu();
    pView->insertItem( tr("Text Table"),     this, SLOT(setViewText()         ), 0, classISQL::Text          );
    pView->insertItem( tr("Text Delimited"), this, SLOT(setViewTextDelimited()), 0, classISQL::TextDelimited );
    pView->insertItem( tr("HTML Source"),    this, SLOT(setViewHTMLSource()   ), 0, classISQL::HTMLSource    );
    pView->setItemChecked( view=classISQL::Text, true );
    menubarMain->insertItem( tr("&View"), pView );

    // DUMMY DESCRIPTION MENU
    QString ds ; ds.sprintf("  [%s]  ", qsDataSource.data() ) ;
    menubarMain->insertItem( ds );

    // SETUP TOOLBAR
    QToolBar *toolbarMain = new QToolBar( this );
    addToolBar( toolbarMain, tr( "ToolBar" ), Top, FALSE );
    new QToolButton( QPixmap( new_xpm  ), QString(tr("New" )), "", isql, SLOT(NewSQL() ), toolbarMain );
    new QToolButton( QPixmap( open_xpm ), QString(tr("Open")), "", isql, SLOT(OpenSQL()), toolbarMain );
    new QToolButton( QPixmap( save_xpm ), QString(tr("Save")), "", isql, SLOT(SaveSQL()), toolbarMain );
    new QToolButton( QPixmap( run_xpm  ), QString(tr("Run" )), "", this, SLOT(Exec()   ), toolbarMain );
    QWhatsThis::whatsThisButton ( toolbarMain );

    // RESIZE
    connect( parent, SIGNAL(changedSize(int,int)), SLOT(resize(int,int)) );
    resize( parent->size() );
    setMinimumSize( 50, 50 );
    setMaximumSize( 32767, 32767 );
}

void classConnectionFrame::resizeEvent( QResizeEvent *p )
{
    resize( p->size() );
}

void classConnectionFrame::Exec()
{
    isql->ExecSQL( view ) ;
}

void classConnectionFrame::setViewHTMLSource()
{
    pView->setItemChecked( view, false );
    view = classISQL::HTMLSource;
    pView->setItemChecked( view, true );
}

void classConnectionFrame::setViewText()
{
    pView->setItemChecked( view, false );
    view = classISQL::Text;
    pView->setItemChecked( view, true );
}

void classConnectionFrame::setViewTextDelimited()
{
    pView->setItemChecked( view, false );
    view = classISQL::TextDelimited;
    pView->setItemChecked( view, true );
}