Attribute VB_Name = "ModuloCSS"
Option Explicit


Public Const icon_ID_Refr = 501 'Refresh
Public Const icon_ID_Sort = 502 'Ordinamento
Public Const icon_ID_Prin = 503 'Stampante
Public Const icon_ID_Anal = 504 'Check Documento (Icona del Documento con la lente)
Public Const icon_ID_Expo = 505 'Esportazione PDF
Public Const icon_ID_Clos = 506 'Chiusura Segno di 'X' nel tondo
Public Const icon_ID_Save = 507 'Salva segno di Spunta VERDE nel tondo
Public Const icon_ID_PrtS = 508 'Settaggio Stampante
Public Const icon_ID_Find = 509 'Icona Find lente nel cerchio blu
Public Const icon_ID_DwnG = 510 'Download verde
Public Const icon_ID_DwnR = 511 'Download rosso
Public Const icon_ID_Opt1 = 512 'Opzioni in barre orizzontali
Public Const icon_ID_Opt2 = 513 'Opzioni <...>
Public Const icon_ID_Arr1 = 514 'Freccia di Elenco ">" 16x16
Public Const icon_ID_Chk1 = 515 'Check Verde sia 16x16 che 24x24
Public Const icon_ID_Equa = 516 'Cerchio con il simbolo di Uguale "=" all'interno
Public Const icon_ID_Dele = 517 'Cancella - Delete
Public Const icon_ID_Righ = 518 'Freccia a Destra
Public Const icon_ID_Left = 519 'Freccia a Sinistra
Public Const icon_ID_Edit = 520 'Edit Matita
Public Const icon_ID_Excl = 521 'Punto Esclamativo - Exclamation sia 16x16 che 24x24
Public Const icon_ID_Trac = 522 'Tracciabilità - Albero 24x24
Public Const icon_ID__PIU = 523 'Simbolo PIU' semplice 16x16
Public Const icon_ID_Meno = 524 'Simbolo MENO semplice 16x16
Public Const icon_ID_AttS = 525 'Simbolo Camioncino Verde 32x32
Public Const icon_ID_AttN = 526 'Simbolo Camioncino Rosso 32x32
Public Const icon_ID_Clnd = 527 'Simbolo Calendario 16x16
'Public Const icon_ID_Clnd = 528 'Simbolo Calendario 16x16


''Colori validi per i controlli
'Public C olorEnabled As Long 'Quando un controllo viene Abilitato / Quando perde il Focus
'Public C olorDisabled As Long 'Quando un controllo viene Disabilitato
'Public C olorEnabled As Long (deafult Bianco)
'Public C olorOnFocus As Long 'Quando il controllo riceve il Focus
'Public g FontName As String 'Nome del font da usare
'Public F oreColorObbligo As Long 'Quando un controllo viene impostato come OBBLIGATORIO
'Public F oreColorLibero As Long 'Quando un controllo viene impostato come NON obbligatorio


Private Type gtCSSApp
   gSkinAppDark As Boolean 'Default è DARK (True) altrimenti è LIGHT (False) _
                            da leggere nel ParGen parametro GRAFICA -> SKIN (0=LIGHT / 1=DARK)
   gMenuBackColorPrimary As Long
   gMenuBackColorSecondaIstanza As Long
   gMenuBackColorSecondary As Long
   gMenuBackColorTertiary As Long
   gMenuTextColor As Long
   gFormTop As Integer
   gFormBackColor As Long
   gColorGiallo As Long
   gColorRosso As Long
   gColorArancione As Long
   gColorAzzurro As Long
   gColorFucsia As Long
   gColorVerde As Long
   gTextForeColorStandard As Long
   gTextForeColorObbligo As Long
   gTextBackColorStandard As Long
   gTextBackColorOnFocus As Long
   gTextForeColorDisabled As Long
   gCtrlAppearanceLight As Integer
   gCtrlAppearanceDark As Integer
   gCtrlVisualTheme As Integer
   gFontNameApp As String
   gFontSizeApp As Byte
   gWidgetBackColor As Long
End Type
Public CSSApp As gtCSSApp



Public Sub SetCSSApp()
   
   'Colori generici
      CSSApp.gColorArancione = RGB(255, 150, 55)
      CSSApp.gColorAzzurro = RGB(0, 160, 255)
      CSSApp.gColorFucsia = vbMagenta 'RGB(61, 78, 105)
      CSSApp.gColorGiallo = RGB(255, 220, 0)
      CSSApp.gColorRosso = vbRed
      CSSApp.gColorVerde = RGB(85, 211, 24) 'RGB(100, 230, 38)
   'Font
      CSSApp.gFontNameApp = "Tahoma"  '"CALIBRI"
      CSSApp.gFontSizeApp = 9
   
   
   Dim vSkin As String
      vSkin = ReadINI("GRAFICA", "SKIN", IniPath)
      If Not IsNumeric(vSkin) Then vSkin = "1"
   
      CSSApp.gSkinAppDark = (vSkin = "1")
      

'   If vSkin = "1" Then
''DARK - - - - - - - - - - - - - - - - - -
'      'Skin
'         CSSApp.gMenuBackColorPrimary = RGB(37, 37, 38) 'RGB(45, 45, 48)
'         CSSApp.gMenuBackColorSecondary = RGB(61, 78, 105)
'         CSSApp.gMenuTextColor = CSSApp.gColorAzzurro 'vbWhite
'         CSSApp.gFormBackColor = RGB(46, 49, 56)
'      'Flat/Text
'         CSSApp.gTextBackColorStandard = RGB(62, 62, 66) 'RGB(60, 80, 100)
'         CSSApp.gTextBackColorOnFocus = RGB(40, 80, 130)
'         CSSApp.gTextForeColorStandard = vbWhite 'RGB(209, 221, 243)
'         CSSApp.gTextForeColorObbligo = RGB(45, 45, 48)   'Lo uso per individuare i Text obbligatori
'      'Ctrl generici
'         CSSApp.gCtrlAppearanceLight = xtpAppearanceVisualStudio2012Dark
'         CSSApp.gCtrlVisualTheme = xtpReportThemeVisualStudio2012Dark
'
'      'DockingPane
'
'         DockingPaneGlobalSettings.ResourceImages.LoadFromFile IniSkinPath & "VisualStudio2012.dll", "VisualStudio2012Dark.ini"
'
'   Else
'LIGHT - - - - - - - - - - - - - - - - - -
      'Skin Menu
         CSSApp.gMenuBackColorPrimary = RGB(220, 220, 220)
         CSSApp.gMenuBackColorSecondaIstanza = RGB(250, 228, 165) ' RGB(200, 200, 255)
         CSSApp.gMenuBackColorSecondary = RGB(250, 240, 240)
         CSSApp.gMenuBackColorTertiary = vbWhite
         CSSApp.gMenuTextColor = RGB(50, 50, 54) 'CSSApp.gColorAzzurro 'vbWhite
               
      'Skin Form
         CSSApp.gFormBackColor = RGB(240, 240, 240)
         
      'Flat/Text
         CSSApp.gTextBackColorStandard = &HFFF2CC   ' vbWhite
         CSSApp.gTextBackColorOnFocus = RGB(250, 235, 80) 'GIALLO 'RGB(200, 227, 255) 'CELESTE | RGB(248, 248, 248)'GRIGIO | '
         CSSApp.gTextForeColorDisabled = &HE0E0E0
         CSSApp.gTextForeColorStandard = RGB(43, 87, 154) 'RGB(45, 45, 50)
         CSSApp.gTextForeColorObbligo = &H800000 '<- questo è il colore originale che non ho potuto cambiare altrimetni non vedeva più i campi obbligatori 'RGB(45, 45, 48)
         
      'Push
         CSSApp.gCtrlAppearanceLight = xtpAppearanceVisualStudio2012Light
         CSSApp.gCtrlAppearanceDark = xtpAppearanceVisualStudio2012Dark
         
         CSSApp.gCtrlVisualTheme = xtpReportThemeVisualStudio2012Light
      
      'Widget
         CSSApp.gWidgetBackColor = RGB(50, 50, 54)
      
      'DockingPane
         'DockingPaneGlobalSettings.ResourceImages.LoadFromFile IniSkinPath & "VisualStudio2012.dll", "VisualStudio2012Light.ini"
      
'   End If

'''               C.olorEnabled = vbWhite '&HFFFFFF 'Bianco
'''               C.olorDisabled = &H8000000F 'Immagine Pulsante
'''               C.olorOnFocus = &H75E3FF
'''               F.oreColorObbligo = &H800000
'''               F.oreColorLibero = &H80000012
'''               g.FontName = "CALIBRI"
                  
               '   F.oreColorObbligo = &H800000
               '   F.oreColorLibero = &H80000012

End Sub

Public Sub SetPositionForm(ByRef pForm As Form)
   
   With pForm
      'If fFormAperti = 1 Then
         .Top = 60
      'Else
      '   .Top = CSSApp.gFormTop
      'End If
      .Left = 60
      .Width = MDIForm1.ScaleWidth - 120
      .Height = MDIForm1.ScaleHeight - 120
      .BackColor = CSSApp.gFormBackColor
   End With
   
End Sub

Public Sub SetCssForm(ByRef pForm As Form)

   With pForm.shpLineTop
      .Left = 0: .Top = 0
      .Width = pForm.Width
      .ZOrder
   End With

   With pForm.ShpTop
      .Left = 0: .Top = 30
      .Width = pForm.Width
      .ZOrder
   End With

   With pForm.cmdExitForm
      .Left = pForm.Width - .Width: .Top = pForm.ShpTop.Top
      .ZOrder
   End With

      With pForm.shpMaster
         .Left = 0: .Top = 0
         .Width = pForm.Width: .Height = pForm.Height
      End With

   With pForm.shpBottom
      .Left = 0: .Top = pForm.Height - .Height
      .Width = pForm.Width
      .ZOrder
   End With

End Sub

