You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
115 lines
3.2 KiB
115 lines
3.2 KiB
15 years ago
|
/***************************************************************************
|
||
|
* $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 org.kde.qt.*;
|
||
|
import java.text.*;
|
||
|
|
||
|
class TabDialog extends QTabDialog
|
||
|
{
|
||
|
|
||
|
protected String filename;
|
||
|
protected QFileInfo fileinfo;
|
||
|
|
||
|
|
||
|
TabDialog( QWidget parent, String name, String _filename )
|
||
|
{
|
||
|
super( parent, name );
|
||
|
filename = _filename;
|
||
|
fileinfo = new QFileInfo(filename);
|
||
|
setupTab1();
|
||
|
setupTab2();
|
||
|
setupTab3();
|
||
|
|
||
|
connect( this, SIGNAL(" applyButtonPressed()"), qApp(), SLOT(" quit()") );
|
||
|
}
|
||
|
|
||
|
void setupTab1()
|
||
|
{
|
||
|
QVBox tab1 = new QVBox( this );
|
||
|
tab1.setMargin( 5 );
|
||
|
|
||
|
new QLabel( "Filename:", tab1 );
|
||
|
QLineEdit fname = new QLineEdit( filename, tab1 );
|
||
|
fname.setFocus();
|
||
|
|
||
|
new QLabel( "Path:", tab1 );
|
||
|
QLabel path = new QLabel( fileinfo.dirPath( true ), tab1 );
|
||
|
path.setFrameStyle( QFrame.Panel | QFrame.Sunken );
|
||
|
|
||
|
new QLabel( "Size:", tab1 );
|
||
|
QLabel size = new QLabel( fileinfo.size() + " KB", tab1 );
|
||
|
size.setFrameStyle( QFrame.Panel | QFrame.Sunken );
|
||
|
|
||
|
SimpleDateFormat dateFormat = new SimpleDateFormat("EE MMM d hh:mm:ss yyyy");
|
||
|
|
||
|
new QLabel( "Last Read:", tab1 );
|
||
|
QLabel lread = new QLabel( dateFormat.format(fileinfo.lastRead().getTime()), tab1 );
|
||
|
lread.setFrameStyle( QFrame.Panel | QFrame.Sunken );
|
||
|
|
||
|
new QLabel( "Last Modified:", tab1 );
|
||
|
QLabel lmodif = new QLabel( dateFormat.format(fileinfo.lastModified().getTime()), tab1 );
|
||
|
lmodif.setFrameStyle( QFrame.Panel | QFrame.Sunken );
|
||
|
|
||
|
addTab( tab1, "General" );
|
||
|
}
|
||
|
|
||
|
void setupTab2()
|
||
|
{
|
||
|
QVBox tab2 = new QVBox( this );
|
||
|
tab2.setMargin( 5 );
|
||
|
|
||
|
QButtonGroup bg = new QButtonGroup( 1, QGroupBox.Horizontal, "Permissions", tab2 );
|
||
|
|
||
|
QCheckBox readable = new QCheckBox( "Readable", bg );
|
||
|
if ( fileinfo.isReadable() )
|
||
|
readable.setChecked( true );
|
||
|
|
||
|
QCheckBox writable = new QCheckBox( "Writeable", bg );
|
||
|
if ( fileinfo.isWritable() )
|
||
|
writable.setChecked( true );
|
||
|
|
||
|
QCheckBox executable = new QCheckBox( "Executable", bg );
|
||
|
if ( fileinfo.isExecutable() )
|
||
|
executable.setChecked( true );
|
||
|
|
||
|
QButtonGroup bg2 = new QButtonGroup( 2, QGroupBox.Horizontal, "Owner", tab2 );
|
||
|
|
||
|
new QLabel( "Owner", bg2 );
|
||
|
QLabel owner = new QLabel( fileinfo.owner(), bg2 );
|
||
|
owner.setFrameStyle( QFrame.Panel | QFrame.Sunken );
|
||
|
|
||
|
new QLabel( "Group", bg2 );
|
||
|
QLabel group = new QLabel( fileinfo.group(), bg2 );
|
||
|
group.setFrameStyle( QFrame.Panel | QFrame.Sunken );
|
||
|
|
||
|
addTab( tab2, "Permissions" );
|
||
|
}
|
||
|
|
||
|
void setupTab3()
|
||
|
{
|
||
|
QVBox tab3 = new QVBox( this );
|
||
|
tab3.setMargin( 5 );
|
||
|
tab3.setSpacing( 5 );
|
||
|
|
||
|
new QLabel( "Open " + filename + " with:", tab3 );
|
||
|
|
||
|
QListBox prgs = new QListBox( tab3 );
|
||
|
for ( int i = 0; i < 30; i++ ) {
|
||
|
String prg = "Application " + i;
|
||
|
prgs.insertItem( prg );
|
||
|
}
|
||
|
prgs.setCurrentItem( 3 );
|
||
|
|
||
|
new QCheckBox( "Open files with the extension '" + fileinfo.extension() + "' always with this application", tab3 );
|
||
|
|
||
|
addTab( tab3, "Applications" );
|
||
|
}
|
||
|
}
|