You've already forked lazarus-ccr
tvplanit: Expose task priority and category in task editor. Update translations.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5170 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@ -1,6 +1,10 @@
|
|||||||
This demo shows how a Firebird database can be used for VisualPlanIt. It
|
This demo shows how a Firebird database can be used for VisualPlanIt. It
|
||||||
takes advantage of the prebuilt TVpFirefordDatastore.
|
takes advantage of the prebuilt TVpFirefordDatastore.
|
||||||
|
|
||||||
|
Login parameters for the created database:
|
||||||
|
username: SYSDBA
|
||||||
|
password: masterkey
|
||||||
|
|
||||||
NOTE:
|
NOTE:
|
||||||
The project creates a new database on the fly. For reasons unknown at the moment,
|
The project creates a new database on the fly. For reasons unknown at the moment,
|
||||||
an exception is raised here if started from the IDE. This does not happen any
|
an exception is raised here if started from the IDE. This does not happen any
|
||||||
|
@ -267,7 +267,7 @@ begin
|
|||||||
'CREATE TABLE Resources ( '+
|
'CREATE TABLE Resources ( '+
|
||||||
'ResourceID COUNTER, ' +
|
'ResourceID COUNTER, ' +
|
||||||
'Description VARCHAR(255), '+
|
'Description VARCHAR(255), '+
|
||||||
'Notes VARCHAR, '+ // 1024 --> -
|
'Notes VARCHAR, '+ // 1024 --> -
|
||||||
'ImageIndex INTEGER, '+
|
'ImageIndex INTEGER, '+
|
||||||
'ResourceActive LOGICAL, '+ // BOOL --> LOGICAL
|
'ResourceActive LOGICAL, '+ // BOOL --> LOGICAL
|
||||||
'UserField0 VARCHAR(100), '+
|
'UserField0 VARCHAR(100), '+
|
||||||
|
@ -24,16 +24,19 @@
|
|||||||
<FormatVersion Value="1"/>
|
<FormatVersion Value="1"/>
|
||||||
</local>
|
</local>
|
||||||
</RunParams>
|
</RunParams>
|
||||||
<RequiredPackages Count="3">
|
<RequiredPackages Count="4">
|
||||||
<Item1>
|
<Item1>
|
||||||
<PackageName Value="SQLDBLaz"/>
|
<PackageName Value="FCL"/>
|
||||||
</Item1>
|
</Item1>
|
||||||
<Item2>
|
<Item2>
|
||||||
<PackageName Value="laz_visualplanit"/>
|
<PackageName Value="SQLDBLaz"/>
|
||||||
</Item2>
|
</Item2>
|
||||||
<Item3>
|
<Item3>
|
||||||
<PackageName Value="LCL"/>
|
<PackageName Value="laz_visualplanit"/>
|
||||||
</Item3>
|
</Item3>
|
||||||
|
<Item4>
|
||||||
|
<PackageName Value="LCL"/>
|
||||||
|
</Item4>
|
||||||
</RequiredPackages>
|
</RequiredPackages>
|
||||||
<Units Count="2">
|
<Units Count="2">
|
||||||
<Unit0>
|
<Unit0>
|
||||||
|
@ -54,6 +54,7 @@ object Form1: TForm1
|
|||||||
Align = alClient
|
Align = alClient
|
||||||
TabIndex = 0
|
TabIndex = 0
|
||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
|
OnChange = PageControl1Change
|
||||||
object TabSheet1: TTabSheet
|
object TabSheet1: TTabSheet
|
||||||
Caption = 'Events and tasks'
|
Caption = 'Events and tasks'
|
||||||
ClientHeight = 624
|
ClientHeight = 624
|
||||||
@ -152,8 +153,12 @@ object Form1: TForm1
|
|||||||
DayNameStyle = dsShort
|
DayNameStyle = dsShort
|
||||||
DrawingStyle = dsFlat
|
DrawingStyle = dsFlat
|
||||||
EventDayStyle = []
|
EventDayStyle = []
|
||||||
|
HeadAttributes.Color = clBtnFace
|
||||||
LineColor = clGray
|
LineColor = clGray
|
||||||
TimeFormat = tf12Hour
|
TimeFormat = tf12Hour
|
||||||
|
TodayAttributes.Color = clSilver
|
||||||
|
TodayAttributes.BorderPen.Color = clRed
|
||||||
|
TodayAttributes.BorderPen.Width = 3
|
||||||
OffDayColor = clSilver
|
OffDayColor = clSilver
|
||||||
SelectedDayColor = clRed
|
SelectedDayColor = clRed
|
||||||
ShowEvents = True
|
ShowEvents = True
|
||||||
@ -244,6 +249,64 @@ object Form1: TForm1
|
|||||||
DrawingStyle = dsFlat
|
DrawingStyle = dsFlat
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
object TabSheet3: TTabSheet
|
||||||
|
Caption = 'Grids'
|
||||||
|
ClientHeight = 624
|
||||||
|
ClientWidth = 972
|
||||||
|
object DBNavigator: TDBNavigator
|
||||||
|
Left = 8
|
||||||
|
Height = 25
|
||||||
|
Top = 8
|
||||||
|
Width = 241
|
||||||
|
BevelOuter = bvNone
|
||||||
|
ChildSizing.EnlargeHorizontal = crsScaleChilds
|
||||||
|
ChildSizing.EnlargeVertical = crsScaleChilds
|
||||||
|
ChildSizing.ShrinkHorizontal = crsScaleChilds
|
||||||
|
ChildSizing.ShrinkVertical = crsScaleChilds
|
||||||
|
ChildSizing.Layout = cclLeftToRightThenTopToBottom
|
||||||
|
ChildSizing.ControlsPerLine = 100
|
||||||
|
ClientHeight = 25
|
||||||
|
ClientWidth = 241
|
||||||
|
Options = []
|
||||||
|
TabOrder = 0
|
||||||
|
end
|
||||||
|
object Button1: TButton
|
||||||
|
Left = 264
|
||||||
|
Height = 25
|
||||||
|
Top = 8
|
||||||
|
Width = 120
|
||||||
|
Caption = 'Apply to planner'
|
||||||
|
TabOrder = 1
|
||||||
|
end
|
||||||
|
object TabControl1: TTabControl
|
||||||
|
Left = 8
|
||||||
|
Height = 577
|
||||||
|
Top = 39
|
||||||
|
Width = 960
|
||||||
|
OnChange = TabControl1Change
|
||||||
|
TabIndex = 0
|
||||||
|
Tabs.Strings = (
|
||||||
|
'Resources'
|
||||||
|
'Contacts'
|
||||||
|
'Events'
|
||||||
|
'Tasks'
|
||||||
|
)
|
||||||
|
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||||
|
BorderSpacing.Around = 8
|
||||||
|
TabOrder = 2
|
||||||
|
object Grid: TDBGrid
|
||||||
|
Left = 2
|
||||||
|
Height = 552
|
||||||
|
Top = 23
|
||||||
|
Width = 956
|
||||||
|
Align = alClient
|
||||||
|
Color = clWindow
|
||||||
|
Columns = <>
|
||||||
|
Options = [dgEditing, dgTitles, dgIndicator, dgColumnResize, dgColumnMove, dgColLines, dgRowLines, dgTabs, dgAlwaysShowSelection, dgConfirmDelete, dgCancelOnExit, dgThumbTracking]
|
||||||
|
TabOrder = 1
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
object VpControlLink1: TVpControlLink
|
object VpControlLink1: TVpControlLink
|
||||||
DataStore = VpSqlite3Datastore1
|
DataStore = VpSqlite3Datastore1
|
||||||
@ -292,11 +355,14 @@ object Form1: TForm1
|
|||||||
CategoryColorMap.Category8.Description = 'Category 8'
|
CategoryColorMap.Category8.Description = 'Category 8'
|
||||||
CategoryColorMap.Category9.Color = clMaroon
|
CategoryColorMap.Category9.Color = clMaroon
|
||||||
CategoryColorMap.Category9.Description = 'Category 9'
|
CategoryColorMap.Category9.Description = 'Category 9'
|
||||||
|
HiddenCategories.BackgroundColor = clSilver
|
||||||
|
HiddenCategories.Color = clGray
|
||||||
EnableEventTimer = True
|
EnableEventTimer = True
|
||||||
PlayEventSounds = True
|
PlayEventSounds = True
|
||||||
Connection = SQLite3Connection1
|
Connection = SQLite3Connection1
|
||||||
AutoConnect = False
|
AutoConnect = False
|
||||||
AutoCreate = False
|
AutoCreate = False
|
||||||
|
DayBuffer = 31
|
||||||
left = 136
|
left = 136
|
||||||
top = 192
|
top = 192
|
||||||
end
|
end
|
||||||
@ -317,4 +383,345 @@ object Form1: TForm1
|
|||||||
left = 256
|
left = 256
|
||||||
top = 120
|
top = 120
|
||||||
end
|
end
|
||||||
|
object QryAllResources: TSQLQuery
|
||||||
|
PacketRecords = -1
|
||||||
|
FieldDefs = <
|
||||||
|
item
|
||||||
|
Name = 'ResourceID'
|
||||||
|
Attributes = [faReadonly]
|
||||||
|
DataType = ftAutoInc
|
||||||
|
Precision = -1
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'Description'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 255
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'Notes'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 255
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'ImageIndex'
|
||||||
|
DataType = ftInteger
|
||||||
|
Precision = -1
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'ResourceActive'
|
||||||
|
DataType = ftBoolean
|
||||||
|
Precision = -1
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'UserField0'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 100
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'UserField1'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 100
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'UserField2'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 100
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'UserField3'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 100
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'UserField4'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 100
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'UserField5'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 100
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'UserField6'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 100
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'UserField7'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 100
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'UserField8'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 100
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'UserField9'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 100
|
||||||
|
end>
|
||||||
|
Database = SQLite3Connection1
|
||||||
|
Transaction = SQLTransaction1
|
||||||
|
SQL.Strings = (
|
||||||
|
'SELECT * FROM Resources'
|
||||||
|
)
|
||||||
|
Options = [sqoKeepOpenOnCommit, sqoAutoCommit]
|
||||||
|
Params = <>
|
||||||
|
UsePrimaryKeyAsKey = False
|
||||||
|
left = 560
|
||||||
|
top = 160
|
||||||
|
end
|
||||||
|
object QryAllContacts: TSQLQuery
|
||||||
|
PacketRecords = -1
|
||||||
|
FieldDefs = <
|
||||||
|
item
|
||||||
|
Name = 'RecordID'
|
||||||
|
Attributes = [faReadonly]
|
||||||
|
DataType = ftAutoInc
|
||||||
|
Precision = -1
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'ResourceID'
|
||||||
|
DataType = ftInteger
|
||||||
|
Precision = -1
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'FirstName'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 50
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'LastName'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 50
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'Birthdate'
|
||||||
|
DataType = ftDateTime
|
||||||
|
Precision = -1
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'Anniversary'
|
||||||
|
DataType = ftDateTime
|
||||||
|
Precision = -1
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'Title'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 50
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'Company'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 50
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'Job_Position'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 30
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'Address'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 100
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'City'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 50
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'State'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 25
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'Zip'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 10
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'Country'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 25
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'Notes'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 255
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'Phone1'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 25
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'Phone2'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 25
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'Phone3'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 25
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'Phone4'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 25
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'Phone5'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 25
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'PhoneType1'
|
||||||
|
DataType = ftInteger
|
||||||
|
Precision = -1
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'PhoneType2'
|
||||||
|
DataType = ftInteger
|
||||||
|
Precision = -1
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'PhoneType3'
|
||||||
|
DataType = ftInteger
|
||||||
|
Precision = -1
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'PhoneType4'
|
||||||
|
DataType = ftInteger
|
||||||
|
Precision = -1
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'PhoneType5'
|
||||||
|
DataType = ftInteger
|
||||||
|
Precision = -1
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'Category'
|
||||||
|
DataType = ftInteger
|
||||||
|
Precision = -1
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'EMail'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 100
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'Custom1'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 100
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'Custom2'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 100
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'Custom3'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 100
|
||||||
|
end
|
||||||
|
item
|
||||||
|
Name = 'Custom4'
|
||||||
|
DataType = ftString
|
||||||
|
Precision = -1
|
||||||
|
Size = 100
|
||||||
|
end>
|
||||||
|
Database = SQLite3Connection1
|
||||||
|
Transaction = SQLTransaction1
|
||||||
|
SQL.Strings = (
|
||||||
|
'SELECT * FROM Contacts'
|
||||||
|
)
|
||||||
|
Options = [sqoKeepOpenOnCommit, sqoAutoCommit]
|
||||||
|
Params = <>
|
||||||
|
UsePrimaryKeyAsKey = False
|
||||||
|
left = 560
|
||||||
|
top = 214
|
||||||
|
end
|
||||||
|
object QryAllEvents: TSQLQuery
|
||||||
|
PacketRecords = -1
|
||||||
|
FieldDefs = <>
|
||||||
|
Database = SQLite3Connection1
|
||||||
|
Transaction = SQLTransaction1
|
||||||
|
SQL.Strings = (
|
||||||
|
'SELECT * FROM Events'
|
||||||
|
)
|
||||||
|
Options = [sqoKeepOpenOnCommit, sqoAutoCommit]
|
||||||
|
Params = <>
|
||||||
|
UsePrimaryKeyAsKey = False
|
||||||
|
left = 560
|
||||||
|
top = 274
|
||||||
|
end
|
||||||
|
object QryAllTasks: TSQLQuery
|
||||||
|
PacketRecords = -1
|
||||||
|
FieldDefs = <>
|
||||||
|
Database = SQLite3Connection1
|
||||||
|
Transaction = SQLTransaction1
|
||||||
|
SQL.Strings = (
|
||||||
|
'SELECT * FROM Tasks'
|
||||||
|
)
|
||||||
|
Options = [sqoKeepOpenOnCommit, sqoAutoCommit]
|
||||||
|
Params = <>
|
||||||
|
UsePrimaryKeyAsKey = False
|
||||||
|
left = 560
|
||||||
|
top = 341
|
||||||
|
end
|
||||||
|
object DsAllResources: TDataSource
|
||||||
|
DataSet = QryAllResources
|
||||||
|
left = 656
|
||||||
|
top = 160
|
||||||
|
end
|
||||||
|
object DsAllContacts: TDataSource
|
||||||
|
DataSet = QryAllContacts
|
||||||
|
left = 659
|
||||||
|
top = 214
|
||||||
|
end
|
||||||
|
object DsAllEvents: TDataSource
|
||||||
|
DataSet = QryAllEvents
|
||||||
|
left = 654
|
||||||
|
top = 274
|
||||||
|
end
|
||||||
|
object DsAllTasks: TDataSource
|
||||||
|
DataSet = QryAllTasks
|
||||||
|
left = 656
|
||||||
|
top = 341
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
@ -6,9 +6,9 @@ interface
|
|||||||
|
|
||||||
uses
|
uses
|
||||||
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ExtCtrls,
|
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ExtCtrls,
|
||||||
StdCtrls, ComCtrls, VpBaseDS, VpDayView, VpWeekView, VpTaskList,
|
StdCtrls, ComCtrls, DbCtrls, DBGrids, VpBaseDS, VpDayView, VpWeekView,
|
||||||
VpContactGrid, VpMonthView, VpResEditDlg, VpContactButtons, VpSQLite3DS,
|
VpTaskList, VpContactGrid, VpMonthView, VpResEditDlg, VpContactButtons,
|
||||||
sqlite3conn, sqldb, VpData;
|
VpSQLite3DS, sqlite3conn, sqldb, db, VpData;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
|
||||||
@ -17,16 +17,29 @@ type
|
|||||||
TForm1 = class(TForm)
|
TForm1 = class(TForm)
|
||||||
BtnNewRes: TButton;
|
BtnNewRes: TButton;
|
||||||
BtnEditRes: TButton;
|
BtnEditRes: TButton;
|
||||||
|
Button1: TButton;
|
||||||
|
DBNavigator: TDBNavigator;
|
||||||
|
DsAllContacts: TDataSource;
|
||||||
|
DsAllEvents: TDataSource;
|
||||||
|
DsAllResources: TDataSource;
|
||||||
|
DsAllTasks: TDataSource;
|
||||||
|
Grid: TDBGrid;
|
||||||
PageControl1: TPageControl;
|
PageControl1: TPageControl;
|
||||||
Panel1: TPanel;
|
Panel1: TPanel;
|
||||||
Panel2: TPanel;
|
Panel2: TPanel;
|
||||||
|
QryAllContacts: TSQLQuery;
|
||||||
|
QryAllEvents: TSQLQuery;
|
||||||
|
QryAllResources: TSQLQuery;
|
||||||
|
QryAllTasks: TSQLQuery;
|
||||||
Splitter1: TSplitter;
|
Splitter1: TSplitter;
|
||||||
Splitter2: TSplitter;
|
Splitter2: TSplitter;
|
||||||
Splitter3: TSplitter;
|
Splitter3: TSplitter;
|
||||||
SQLite3Connection1: TSQLite3Connection;
|
SQLite3Connection1: TSQLite3Connection;
|
||||||
SQLTransaction1: TSQLTransaction;
|
SQLTransaction1: TSQLTransaction;
|
||||||
|
TabControl1: TTabControl;
|
||||||
TabSheet1: TTabSheet;
|
TabSheet1: TTabSheet;
|
||||||
TabSheet2: TTabSheet;
|
TabSheet2: TTabSheet;
|
||||||
|
TabSheet3: TTabSheet;
|
||||||
VpContactButtonBar1: TVpContactButtonBar;
|
VpContactButtonBar1: TVpContactButtonBar;
|
||||||
VpContactGrid1: TVpContactGrid;
|
VpContactGrid1: TVpContactGrid;
|
||||||
VpControlLink1: TVpControlLink;
|
VpControlLink1: TVpControlLink;
|
||||||
@ -40,6 +53,8 @@ type
|
|||||||
procedure BtnNewResClick(Sender: TObject);
|
procedure BtnNewResClick(Sender: TObject);
|
||||||
procedure BtnEditResClick(Sender: TObject);
|
procedure BtnEditResClick(Sender: TObject);
|
||||||
procedure FormCreate(Sender: TObject);
|
procedure FormCreate(Sender: TObject);
|
||||||
|
procedure PageControl1Change(Sender: TObject);
|
||||||
|
procedure TabControl1Change(Sender: TObject);
|
||||||
private
|
private
|
||||||
{ private declarations }
|
{ private declarations }
|
||||||
public
|
public
|
||||||
@ -99,5 +114,32 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TForm1.PageControl1Change(Sender: TObject);
|
||||||
|
begin
|
||||||
|
if PageControl1.PageIndex = 2 then TabControl1Change(nil);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TForm1.TabControl1Change(Sender: TObject);
|
||||||
|
var
|
||||||
|
i: Integer;
|
||||||
|
Datasource: TDataSource;
|
||||||
|
begin
|
||||||
|
DsAllResources.Dataset.Close;
|
||||||
|
DsAllContacts.Dataset.Close;
|
||||||
|
DsAllEvents.Dataset.Close;
|
||||||
|
DsAllTasks.Dataset.Close;
|
||||||
|
|
||||||
|
case TabControl1.TabIndex of
|
||||||
|
0: Grid.Datasource := DsAllResources;
|
||||||
|
1: Grid.Datasource := DsAllContacts;
|
||||||
|
2: Grid.Datasource := DsAllEvents;
|
||||||
|
3: Grid.Datasource := DsAllTasks;
|
||||||
|
end;
|
||||||
|
DBNavigator.Datasource := Grid.Datasource;
|
||||||
|
Grid.Datasource.Dataset.Open;
|
||||||
|
for i:=0 to Grid.Columns.Count-1 do
|
||||||
|
Grid.Columns[i].Width := 100;;
|
||||||
|
end;
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
|
||||||
|
@ -173,6 +173,11 @@ msgstr "Kategorie"
|
|||||||
msgid "Category %d"
|
msgid "Category %d"
|
||||||
msgstr "Kategorie %d"
|
msgstr "Kategorie %d"
|
||||||
|
|
||||||
|
#: vpsr.rscategorylabel
|
||||||
|
msgctxt "vpsr.rscategorylabel"
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Kategorie:"
|
||||||
|
|
||||||
#: vpsr.rscategorylabel1
|
#: vpsr.rscategorylabel1
|
||||||
msgctxt "vpsr.rscategorylabel1"
|
msgctxt "vpsr.rscategorylabel1"
|
||||||
msgid "Business"
|
msgid "Business"
|
||||||
@ -197,6 +202,7 @@ msgid "Other"
|
|||||||
msgstr "Andere"
|
msgstr "Andere"
|
||||||
|
|
||||||
#: vpsr.rscategorylbl
|
#: vpsr.rscategorylbl
|
||||||
|
msgctxt "vpsr.rscategorylbl"
|
||||||
msgid "Category:"
|
msgid "Category:"
|
||||||
msgstr "Kategorie:"
|
msgstr "Kategorie:"
|
||||||
|
|
||||||
@ -329,7 +335,8 @@ msgctxt "vpsr.rsdescriptionlbl"
|
|||||||
msgid "Description:"
|
msgid "Description:"
|
||||||
msgstr "Beschreibung:"
|
msgstr "Beschreibung:"
|
||||||
|
|
||||||
#: vpsr.rsdetails
|
#: vpsr.rsdetailslabel
|
||||||
|
msgctxt "vpsr.rsdetailslabel"
|
||||||
msgid "Details:"
|
msgid "Details:"
|
||||||
msgstr "Details:"
|
msgstr "Details:"
|
||||||
|
|
||||||
@ -364,9 +371,10 @@ msgstr "Beschreibung"
|
|||||||
msgid "Task"
|
msgid "Task"
|
||||||
msgstr "Aufgabe"
|
msgstr "Aufgabe"
|
||||||
|
|
||||||
#: vpsr.rsduedate
|
#: vpsr.rsduedatelabel
|
||||||
|
msgctxt "vpsr.rsduedatelabel"
|
||||||
msgid "Due date:"
|
msgid "Due date:"
|
||||||
msgstr "Fälligkeitsdatum:"
|
msgstr "Fällig am:"
|
||||||
|
|
||||||
#: vpsr.rsduplicateresource
|
#: vpsr.rsduplicateresource
|
||||||
msgid "Error: Duplicate resource."
|
msgid "Error: Duplicate resource."
|
||||||
@ -478,6 +486,10 @@ msgstr "Von Ihrem Zeitplan?"
|
|||||||
msgid "Height"
|
msgid "Height"
|
||||||
msgstr "Höhe"
|
msgstr "Höhe"
|
||||||
|
|
||||||
|
#: vpsr.rshigh
|
||||||
|
msgid "High"
|
||||||
|
msgstr "Hoch"
|
||||||
|
|
||||||
#: vpsr.rshomeaddress
|
#: vpsr.rshomeaddress
|
||||||
msgid "Home address"
|
msgid "Home address"
|
||||||
msgstr "Zuhause"
|
msgstr "Zuhause"
|
||||||
@ -565,6 +577,10 @@ msgstr "Ort"
|
|||||||
msgid "Location:"
|
msgid "Location:"
|
||||||
msgstr "Ort:"
|
msgstr "Ort:"
|
||||||
|
|
||||||
|
#: vpsr.rslow
|
||||||
|
msgid "Low"
|
||||||
|
msgstr "Niedrig"
|
||||||
|
|
||||||
#: vpsr.rslsaturday
|
#: vpsr.rslsaturday
|
||||||
msgctxt "vpsr.rslsaturday"
|
msgctxt "vpsr.rslsaturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
@ -707,6 +723,10 @@ msgstr "keine"
|
|||||||
msgid "No print formats have been defined"
|
msgid "No print formats have been defined"
|
||||||
msgstr "Es sind keine Druckformate definiert."
|
msgstr "Es sind keine Druckformate definiert."
|
||||||
|
|
||||||
|
#: vpsr.rsnormal
|
||||||
|
msgid "Normal"
|
||||||
|
msgstr "Normal"
|
||||||
|
|
||||||
#: vpsr.rsnotdoneyet
|
#: vpsr.rsnotdoneyet
|
||||||
msgid "This feature is not implemented at this time."
|
msgid "This feature is not implemented at this time."
|
||||||
msgstr "Dieses Feature ist zur Zeit nicht implementiert."
|
msgstr "Dieses Feature ist zur Zeit nicht implementiert."
|
||||||
@ -980,6 +1000,10 @@ msgstr "&Drucken"
|
|||||||
msgid "Print"
|
msgid "Print"
|
||||||
msgstr "Drucken"
|
msgstr "Drucken"
|
||||||
|
|
||||||
|
#: vpsr.rsprioritylabel
|
||||||
|
msgid "Priority:"
|
||||||
|
msgstr "Priorität:"
|
||||||
|
|
||||||
#: vpsr.rsprtcontrolowner
|
#: vpsr.rsprtcontrolowner
|
||||||
msgid "Print controller is not owned by a TVpControlLink!"
|
msgid "Print controller is not owned by a TVpControlLink!"
|
||||||
msgstr "Print Controll hat nicht TVpControlLink als Owner"
|
msgstr "Print Controll hat nicht TVpControlLink als Owner"
|
||||||
|
@ -7,7 +7,7 @@ msgstr ""
|
|||||||
"Project-Id-Version: \n"
|
"Project-Id-Version: \n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: \n"
|
"POT-Creation-Date: \n"
|
||||||
"PO-Revision-Date: 2016-09-12 22:32+0200\n"
|
"PO-Revision-Date: 2016-09-17 17:11+0200\n"
|
||||||
"Last-Translator: \n"
|
"Last-Translator: \n"
|
||||||
"Language-Team: \n"
|
"Language-Team: \n"
|
||||||
"Language: fr_FR\n"
|
"Language: fr_FR\n"
|
||||||
@ -130,7 +130,6 @@ msgid "Brush"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rsbusinesswebsitelabel
|
#: vpsr.rsbusinesswebsitelabel
|
||||||
#, fuzzy
|
|
||||||
msgctxt "vpsr.rsbusinesswebsitelabel"
|
msgctxt "vpsr.rsbusinesswebsitelabel"
|
||||||
msgid "Business"
|
msgid "Business"
|
||||||
msgstr "Professionnel"
|
msgstr "Professionnel"
|
||||||
@ -180,6 +179,11 @@ msgstr "Catégorie"
|
|||||||
msgid "Category %d"
|
msgid "Category %d"
|
||||||
msgstr "Catégorie %d"
|
msgstr "Catégorie %d"
|
||||||
|
|
||||||
|
#: vpsr.rscategorylabel
|
||||||
|
msgctxt "vpsr.rscategorylabel"
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Catégorie:"
|
||||||
|
|
||||||
#: vpsr.rscategorylabel1
|
#: vpsr.rscategorylabel1
|
||||||
msgctxt "vpsr.rscategorylabel1"
|
msgctxt "vpsr.rscategorylabel1"
|
||||||
msgid "Business"
|
msgid "Business"
|
||||||
@ -204,6 +208,7 @@ msgid "Other"
|
|||||||
msgstr "Autre"
|
msgstr "Autre"
|
||||||
|
|
||||||
#: vpsr.rscategorylbl
|
#: vpsr.rscategorylbl
|
||||||
|
msgctxt "vpsr.rscategorylbl"
|
||||||
msgid "Category:"
|
msgid "Category:"
|
||||||
msgstr "Catégorie:"
|
msgstr "Catégorie:"
|
||||||
|
|
||||||
@ -336,7 +341,8 @@ msgctxt "vpsr.rsdescriptionlbl"
|
|||||||
msgid "Description:"
|
msgid "Description:"
|
||||||
msgstr "Sujet:"
|
msgstr "Sujet:"
|
||||||
|
|
||||||
#: vpsr.rsdetails
|
#: vpsr.rsdetailslabel
|
||||||
|
msgctxt "vpsr.rsdetailslabel"
|
||||||
msgid "Details:"
|
msgid "Details:"
|
||||||
msgstr "Détails:"
|
msgstr "Détails:"
|
||||||
|
|
||||||
@ -359,8 +365,6 @@ msgid "Print preview"
|
|||||||
msgstr "Aperçu avant impression"
|
msgstr "Aperçu avant impression"
|
||||||
|
|
||||||
#: vpsr.rsdlgreseditcaption
|
#: vpsr.rsdlgreseditcaption
|
||||||
#, fuzzy
|
|
||||||
#| msgid "Resource Edit"
|
|
||||||
msgid "Resource edit"
|
msgid "Resource edit"
|
||||||
msgstr "Modifier la resource"
|
msgstr "Modifier la resource"
|
||||||
|
|
||||||
@ -373,9 +377,8 @@ msgstr "Déscription"
|
|||||||
msgid "Task"
|
msgid "Task"
|
||||||
msgstr "Tache"
|
msgstr "Tache"
|
||||||
|
|
||||||
#: vpsr.rsduedate
|
#: vpsr.rsduedatelabel
|
||||||
#, fuzzy
|
msgctxt "vpsr.rsduedatelabel"
|
||||||
#| msgid "Due Date:"
|
|
||||||
msgid "Due date:"
|
msgid "Due date:"
|
||||||
msgstr "Date d'échéance:"
|
msgstr "Date d'échéance:"
|
||||||
|
|
||||||
@ -489,18 +492,20 @@ msgstr "de votre agenda?"
|
|||||||
msgid "Height"
|
msgid "Height"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: vpsr.rshigh
|
||||||
|
msgid "High"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rshomeaddress
|
#: vpsr.rshomeaddress
|
||||||
msgid "Home address"
|
msgid "Home address"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rshomeaddresslabel
|
#: vpsr.rshomeaddresslabel
|
||||||
#, fuzzy
|
|
||||||
msgctxt "vpsr.rshomeaddresslabel"
|
msgctxt "vpsr.rshomeaddresslabel"
|
||||||
msgid "Home"
|
msgid "Home"
|
||||||
msgstr "Maison"
|
msgstr "Maison"
|
||||||
|
|
||||||
#: vpsr.rshomeemaillabel
|
#: vpsr.rshomeemaillabel
|
||||||
#, fuzzy
|
|
||||||
msgctxt "vpsr.rshomeemaillabel"
|
msgctxt "vpsr.rshomeemaillabel"
|
||||||
msgid "Home"
|
msgid "Home"
|
||||||
msgstr "Maison"
|
msgstr "Maison"
|
||||||
@ -578,6 +583,10 @@ msgstr ""
|
|||||||
msgid "Location:"
|
msgid "Location:"
|
||||||
msgstr "Lieu:"
|
msgstr "Lieu:"
|
||||||
|
|
||||||
|
#: vpsr.rslow
|
||||||
|
msgid "Low"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rslsaturday
|
#: vpsr.rslsaturday
|
||||||
msgctxt "vpsr.rslsaturday"
|
msgctxt "vpsr.rslsaturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
@ -720,6 +729,10 @@ msgstr ""
|
|||||||
msgid "No print formats have been defined"
|
msgid "No print formats have been defined"
|
||||||
msgstr "Formats d'impression non-défini"
|
msgstr "Formats d'impression non-défini"
|
||||||
|
|
||||||
|
#: vpsr.rsnormal
|
||||||
|
msgid "Normal"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rsnotdoneyet
|
#: vpsr.rsnotdoneyet
|
||||||
msgid "This feature is not implemented at this time."
|
msgid "This feature is not implemented at this time."
|
||||||
msgstr "Cette fonctionnalité n'est pas mise en œuvre à ce moment"
|
msgstr "Cette fonctionnalité n'est pas mise en œuvre à ce moment"
|
||||||
@ -759,7 +772,6 @@ msgid "&Open Item"
|
|||||||
msgstr "&Item ouvert"
|
msgstr "&Item ouvert"
|
||||||
|
|
||||||
#: vpsr.rsotheremaillabel
|
#: vpsr.rsotheremaillabel
|
||||||
#, fuzzy
|
|
||||||
msgctxt "vpsr.rsotheremaillabel"
|
msgctxt "vpsr.rsotheremaillabel"
|
||||||
msgid "Other"
|
msgid "Other"
|
||||||
msgstr "Autre"
|
msgstr "Autre"
|
||||||
@ -797,7 +809,6 @@ msgid "This operation cannot be undone!"
|
|||||||
msgstr "Ce processus est irreversible!"
|
msgstr "Ce processus est irreversible!"
|
||||||
|
|
||||||
#: vpsr.rspersonalwebsitelabel
|
#: vpsr.rspersonalwebsitelabel
|
||||||
#, fuzzy
|
|
||||||
msgctxt "vpsr.rspersonalwebsitelabel"
|
msgctxt "vpsr.rspersonalwebsitelabel"
|
||||||
msgid "Personal"
|
msgid "Personal"
|
||||||
msgstr "Personnel"
|
msgstr "Personnel"
|
||||||
@ -995,6 +1006,10 @@ msgstr "&Imprimer"
|
|||||||
msgid "Print"
|
msgid "Print"
|
||||||
msgstr "Imprimer"
|
msgstr "Imprimer"
|
||||||
|
|
||||||
|
#: vpsr.rsprioritylabel
|
||||||
|
msgid "Priority:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rsprtcontrolowner
|
#: vpsr.rsprtcontrolowner
|
||||||
msgid "Print controller is not owned by a TVpControlLink!"
|
msgid "Print controller is not owned by a TVpControlLink!"
|
||||||
msgstr "Le contrôleur d'impression n'est pas la propriété d'un TVpControlLink!"
|
msgstr "Le contrôleur d'impression n'est pas la propriété d'un TVpControlLink!"
|
||||||
@ -1243,13 +1258,11 @@ msgid "Work address"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rsworkaddresslabel
|
#: vpsr.rsworkaddresslabel
|
||||||
#, fuzzy
|
|
||||||
msgctxt "vpsr.rsworkaddresslabel"
|
msgctxt "vpsr.rsworkaddresslabel"
|
||||||
msgid "Work"
|
msgid "Work"
|
||||||
msgstr "Travail"
|
msgstr "Travail"
|
||||||
|
|
||||||
#: vpsr.rsworkemaillabel
|
#: vpsr.rsworkemaillabel
|
||||||
#, fuzzy
|
|
||||||
msgctxt "vpsr.rsworkemaillabel"
|
msgctxt "vpsr.rsworkemaillabel"
|
||||||
msgid "Work"
|
msgid "Work"
|
||||||
msgstr "Travail"
|
msgstr "Travail"
|
||||||
@ -1578,4 +1591,3 @@ msgstr "Spécificateur d'axe inconnu"
|
|||||||
#: vpsr.sxmldecnotatbeg
|
#: vpsr.sxmldecnotatbeg
|
||||||
msgid "The XML declaration must appear before the first element"
|
msgid "The XML declaration must appear before the first element"
|
||||||
msgstr "La déclaration XML doit apparaître avant le premier élément"
|
msgstr "La déclaration XML doit apparaître avant le premier élément"
|
||||||
|
|
||||||
|
@ -124,7 +124,6 @@ msgid "Brush"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rsbusinesswebsitelabel
|
#: vpsr.rsbusinesswebsitelabel
|
||||||
#, fuzzy
|
|
||||||
msgctxt "vpsr.rsbusinesswebsitelabel"
|
msgctxt "vpsr.rsbusinesswebsitelabel"
|
||||||
msgid "Business"
|
msgid "Business"
|
||||||
msgstr "Zakelijk"
|
msgstr "Zakelijk"
|
||||||
@ -174,6 +173,11 @@ msgstr "Categorie"
|
|||||||
msgid "Category %d"
|
msgid "Category %d"
|
||||||
msgstr "Categorie %d"
|
msgstr "Categorie %d"
|
||||||
|
|
||||||
|
#: vpsr.rscategorylabel
|
||||||
|
msgctxt "vpsr.rscategorylabel"
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Categorie:"
|
||||||
|
|
||||||
#: vpsr.rscategorylabel1
|
#: vpsr.rscategorylabel1
|
||||||
msgctxt "vpsr.rscategorylabel1"
|
msgctxt "vpsr.rscategorylabel1"
|
||||||
msgid "Business"
|
msgid "Business"
|
||||||
@ -198,6 +202,7 @@ msgid "Other"
|
|||||||
msgstr "Anders"
|
msgstr "Anders"
|
||||||
|
|
||||||
#: vpsr.rscategorylbl
|
#: vpsr.rscategorylbl
|
||||||
|
msgctxt "vpsr.rscategorylbl"
|
||||||
msgid "Category:"
|
msgid "Category:"
|
||||||
msgstr "Categorie:"
|
msgstr "Categorie:"
|
||||||
|
|
||||||
@ -330,7 +335,8 @@ msgctxt "vpsr.rsdescriptionlbl"
|
|||||||
msgid "Description:"
|
msgid "Description:"
|
||||||
msgstr "Onderwerp:"
|
msgstr "Onderwerp:"
|
||||||
|
|
||||||
#: vpsr.rsdetails
|
#: vpsr.rsdetailslabel
|
||||||
|
msgctxt "vpsr.rsdetailslabel"
|
||||||
msgid "Details:"
|
msgid "Details:"
|
||||||
msgstr "Details:"
|
msgstr "Details:"
|
||||||
|
|
||||||
@ -353,8 +359,6 @@ msgid "Print preview"
|
|||||||
msgstr "Afdruk voorbeeld"
|
msgstr "Afdruk voorbeeld"
|
||||||
|
|
||||||
#: vpsr.rsdlgreseditcaption
|
#: vpsr.rsdlgreseditcaption
|
||||||
#, fuzzy
|
|
||||||
#| msgid "Resource Edit"
|
|
||||||
msgid "Resource edit"
|
msgid "Resource edit"
|
||||||
msgstr "Middel bewerken"
|
msgstr "Middel bewerken"
|
||||||
|
|
||||||
@ -367,9 +371,8 @@ msgstr "Omschrijving"
|
|||||||
msgid "Task"
|
msgid "Task"
|
||||||
msgstr "Taak"
|
msgstr "Taak"
|
||||||
|
|
||||||
#: vpsr.rsduedate
|
#: vpsr.rsduedatelabel
|
||||||
#, fuzzy
|
msgctxt "vpsr.rsduedatelabel"
|
||||||
#| msgid "Due Date:"
|
|
||||||
msgid "Due date:"
|
msgid "Due date:"
|
||||||
msgstr "Vervaldatum:"
|
msgstr "Vervaldatum:"
|
||||||
|
|
||||||
@ -483,18 +486,20 @@ msgstr "van uw tijdschema?"
|
|||||||
msgid "Height"
|
msgid "Height"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: vpsr.rshigh
|
||||||
|
msgid "High"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rshomeaddress
|
#: vpsr.rshomeaddress
|
||||||
msgid "Home address"
|
msgid "Home address"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rshomeaddresslabel
|
#: vpsr.rshomeaddresslabel
|
||||||
#, fuzzy
|
|
||||||
msgctxt "vpsr.rshomeaddresslabel"
|
msgctxt "vpsr.rshomeaddresslabel"
|
||||||
msgid "Home"
|
msgid "Home"
|
||||||
msgstr "Thuis"
|
msgstr "Thuis"
|
||||||
|
|
||||||
#: vpsr.rshomeemaillabel
|
#: vpsr.rshomeemaillabel
|
||||||
#, fuzzy
|
|
||||||
msgctxt "vpsr.rshomeemaillabel"
|
msgctxt "vpsr.rshomeemaillabel"
|
||||||
msgid "Home"
|
msgid "Home"
|
||||||
msgstr "Thuis"
|
msgstr "Thuis"
|
||||||
@ -572,6 +577,10 @@ msgstr ""
|
|||||||
msgid "Location:"
|
msgid "Location:"
|
||||||
msgstr "Plaats:"
|
msgstr "Plaats:"
|
||||||
|
|
||||||
|
#: vpsr.rslow
|
||||||
|
msgid "Low"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rslsaturday
|
#: vpsr.rslsaturday
|
||||||
msgctxt "vpsr.rslsaturday"
|
msgctxt "vpsr.rslsaturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
@ -714,6 +723,10 @@ msgstr ""
|
|||||||
msgid "No print formats have been defined"
|
msgid "No print formats have been defined"
|
||||||
msgstr "Er zijn geen afdrukformaten gedefinieerd."
|
msgstr "Er zijn geen afdrukformaten gedefinieerd."
|
||||||
|
|
||||||
|
#: vpsr.rsnormal
|
||||||
|
msgid "Normal"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rsnotdoneyet
|
#: vpsr.rsnotdoneyet
|
||||||
msgid "This feature is not implemented at this time."
|
msgid "This feature is not implemented at this time."
|
||||||
msgstr "Dit onderdeel is nog niet geimplementeerd."
|
msgstr "Dit onderdeel is nog niet geimplementeerd."
|
||||||
@ -753,7 +766,6 @@ msgid "&Open Item"
|
|||||||
msgstr "&Open Item"
|
msgstr "&Open Item"
|
||||||
|
|
||||||
#: vpsr.rsotheremaillabel
|
#: vpsr.rsotheremaillabel
|
||||||
#, fuzzy
|
|
||||||
msgctxt "vpsr.rsotheremaillabel"
|
msgctxt "vpsr.rsotheremaillabel"
|
||||||
msgid "Other"
|
msgid "Other"
|
||||||
msgstr "Andere"
|
msgstr "Andere"
|
||||||
@ -791,7 +803,6 @@ msgid "This operation cannot be undone!"
|
|||||||
msgstr "Deze operatie kan niet ongedaan gemaakt worden!"
|
msgstr "Deze operatie kan niet ongedaan gemaakt worden!"
|
||||||
|
|
||||||
#: vpsr.rspersonalwebsitelabel
|
#: vpsr.rspersonalwebsitelabel
|
||||||
#, fuzzy
|
|
||||||
msgctxt "vpsr.rspersonalwebsitelabel"
|
msgctxt "vpsr.rspersonalwebsitelabel"
|
||||||
msgid "Personal"
|
msgid "Personal"
|
||||||
msgstr "Persoonlijk"
|
msgstr "Persoonlijk"
|
||||||
@ -989,6 +1000,10 @@ msgstr "&Afdrukken"
|
|||||||
msgid "Print"
|
msgid "Print"
|
||||||
msgstr "Afdrukken"
|
msgstr "Afdrukken"
|
||||||
|
|
||||||
|
#: vpsr.rsprioritylabel
|
||||||
|
msgid "Priority:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rsprtcontrolowner
|
#: vpsr.rsprtcontrolowner
|
||||||
msgid "Print controller is not owned by a TVpControlLink!"
|
msgid "Print controller is not owned by a TVpControlLink!"
|
||||||
msgstr "Print Controller heeft niet TVpControlLink als Owner"
|
msgstr "Print Controller heeft niet TVpControlLink als Owner"
|
||||||
@ -1237,13 +1252,11 @@ msgid "Work address"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rsworkaddresslabel
|
#: vpsr.rsworkaddresslabel
|
||||||
#, fuzzy
|
|
||||||
msgctxt "vpsr.rsworkaddresslabel"
|
msgctxt "vpsr.rsworkaddresslabel"
|
||||||
msgid "Work"
|
msgid "Work"
|
||||||
msgstr "Werk"
|
msgstr "Werk"
|
||||||
|
|
||||||
#: vpsr.rsworkemaillabel
|
#: vpsr.rsworkemaillabel
|
||||||
#, fuzzy
|
|
||||||
msgctxt "vpsr.rsworkemaillabel"
|
msgctxt "vpsr.rsworkemaillabel"
|
||||||
msgid "Work"
|
msgid "Work"
|
||||||
msgstr "Werk"
|
msgstr "Werk"
|
||||||
@ -1572,4 +1585,3 @@ msgstr "Onbekende as specificatie: %s"
|
|||||||
#: vpsr.sxmldecnotatbeg
|
#: vpsr.sxmldecnotatbeg
|
||||||
msgid "The XML declaration must appear before the first element"
|
msgid "The XML declaration must appear before the first element"
|
||||||
msgstr "De XML declaratie moet voor het eerste element staan"
|
msgstr "De XML declaratie moet voor het eerste element staan"
|
||||||
|
|
||||||
|
@ -163,6 +163,11 @@ msgstr ""
|
|||||||
msgid "Category %d"
|
msgid "Category %d"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: vpsr.rscategorylabel
|
||||||
|
msgctxt "vpsr.rscategorylabel"
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rscategorylabel1
|
#: vpsr.rscategorylabel1
|
||||||
msgctxt "vpsr.rscategorylabel1"
|
msgctxt "vpsr.rscategorylabel1"
|
||||||
msgid "Business"
|
msgid "Business"
|
||||||
@ -187,6 +192,7 @@ msgid "Other"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rscategorylbl
|
#: vpsr.rscategorylbl
|
||||||
|
msgctxt "vpsr.rscategorylbl"
|
||||||
msgid "Category:"
|
msgid "Category:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -319,7 +325,8 @@ msgctxt "vpsr.rsdescriptionlbl"
|
|||||||
msgid "Description:"
|
msgid "Description:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rsdetails
|
#: vpsr.rsdetailslabel
|
||||||
|
msgctxt "vpsr.rsdetailslabel"
|
||||||
msgid "Details:"
|
msgid "Details:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -354,7 +361,8 @@ msgstr ""
|
|||||||
msgid "Task"
|
msgid "Task"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rsduedate
|
#: vpsr.rsduedatelabel
|
||||||
|
msgctxt "vpsr.rsduedatelabel"
|
||||||
msgid "Due date:"
|
msgid "Due date:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -468,6 +476,10 @@ msgstr ""
|
|||||||
msgid "Height"
|
msgid "Height"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: vpsr.rshigh
|
||||||
|
msgid "High"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rshomeaddress
|
#: vpsr.rshomeaddress
|
||||||
msgid "Home address"
|
msgid "Home address"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -555,6 +567,10 @@ msgstr ""
|
|||||||
msgid "Location:"
|
msgid "Location:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: vpsr.rslow
|
||||||
|
msgid "Low"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rslsaturday
|
#: vpsr.rslsaturday
|
||||||
msgctxt "vpsr.rslsaturday"
|
msgctxt "vpsr.rslsaturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
@ -697,6 +713,10 @@ msgstr ""
|
|||||||
msgid "No print formats have been defined"
|
msgid "No print formats have been defined"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: vpsr.rsnormal
|
||||||
|
msgid "Normal"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rsnotdoneyet
|
#: vpsr.rsnotdoneyet
|
||||||
msgid "This feature is not implemented at this time."
|
msgid "This feature is not implemented at this time."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -970,6 +990,10 @@ msgstr ""
|
|||||||
msgid "Print"
|
msgid "Print"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: vpsr.rsprioritylabel
|
||||||
|
msgid "Priority:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rsprtcontrolowner
|
#: vpsr.rsprtcontrolowner
|
||||||
msgid "Print controller is not owned by a TVpControlLink!"
|
msgid "Print controller is not owned by a TVpControlLink!"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
@ -124,7 +124,6 @@ msgid "Brush"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rsbusinesswebsitelabel
|
#: vpsr.rsbusinesswebsitelabel
|
||||||
#, fuzzy
|
|
||||||
msgctxt "vpsr.rsbusinesswebsitelabel"
|
msgctxt "vpsr.rsbusinesswebsitelabel"
|
||||||
msgid "Business"
|
msgid "Business"
|
||||||
msgstr "Дела"
|
msgstr "Дела"
|
||||||
@ -174,6 +173,11 @@ msgstr "Категория"
|
|||||||
msgid "Category %d"
|
msgid "Category %d"
|
||||||
msgstr "Категория %d"
|
msgstr "Категория %d"
|
||||||
|
|
||||||
|
#: vpsr.rscategorylabel
|
||||||
|
msgctxt "vpsr.rscategorylabel"
|
||||||
|
msgid "Category:"
|
||||||
|
msgstr "Категория:"
|
||||||
|
|
||||||
#: vpsr.rscategorylabel1
|
#: vpsr.rscategorylabel1
|
||||||
msgctxt "vpsr.rscategorylabel1"
|
msgctxt "vpsr.rscategorylabel1"
|
||||||
msgid "Business"
|
msgid "Business"
|
||||||
@ -198,6 +202,7 @@ msgid "Other"
|
|||||||
msgstr "Другое"
|
msgstr "Другое"
|
||||||
|
|
||||||
#: vpsr.rscategorylbl
|
#: vpsr.rscategorylbl
|
||||||
|
msgctxt "vpsr.rscategorylbl"
|
||||||
msgid "Category:"
|
msgid "Category:"
|
||||||
msgstr "Категория:"
|
msgstr "Категория:"
|
||||||
|
|
||||||
@ -330,7 +335,8 @@ msgctxt "vpsr.rsdescriptionlbl"
|
|||||||
msgid "Description:"
|
msgid "Description:"
|
||||||
msgstr "Описание:"
|
msgstr "Описание:"
|
||||||
|
|
||||||
#: vpsr.rsdetails
|
#: vpsr.rsdetailslabel
|
||||||
|
msgctxt "vpsr.rsdetailslabel"
|
||||||
msgid "Details:"
|
msgid "Details:"
|
||||||
msgstr "Детали:"
|
msgstr "Детали:"
|
||||||
|
|
||||||
@ -353,8 +359,6 @@ msgid "Print preview"
|
|||||||
msgstr "Предварительный просмотр печати"
|
msgstr "Предварительный просмотр печати"
|
||||||
|
|
||||||
#: vpsr.rsdlgreseditcaption
|
#: vpsr.rsdlgreseditcaption
|
||||||
#, fuzzy
|
|
||||||
#| msgid "Resource Edit"
|
|
||||||
msgid "Resource edit"
|
msgid "Resource edit"
|
||||||
msgstr "Редактор ресурсов"
|
msgstr "Редактор ресурсов"
|
||||||
|
|
||||||
@ -367,9 +371,8 @@ msgstr "Описание"
|
|||||||
msgid "Task"
|
msgid "Task"
|
||||||
msgstr "Задача"
|
msgstr "Задача"
|
||||||
|
|
||||||
#: vpsr.rsduedate
|
#: vpsr.rsduedatelabel
|
||||||
#, fuzzy
|
msgctxt "vpsr.rsduedatelabel"
|
||||||
#| msgid "Due Date:"
|
|
||||||
msgid "Due date:"
|
msgid "Due date:"
|
||||||
msgstr "Срок:"
|
msgstr "Срок:"
|
||||||
|
|
||||||
@ -483,18 +486,20 @@ msgstr "из вашего расписания?"
|
|||||||
msgid "Height"
|
msgid "Height"
|
||||||
msgstr "Высота"
|
msgstr "Высота"
|
||||||
|
|
||||||
|
#: vpsr.rshigh
|
||||||
|
msgid "High"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rshomeaddress
|
#: vpsr.rshomeaddress
|
||||||
msgid "Home address"
|
msgid "Home address"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rshomeaddresslabel
|
#: vpsr.rshomeaddresslabel
|
||||||
#, fuzzy
|
|
||||||
msgctxt "vpsr.rshomeaddresslabel"
|
msgctxt "vpsr.rshomeaddresslabel"
|
||||||
msgid "Home"
|
msgid "Home"
|
||||||
msgstr "Домашний"
|
msgstr "Домашний"
|
||||||
|
|
||||||
#: vpsr.rshomeemaillabel
|
#: vpsr.rshomeemaillabel
|
||||||
#, fuzzy
|
|
||||||
msgctxt "vpsr.rshomeemaillabel"
|
msgctxt "vpsr.rshomeemaillabel"
|
||||||
msgid "Home"
|
msgid "Home"
|
||||||
msgstr "Домашний"
|
msgstr "Домашний"
|
||||||
@ -572,6 +577,10 @@ msgstr ""
|
|||||||
msgid "Location:"
|
msgid "Location:"
|
||||||
msgstr "Расположение:"
|
msgstr "Расположение:"
|
||||||
|
|
||||||
|
#: vpsr.rslow
|
||||||
|
msgid "Low"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rslsaturday
|
#: vpsr.rslsaturday
|
||||||
msgctxt "vpsr.rslsaturday"
|
msgctxt "vpsr.rslsaturday"
|
||||||
msgid "S"
|
msgid "S"
|
||||||
@ -714,6 +723,10 @@ msgstr ""
|
|||||||
msgid "No print formats have been defined"
|
msgid "No print formats have been defined"
|
||||||
msgstr "Не определён формат печати"
|
msgstr "Не определён формат печати"
|
||||||
|
|
||||||
|
#: vpsr.rsnormal
|
||||||
|
msgid "Normal"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rsnotdoneyet
|
#: vpsr.rsnotdoneyet
|
||||||
msgid "This feature is not implemented at this time."
|
msgid "This feature is not implemented at this time."
|
||||||
msgstr "Эта возможность не рализована."
|
msgstr "Эта возможность не рализована."
|
||||||
@ -753,7 +766,6 @@ msgid "&Open Item"
|
|||||||
msgstr "Открыть эелемент"
|
msgstr "Открыть эелемент"
|
||||||
|
|
||||||
#: vpsr.rsotheremaillabel
|
#: vpsr.rsotheremaillabel
|
||||||
#, fuzzy
|
|
||||||
msgctxt "vpsr.rsotheremaillabel"
|
msgctxt "vpsr.rsotheremaillabel"
|
||||||
msgid "Other"
|
msgid "Other"
|
||||||
msgstr "Другой"
|
msgstr "Другой"
|
||||||
@ -791,7 +803,6 @@ msgid "This operation cannot be undone!"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rspersonalwebsitelabel
|
#: vpsr.rspersonalwebsitelabel
|
||||||
#, fuzzy
|
|
||||||
msgctxt "vpsr.rspersonalwebsitelabel"
|
msgctxt "vpsr.rspersonalwebsitelabel"
|
||||||
msgid "Personal"
|
msgid "Personal"
|
||||||
msgstr "Персонал"
|
msgstr "Персонал"
|
||||||
@ -989,6 +1000,10 @@ msgstr "Печать"
|
|||||||
msgid "Print"
|
msgid "Print"
|
||||||
msgstr "Печать"
|
msgstr "Печать"
|
||||||
|
|
||||||
|
#: vpsr.rsprioritylabel
|
||||||
|
msgid "Priority:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rsprtcontrolowner
|
#: vpsr.rsprtcontrolowner
|
||||||
msgid "Print controller is not owned by a TVpControlLink!"
|
msgid "Print controller is not owned by a TVpControlLink!"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -1237,13 +1252,11 @@ msgid "Work address"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: vpsr.rsworkaddresslabel
|
#: vpsr.rsworkaddresslabel
|
||||||
#, fuzzy
|
|
||||||
msgctxt "vpsr.rsworkaddresslabel"
|
msgctxt "vpsr.rsworkaddresslabel"
|
||||||
msgid "Work"
|
msgid "Work"
|
||||||
msgstr "Рабочий"
|
msgstr "Рабочий"
|
||||||
|
|
||||||
#: vpsr.rsworkemaillabel
|
#: vpsr.rsworkemaillabel
|
||||||
#, fuzzy
|
|
||||||
msgctxt "vpsr.rsworkemaillabel"
|
msgctxt "vpsr.rsworkemaillabel"
|
||||||
msgid "Work"
|
msgid "Work"
|
||||||
msgstr "Рабочий"
|
msgstr "Рабочий"
|
||||||
@ -1572,4 +1585,3 @@ msgstr ""
|
|||||||
#: vpsr.sxmldecnotatbeg
|
#: vpsr.sxmldecnotatbeg
|
||||||
msgid "The XML declaration must appear before the first element"
|
msgid "The XML declaration must appear before the first element"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -60,13 +60,14 @@ type
|
|||||||
|
|
||||||
TVpContactSort = (csLastFirst, csFirstLast);
|
TVpContactSort = (csLastFirst, csFirstLast);
|
||||||
|
|
||||||
|
TVpTaskPriority = (tpLow=-1, tpNormal=0, tpHigh=1);
|
||||||
|
|
||||||
TVpOverlayPattern = (opSolid, opClear, opHorizontal, opVertical,
|
TVpOverlayPattern = (opSolid, opClear, opHorizontal, opVertical,
|
||||||
opFDiagonal, opBDiagonal, opCross, opDiagCross);
|
opFDiagonal, opBDiagonal, opCross, opDiagCross);
|
||||||
|
|
||||||
TVpOverlayDetail = (odResource, odEventDescription, odEventCategory);
|
TVpOverlayDetail = (odResource, odEventDescription, odEventCategory);
|
||||||
TVpOverlayDetails = set of TVpOverlayDetail;
|
TVpOverlayDetails = set of TVpOverlayDetail;
|
||||||
|
|
||||||
|
|
||||||
{ forward declarations }
|
{ forward declarations }
|
||||||
TVpResource = class;
|
TVpResource = class;
|
||||||
TVpResourceGroup = class;
|
TVpResourceGroup = class;
|
||||||
@ -440,8 +441,6 @@ type
|
|||||||
property Complete: Boolean read FComplete write SetComplete;
|
property Complete: Boolean read FComplete write SetComplete;
|
||||||
property CreatedOn: TDateTime read FCreatedOn write SetCreatedOn;
|
property CreatedOn: TDateTime read FCreatedOn write SetCreatedOn;
|
||||||
property CompletedOn: TDateTIme read FCompletedOn write SetCompletedOn;
|
property CompletedOn: TDateTIme read FCompletedOn write SetCompletedOn;
|
||||||
|
|
||||||
{ Not implemented yet }
|
|
||||||
property Priority: Integer read FPriority write SetPriority;
|
property Priority: Integer read FPriority write SetPriority;
|
||||||
property Category: Integer read FCategory write SetCategory;
|
property Category: Integer read FCategory write SetCategory;
|
||||||
|
|
||||||
|
@ -60,20 +60,16 @@ type
|
|||||||
|
|
||||||
{ internal methods }
|
{ internal methods }
|
||||||
procedure LoadContact(AContact: TVpContact); virtual;
|
procedure LoadContact(AContact: TVpContact); virtual;
|
||||||
|
procedure LoadTask(ATask: TVpTask); virtual;
|
||||||
procedure SetFilterCriteria(ATable: TDataset; AUseDateTime: Boolean;
|
procedure SetFilterCriteria(ATable: TDataset; AUseDateTime: Boolean;
|
||||||
AResourceID: Integer; AStartDateTime, AEndDateTime: TDateTime); virtual;
|
AResourceID: Integer; AStartDateTime, AEndDateTime: TDateTime); virtual;
|
||||||
|
|
||||||
protected {properties that may be surfaced later}
|
protected {properties that may be surfaced later}
|
||||||
property ReadOnly : boolean
|
property ReadOnly: boolean read FReadOnly write SetReadOnly default False;
|
||||||
read FReadOnly write SetReadOnly default False;
|
property ResourceTable: TDataset read GetResourceTable;
|
||||||
property ResourceTable : TDataset
|
property EventsTable: TDataset read GetEventsTable;
|
||||||
read GetResourceTable;
|
property ContactsTable: TDataset read GetContactsTable;
|
||||||
property EventsTable : TDataset
|
property TasksTable: TDataset read GetTasksTable;
|
||||||
read GetEventsTable;
|
|
||||||
property ContactsTable : TDataset
|
|
||||||
read GetContactsTable;
|
|
||||||
property TasksTable : TDataset
|
|
||||||
read GetTasksTable;
|
|
||||||
|
|
||||||
public
|
public
|
||||||
constructor Create(AOwner: TComponent); override;
|
constructor Create(AOwner: TComponent); override;
|
||||||
@ -244,7 +240,8 @@ begin
|
|||||||
Required := false;
|
Required := false;
|
||||||
end;
|
end;
|
||||||
end; {with FieldDefs do}
|
end; {with FieldDefs do}
|
||||||
end else if TableName = EventsTableName then begin
|
end else
|
||||||
|
if TableName = EventsTableName then begin
|
||||||
with FieldDefs do begin
|
with FieldDefs do begin
|
||||||
Clear;
|
Clear;
|
||||||
{ Record ID }
|
{ Record ID }
|
||||||
@ -818,7 +815,8 @@ begin
|
|||||||
Required := false;
|
Required := false;
|
||||||
end;
|
end;
|
||||||
end; {with FieldDefs do}
|
end; {with FieldDefs do}
|
||||||
end else if TableName = TasksTableName then begin
|
end else
|
||||||
|
if TableName = TasksTableName then begin
|
||||||
with FieldDefs do begin
|
with FieldDefs do begin
|
||||||
Clear;
|
Clear;
|
||||||
{ Record ID }
|
{ Record ID }
|
||||||
@ -1203,7 +1201,7 @@ begin
|
|||||||
end; {while}
|
end; {while}
|
||||||
end; {with EventsTable}
|
end; {with EventsTable}
|
||||||
end;
|
end;
|
||||||
{=====}
|
|
||||||
{ Loads the contact from the current cursor position of the contacts table }
|
{ Loads the contact from the current cursor position of the contacts table }
|
||||||
procedure TVpCustomDBDataStore.LoadContact(AContact: TVpContact);
|
procedure TVpCustomDBDataStore.LoadContact(AContact: TVpContact);
|
||||||
var
|
var
|
||||||
@ -1358,6 +1356,44 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
{ Loads the task from the current cursor position of the task table }
|
||||||
|
procedure TVpCustomDBDatastore.LoadTask(ATask: TVpTask);
|
||||||
|
var
|
||||||
|
F: TField;
|
||||||
|
begin
|
||||||
|
with TasksTable do begin
|
||||||
|
ATask.RecordID := FieldByName('RecordID').AsInteger;
|
||||||
|
ATask.Complete := FieldByName('Complete').AsBoolean;
|
||||||
|
ATask.Description := FieldByName('Description').AsString;
|
||||||
|
ATask.Details := FieldByName('Details').AsString;
|
||||||
|
ATask.CreatedOn := FieldByName('CreatedOn').AsDateTime;
|
||||||
|
ATask.CompletedOn := FieldByName('CompletedOn').AsDateTime;
|
||||||
|
ATask.Priority := FieldByName('Priority').AsInteger;
|
||||||
|
ATask.Category := FieldByName('Category').AsInteger;
|
||||||
|
ATask.DueDate := FieldByName('DueDate').AsDateTime;
|
||||||
|
F := FindField('UserField0');
|
||||||
|
if F <> nil then ATask.UserField0 := F.AsString;
|
||||||
|
F := FindField('UserField1');
|
||||||
|
if F <> nil then ATask.UserField1 := F.AsString;
|
||||||
|
F := FindField('UserField2');
|
||||||
|
if F <> nil then ATask.UserField2 := F.AsString;
|
||||||
|
F := FindField('UserField3');
|
||||||
|
if F <> nil then ATask.UserField3 := F.AsString;
|
||||||
|
F := FindField('UserField4');
|
||||||
|
if F <> nil then ATask.UserField4 := F.AsString;
|
||||||
|
F := FindField('UserField5');
|
||||||
|
if F <> nil then ATask.UserField5 := F.AsString;
|
||||||
|
F := FindField('UserField6');
|
||||||
|
if F <> nil then ATask.UserField6 := F.AsString;
|
||||||
|
F := FindField('UserField7');
|
||||||
|
if F <> nil then ATask.UserField7 := F.AsString;
|
||||||
|
F := FindField('UserField8');
|
||||||
|
if F <> nil then ATask.UserField8 := F.AsString;
|
||||||
|
F := FindField('UserField9');
|
||||||
|
if F <> nil then ATask.UserField9 := F.AsString;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TVpCustomDBDataStore.LoadTasks;
|
procedure TVpCustomDBDataStore.LoadTasks;
|
||||||
var
|
var
|
||||||
Task: TVpTask;
|
Task: TVpTask;
|
||||||
@ -1372,36 +1408,8 @@ begin
|
|||||||
First;
|
First;
|
||||||
while not EOF do begin
|
while not EOF do begin
|
||||||
Task := Resource.Tasks.AddTask(GetNextID(TasksTableName));
|
Task := Resource.Tasks.AddTask(GetNextID(TasksTableName));
|
||||||
task.loading := true;
|
Task.loading := true;
|
||||||
Task.RecordID := FieldByName('RecordID').AsInteger;
|
LoadTask(Task);
|
||||||
Task.Complete := FieldByName('Complete').AsBoolean;
|
|
||||||
Task.Description := FieldByName('Description').AsString;
|
|
||||||
Task.Details := FieldByName('Details').AsString;
|
|
||||||
Task.CreatedOn := FieldByName('CreatedOn').AsDateTime;
|
|
||||||
Task.CompletedOn := FieldByName('CompletedOn').AsDateTime;
|
|
||||||
Task.Priority := FieldByName('Priority').AsInteger;
|
|
||||||
Task.Category := FieldByName('Category').AsInteger;
|
|
||||||
Task.DueDate := FieldByName('DueDate').AsDateTime;
|
|
||||||
F := FindField('UserField0');
|
|
||||||
if F <> nil then Task.UserField0 := F.AsString;
|
|
||||||
F := FindField('UserField1');
|
|
||||||
if F <> nil then Task.UserField1 := F.AsString;
|
|
||||||
F := FindField('UserField2');
|
|
||||||
if F <> nil then Task.UserField2 := F.AsString;
|
|
||||||
F := FindField('UserField3');
|
|
||||||
if F <> nil then Task.UserField3 := F.AsString;
|
|
||||||
F := FindField('UserField4');
|
|
||||||
if F <> nil then Task.UserField4 := F.AsString;
|
|
||||||
F := FindField('UserField5');
|
|
||||||
if F <> nil then Task.UserField5 := F.AsString;
|
|
||||||
F := FindField('UserField6');
|
|
||||||
if F <> nil then Task.UserField6 := F.AsString;
|
|
||||||
F := FindField('UserField7');
|
|
||||||
if F <> nil then Task.UserField7 := F.AsString;
|
|
||||||
F := FindField('UserField8');
|
|
||||||
if F <> nil then Task.UserField8 := F.AsString;
|
|
||||||
F := FindField('UserField9');
|
|
||||||
if F <> nil then Task.UserField9 := F.AsString;
|
|
||||||
Task.Loading := false;
|
Task.Loading := false;
|
||||||
Next;
|
Next;
|
||||||
end; {while}
|
end; {while}
|
||||||
@ -2084,14 +2092,34 @@ end;
|
|||||||
{=====}
|
{=====}
|
||||||
|
|
||||||
procedure TVpCustomDBDataStore.RefreshTasks;
|
procedure TVpCustomDBDataStore.RefreshTasks;
|
||||||
|
var
|
||||||
|
task: TVpTask;
|
||||||
begin
|
begin
|
||||||
|
if Resource <> nil then begin
|
||||||
|
Resource.Tasks.ClearTasks;
|
||||||
|
with TasksTable do begin
|
||||||
|
SetFilterCriteria(TasksTable, False, Resource.ResourceID, 0, 0);
|
||||||
|
First;
|
||||||
|
while not EOF do begin
|
||||||
|
task := Resource.Tasks.AddTask(FieldByName('RecordID').AsInteger);
|
||||||
|
task.Loading := true;
|
||||||
|
LoadTask(task);
|
||||||
|
task.Loading := false;
|
||||||
|
Next;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
// LoadContacts;
|
||||||
|
end;
|
||||||
|
inherited;
|
||||||
|
end;
|
||||||
|
(*
|
||||||
if Resource <> nil then begin
|
if Resource <> nil then begin
|
||||||
Resource.Tasks.ClearTasks;
|
Resource.Tasks.ClearTasks;
|
||||||
LoadTasks;
|
LoadTasks;
|
||||||
end;
|
end;
|
||||||
inherited;
|
inherited;
|
||||||
end;
|
end;
|
||||||
{=====}
|
*)
|
||||||
|
|
||||||
procedure TVpCustomDBDataStore.RefreshResource;
|
procedure TVpCustomDBDataStore.RefreshResource;
|
||||||
var
|
var
|
||||||
|
@ -134,6 +134,8 @@ function GetEndLine(EndTime: TDateTime; Granularity: TVpGranularity): Integer;
|
|||||||
function LineToStartTime(Line: Integer; Granularity: TVpGranularity): TDateTime;
|
function LineToStartTime(Line: Integer; Granularity: TVpGranularity): TDateTime;
|
||||||
function GetLineDuration(Granularity: TVpGranularity): Double;
|
function GetLineDuration(Granularity: TVpGranularity): Double;
|
||||||
|
|
||||||
|
function TaskPriorityToStr(APriority: TVpTaskPriority): String;
|
||||||
|
|
||||||
function AutoHeight(ARadioGroup: TRadioGroup): Integer;
|
function AutoHeight(ARadioGroup: TRadioGroup): Integer;
|
||||||
function GetButtonWidth(AButton: TButton): Integer;
|
function GetButtonWidth(AButton: TButton): Integer;
|
||||||
function GetLabelWidth(ALabel: TLabel): Integer;
|
function GetLabelWidth(ALabel: TLabel): Integer;
|
||||||
@ -616,7 +618,16 @@ function GetLineDuration(Granularity: TVpGranularity): Double;
|
|||||||
begin
|
begin
|
||||||
Result := GranularityMinutes[Granularity] / MinutesInDay;
|
Result := GranularityMinutes[Granularity] / MinutesInDay;
|
||||||
end;
|
end;
|
||||||
{=====}
|
|
||||||
|
function TaskPriorityToStr(APriority: TVpTaskPriority): String;
|
||||||
|
begin
|
||||||
|
Result := '';
|
||||||
|
case APriority of
|
||||||
|
tpLow : Result := RSLow;
|
||||||
|
tpNormal : Result := RSNormal;
|
||||||
|
tpHigh : Result := RSHigh;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
function AutoHeight(ARadioGroup: TRadioGroup): Integer;
|
function AutoHeight(ARadioGroup: TRadioGroup): Integer;
|
||||||
var
|
var
|
||||||
|
@ -98,6 +98,10 @@ resourcestring
|
|||||||
RSCategoryLabel4 = 'Personal';
|
RSCategoryLabel4 = 'Personal';
|
||||||
RSCategoryLabel5 = 'Other';
|
RSCategoryLabel5 = 'Other';
|
||||||
|
|
||||||
|
RSLow = 'Low';
|
||||||
|
RSNormal = 'Normal';
|
||||||
|
RSHigh = 'High';
|
||||||
|
|
||||||
RSWeekOf = 'Week of';
|
RSWeekOf = 'Week of';
|
||||||
RSThrough = 'Through';
|
RSThrough = 'Through';
|
||||||
RSSunday = 'Sunday';
|
RSSunday = 'Sunday';
|
||||||
@ -270,11 +274,13 @@ resourcestring
|
|||||||
|
|
||||||
{ Task Edit Dialog Captions }
|
{ Task Edit Dialog Captions }
|
||||||
RSDlgTaskEdit = 'Task';
|
RSDlgTaskEdit = 'Task';
|
||||||
RSDueDate = 'Due date:';
|
|
||||||
RSDetails = 'Details:';
|
|
||||||
RSTaskComplete = 'Task complete';
|
RSTaskComplete = 'Task complete';
|
||||||
RSCreatedOn = 'Created on';
|
RSCreatedOn = 'Created on';
|
||||||
RSCompletedOn = 'Completed on';
|
RSCompletedOn = 'Completed on';
|
||||||
|
RSDueDateLabel = 'Due date:';
|
||||||
|
RSDetailsLabel = 'Details:';
|
||||||
|
RSPriorityLabel = 'Priority:';
|
||||||
|
RSCategoryLabel = 'Category:';
|
||||||
|
|
||||||
{ Resource Edit Dialog Captions }
|
{ Resource Edit Dialog Captions }
|
||||||
RSDlgResEditCaption = 'Resource edit';
|
RSDlgResEditCaption = 'Resource edit';
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
object TaskEditForm: TTaskEditForm
|
object TaskEditForm: TTaskEditForm
|
||||||
Left = 284
|
Left = 284
|
||||||
Height = 378
|
Height = 411
|
||||||
Top = 286
|
Top = 253
|
||||||
Width = 547
|
Width = 547
|
||||||
HorzScrollBar.Page = 545
|
HorzScrollBar.Page = 545
|
||||||
VertScrollBar.Page = 339
|
VertScrollBar.Page = 339
|
||||||
Caption = 'TaskEditForm'
|
Caption = 'TaskEditForm'
|
||||||
ClientHeight = 378
|
ClientHeight = 411
|
||||||
ClientWidth = 547
|
ClientWidth = 547
|
||||||
OnCreate = FormCreate
|
OnCreate = FormCreate
|
||||||
OnShow = FormShow
|
OnShow = FormShow
|
||||||
@ -15,7 +15,7 @@ object TaskEditForm: TTaskEditForm
|
|||||||
object ButtonPanel: TPanel
|
object ButtonPanel: TPanel
|
||||||
Left = 0
|
Left = 0
|
||||||
Height = 37
|
Height = 37
|
||||||
Top = 341
|
Top = 374
|
||||||
Width = 547
|
Width = 547
|
||||||
Align = alBottom
|
Align = alBottom
|
||||||
BevelOuter = bvNone
|
BevelOuter = bvNone
|
||||||
@ -61,7 +61,7 @@ object TaskEditForm: TTaskEditForm
|
|||||||
end
|
end
|
||||||
object PageControl1: TPageControl
|
object PageControl1: TPageControl
|
||||||
Left = 0
|
Left = 0
|
||||||
Height = 341
|
Height = 374
|
||||||
Top = 0
|
Top = 0
|
||||||
Width = 547
|
Width = 547
|
||||||
TabStop = False
|
TabStop = False
|
||||||
@ -71,29 +71,29 @@ object TaskEditForm: TTaskEditForm
|
|||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
object tabTask: TTabSheet
|
object tabTask: TTabSheet
|
||||||
Caption = 'Task'
|
Caption = 'Task'
|
||||||
ClientHeight = 313
|
ClientHeight = 346
|
||||||
ClientWidth = 539
|
ClientWidth = 539
|
||||||
object DueDateLbl: TLabel
|
object DueDateLbl: TLabel
|
||||||
Left = 52
|
Left = 52
|
||||||
Height = 15
|
Height = 15
|
||||||
Top = 44
|
Top = 78
|
||||||
Width = 50
|
Width = 50
|
||||||
Caption = 'Due date:'
|
Caption = 'Due date:'
|
||||||
FocusControl = DueDateEdit
|
FocusControl = DueDateEdit
|
||||||
ParentColor = False
|
ParentColor = False
|
||||||
end
|
end
|
||||||
object CreatedOnLbl: TLabel
|
object LblCreatedOn: TLabel
|
||||||
Left = 52
|
Left = 52
|
||||||
Height = 15
|
Height = 15
|
||||||
Top = 69
|
Top = 103
|
||||||
Width = 61
|
Width = 61
|
||||||
Caption = 'Created on:'
|
Caption = 'Created on:'
|
||||||
ParentColor = False
|
ParentColor = False
|
||||||
end
|
end
|
||||||
object CompletedOnLbl: TLabel
|
object LblCompletedOn: TLabel
|
||||||
Left = 333
|
Left = 333
|
||||||
Height = 15
|
Height = 15
|
||||||
Top = 69
|
Top = 103
|
||||||
Width = 79
|
Width = 79
|
||||||
Caption = 'Completed on:'
|
Caption = 'Completed on:'
|
||||||
ParentColor = False
|
ParentColor = False
|
||||||
@ -101,7 +101,7 @@ object TaskEditForm: TTaskEditForm
|
|||||||
object Bevel1: TBevel
|
object Bevel1: TBevel
|
||||||
Left = 4
|
Left = 4
|
||||||
Height = 2
|
Height = 2
|
||||||
Top = 32
|
Top = 64
|
||||||
Width = 529
|
Width = 529
|
||||||
Anchors = [akTop, akLeft, akRight]
|
Anchors = [akTop, akLeft, akRight]
|
||||||
Shape = bsTopLine
|
Shape = bsTopLine
|
||||||
@ -109,7 +109,7 @@ object TaskEditForm: TTaskEditForm
|
|||||||
object imgCalendar: TImage
|
object imgCalendar: TImage
|
||||||
Left = 8
|
Left = 8
|
||||||
Height = 32
|
Height = 32
|
||||||
Top = 38
|
Top = 72
|
||||||
Width = 32
|
Width = 32
|
||||||
AutoSize = True
|
AutoSize = True
|
||||||
Picture.Data = {
|
Picture.Data = {
|
||||||
@ -218,7 +218,7 @@ object TaskEditForm: TTaskEditForm
|
|||||||
object imgCompleted: TImage
|
object imgCompleted: TImage
|
||||||
Left = 290
|
Left = 290
|
||||||
Height = 32
|
Height = 32
|
||||||
Top = 38
|
Top = 72
|
||||||
Width = 32
|
Width = 32
|
||||||
AutoSize = True
|
AutoSize = True
|
||||||
Picture.Data = {
|
Picture.Data = {
|
||||||
@ -257,18 +257,18 @@ object TaskEditForm: TTaskEditForm
|
|||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
Text = 'DescriptionEdit'
|
Text = 'DescriptionEdit'
|
||||||
end
|
end
|
||||||
object CompleteCB: TCheckBox
|
object CbComplete: TCheckBox
|
||||||
Left = 333
|
Left = 333
|
||||||
Height = 19
|
Height = 19
|
||||||
Top = 43
|
Top = 77
|
||||||
Width = 72
|
Width = 72
|
||||||
Caption = 'Complete'
|
Caption = 'Complete'
|
||||||
TabOrder = 2
|
TabOrder = 2
|
||||||
end
|
end
|
||||||
object DetailsMemo: TMemo
|
object DetailsMemo: TMemo
|
||||||
Left = 4
|
Left = 4
|
||||||
Height = 208
|
Height = 209
|
||||||
Top = 96
|
Top = 128
|
||||||
Width = 529
|
Width = 529
|
||||||
Anchors = [akTop, akLeft, akRight, akBottom]
|
Anchors = [akTop, akLeft, akRight, akBottom]
|
||||||
Lines.Strings = (
|
Lines.Strings = (
|
||||||
@ -282,8 +282,8 @@ object TaskEditForm: TTaskEditForm
|
|||||||
object DueDateEdit: TDateEdit
|
object DueDateEdit: TDateEdit
|
||||||
Left = 128
|
Left = 128
|
||||||
Height = 23
|
Height = 23
|
||||||
Top = 41
|
Top = 75
|
||||||
Width = 103
|
Width = 120
|
||||||
CalendarDisplaySettings = [dsShowHeadings, dsShowDayNames]
|
CalendarDisplaySettings = [dsShowHeadings, dsShowDayNames]
|
||||||
DateOrder = doNone
|
DateOrder = doNone
|
||||||
ButtonWidth = 23
|
ButtonWidth = 23
|
||||||
@ -328,6 +328,58 @@ object TaskEditForm: TTaskEditForm
|
|||||||
TabOrder = 1
|
TabOrder = 1
|
||||||
Text = 'DueDateEdit'
|
Text = 'DueDateEdit'
|
||||||
end
|
end
|
||||||
|
object LblCategory: TLabel
|
||||||
|
Left = 62
|
||||||
|
Height = 15
|
||||||
|
Top = 36
|
||||||
|
Width = 51
|
||||||
|
Caption = 'Category:'
|
||||||
|
FocusControl = CbCategory
|
||||||
|
ParentColor = False
|
||||||
|
end
|
||||||
|
object CbCategory: TComboBox
|
||||||
|
Left = 128
|
||||||
|
Height = 23
|
||||||
|
Top = 32
|
||||||
|
Width = 120
|
||||||
|
ItemHeight = 15
|
||||||
|
ItemIndex = 0
|
||||||
|
Items.Strings = (
|
||||||
|
'Business'
|
||||||
|
'Clients'
|
||||||
|
'Family'
|
||||||
|
'Other'
|
||||||
|
'Personal'
|
||||||
|
)
|
||||||
|
Style = csDropDownList
|
||||||
|
TabOrder = 4
|
||||||
|
Text = 'Business'
|
||||||
|
end
|
||||||
|
object LblPriority: TLabel
|
||||||
|
Left = 281
|
||||||
|
Height = 15
|
||||||
|
Top = 36
|
||||||
|
Width = 41
|
||||||
|
Caption = 'Priority:'
|
||||||
|
FocusControl = CbPriority
|
||||||
|
ParentColor = False
|
||||||
|
end
|
||||||
|
object CbPriority: TComboBox
|
||||||
|
Left = 333
|
||||||
|
Height = 23
|
||||||
|
Top = 32
|
||||||
|
Width = 120
|
||||||
|
ItemHeight = 15
|
||||||
|
ItemIndex = 1
|
||||||
|
Items.Strings = (
|
||||||
|
'low'
|
||||||
|
'normal'
|
||||||
|
'high'
|
||||||
|
)
|
||||||
|
Style = csDropDownList
|
||||||
|
TabOrder = 5
|
||||||
|
Text = 'normal'
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -52,6 +52,10 @@ type
|
|||||||
|
|
||||||
TTaskEditForm = class(TForm)
|
TTaskEditForm = class(TForm)
|
||||||
ButtonPanel: TPanel;
|
ButtonPanel: TPanel;
|
||||||
|
CbCategory: TComboBox;
|
||||||
|
CbPriority: TComboBox;
|
||||||
|
LblCategory: TLabel;
|
||||||
|
LblPriority: TLabel;
|
||||||
OKBtn: TButton;
|
OKBtn: TButton;
|
||||||
CancelBtn: TButton;
|
CancelBtn: TButton;
|
||||||
PageControl1: TPageControl;
|
PageControl1: TPageControl;
|
||||||
@ -59,9 +63,9 @@ type
|
|||||||
DescriptionEdit: TEdit;
|
DescriptionEdit: TEdit;
|
||||||
DueDateLbl: TLabel;
|
DueDateLbl: TLabel;
|
||||||
DueDateEdit: TDateEdit;
|
DueDateEdit: TDateEdit;
|
||||||
CompleteCB: TCheckBox;
|
CbComplete: TCheckBox;
|
||||||
CreatedOnLbl: TLabel;
|
LblCreatedOn: TLabel;
|
||||||
CompletedOnLbl: TLabel;
|
LblCompletedOn: TLabel;
|
||||||
DetailsMemo: TMemo;
|
DetailsMemo: TMemo;
|
||||||
ResourceNameLbl: TLabel;
|
ResourceNameLbl: TLabel;
|
||||||
Bevel1: TBevel;
|
Bevel1: TBevel;
|
||||||
@ -76,7 +80,10 @@ type
|
|||||||
FReturnCode: TVpEditorReturnCode;
|
FReturnCode: TVpEditorReturnCode;
|
||||||
FTask: TVpTask;
|
FTask: TVpTask;
|
||||||
FResource: TVpResource;
|
FResource: TVpResource;
|
||||||
|
FBtnHeight: Integer;
|
||||||
|
FEditHeight: Integer;
|
||||||
procedure PositionControls;
|
procedure PositionControls;
|
||||||
|
procedure SetCaptions;
|
||||||
public
|
public
|
||||||
procedure PopulateSelf;
|
procedure PopulateSelf;
|
||||||
procedure DePopulateSelf;
|
procedure DePopulateSelf;
|
||||||
@ -94,8 +101,8 @@ type
|
|||||||
teTask: TVpTask;
|
teTask: TVpTask;
|
||||||
public
|
public
|
||||||
constructor Create(AOwner: TComponent); override;
|
constructor Create(AOwner: TComponent); override;
|
||||||
function Execute(Task: TVpTask): Boolean; reintroduce;
|
|
||||||
function AddNewTask: Boolean;
|
function AddNewTask: Boolean;
|
||||||
|
function Execute(Task: TVpTask): Boolean; reintroduce;
|
||||||
published
|
published
|
||||||
{properties}
|
{properties}
|
||||||
property DataStore;
|
property DataStore;
|
||||||
@ -119,38 +126,62 @@ uses
|
|||||||
procedure TTaskEditForm.FormCreate(Sender: TObject);
|
procedure TTaskEditForm.FormCreate(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
FReturnCode := rtAbandon;
|
FReturnCode := rtAbandon;
|
||||||
|
FBtnHeight := ScaleY(OKBtn.Height, DesignTimeDPI);
|
||||||
|
FEditHeight := ScaleY(DueDateEdit.Height, DesignTimeDPI);
|
||||||
end;
|
end;
|
||||||
{=====}
|
|
||||||
|
|
||||||
procedure TTaskEditForm.DePopulateSelf;
|
procedure TTaskEditForm.DePopulateSelf;
|
||||||
begin
|
begin
|
||||||
Task.Description := DescriptionEdit.Text;
|
Task.Description := DescriptionEdit.Text;
|
||||||
Task.DueDate := DueDateEdit.Date;
|
Task.DueDate := DueDateEdit.Date;
|
||||||
Task.Details := DetailsMemo.Text;
|
Task.Details := DetailsMemo.Text;
|
||||||
Task.Complete := CompleteCB.Checked;
|
Task.Complete := CbComplete.Checked;
|
||||||
DueDateLbl.Caption := RSDueDate;
|
Task.Priority := CbPriority.ItemIndex-1;
|
||||||
|
Task.Category := CbCategory.ItemIndex;
|
||||||
|
// DueDateLbl.Caption := RSDueDateLabel;
|
||||||
end;
|
end;
|
||||||
{=====}
|
{=====}
|
||||||
|
|
||||||
procedure TTaskEditForm.PopulateSelf;
|
procedure TTaskEditForm.SetCaptions;
|
||||||
|
var
|
||||||
|
ct: TVpCategoryType;
|
||||||
|
tp: TVpTaskPriority;
|
||||||
begin
|
begin
|
||||||
ResourceNameLbl.Caption := Resource.Description;
|
ResourceNameLbl.Caption := Resource.Description;
|
||||||
CompleteCB.Caption := RSTaskComplete;
|
CbComplete.Caption := RSTaskComplete;
|
||||||
DueDateLbl.Caption := RSDueDate;
|
DueDateLbl.Caption := RSDueDateLabel;
|
||||||
OKBtn.Caption := RSOKBtn;
|
OKBtn.Caption := RSOKBtn;
|
||||||
CancelBtn.Caption := RSCancelBtn;
|
CancelBtn.Caption := RSCancelBtn;
|
||||||
TabTask.Caption := RSDlgTaskEdit;
|
TabTask.Caption := RSDlgTaskEdit;
|
||||||
|
LblPriority.Caption := RSPriorityLabel;
|
||||||
|
LblCategory.Caption := RSCategoryLabel;
|
||||||
|
|
||||||
|
CbCategory.Items.Clear;
|
||||||
|
for ct in TVpCategoryType do
|
||||||
|
CbCategory.Items.Add(CategoryLabel(ct));
|
||||||
|
|
||||||
|
CbPriority.Items.Clear;
|
||||||
|
for tp in TVpTaskPriority do
|
||||||
|
CbPriority.Items.Add(TaskPriorityToStr(tp));
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TTaskEditForm.PopulateSelf;
|
||||||
|
begin
|
||||||
|
SetCaptions;
|
||||||
|
|
||||||
DescriptionEdit.Text := Task.Description;
|
DescriptionEdit.Text := Task.Description;
|
||||||
DueDateEdit.Date := Task.DueDate;
|
DueDateEdit.Date := Task.DueDate;
|
||||||
DetailsMemo.Text := Task.Details;
|
DetailsMemo.Text := Task.Details;
|
||||||
CompleteCB.Checked := Task.Complete;
|
CbComplete.Checked := Task.Complete;
|
||||||
if Task.CompletedOn <> 0 then
|
if Task.CompletedOn <> 0 then
|
||||||
CompletedOnLbl.Caption := RSCompletedOn + ' ' + FormatDateTime(DefaultFormatSettings.ShortDateFormat, Task.CompletedOn)
|
LblCompletedOn.Caption := RSCompletedOn + ' ' + FormatDateTime('ddddd', Task.CompletedOn)
|
||||||
|
// 'ddddd' = DefaultFormatSettings.ShortDateFormat
|
||||||
else
|
else
|
||||||
CompletedOnLbl.Visible := False;
|
LblCompletedOn.Visible := False;
|
||||||
CompletedOnLbl.Visible := CompleteCB.Checked;
|
LblCompletedOn.Visible := CbComplete.Checked;
|
||||||
CreatedOnLbl.Caption := RSCreatedOn + ' ' + FormatDateTime(DefaultFormatSettings.ShortDateFormat, Task.CreatedOn);
|
LblCreatedOn.Caption := RSCreatedOn + ' ' + FormatDateTime('ddddd', Task.CreatedOn);
|
||||||
|
CbPriority.ItemIndex := Task.Priority + 1;
|
||||||
|
CbCategory.ItemIndex := Task.Category;
|
||||||
|
|
||||||
PositionControls;
|
PositionControls;
|
||||||
end;
|
end;
|
||||||
@ -163,14 +194,18 @@ var
|
|||||||
w: Integer;
|
w: Integer;
|
||||||
cnv: TControlCanvas;
|
cnv: TControlCanvas;
|
||||||
cb: TCheckbox;
|
cb: TCheckbox;
|
||||||
editHeight: Integer;
|
|
||||||
begin
|
begin
|
||||||
VBevelDist := ScaleY(VBevelDist, DesignTimeDPI);
|
VBevelDist := ScaleY(VBevelDist, DesignTimeDPI);
|
||||||
VDist := ScaleY(VDist, DesignTimeDPI);
|
VDist := ScaleY(VDist, DesignTimeDPI);
|
||||||
HDist := ScaleX(HDist, DesignTimeDPI);
|
HDist := ScaleX(HDist, DesignTimeDPI);
|
||||||
editHeight := ScaleY(DueDateEdit.Height, DesignTimeDPI);
|
|
||||||
|
|
||||||
OKBtn.Height := ScaleY(OKBtn.Height, DesignTimeDPI);
|
DescriptionEdit.Height := FEditHeight;
|
||||||
|
DueDateEdit.Height := FEditHeight;
|
||||||
|
DueDateEdit.ButtonWidth := FEditHeight;
|
||||||
|
CbCategory.Height := FEditHeight;
|
||||||
|
CbPriority.Height := FEditHeight;
|
||||||
|
|
||||||
|
OKBtn.Height := FBtnHeight;
|
||||||
OKBtn.Top := VDist;
|
OKBtn.Top := VDist;
|
||||||
CancelBtn.Height := OKBtn.Height;
|
CancelBtn.Height := OKBtn.Height;
|
||||||
CancelBtn.Top := OKBtn.Top;
|
CancelBtn.Top := OKBtn.Top;
|
||||||
@ -178,7 +213,6 @@ begin
|
|||||||
ResourceNameLbl.Font.Size := ScaleY(ResourceNameLbl.Font.Size, DesignTimeDPI);
|
ResourceNameLbl.Font.Size := ScaleY(ResourceNameLbl.Font.Size, DesignTimeDPI);
|
||||||
ResourceNameLbl.Top := OKBtn.Top + (OKBtn.Height - ScaleY(ResourceNameLbl.Height, DesignTimeDPI)) div 2;
|
ResourceNameLbl.Top := OKBtn.Top + (OKBtn.Height - ScaleY(ResourceNameLbl.Height, DesignTimeDPI)) div 2;
|
||||||
|
|
||||||
DueDateEdit.ButtonWidth := ScaleX(DueDateEdit.Height, DesigntimeDPI);
|
|
||||||
DueDateEdit.Left := DueDateLbl.Left + GetLabelWidth(DueDateLbl) + HDist;
|
DueDateEdit.Left := DueDateLbl.Left + GetLabelWidth(DueDateLbl) + HDist;
|
||||||
cnv := TControlCanvas.Create;
|
cnv := TControlCanvas.Create;
|
||||||
try
|
try
|
||||||
@ -192,21 +226,30 @@ begin
|
|||||||
|
|
||||||
if RightOf(DueDateEdit) + 3*HDist > ImgCompleted.Left then begin
|
if RightOf(DueDateEdit) + 3*HDist > ImgCompleted.Left then begin
|
||||||
ImgCompleted.Left := RightOf(DueDateEdit) + 3*HDist;
|
ImgCompleted.Left := RightOf(DueDateEdit) + 3*HDist;
|
||||||
CompleteCB.Left := RightOf(ImgCompleted) + HDist;
|
CbComplete.Left := RightOf(ImgCompleted) + HDist;
|
||||||
CompletedOnLbl.Left := CompleteCB.Left;
|
LblCompletedOn.Left := CbComplete.Left;
|
||||||
|
|
||||||
cnv := TControlCanvas.Create;
|
cnv := TControlCanvas.Create;
|
||||||
try
|
try
|
||||||
cnv.Control := CompleteCB;
|
cnv.Control := CbComplete;
|
||||||
cnv.Font.Assign(CompleteCB.Font);
|
cnv.Font.Assign(CbComplete.Font);
|
||||||
w := cnv.TextWidth(CompleteCB.Caption) + GetSystemMetrics(SM_CXMENUCHECK);
|
w := cnv.TextWidth(CbComplete.Caption) + GetSystemMetrics(SM_CXMENUCHECK);
|
||||||
finally
|
finally
|
||||||
cnv.Free;
|
cnv.Free;
|
||||||
end;
|
end;
|
||||||
w := Max(GetlabelWidth(CompletedOnLbl), w);
|
w := Max(GetlabelWidth(LblCompletedOn), w);
|
||||||
ClientWidth := ClientWidth - tabTask.ClientWidth + CompleteCB.Left + w + HDist*2;
|
ClientWidth := ClientWidth - tabTask.ClientWidth + CbComplete.Left + w + HDist*2;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
CbCategory.Left := DueDateEdit.Left;
|
||||||
|
LblCategory.Left := CbCategory.Left - HDist - GetLabelWidth(LblCategory);
|
||||||
|
|
||||||
|
if RightOf(CbCategory) + 3*HDist + GetLabelWidth(LblPriority) + HDist > CbComplete.Left then
|
||||||
|
CbPriority.Left := CbPriority.Parent.ClientWidth - HDist - CbPriority.Width
|
||||||
|
else
|
||||||
|
CbPriority.Left := CbComplete.Left;
|
||||||
|
LblPriority.Left := CbPriority.Left - HDist - GetLabelWidth(LblPriority);
|
||||||
|
|
||||||
OKBtn.Width := Max(GetButtonWidth(OKBtn), GetButtonWidth(CancelBtn));
|
OKBtn.Width := Max(GetButtonWidth(OKBtn), GetButtonWidth(CancelBtn));
|
||||||
CancelBtn.Width := OKBtn.Width;
|
CancelBtn.Width := OKBtn.Width;
|
||||||
{$IFDEF MSWINDOWS}
|
{$IFDEF MSWINDOWS}
|
||||||
@ -221,18 +264,23 @@ begin
|
|||||||
OKBtn.TabOrder := 1;
|
OKBtn.TabOrder := 1;
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
|
|
||||||
Bevel1.Top := DescriptionEdit.Top + editHeight + VBevelDist; //BottomOf(DescriptionEdit) + VBevelDist;
|
CbCategory.Top := BottomOf(DescriptionEdit) + VDist;
|
||||||
|
LblCategory.Top := CbCategory.Top + (CbCategory.Height - LblCategory.Height) div 2;
|
||||||
|
CbPriority.Top := CbCategory.Top;
|
||||||
|
LblPriority.Top := LblCategory.Top;
|
||||||
|
|
||||||
|
//Bevel1.Top := DescriptionEdit.Top + editHeight + VBevelDist; //BottomOf(DescriptionEdit) + VBevelDist;
|
||||||
|
|
||||||
ImgCalendar.Top := Bevel1.Top + 2 + VBevelDist;
|
ImgCalendar.Top := Bevel1.Top + 2 + VBevelDist;
|
||||||
ImgCompleted.Top := ImgCalendar.Top;
|
ImgCompleted.Top := ImgCalendar.Top;
|
||||||
DueDateEdit.Top := ImgCalendar.Top; // + (ImgCalendar.Height - DueDateEdit.Height) div 2;
|
DueDateEdit.Top := ImgCalendar.Top; // + (ImgCalendar.Height - DueDateEdit.Height) div 2;
|
||||||
DueDateLbl.Top := DueDateEdit.Top + (DueDateEdit.Height - DueDateLbl.Height) div 2;
|
DueDateLbl.Top := DueDateEdit.Top + (DueDateEdit.Height - DueDateLbl.Height) div 2;
|
||||||
CompleteCB.Top := ImgCompleted.Top; // + (ImgCompleted.Height - CompleteCB.Height) div 2;
|
CbComplete.Top := ImgCompleted.Top; // + (ImgCompleted.Height - CbComplete.Height) div 2;
|
||||||
|
|
||||||
CreatedOnLbl.Top := DueDateEdit.Top + editHeight + VDist; //BottomOf(DueDateEdit) + VDist;
|
LblCreatedOn.Top := DueDateEdit.Top + FEditHeight + VDist; //BottomOf(DueDateEdit) + VDist;
|
||||||
CompletedOnLbl.Top := CreatedOnLbl.Top;
|
LblCompletedOn.Top := LblCreatedOn.Top;
|
||||||
|
|
||||||
DetailsMemo.Top := BottomOf(CreatedOnLbl) + VBevelDist;
|
DetailsMemo.Top := BottomOf(LblCreatedOn) + VBevelDist;
|
||||||
DetailsMemo.Height := tabTask.ClientHeight - DetailsMemo.Top - DescriptionEdit.Top;
|
DetailsMemo.Height := tabTask.ClientHeight - DetailsMemo.Top - DescriptionEdit.Top;
|
||||||
end;
|
end;
|
||||||
{=====}
|
{=====}
|
||||||
|
@ -429,6 +429,9 @@ begin
|
|||||||
else
|
else
|
||||||
RenderCanvas.Font.Color := RealNormalColor;
|
RenderCanvas.Font.Color := RealNormalColor;
|
||||||
end;
|
end;
|
||||||
|
if Task.Priority = ord(tpHigh) then
|
||||||
|
RenderCanvas.Font.Style := RenderCanvas.Font.Style + [fsBold] else
|
||||||
|
RenderCanvas.Font.Style := RenderCanvas.Font.style - [fsBold];
|
||||||
|
|
||||||
{ if this is the selected task, set highlight text color }
|
{ if this is the selected task, set highlight text color }
|
||||||
if (Task = FActiveTask) and
|
if (Task = FActiveTask) and
|
||||||
|
Reference in New Issue
Block a user