From: Robert M. <mar...@us...> - 2004-12-23 07:52:05
|
Update of /cvsroot/jvcl/dev/JVCL3/devtools/ReadPalettes In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16731/JVCL3/devtools/ReadPalettes Modified Files: ReadPalettes.pas Log Message: renamed Wizard ID strings Index: ReadPalettes.pas =================================================================== RCS file: /cvsroot/jvcl/dev/JVCL3/devtools/ReadPalettes/ReadPalettes.pas,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ReadPalettes.pas 22 Dec 2004 09:57:44 -0000 1.3 --- ReadPalettes.pas 23 Dec 2004 07:51:47 -0000 1.4 *************** *** 28,31 **** --- 28,33 ---- NoIconList: TStringList; ActionsList: TStringList; + PackageWizardList: TStringList; + RegisterClassList: TStringList; OldSpyRegisterPropertyEditor: TRegisterPropertyEditorProc; *************** *** 33,38 **** OldSpyRegisterCustomModule: TRegisterCustomModuleProc; OldSpyRegisterNoIcon: procedure(ComponentClasses: array of TComponentClass); ! OldSpyRegisterActions: procedure (const CategoryName: string; ! const AClasses: array of TBasicActionClass; Resource: TComponentClass) = nil; procedure SaveFile(AFileName: string; List: TStringList); --- 35,41 ---- OldSpyRegisterCustomModule: TRegisterCustomModuleProc; OldSpyRegisterNoIcon: procedure(ComponentClasses: array of TComponentClass); ! OldSpyRegisterActions: procedure(const CategoryName: string; ! const AClasses: array of TBasicActionClass; Resource: TComponentClass); ! OldSpyRegisterPackageWizard: TWizardRegisterProc; procedure SaveFile(AFileName: string; List: TStringList); *************** *** 58,61 **** --- 61,94 ---- end; + procedure AddPackageNames(List: TStringList); + var + I, J, N: Integer; + ModSvc: IOTAModuleServices; + Module: IOTAModule; + FileSys: IOTAFileSystem; + UnitName, Line: string; + begin + ModSvc := (BorlandIDEServices as IOTAModuleServices); + for I := 0 to List.Count - 1 do + begin + UnitName := List[I]; + N := Pos(';', UnitName); + while N > 0 do + begin + UnitName := Copy(UnitName, N + 1, Length(UnitName)); + Line := Copy(List[I], 1, N - 1); + N := Pos(';', UnitName); + end; + UnitName := Copy(UnitName, 2, Length(UnitName) - 2); + for J := 0 to ModSvc.ModuleCount - 1 do + begin + Module := ModSvc.Modules[J]; + FileSys := ModSvc.FindFileSystem(Module.FileSystem); + if Assigned(FileSys) and FileSys.FileExists(UnitName) then + List[I] := Line + ';"' + Module.FileName + '.' + UnitName + '"'; + end; + end; + end; + procedure ReadRegisterComponents; var *************** *** 68,72 **** OldPaletteIndex, OldToolIndex: Integer; SelectedToolName: string; ! AClass: TPersistentClass; UnitName: string; begin --- 101,105 ---- OldPaletteIndex, OldToolIndex: Integer; SelectedToolName: string; ! LClass: TPersistentClass; UnitName: string; begin *************** *** 95,106 **** PropInfo := GetPropInfo(Palette.ClassInfo, 'SelectedToolName'); SelectedToolName := GetStrProp(Palette, PropInfo); ! AClass := GetClass(SelectedToolName); ! if (AClass = nil) or (AClass.ClassInfo = nil) then ! UnitName := 'Unable to get RTTI' else ! UnitName := GetTypeData(AClass.ClassInfo).UnitName; ! if (Pos('JV', PaletteTab.Tabs[I]) = 1) or (Pos('Jv', PaletteTab.Tabs[I]) = 1) then begin ! VisibleComponentList.Add(Format('%u;"%s";"%s";"%s.pas"', [N, PaletteTab.Tabs[I], SelectedToolName, UnitName])); Inc(N); end; --- 128,139 ---- PropInfo := GetPropInfo(Palette.ClassInfo, 'SelectedToolName'); SelectedToolName := GetStrProp(Palette, PropInfo); ! LClass := GetClass(SelectedToolName); ! if (LClass = nil) or (LClass.ClassInfo = nil) then ! UnitName := '' else ! UnitName := GetTypeData(LClass.ClassInfo).UnitName + '.pas'; ! if Pos('Jv', PaletteTab.Tabs[I]) = 1 then begin ! VisibleComponentList.Add(Format('%u;"%s";"%s";"%s"', [N, PaletteTab.Tabs[I], SelectedToolName, UnitName])); Inc(N); end; *************** *** 114,117 **** --- 147,175 ---- end; + type + TCarrier = class(TObject) + public + procedure GetClassCallback(AClass: TPersistentClass); + end; + + procedure TCarrier.GetClassCallback(AClass: TPersistentClass); + begin + if Pos('TJv', AClass.ClassName) = 1 then + RegisterClassList.Add(Format('"%s"', [AClass.ClassName])); + end; + + procedure ReadRegisterClass; + var + Carrier: TCarrier; + begin + Carrier := TCarrier.Create; + with TClassFinder.Create(nil, True) do + begin + GetClasses(Carrier.GetClassCallback); + Free; + end; + Carrier.Free; + end; + procedure SpyRegisterComponentEditor(ComponentClass: TComponentClass; ComponentEditor: TComponentEditorClass); begin *************** *** 138,148 **** procedure SpyRegisterCustomModule(Group: Integer; ComponentBaseClass: TComponentClass; CustomModuleClass: TCustomModuleClass); begin - if Assigned(ComponentBaseClass) and Assigned(CustomModuleClass) then - //if (Pos('TJv', ComponentBaseClass.ClassName) = 1) or (Pos('TJv', CustomModuleClass.ClassName) = 1) then - CustomModuleList.Add(Format('%u;"%s";"%s"', - [Group, ComponentBaseClass.ClassName, CustomModuleClass.ClassName])); if Assigned(OldSpyRegisterCustomModule) then OldSpyRegisterCustomModule(Group, ComponentBaseClass, CustomModuleClass); end; --- 196,213 ---- procedure SpyRegisterCustomModule(Group: Integer; ComponentBaseClass: TComponentClass; CustomModuleClass: TCustomModuleClass); + var + UnitName: string; begin if Assigned(OldSpyRegisterCustomModule) then OldSpyRegisterCustomModule(Group, ComponentBaseClass, CustomModuleClass); + if Assigned(ComponentBaseClass) and Assigned(CustomModuleClass) then + begin + if ComponentBaseClass.ClassInfo = nil then + UnitName := '' + else + UnitName := GetTypeData(ComponentBaseClass.ClassInfo).UnitName + '.pas'; + CustomModuleList.Add(Format('%u;"%s";"%s";"%s"', + [Group, ComponentBaseClass.ClassName, CustomModuleClass.ClassName, UnitName])); + end; end; *************** *** 150,158 **** var I: Integer; begin - for I := Low(ComponentClasses) to High(ComponentClasses) do - NoIconList.Add(Format('"%s"', [ComponentClasses[I].ClassName])); if Assigned(OldSpyRegisterNoIcon) then OldSpyRegisterNoIcon(ComponentClasses); end; --- 215,230 ---- var I: Integer; + UnitName: string; begin if Assigned(OldSpyRegisterNoIcon) then OldSpyRegisterNoIcon(ComponentClasses); + for I := Low(ComponentClasses) to High(ComponentClasses) do + begin + if ComponentClasses[I].ClassInfo = nil then + UnitName := '' + else + UnitName := GetTypeData(ComponentClasses[I].ClassInfo).UnitName + '.pas'; + NoIconList.Add(Format('"%s";"%s"', [ComponentClasses[I].ClassName, UnitName])); + end; end; *************** *** 161,172 **** var I: Integer; begin for I := Low(AClasses) to High(AClasses) do if Assigned(Resource) then ! ActionsList.Add(Format('"%s";"%s";"%s"', [CategoryName, AClasses[I].ClassName, Resource.ClassName])) else ! ActionsList.Add(Format('"%s";"%s";""', [CategoryName, AClasses[I].ClassName])); ! if Assigned(OldSpyRegisterActions) then ! OldSpyRegisterActions(CategoryName, AClasses, Resource); end; --- 233,251 ---- var I: Integer; + UnitName: string; begin + if Assigned(OldSpyRegisterActions) then + OldSpyRegisterActions(CategoryName, AClasses, Resource); for I := Low(AClasses) to High(AClasses) do + begin + if AClasses[I].ClassInfo = nil then + UnitName := '' + else + UnitName := GetTypeData(AClasses[I].ClassInfo).UnitName + '.pas'; if Assigned(Resource) then ! ActionsList.Add(Format('"%s";"%s";"%s";"%s"', [CategoryName, AClasses[I].ClassName, Resource.ClassName, UnitName])) else ! ActionsList.Add(Format('"%s";"%s";"";"%s"', [CategoryName, AClasses[I].ClassName, UnitName])); ! end; end; *************** *** 174,178 **** var I, N: Integer; ! S: string; begin for I := 0 to ActionsList.Count - 1 do --- 253,257 ---- var I, N: Integer; ! F, S: string; begin for I := 0 to ActionsList.Count - 1 do *************** *** 181,216 **** S := Copy(ActionsList[I], N + 1, Length(ActionsList[I])); N := Pos(';', S); ! S := Copy(S, 1, N - 1); ! if NoIconList.Find(S, N) then NoIconList.Delete(N); end; end; ! procedure ReadRegisterPackageWizard; ! begin ! end; ! ! procedure ReadRegisterClass; ! begin ! end; ! ! {$IFDEF COMPILER7_UP} ! procedure ReadGroupDescendentsWith; begin end; - {$ENDIF COMPILER7_UP} ! procedure ReadReadRegisterComponentsByToolsAPI; var ! PackageTest: IOTAPackageServices; I, J, N: Integer; begin ! PackageTest := (BorlandIDEServices as IOTAPackageServices); N := 1; ! for I := 0 to PackageTest.PackageCount - 1 do ! if (Pos('jv', PackageTest.PackageNames[I]) = 1) or (Pos('Jv', PackageTest.PackageNames[I]) = 1) then ! for J := 0 to PackageTest.ComponentCount[I] - 1 do begin ! AllComponentList.Add(Format('%u;"%s";"%s"', [N, PackageTest.PackageNames[I], PackageTest.ComponentNames[I, J]])); Inc(N); end; --- 260,296 ---- S := Copy(ActionsList[I], N + 1, Length(ActionsList[I])); N := Pos(';', S); ! F := Copy(S, 1, N - 1); ! S := Copy(S, N + 1, Length(S)); ! N := Pos(';', S); ! S := Copy(S, N + 1, Length(S)); ! N := Pos(';', S); ! S := Copy(S, N + 1, Length(S)); ! F := F + ';' + S; ! if NoIconList.Find(F, N) then NoIconList.Delete(N); end; end; ! function SpyRegisterPackageWizard(const Wizard: IOTAWizard): Boolean; begin + Result := False; + if Assigned(OldSpyRegisterPackageWizard) then + Result := OldSpyRegisterPackageWizard(Wizard); + if Pos('JVCL.', Wizard.GetIDString) = 1 then + PackageWizardList.Add(Format('"%s";"%s"', [Wizard.GetName, Wizard.GetIDString])); end; ! procedure ReadReadRegisterComponentsByOTA; var ! Pkg: IOTAPackageServices; I, J, N: Integer; begin ! Pkg := (BorlandIDEServices as IOTAPackageServices); N := 1; ! for I := 0 to Pkg.PackageCount - 1 do ! if (Pos('jv', Pkg.PackageNames[I]) = 1) or (Pos('Jv', Pkg.PackageNames[I]) = 1) then ! for J := 0 to Pkg.ComponentCount[I] - 1 do begin ! AllComponentList.Add(Format('%u;"%s";"%s"', [N, Pkg.PackageNames[I], Pkg.ComponentNames[I, J]])); Inc(N); end; *************** *** 218,229 **** end; procedure Register; begin ReadRegisterComponents; - ReadRegisterPackageWizard; - ReadRegisterClass; - {$IFDEF COMPILER7_UP} - ReadGroupDescendentsWith; - {$ENDIF COMPILER7_UP} end; --- 298,319 ---- end; + procedure ReadModulesByOTA; + var + I: Integer; + ModSvc: IOTAModuleServices; + List: TStringList; + begin + List := TStringList.Create; + ModSvc := (BorlandIDEServices as IOTAModuleServices); + for I := 0 to ModSvc.ModuleCount - 1 do + List.Add(ModSvc.Modules[I].FileName + ' ' + ModSvc.Modules[I].FileSystem); + + SaveFile('modules.csv', List); + List.Free; + end; + procedure Register; begin ReadRegisterComponents; end; *************** *** 246,249 **** --- 336,343 ---- ActionsList.Duplicates := dupIgnore; ActionsList.Sorted := True; + PackageWizardList := TStringList.Create; + PackageWizardList.Duplicates := dupIgnore; + PackageWizardList.Sorted := True; + RegisterClassList := TStringList.Create; OldSpyRegisterPropertyEditor := RegisterPropertyEditorProc; *************** *** 257,260 **** --- 351,356 ---- OldSpyRegisterActions := RegisterActionsProc; RegisterActionsProc := SpyRegisterActions; + OldSpyRegisterPackageWizard := LibraryWizardProc; + LibraryWizardProc := SpyRegisterPackageWizard; finalization *************** *** 264,269 **** --- 360,367 ---- RegisterNoIconProc := OldSpyRegisterNoIcon; RegisterActionsProc := OldSpyRegisterActions; + LibraryWizardProc := OldSpyRegisterPackageWizard; CleanNoIconList; + ReadRegisterClass; AddIDs(PropertyEditorList); *************** *** 272,281 **** AddIDs(NoIconList); AddIDs(ActionsList); PropertyEditorList.Insert(0, '"ID";"PropertyType_Name";"ComponentClass_ClassName";"PropertyName";"EditorClass_ClassName"'); ComponentEditorList.Insert(0, '"ID";"ComponentClass_ClassName";"ComponentEditor_ClassName"'); ! CustomModuleList.Insert(0, '"ID";"Group";"ComponentBaseClass_ClassName";"CustomModuleClass_ClassName"'); ! NoIconList.Insert(0, '"ID";"ClassName"'); ! ActionsList.Insert(0, '"ID";"CategoryName";"ClassName";"Resource_ClassName"'); SaveFile('JVCL Visible Components.csv', VisibleComponentList); SaveFile('JVCL Property Editors.csv', PropertyEditorList); --- 370,390 ---- AddIDs(NoIconList); AddIDs(ActionsList); + AddIDs(PackageWizardList); + AddIDs(RegisterClassList); + + { + AddPackageNames(CustomModuleList); + AddPackageNames(NoIconList); + AddPackageNames(ActionsList); + AddPackageNames(VisibleComponentList); + } PropertyEditorList.Insert(0, '"ID";"PropertyType_Name";"ComponentClass_ClassName";"PropertyName";"EditorClass_ClassName"'); ComponentEditorList.Insert(0, '"ID";"ComponentClass_ClassName";"ComponentEditor_ClassName"'); ! CustomModuleList.Insert(0, '"ID";"Group";"ComponentBaseClass_ClassName";"CustomModuleClass_ClassName";"FileName"'); ! NoIconList.Insert(0, '"ID";"ClassName";"FileName"'); ! ActionsList.Insert(0, '"ID";"CategoryName";"ClassName";"Resource_ClassName";"FileName"'); ! PackageWizardList.Insert(0, '"ID";"WizardName";"WizardIDString"'); ! RegisterClassList.Insert(0, '"ID";"ClassName"'); SaveFile('JVCL Visible Components.csv', VisibleComponentList); SaveFile('JVCL Property Editors.csv', PropertyEditorList); *************** *** 284,287 **** --- 393,398 ---- SaveFile('JVCL No Icon Components.csv', NoIconList); SaveFile('JVCL Actions.csv', ActionsList); + SaveFile('JVCL Package Wizards.csv', PackageWizardList); + SaveFile('JVCL Registered Classes.csv', RegisterClassList); FreeAndNil(VisibleComponentList); FreeAndNil(AllComponentList); *************** *** 291,294 **** --- 402,407 ---- FreeAndNil(NoIconList); FreeAndNil(ActionsList); + FreeAndNil(PackageWizardList); + FreeAndNil(RegisterClassList); end. |