Skip to content

Commit a6e281e

Browse files
committed
Tweaks, add a news demo app
1 parent efc9411 commit a6e281e

23 files changed

+19839
-63
lines changed
1.78 KB
Loading

src/app/Applications/Demo/Demo.tsx

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import ClassicyPopUpMenu from '@/app/SystemFolder/SystemResources/PopUpMenu/Clas
1111
import ClassicyProgressBar from '@/app/SystemFolder/SystemResources/ProgressBar/ClassicyProgressBar'
1212
import ClassicyRadioInput from '@/app/SystemFolder/SystemResources/RadioInput/ClassicyRadioInput'
1313
import ClassicyWindow from '@/app/SystemFolder/SystemResources/Window/ClassicyWindow'
14-
import React from 'react'
14+
import React, { useEffect } from 'react'
1515

1616
const Demo: React.FC = () => {
1717
const appName = 'Demo'
@@ -31,11 +31,23 @@ const Demo: React.FC = () => {
3131
id: appId,
3232
},
3333
window: {
34-
id: 'demo23',
34+
id: 'demo_error_modal',
3535
},
3636
})
3737
}
3838

39+
useEffect(() => {
40+
desktopEventDispatch({
41+
type: 'ClassicyWindowFocus',
42+
app: {
43+
id: appId,
44+
},
45+
window: {
46+
id: 'demo_error_modal',
47+
},
48+
})
49+
}, [])
50+
3951
const appMenu = [
4052
{
4153
id: 'file',
@@ -48,7 +60,7 @@ const Demo: React.FC = () => {
4860
<>
4961
<ClassicyApp id={appId} name={appName} icon={appIcon} defaultWindow={'demo'} addSystemMenu={false}>
5062
<ClassicyWindow
51-
id={'demo23'}
63+
id={'demo_error_modal'}
5264
appId={appId}
5365
closable={false}
5466
resizable={false}

src/app/Applications/EPG/EPG.tsx

Lines changed: 36 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
1-
import { useDesktop, useDesktopDispatch } from '@/app/SystemFolder/ControlPanels/AppManager/ClassicyAppManagerContext'
1+
import { useDesktop } from '@/app/SystemFolder/ControlPanels/AppManager/ClassicyAppManagerContext'
22
import ClassicyApp from '@/app/SystemFolder/SystemResources/App/ClassicyApp'
33
import { quitMenuItemHelper } from '@/app/SystemFolder/SystemResources/App/ClassicyAppUtils'
44
import ClassicyButton from '@/app/SystemFolder/SystemResources/Button/ClassicyButton'
5+
import ClassicyControlLabel from '@/app/SystemFolder/SystemResources/ControlLabel/ClassicyControlLabel'
56
import ClassicyWindow from '@/app/SystemFolder/SystemResources/Window/ClassicyWindow'
67
import classNames from 'classnames'
78
import React, { ReactElement, useMemo, useState } from 'react'
@@ -51,10 +52,9 @@ const EPG: React.FC<ClassicyEPGProps> = ({
5152
}) => {
5253
const appName = 'EPG'
5354
const appId = 'EPG.app'
54-
const appIcon = `${process.env.NEXT_PUBLIC_BASE_PATH || ''}/img/icons/system/folders/directory.png`
55+
const appIcon = `${process.env.NEXT_PUBLIC_BASE_PATH || ''}/img/icons/applications/epg/tv.png`
5556
const desktop = useDesktop()
5657

57-
const desktopEventDispatch = useDesktopDispatch()
5858
const { dateTime, timeZoneOffset } = desktop.System.Manager.DateAndTime
5959
const initialGridStart = gridStart || new Date(new Date(dateTime).getTime() + parseInt(timeZoneOffset) * 3600000)
6060

@@ -65,6 +65,8 @@ const EPG: React.FC<ClassicyEPGProps> = ({
6565
return endTime
6666
}, [gridStartTime, gridWidth])
6767

68+
const [showSettings, setShowSettings] = useState<boolean>(false)
69+
6870
const testClick = (e) => {
6971
alert(e.target.id)
7072
}
@@ -78,7 +80,6 @@ const EPG: React.FC<ClassicyEPGProps> = ({
7880
]
7981

8082
const gridData = data as EPGChannel[]
81-
const defaultDocumentIcon = `${process.env.NEXT_PUBLIC_BASE_PATH || ''}/img/icons/system/quicktime/movie.png`
8283

8384
const getProgramData = (channel: EPGChannel, channelIndex: number) => {
8485
return channel.grid.map((gridItem) => {
@@ -222,6 +223,29 @@ const EPG: React.FC<ClassicyEPGProps> = ({
222223
return (
223224
<>
224225
<ClassicyApp id={appId} name={appName} icon={appIcon} defaultWindow={appId + '_main'}>
226+
{showSettings && (
227+
<ClassicyWindow
228+
id={appId + '_settings'}
229+
title={appName}
230+
appId={appId}
231+
closable={false}
232+
resizable={false}
233+
zoomable={false}
234+
scrollable={false}
235+
collapsable={false}
236+
initialSize={[200, 100]}
237+
initialPosition={[100, 100]}
238+
minimumSize={[200, 100]}
239+
modal={true}
240+
hidden={true}
241+
appMenu={appMenu}
242+
>
243+
<div style={{ display: 'flex', justifyContent: 'center', flexDirection: 'column' }}>
244+
<ClassicyControlLabel label={'Nothing Here'}></ClassicyControlLabel>
245+
<ClassicyButton onClickFunc={() => setShowSettings(!showSettings)}>Close</ClassicyButton>
246+
</div>
247+
</ClassicyWindow>
248+
)}
225249
<ClassicyWindow
226250
id={appId + '_main'}
227251
title={appName}
@@ -232,13 +256,19 @@ const EPG: React.FC<ClassicyEPGProps> = ({
232256
scrollable={true}
233257
collapsable={true}
234258
initialSize={[800, 400]}
235-
initialPosition={[300, 50]}
259+
initialPosition={[100, 50]}
236260
minimumSize={[600, 300]}
237261
modal={false}
238262
appMenu={appMenu}
239263
>
240264
<div style={{ backgroundColor: 'var(--color-system-03)', height: '100%' }}>
241-
<div className={epgStyles.epgHolder}>
265+
<div>
266+
<ClassicyButton onClickFunc={() => setShowSettings(!showSettings)}>Settings</ClassicyButton>
267+
<ClassicyButton onClickFunc={jumpBack}>&lt;&lt;</ClassicyButton>
268+
<ClassicyButton onClickFunc={jumpToNow}>Now</ClassicyButton>
269+
<ClassicyButton onClickFunc={jumpForward}>&gt;&gt;</ClassicyButton>
270+
</div>
271+
<div className={epgStyles.epgHolder} style={{ borderTop: '1px solid var(--color-system-07)' }}>
242272
{gridStartTime < currentTime && currentTime < gridEndTime && (
243273
<div
244274
className={classNames(epgStyles.epgGridSetup, epgStyles.epgIndicatorHolder)}
@@ -279,11 +309,6 @@ const EPG: React.FC<ClassicyEPGProps> = ({
279309
{epgData}
280310
</div>
281311
</div>
282-
<div>
283-
<ClassicyButton onClickFunc={jumpBack}>&lt;&lt;</ClassicyButton>
284-
<ClassicyButton onClickFunc={jumpForward}>&gt;&gt;</ClassicyButton>
285-
<ClassicyButton onClickFunc={jumpToNow}>Now</ClassicyButton>
286-
</div>
287312
</div>
288313
</ClassicyWindow>
289314
</ClassicyApp>
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
@use '../../SystemFolder/ControlPanels/AppearanceManager/styles/appearance';
2+
3+
.newsHeader {
4+
position: sticky;
5+
top: 0;
6+
display: flex;
7+
align-items: center;
8+
flex-direction: row;
9+
width: 100%;
10+
background-color: var(--color-system-03);
11+
gap: var(--window-padding-size);
12+
@include appearance.platinumWindowBoxShadow;
13+
14+
}

0 commit comments

Comments
 (0)