summaryrefslogtreecommitdiffstats
path: root/python/pyqt/examples3/tabdialog.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/pyqt/examples3/tabdialog.py')
-rwxr-xr-xpython/pyqt/examples3/tabdialog.py116
1 files changed, 116 insertions, 0 deletions
diff --git a/python/pyqt/examples3/tabdialog.py b/python/pyqt/examples3/tabdialog.py
new file mode 100755
index 00000000..81f61480
--- /dev/null
+++ b/python/pyqt/examples3/tabdialog.py
@@ -0,0 +1,116 @@
+#!/usr/bin/env python
+
+"""**************************************************************************
+** $Id$
+**
+** Copyright (C) 1992-2000 Trolltech AS. All rights reserved.
+**
+** This file is part of an example program for Qt. This example
+** program may be used, distributed and modified without limitation.
+**
+***************************************************************************"""
+
+import sys
+from qt import *
+
+class TabDialog( QTabDialog ):
+ def __init__( self, parent=None, name=None, filename=None ):
+ QTabDialog.__init__( self, parent, name )
+ self.filename = QString( filename )
+ self.fileinfo = QFileInfo( filename )
+ self.setupTab1()
+ self.setupTab2()
+ self.setupTab3()
+ self.connect( self, SIGNAL("applyButtonPressed()"), qApp, SLOT("quit()" ) )
+
+ def setupTab1( self ):
+ tab1 = QVBox( self )
+ tab1.setMargin( 5 )
+
+ QLabel( "Filename:", tab1 )
+ fname = QLineEdit( self.filename, tab1 )
+ fname.setFocus()
+
+ QLabel( "Path:", tab1 )
+ path = QLabel( self.fileinfo.dirPath( True ), tab1 )
+ path.setFrameStyle( QFrame.Panel | QFrame.Sunken )
+
+ QLabel( "Size:", tab1 )
+ size = QLabel( QString( "%1 KB" ).arg( self.fileinfo.size() ), tab1 )
+ size.setFrameStyle( QFrame.Panel | QFrame.Sunken )
+
+ QLabel( "Last Read:", tab1 )
+ lread = QLabel( self.fileinfo.lastRead().toString(), tab1 )
+ lread.setFrameStyle( QFrame.Panel | QFrame.Sunken )
+
+ QLabel( "Last Modified:", tab1 )
+ lmodif = QLabel( self.fileinfo.lastModified().toString(), tab1 )
+ lmodif.setFrameStyle( QFrame.Panel | QFrame.Sunken )
+
+ self.addTab( tab1, "General" )
+
+ def setupTab2( self ):
+ tab2 = QVBox( self )
+ tab2.setMargin( 5 )
+
+ bg = QButtonGroup( 1, QGroupBox.Horizontal, "Permissions", tab2 )
+
+ readable = QCheckBox( "Readable", bg )
+ if self.fileinfo.isReadable() :
+ readable.setChecked( True )
+
+ writable = QCheckBox( "Writeable", bg )
+ if self.fileinfo.isWritable() :
+ writable.setChecked( True )
+
+ executable = QCheckBox( "Executable", bg )
+ if self.fileinfo.isExecutable() :
+ executable.setChecked( True )
+
+ bg2 = QButtonGroup( 2, QGroupBox.Horizontal, "Owner", tab2 )
+
+ QLabel( "Owner", bg2 )
+ owner = QLabel( self.fileinfo.owner(), bg2 )
+ owner.setFrameStyle( QFrame.Panel | QFrame.Sunken )
+
+ QLabel( "Group", bg2 )
+ group = QLabel( self.fileinfo.group(), bg2 )
+ group.setFrameStyle( QFrame.Panel | QFrame.Sunken )
+
+ self.addTab( tab2, "Permissions" )
+
+ def setupTab3( self ):
+ tab3 = QVBox( self )
+ tab3.setMargin( 5 )
+ tab3.setSpacing( 5 )
+
+ QLabel( QString( "Open %1 with:" ).arg( self.filename ), tab3 )
+
+ prgs = QListBox( tab3 )
+ for i in range( 0, 30, 1 ) :
+ prg = QString( "Application %1" ).arg( i )
+ prgs.insertItem( prg )
+ prgs.setCurrentItem( 3 )
+
+ QCheckBox( QString( "Open files with the extension '%1' always with this application" ).arg( self.fileinfo.extension() ), tab3 )
+
+ self.addTab( tab3, "Applications" )
+
+def main( args ):
+ a = QApplication(sys.argv)
+ #sys.argv.append("tabdialog.py") # to test uncomment this line
+ if len(sys.argv) < 2:
+ filename = QString(".")
+ else:
+ filename = QString(sys.argv[1])
+
+ tabdialog = TabDialog( None, "tabdialog", filename )
+ tabdialog.resize( 450, 350 );
+ tabdialog.setCaption( "Qt Example - Tabbed Dialog" )
+ a.setMainWidget( tabdialog )
+ tabdialog.show()
+
+ a.exec_loop()
+
+if __name__=="__main__":
+ main(sys.argv)